
:root{--navy:#122a3a;--deep:#102432;--cream:#f7f6f2;--sand:#eae6de;--bronze:#b18d5b;--ink:#263440;--muted:#63707a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.8;background:#fff}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:'Libre Baskerville',Georgia,serif;font-weight:400;line-height:1.3;color:var(--navy)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--bronze);outline-offset:4px}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);background:var(--cream);position:relative;z-index:10;border-bottom:1px solid #e7e6e0}.brand{display:flex;flex-direction:column;line-height:1;letter-spacing:.08em;color:var(--navy)}.brand-mark{font-family:Georgia,serif;font-size:30px;letter-spacing:.16em}.brand-small{font-size:9px;letter-spacing:.48em;margin-top:7px}.main-nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600;letter-spacing:.03em}.main-nav a:hover,.text-link:hover{color:#9d7546}.nav-contact{border:1px solid var(--bronze);padding:9px 15px}.menu-toggle{display:none;border:0;background:none;color:var(--navy);font:inherit}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:700;color:#987747;display:block;margin-bottom:22px}.eyebrow.light{color:#d2b98e}.hero{background:var(--cream);display:grid;grid-template-columns:55% 45%;min-height:700px;overflow:hidden}.hero-copy{padding:clamp(65px,7vw,115px) 5vw 85px max(5vw,calc((100vw - 1320px)/2));position:relative;z-index:1}.hero h1{font-size:clamp(36px,4.1vw,65px);letter-spacing:-.045em;margin-bottom:27px}.hero h2{font-family:'DM Sans',sans-serif;font-size:clamp(18px,1.6vw,24px);font-weight:500;line-height:1.5;color:#967044;margin-bottom:28px}.hero p{max-width:620px;line-height:1.85;color:#4d5961;margin-bottom:15px}.hero-photo{background-image:linear-gradient(90deg,rgba(247,246,242,.15),transparent 24%),url('hero.jpg');background-size:cover;background-position:54% center;min-height:550px}.button{display:inline-flex;gap:40px;align-items:center;justify-content:space-between;background:var(--navy);color:#fff;padding:13px 22px;font-weight:600;font-size:12px;letter-spacing:.03em;margin-top:22px;transition:background .2s}.button:hover{background:#30495b}.section{max-width:1320px;margin:auto;padding:110px 5vw}.section h2{font-size:clamp(29px,3vw,43px);letter-spacing:-.025em}.section-intro{max-width:670px;margin-bottom:60px}.engagement-list{border-top:1px solid #d8d7d2}.engagement{display:grid;grid-template-columns:14% 1fr;padding:45px 0;border-bottom:1px solid #d8d7d2;gap:30px}.engagement-number{font-family:Georgia,serif;font-size:29px;color:var(--bronze)}.engagement>div:last-child{max-width:900px}.engagement h3{font-size:27px;margin-bottom:9px}.engagement h4{font-family:'DM Sans',sans-serif;font-size:16px;color:#a17c4d;font-weight:600;margin-bottom:24px}.engagement p{margin-bottom:13px}.approach-section{background:var(--deep);color:#d9e1e4}.approach-section h2,.approach-section h3{color:#fff}.approach-section h2{max-width:800px}.approach-section em{color:#d5bb95;font-style:normal}.approach-intro{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:920px;margin:26px 0 50px}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;border-top:1px solid #456070;padding-top:36px}.approach-card span{color:#c9ad83;font-size:13px}.approach-card h3{font-size:20px;margin:15px 0}.approach-card h4{font-size:13px;line-height:1.6;color:#e0c49a;margin-bottom:15px}.approach-card p{font-size:13px;color:#cbd5d9}.about-section{display:grid;grid-template-columns:40% 1fr;gap:9%}.about-copy p{margin-bottom:20px}.founder{border-top:1px solid #dedbd5;margin-top:38px;padding-top:30px}.founder h3{font-size:24px;margin:0}.founder span{display:block;color:#a17c4d;font-size:12px;margin:6px 0 22px}.perspectives-section{background:#faf9f6;max-width:none;padding-left:max(5vw,calc((100vw - 1188px)/2));padding-right:max(5vw,calc((100vw - 1188px)/2))}.section-top{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-top h2{max-width:680px}.text-link{font-size:12px;font-weight:700;white-space:nowrap}.perspective-intro{max-width:800px;margin-bottom:40px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.article-card{background:white;display:block;border:1px solid #e6e2db;transition:transform .2s,box-shadow .2s}.article-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #132b3b15}.card-image{height:190px;background-size:cover;background-position:center}.card-body{padding:25px}.card-body h3{font-size:19px;line-height:1.45;margin:12px 0}.card-body p{font-size:13px;color:var(--muted);min-height:74px}.card-body .eyebrow{font-size:9px;margin:0}.read-link{color:#9d784b;font-size:12px;font-weight:700}.contact-section{text-align:center;background:#1a3444;color:#e1e8e9;padding:100px 20px}.contact-section h2{color:white;max-width:750px;font-size:clamp(30px,3vw,43px);margin:0 auto 22px}.contact-section p{max-width:650px;margin:0 auto}.light-button{background:#d0b187;color:#142d3b}.light-button:hover{background:#e3c8a2}.contact-email{font-size:12px;margin-top:25px;color:#d2c4b2}.footer{display:flex;justify-content:space-between;gap:30px;background:#0d2230;color:#d3dbdf;padding:45px 5vw;font-size:12px}.footer-brand{font-family:Georgia,serif;font-size:25px;color:#fff}.footer-brand span{font:11px 'DM Sans',sans-serif;letter-spacing:.22em}.footer p{margin:6px 0;color:#91a3ac}.footer>div:last-child{text-align:right}.archive-hero{padding-top:100px;padding-bottom:50px}.archive-hero h1{font-size:clamp(36px,4vw,60px);max-width:860px}.archive-hero p{max-width:690px}.article-page{max-width:850px;margin:0 auto;padding:75px 24px 110px}.article-page h1{font-size:clamp(34px,4vw,54px);margin:20px 0}.back-link{display:block;font-size:12px;color:#8b6b46;margin-bottom:40px}.article-deck{font-size:19px;color:#6a7073;line-height:1.6}.byline{font-size:12px;color:#7a8589;border-top:1px solid #ddd;padding-top:20px;margin:25px 0 32px}.article-feature{width:100%;max-height:420px;object-fit:cover;display:block;margin-bottom:50px}.article-content{font-family:Georgia,serif;font-size:18px;line-height:1.85;color:#293640}.article-content h2{font-size:27px;margin:44px 0 18px}.article-content p{margin-bottom:22px}.article-content .bullet{padding-left:22px}.source-notice{background:var(--cream);padding:30px;font-family:'DM Sans',sans-serif;font-size:15px}.article-end{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ddd;margin-top:50px;padding-top:22px;font-size:12px;color:#987747;font-weight:600}
@media(max-width:950px){.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7vw}.hero-photo{min-height:420px;background-position:center 62%}.approach-grid{grid-template-columns:repeat(2,1fr)}.about-section{grid-template-columns:1fr;gap:10px}.article-grid{grid-template-columns:repeat(2,1fr)}.main-nav{gap:14px}}
@media(max-width:650px){.site-header{height:70px}.brand-mark{font-size:24px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--cream);padding:20px 6vw 28px;box-shadow:0 15px 25px #0002;flex-direction:column;align-items:flex-start;gap:20px}.main-nav.open{display:flex}.hero-copy{padding:60px 6vw}.hero h1{font-size:37px}.hero-photo{min-height:310px}.section{padding:75px 6vw}.engagement{grid-template-columns:1fr;gap:4px}.engagement h3{font-size:23px}.approach-intro{grid-template-columns:1fr;gap:0}.approach-grid{grid-template-columns:1fr}.section-top{display:block}.text-link{display:block;margin:12px 0 24px}.article-grid{grid-template-columns:1fr}.card-body p{min-height:auto}.footer{flex-direction:column}.footer>div:last-child{text-align:left}.article-page{padding:55px 6vw}.article-content{font-size:17px}.article-end{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* REBUILT HERO: clean photo, real HTML text, no inherited split-grid sizing */
.hero { display:flex; align-items:center; position:relative; isolation:isolate; min-height: min(900px, calc(100svh - 84px)); background:#ede6db url('/assets/hero-landscape.jpg') center center / cover no-repeat; overflow:hidden; }
.hero::before { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(250,247,240,.96) 0%, rgba(250,247,240,.91) 24%, rgba(250,247,240,.68) 43%, rgba(250,247,240,.20) 64%, transparent 83%); pointer-events:none; }
.hero-copy { box-sizing:border-box; display:block; width:min(750px, 58vw); max-width:none; min-width:0; padding:64px 0 76px 0; margin-left:clamp(30px, 7.2vw, 140px); position:relative; z-index:1; }
.hero .eyebrow { margin-bottom:24px; }
.hero h1 { font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(39px,4.0vw,67px); line-height:1.19; letter-spacing:-.04em; max-width:720px; margin:0 0 27px; overflow-wrap:normal; }
.hero h2 { font-size:clamp(18px,1.45vw,23px); line-height:1.45; font-weight:600; margin-bottom:27px; }
.hero p { max-width:610px; color:#25333b; font-size:clamp(14px,1.05vw,16px); line-height:1.65; margin-bottom:14px; }
.hero .button { background:#a88650; padding:16px 26px; margin-top:17px; }
.hero .button:hover { background:#876b42; }
@media(max-width:900px){.hero{min-height:730px;background-position:61% center}.hero-copy{width:min(650px,85vw);margin-left:6vw}.hero::before{background:linear-gradient(90deg,rgba(250,247,240,.97),rgba(250,247,240,.83) 55%,rgba(250,247,240,.25))}.hero h1{font-size:clamp(34px,6vw,55px)}}
@media(max-width:600px){.hero{min-height:750px;align-items:flex-start;background-position:67% center}.hero::before{background:linear-gradient(180deg,rgba(250,247,240,.97) 0%,rgba(250,247,240,.91) 48%,rgba(250,247,240,.48) 75%,rgba(250,247,240,.10) 100%)}.hero-copy{width:auto;margin:0 22px;padding:54px 0 220px}.hero h1{font-size:clamp(32px,8vw,43px);line-height:1.22}.hero h1 br{display:none}.hero h2{font-size:17px;margin-bottom:18px}.hero p{font-size:14px;line-height:1.55;margin-bottom:10px}.hero .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:18px}.hero .button{margin-top:10px}}

/* V6: transparent overlay, with unblurred source photograph. */
.hero { background-image:url('/assets/hero-clean.jpg'); background-position:center 44%; }
.hero::before { background:linear-gradient(90deg, rgba(250,247,240,.68) 0%,rgba(250,247,240,.45) 28%,rgba(250,247,240,.14) 48%,rgba(250,247,240,0) 67%); }
@media(max-width:900px){.hero{background-position:58% center}.hero::before{background:linear-gradient(90deg,rgba(250,247,240,.82),rgba(250,247,240,.48) 62%,rgba(250,247,240,.08))}}
@media(max-width:600px){.hero{background-position:66% center}.hero::before{background:linear-gradient(180deg,rgba(250,247,240,.90),rgba(250,247,240,.72) 55%,rgba(250,247,240,.12) 100%)}}

/* V7 — keep the 16:9 photograph at its native proportions on wide screens.
   No forced width/height scaling or stretched background image. */
@media (min-width:901px) {
  .hero {
    display:flex;
    height:auto;
    min-height:max(760px, 56.25vw);
    background-size:cover;
    background-position:center center;
  }
  .hero-copy { flex:0 0 auto; }
}
@media (min-width:601px) and (max-width:900px) {
  .hero { min-height:780px; background-size:cover; background-position:62% center; }
}
@media (max-width:600px) {
  .hero { min-height:790px; background-size:cover; background-position:65% center; }
}

/* V8: image zoomed out on an expanded canvas; avoid browser enlargement. */
.hero{background-image:url('/assets/hero-zoomed-out.jpg')!important;background-size:cover!important;background-position:center center!important;min-height:760px!important;}
.hero::before{background:linear-gradient(90deg,rgba(250,247,240,.58),rgba(250,247,240,.28) 30%,rgba(250,247,240,0) 62%)!important;}
@media(max-width:900px){.hero{min-height:720px!important;background-position:57% center!important}}
@media(max-width:600px){.hero{min-height:790px!important;background-position:66% center!important}.hero::before{background:linear-gradient(180deg,rgba(250,247,240,.87),rgba(250,247,240,.63) 60%,rgba(250,247,240,.1))!important}}

/* V9: clean hero override. Image and container use matching 16:9 geometry. */
.hero {
  display:flex !important; align-items:center !important;
  width:100% !important; height:auto !important;
  min-height:0 !important; aspect-ratio:16 / 9 !important;
  background-image:url('/assets/hero-v9.jpg') !important;
  background-repeat:no-repeat !important;
  background-size:100% 100% !important;
  background-position:center center !important;
}
.hero::before {background:linear-gradient(90deg,rgba(250,247,240,.67) 0%,rgba(250,247,240,.36) 34%,rgba(250,247,240,0) 64%) !important;}
.hero-copy {width:min(750px,52vw) !important; margin-left:clamp(28px,7vw,135px) !important; padding:55px 0 !important;}
@media(max-width:900px){
 .hero{aspect-ratio:auto !important;min-height:720px !important;background-size:cover !important;background-position:61% center !important;}
 .hero-copy{width:min(660px,82vw) !important;margin-left:6vw !important;}
}
@media(max-width:600px){
 .hero{min-height:810px !important;align-items:flex-start !important;background-position:64% center !important;}
 .hero-copy{width:calc(100% - 44px) !important;margin:0 22px !important;padding:48px 0 210px !important;}
 .hero::before{background:linear-gradient(180deg,rgba(250,247,240,.96),rgba(250,247,240,.82) 55%,rgba(250,247,240,.08)) !important;}
}

/* V10: pixel-faithful desktop reference. No CSS zoom, stretching, side panels or gradients. */
@media (min-width:901px) {
 .hero {position:relative!important;display:block!important;min-height:0!important;height:auto!important;aspect-ratio:1849 / 765!important;background-image:url('/assets/hero-reference-desktop.jpg')!important;background-position:center center!important;background-size:100% 100%!important;background-repeat:no-repeat!important;}
 .hero::before {display:none!important;}
 .hero-copy {position:absolute!important;inset:0!important;width:100%!important;margin:0!important;padding:0!important;pointer-events:none!important;opacity:0!important;}
 .hero-copy a {pointer-events:auto!important;}
 .hero-reference-link {position:absolute;display:block;left:8.0%;top:78.4%;width:15.4%;height:7.4%;z-index:3;}
}
@media (max-width:900px) {.hero-reference-link{display:none}}

/* V11 mobile-specific hero: desktop reference untouched */
.mobile-hero{display:none}
@media(max-width:600px){
  .hero{display:none!important}
  .mobile-hero{display:block;background:#f8f6f1;color:#122a3a;overflow:hidden}
  .mobile-hero-copy{padding:34px 22px 26px;max-width:540px;margin:0 auto}
  .mobile-hero .eyebrow{font-size:9px;line-height:1.65;letter-spacing:.115em;margin-bottom:18px;color:#a27e4e}
  .mobile-hero h1{font-size:clamp(30px,8.3vw,43px);line-height:1.2;letter-spacing:-.045em;margin-bottom:19px}
  .mobile-hero h2{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(16px,4.2vw,20px);line-height:1.45;font-weight:600;color:#a17d4b;margin-bottom:19px}
  .mobile-hero p{font-size:14px;line-height:1.65;margin-bottom:13px;color:#293d4b}
  .mobile-hero .button{background:#ac8853;color:white;text-transform:uppercase;letter-spacing:.11em;font-size:11px;margin-top:15px;min-height:48px;gap:25px}
  .mobile-hero-image{display:block;width:100%;height:auto;object-fit:contain}
  .site-header{min-height:70px;height:auto;padding:13px 22px}
  .menu-toggle{min-height:44px;padding:8px;cursor:pointer}
  .main-nav.open{z-index:20}
  .section{padding-top:65px;padding-bottom:65px}
  .article-page{padding:44px 22px 70px}
  .article-page img{max-width:100%;height:auto}
}

/* v12: Long-form editorial readability */
.article-content h2{font-size:clamp(1.25rem,2.4vw,1.65rem);line-height:1.4;margin:2.2rem 0 1rem;color:#173040}
.article-content p{line-height:1.85;margin:0 0 1.3rem}
.article-content .article-original{margin-top:3rem;padding-top:1.3rem;border-top:1px solid #dedbd5;font-size:.95rem}
.article-content .article-original a{color:#a37b3e}

/* V13: targeted image-framing corrections; preserve V12 layout and copy. */
/* Show all artwork (including top-of-image lettering) on first two Perspectives cards. */
.article-card[href="/perspectives/founders-paradox/"] .card-image,
.article-card[href="/perspectives/three-problems/"] .card-image {
  background-size:contain; background-repeat:no-repeat; background-position:center center;
  background-color:#f7f6f2;
}
/* Never crop the full-size feature images on either desktop or mobile. */
.article-page .article-feature[src="/assets/founder.jpg"],
.article-page .article-feature[src="/assets/three-patterns.jpg"] {
  max-height:none; height:auto; object-fit:contain; object-position:center center;
}
/* iPhone landscape: use the approved responsive text + uncropped three-hiker image.
   This avoids the desktop background-cover crop that hides the landscape. */
@media (orientation:landscape) and (max-width:950px) and (max-height:600px) {
  .hero {display:none!important;}
  .mobile-hero {display:block!important;background:#f8f6f1;color:#122a3a;overflow:hidden;}
  .mobile-hero-copy {padding:32px 5vw 24px;max-width:740px;margin:0 auto;}
  .mobile-hero .eyebrow {font-size:9px;letter-spacing:.115em;margin-bottom:15px;color:#a27e4e;}
  .mobile-hero h1 {font-size:clamp(30px,5vw,43px);line-height:1.2;letter-spacing:-.04em;margin-bottom:15px;}
  .mobile-hero h2 {font-family:'DM Sans',Arial,sans-serif;font-size:18px;font-weight:600;color:#a17d4b;margin-bottom:15px;}
  .mobile-hero p {font-size:14px;line-height:1.65;margin-bottom:12px;color:#293d4b;}
  .mobile-hero .button {background:#ac8853;color:#fff;min-height:46px;}
  .mobile-hero-image {display:block;width:100%;height:auto;object-fit:contain;}
}
