:root{
  --navy:#002659; --navy-2:#0B3470; --blue:#0370FE; --amber:#F2A11F;
  --ink:#14213A; --slate:#4A5A70; --mute:#7A8799;
  --paper:#F3F5F8; --white:#FFFFFF; --rule:#D5DCE5;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Public Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --wrap:1180px; --gut:clamp(20px,4vw,40px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-underline-offset:3px}
a:hover{color:var(--navy)}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{left:10px}

/* Type */
h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--navy);letter-spacing:-.01em;margin:0}
h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02}
h2{font-size:clamp(1.9rem,3.6vw,2.75rem);line-height:1.1}
h3{font-size:1.5rem;line-height:1.2}
p{margin:0 0 1em;max-width:68ch}
.lede{font-size:1.25rem;line-height:1.55;color:var(--slate)}
.small{font-size:.9rem;color:var(--slate)}

/* Header */
.site-head{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--rule)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.brand img{height:40px;width:auto}
.nav{display:flex;align-items:center;gap:4px}
.nav a{font-size:.95rem;font-weight:500;color:var(--ink);text-decoration:none;padding:8px 12px;border-radius:6px}
.nav a:hover{background:var(--paper);color:var(--navy)}
.nav a[aria-current=page]{color:var(--navy);box-shadow:inset 0 -2px 0 var(--amber);border-radius:0}
.nav .btn{margin-left:10px}
.menu-toggle{display:none}
.menu-btn{display:none;cursor:pointer;font-weight:600;color:var(--navy);padding:8px 12px;border:1px solid var(--rule);border-radius:6px;font-size:.95rem}

/* Buttons */
.btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:1rem;line-height:1;padding:15px 22px;border-radius:6px;text-decoration:none;border:2px solid var(--navy);cursor:pointer}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:var(--navy-2);color:#fff}
.btn-quiet{background:transparent;color:var(--navy)}
.btn-quiet:hover{background:var(--paper);color:var(--navy)}
.nav .btn{padding:11px 16px;font-size:.95rem;color:#fff}
.nav .btn:hover{background:var(--navy-2);color:#fff}
.nav .btn[aria-current=page]{color:#fff;box-shadow:none;border-radius:6px}
.on-navy .btn-primary{background:var(--amber);border-color:var(--amber);color:var(--navy)}
.on-navy .btn-primary:hover{background:#FFB940;border-color:#FFB940}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* Sections */
section{padding:clamp(64px,9vw,112px) 0}
.paper{background:var(--paper)}
.on-navy{background:var(--navy);color:#DCE5F2}
.on-navy h2,.on-navy h3{color:#fff}
.on-navy a{color:#fff}

/* Hero */
.hero{padding:clamp(56px,8vw,96px) 0 clamp(64px,8vw,104px);background:var(--white)}
.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,72px);align-items:start}
.hero-grid .lede{margin-top:4px}
.hero .ask{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.8vw,2.1rem);color:var(--mute);margin:0 0 6px;line-height:1.2}
.hero h1{font-size:clamp(2.9rem,7.4vw,6rem);line-height:1}
.hero .rule{width:120px;height:4px;background:var(--amber);margin:28px 0 28px;border-radius:2px}
.hero .lede{max-width:60ch}
.hero-figure{margin:56px 0 0}

/* Page intro (inner pages) */
.intro{padding:clamp(56px,8vw,96px) 0 clamp(40px,6vw,64px);border-bottom:1px solid var(--rule)}
.kicker{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--slate);margin:0 0 14px}
.intro h1{font-size:clamp(2.3rem,5vw,3.8rem);max-width:24ch}
.intro .lede{margin-top:24px}

/* Figures */
figure{margin:0}
.shot{border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,38,89,.06),0 18px 40px -18px rgba(0,38,89,.28)}
figcaption{font-size:.9rem;color:var(--slate);margin-top:14px;max-width:70ch}
figcaption strong{color:var(--navy);font-weight:600}

/* Split layouts */
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,80px);align-items:start}
.split.even{grid-template-columns:1fr 1fr}
.split.media-left{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center}
.split.media-right{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
.split h2{margin-bottom:20px}

/* Decision areas list */
.areas{list-style:none;margin:48px 0 0;padding:0;border-top:1px solid var(--rule)}
.areas li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);padding:40px 0;border-bottom:1px solid var(--rule)}
.areas .name{font-family:var(--sans);font-weight:700;font-size:.95rem;color:var(--blue);margin:0 0 10px}
.areas .q{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.2;color:var(--navy);margin:0}
.areas p{margin:0 0 14px;color:var(--slate)}
.more{font-weight:600;text-decoration:none;border-bottom:2px solid var(--amber);color:var(--navy);padding-bottom:2px}
.more:hover{color:var(--blue)}

/* Statement band */
.statement{font-family:var(--serif);font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.18;color:#fff;max-width:32ch;margin:0}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);margin-top:56px;padding-top:40px;border-top:1px solid rgba(255,255,255,.2)}
.principles h3{font-size:1.3rem;margin-bottom:10px}
.principles p{color:#C6D3E6;font-size:1rem;margin:0}
.principles.light{margin-top:0;border-top-color:var(--rule)}
.principles.light p{color:var(--slate)}

/* Question ledger */
.ledger{list-style:none;margin:32px 0 0;padding:0;columns:2;column-gap:clamp(32px,5vw,64px)}
.ledger li{break-inside:avoid;padding:16px 0 16px 28px;border-top:1px solid var(--rule);position:relative;font-size:1.02rem}
.ledger li::before{content:"?";position:absolute;left:0;top:14px;font-family:var(--serif);font-size:1.3rem;color:var(--amber);font-weight:600}

/* Viability spectrum */
.spectrum{display:flex;flex-wrap:wrap;margin:36px 0 12px;border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff}
.spectrum span{flex:1 1 0;min-width:110px;text-align:center;padding:18px 8px;font-family:var(--serif);font-size:1.25rem;color:var(--navy);border-right:1px solid var(--rule)}
.spectrum span:last-child{border-right:0}
.spectrum span:nth-child(1){background:#E3EEFF}.spectrum span:nth-child(2){background:#E8F1FF}.spectrum span:nth-child(3){background:#EDF3FE}
.spectrum span:nth-child(4){background:#F1F6FE}.spectrum span:nth-child(5){background:#F5F8FD}.spectrum span:nth-child(6){background:#F9FBFE}

/* Decision package flow (true sequence) */
.flow{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);counter-reset:f}
.flow li{counter-increment:f;position:relative;padding:22px 28px 24px 0;border-top:3px solid var(--navy)}
.flow li::after{content:"";position:absolute;top:-9px;right:14px;width:14px;height:14px;border-top:3px solid var(--amber);border-right:3px solid var(--amber);transform:rotate(45deg)}
.flow li:last-child::after{display:none}
.flow b{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(1.4rem,1.7vw,1.9rem);color:var(--navy);line-height:1.1;margin-bottom:8px}
.flow b::before{content:counter(f) ". ";color:var(--amber)}
.flow span{color:var(--slate);font-size:.98rem}

/* Differentiators */
.principles.diff{grid-template-columns:repeat(4,1fr)}
.principles.diff h3{font-size:1.45rem;color:#fff;padding-left:14px;border-left:3px solid var(--amber)}
.principles.diff p{padding-left:17px}

/* Sources */
.sources{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:36px;border-top:1px solid var(--rule)}
.sources div{padding:22px 24px 22px 0;border-bottom:1px solid var(--rule)}
.sources b{display:block;font-family:var(--serif);font-weight:500;font-size:1.3rem;color:var(--navy)}
.sources span{font-size:.95rem;color:var(--slate)}

/* Steps (true sequence) */
.steps{list-style:none;counter-reset:s;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,36px)}
.steps li{counter-increment:s;border-top:3px solid var(--navy);padding-top:18px}
.steps li::before{content:counter(s);font-family:var(--serif);font-size:2.2rem;line-height:1;color:var(--amber);display:block;margin-bottom:10px}
.steps h3{font-size:1.25rem;margin-bottom:8px}
.steps p{font-size:.98rem;color:var(--slate);margin:0}

/* Founding */
.founding{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,80px);align-items:center}
.founder-card{background:#fff;border:1px solid var(--rule);border-left:4px solid var(--amber);border-radius:8px;padding:28px 30px}
.founder-card .label{font-size:.9rem;color:var(--slate);margin:0 0 6px}
.partner-logo{max-height:88px;width:auto;margin:10px 0 14px}
.founder-card .inst{font-family:var(--serif);font-size:1.8rem;color:var(--navy);line-height:1.15;margin:0 0 10px}

/* People */
.people{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);margin-top:40px}
.person{border-top:3px solid var(--navy);padding-top:20px}
.person h3{margin-bottom:4px}
.person .role{color:var(--blue);font-weight:600;font-size:.95rem;margin-bottom:14px}

/* Form */
.form-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,80px);align-items:start}
form{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:clamp(24px,4vw,40px)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{margin-bottom:20px}
label{display:block;font-weight:600;font-size:.95rem;margin-bottom:6px;color:var(--ink)}
label .opt{font-weight:400;color:var(--mute)}
input,select,textarea{width:100%;font:inherit;font-size:1rem;color:var(--ink);padding:12px 14px;border:1px solid #B9C4D2;border-radius:6px;background:#fff}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(3,112,254,.18)}
textarea{min-height:120px;resize:vertical}
.hint{font-size:.85rem;color:var(--slate);margin-top:6px}
form .btn{width:100%;margin-top:6px}
.checklist{list-style:none;padding:0;margin:28px 0 0}
.checklist li{padding:12px 0 12px 30px;border-top:1px solid var(--rule);position:relative}
.checklist li::before{content:"";position:absolute;left:4px;top:20px;width:12px;height:7px;border-left:2.5px solid var(--amber);border-bottom:2.5px solid var(--amber);transform:rotate(-45deg)}

/* CTA band */
.cta{border-top:1px solid var(--rule);background:var(--white)}
.cta .wrap{display:flex;justify-content:space-between;align-items:end;gap:32px;flex-wrap:wrap}
.cta h2{max-width:18ch}
.cta p{color:var(--slate);margin:16px 0 0}

/* Footer */
.site-foot{background:#001B42;color:#AFBED3;padding:56px 0 36px;font-size:.95rem}
.site-foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.site-foot img{height:34px;width:auto;margin-bottom:16px}
.site-foot h4{font-family:var(--sans);font-size:.95rem;color:#fff;margin:0 0 12px;font-weight:600}
.site-foot a{color:#DCE5F2;text-decoration:none}
.site-foot a:hover{color:#fff;text-decoration:underline}
.site-foot ul{list-style:none;margin:0;padding:0}
.site-foot li{margin-bottom:8px}
.site-foot .legal{border-top:1px solid rgba(255,255,255,.14);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.85rem}

/* Prose page */
.prose{max-width:72ch}
.prose h2{font-size:1.8rem;margin:40px 0 14px}

/* Responsive */
@media (max-width:980px){
  .menu-btn{display:block}
  .nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;padding:12px var(--gut) 20px}
  .nav a{padding:12px 4px}
  .nav a[aria-current=page]{box-shadow:none;color:var(--blue)}
  .nav .btn{margin:10px 0 0;text-align:center}
  .menu-toggle:checked ~ .nav{display:flex}
  .hero-grid,.split,.split.even,.split.media-left,.split.media-right,.areas li,.founding,.form-grid{grid-template-columns:1fr}
  .split.media-left figure{order:2}
  .principles,.principles.diff,.sources,.flow{grid-template-columns:1fr 1fr}
  .flow li:nth-child(2)::after{display:none}
  .steps{grid-template-columns:1fr 1fr}
  .site-foot .cols{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  body{font-size:1rem}
  .ledger{columns:1}
  .principles,.principles.diff,.sources,.steps,.people,.row,.flow{grid-template-columns:1fr}
  .flow li::after{display:none}
  .site-foot .cols{grid-template-columns:1fr}
  .spectrum span{min-width:33%;font-size:1.1rem}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.fig-narrow{max-width:920px}
.fig-native{max-width:1025px}
.fig-pair{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,9fr);gap:clamp(24px,4vw,48px);align-items:start;margin-top:56px}
@media (max-width:980px){.fig-pair{grid-template-columns:1fr}.fig-pair figure:first-child{max-width:450px}}
.split.glance{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:center}
.glance-fig{max-width:356px;justify-self:center;width:100%}
@media (max-width:980px){.split.glance{grid-template-columns:1fr}.glance-fig{justify-self:start}}
