
:root{
  --navy:#0d1b23;
  --navy2:#142a35;
  --cream:#f4efe5;
  --paper:#faf7f0;
  --gold:#c9a95f;
  --gold2:#e1c67d;
  --ink:#132630;
  --line:#d7cfc2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(1180px,calc(100% - 40px));margin:auto}

.site-header{position:sticky;top:0;z-index:30;background:rgba(13,27,35,.97);color:#fff;border-bottom:1px solid rgba(201,169,95,.25)}
.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand-lockup,.footer-brand{display:flex;align-items:center;gap:14px}
.brand-lockup img,.footer-brand img{width:86px}
.brand{font:700 15px/1 "Libre Baskerville",serif;letter-spacing:.15em;white-space:nowrap}
.tagline{margin-top:7px;font-size:8px;letter-spacing:.17em;color:#d9d4cb}
.nav{display:flex;gap:18px;align-items:center;font-size:10.5px}
.nav a:hover{color:var(--gold2)}
.nav-cta{border:1px solid var(--gold);padding:11px 15px;text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:.12em}

.hero{background:var(--navy);color:#fff}
.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;min-height:535px}
.hero-copy{padding:72px 45px 68px 0;display:flex;flex-direction:column;justify-content:center}
.eyebrow{margin:0 0 17px;color:var(--gold2);font-size:11px;font-weight:700;letter-spacing:.23em}
.eyebrow.dark{color:var(--ink)}
.hero h1{font:400 clamp(38px,4.15vw,61px)/1.14 "Libre Baskerville",serif;text-transform:uppercase;letter-spacing:.045em;margin:0 0 24px}
.hero-lead{font-size:16px;line-height:1.7;color:#edf0f1}
.actions{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 21px;text-transform:uppercase;font-size:10.5px;font-weight:700;letter-spacing:.095em}
.gold{background:linear-gradient(90deg,var(--gold2),#e6cb8a);color:#15252e}
.outline{border:1px solid var(--gold);color:#fff}
.muted{opacity:.62;cursor:default}

.hero-visual{position:relative;overflow:hidden;min-height:535px;background:
radial-gradient(circle at 68% 34%,rgba(225,198,125,.12),transparent 24%),
linear-gradient(135deg,#122630 0%,#0b171f 62%,#08131a 100%)}
.technical-grid{position:absolute;inset:0;background-image:
linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
background-size:42px 42px;opacity:.8}
.contours{position:absolute;inset:0;width:100%;height:100%;opacity:.23}
.contours path{fill:none;stroke:#82949d;stroke-width:1.2}
.trajectory-main{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 0 8px rgba(225,198,125,.35))}
.trajectory-main path{fill:none;stroke:var(--gold2);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.trajectory-main circle{fill:var(--gold2);filter:drop-shadow(0 0 5px rgba(226,191,105,.18))}
.hero-label{position:absolute;z-index:5;color:#f2eadf;font:400 10.5px/1.45 "Libre Baskerville",serif;letter-spacing:.14em;pointer-events:none;text-transform:uppercase}
.hero-label span{display:inline-block;background:transparent;padding:0;color:#f1e7d8;text-shadow:0 2px 8px rgba(0,0,0,.48)}
.hero-label.current{
  left:7%;
  top:70%;
  text-align:left;
  max-width:150px;
}
.hero-label.intervention{
  left:37%;
  top:48%;
  text-align:center;
  max-width:190px;
}
.hero-label.outcome{
  right:6%;
  top:7%;
  text-align:right;
  max-width:180px;
  font-size:12px;
}
.hero-side-copy{position:absolute;right:5.5%;bottom:7%;color:var(--gold2);font-size:9px;line-height:1.75;letter-spacing:.18em}

.strip{background:var(--cream)}
.framework-grid{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line)}
.framework-grid div{text-align:center;padding:25px 18px;border-right:1px solid var(--line)}
.framework-grid div:last-child{border-right:0}
.framework-grid img{width:40px;height:40px;margin:0 auto 10px;object-fit:contain}
.framework-grid img.strategy-icon{width:31px;height:31px;margin-top:5px;margin-bottom:14px}
.framework-grid span{display:block;font:400 10.5px/1.55 "Libre Baskerville",serif;text-transform:uppercase;letter-spacing:.14em}

.section{padding:72px 0}
.journal{background:linear-gradient(180deg,#faf7f0,#f1ebe1)}
.journal-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px;align-items:center}
.books{position:relative;min-height:500px}
.books>img{position:absolute;bottom:0;z-index:2;filter:drop-shadow(0 24px 20px rgba(0,0,0,.18))}
.hardcover{width:54%;left:4%}
.paperback{width:39%;right:2%;bottom:10px!important}
.books-line{position:absolute;z-index:1;width:112%;left:-5%;bottom:14%}
.trajectory{overflow:visible}
.trajectory path{fill:none;stroke:var(--gold2);stroke-width:2.3}
.trajectory circle{fill:var(--gold2)}
.journal h2,.organizations h2,.approach h2,.why h2,.contact h2{font:400 30px/1.35 "Libre Baskerville",serif;text-transform:uppercase;letter-spacing:.085em;margin:0 0 17px}
.journal h3{font:400 13px/1.5 "Libre Baskerville",serif;text-transform:uppercase;letter-spacing:.15em;margin:0 0 18px}
.journal-copy>p{font-size:16px;line-height:1.72;color:#46525a}
.edition-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.edition-grid strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.edition-grid p{color:#626b70;line-height:1.55;min-height:52px}

.organizations{background:var(--navy);color:#fff}
.org-grid{display:grid;grid-template-columns:1fr 1fr;min-height:430px}
.org-copy{padding:62px 62px 58px 0;display:flex;flex-direction:column;justify-content:center}
.org-copy p{font-size:15px;line-height:1.72;color:#e1e6e8}
.org-image{position:relative;overflow:hidden;min-height:430px}
.org-image>img{width:100%;height:100%;object-fit:cover;object-position:center center}
.org-image:before{content:"";position:absolute;z-index:1;inset:0;
background:
linear-gradient(90deg,
rgba(13,27,35,.98) 0%,
rgba(13,27,35,.82) 9%,
rgba(13,27,35,.18) 22%,
rgba(13,27,35,.06) 48%,
rgba(13,27,35,.18) 72%,
rgba(13,27,35,.84) 91%,
rgba(13,27,35,.98) 100%);
pointer-events:none}
.org-image:after{content:"";position:absolute;z-index:1;inset:0;
background:linear-gradient(90deg,rgba(13,27,35,.08) 38%,rgba(13,27,35,.78) 100%);
pointer-events:none}
.org-quote{position:absolute;z-index:3;right:36px;bottom:44px;width:60%;font:italic 22px/1.55 "Libre Baskerville",serif}
.org-quote span{display:block;margin-top:18px;color:var(--gold2);font:400 9px/1 Inter,sans-serif;letter-spacing:.22em}

.approach{background:#f7f2e8}
.approach-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px}
.approach p{font-size:16px;line-height:1.75;color:#4c575d}
.emphasis{font:400 18px/1.6 "Libre Baskerville",serif!important;color:var(--navy)!important}
.path-band{margin-top:44px;display:grid;grid-template-columns:160px 1fr 140px;align-items:center;font-size:9px;font-weight:700;letter-spacing:.18em}
.path-band span:last-child{text-align:right}
.path-band svg{width:100%}

.why{background:#faf7f0}
.why-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:78px;align-items:start}
.why-copy p{font-size:15px;line-height:1.72;color:#4a555c}
.why-copy strong{color:var(--ink)}
.why-principle{margin:22px 0!important;padding:16px 18px;border-left:3px solid var(--gold);background:rgba(201,169,95,.11);font-weight:500!important;color:#263840!important}
.why-values{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #c1baaf;align-items:start}
.why-values>div{text-align:center;padding:26px 14px;border-right:1px solid #d0c8bc;min-height:165px}
.why-values img{width:42px;height:42px;margin:0 auto 13px}
.why-values strong,.why-values span{display:block;text-transform:uppercase;letter-spacing:.13em}
.why-values strong{font:400 12px/1.3 "Libre Baskerville",serif}
.why-values span{font-size:8.5px;line-height:1.5;margin-top:7px;color:#727b80}
.why-values blockquote{grid-column:1/-1;margin:34px 0 0;padding:24px 20px 0;border-top:1px solid var(--line);text-align:center;font:italic 16px/1.55 "Libre Baskerville",serif;color:#23353f}
.why-values cite{display:block;margin-top:12px;font:600 9px/1 Inter,sans-serif;letter-spacing:.18em;color:#6c787e}

.contact{background:var(--navy2);color:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px}
.contact h2{font-size:28px}
.contact p{font-size:15px;line-height:1.7;color:#d8dfe1}
.contact-note{font-size:13px!important;color:#97a5aa!important}

.footer{background:#08151c;color:#fff;padding:33px 0 24px;border-top:1px solid rgba(201,169,95,.28)}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer-links{display:flex;gap:20px;font-size:10px;flex-wrap:wrap}
.footer-bottom{margin-top:27px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:9px;color:#87949a}
.footer-bottom span:last-child{color:var(--gold2);letter-spacing:.2em}

@media(max-width:980px){
  .nav{display:none}
  .hero-grid,.journal-grid,.org-grid,.approach-grid,.why-grid,.contact-grid{grid-template-columns:1fr}
  .hero-copy{padding:64px 0 46px}
  .hero-visual{min-height:430px}
  .books{min-height:450px}
  .org-copy{padding:56px 0}
  .path-band{grid-template-columns:120px 1fr 120px}
  .why-values{border-left:0}
}
@media(max-width:620px){
  .container{width:min(100% - 26px,1180px)}
  .site-header{position:relative}
  .brand-lockup img,.footer-brand img{width:65px}
  .tagline{font-size:7px}
  .hero h1{font-size:34px}
  .hero-visual{min-height:370px}
  .hero-label.current{left:3%;top:71%;max-width:120px}
  .hero-label.intervention{left:33%;top:49%;transform:none;max-width:145px}
  .hero-label.outcome{right:4%;top:7%;font-size:10px;max-width:135px}
  .hero-side-copy{display:none}
  .framework-grid,.edition-grid,.why-values{grid-template-columns:1fr}
  .framework-grid div{border-right:0;border-bottom:1px solid var(--line)}
  .books{min-height:355px}
  .hardcover{width:58%;left:0}
  .paperback{width:42%;right:0}
  .org-quote{width:74%;right:20px}
  .path-band{grid-template-columns:1fr}
  .path-band span{text-align:center!important}
  .why-values{border-left:0}
  .why-values>div{border-right:0;border-bottom:1px solid var(--line)}
  .footer-grid{display:block}
  .footer-links{margin-top:22px}
  .footer-bottom{display:block}
  .footer-bottom span:last-child{display:block;margin-top:12px}
}

/* FORCE TRAJECTORY V3.1 — explicit visual revision */
.path-band .trajectory path{stroke-width:2.6}
.path-band .trajectory circle:last-child{r:7}

/* FORCE TRAJECTORY V3.2 — hero labels cleared from trajectory + organization image edge cleanup */



/* FORCE TRAJECTORY V3.3 — hero callouts moved fully off trajectory; organizations edge artifacts masked */

.hero-trajectory{position:absolute;inset:4% 3% 4% 3%;width:94%;height:92%;overflow:visible}

.hero-grid path{stroke:rgba(255,255,255,.045);stroke-width:1}
.contours path{fill:none;stroke:rgba(137,157,166,.24);stroke-width:1.4}
.trajectory-main path{fill:none;stroke:var(--gold2);stroke-width:3.1;stroke-linecap:round}
.trajectory-main circle{fill:var(--gold2)}

.hero-label.outcome{
  border:0!important;
  padding:0!important;
}

/* V3.7: clean hero labels — no connector lines */
.hero-label.current:before,
.hero-label.intervention:before,
.hero-label.outcome:before,
.hero-label.current:after,
.hero-label.intervention:after,
.hero-label.outcome:after{
  content:none!important;
  display:none!important;
}
.hero-label.outcome{
  border:0!important;
  padding:0!important;
}

.hero-label.intervention{transform:none!important}
