:root{--paper:#f2efe7;
--paper-bright:#faf8f1;
--ink:#252d2b;
--ink-soft:#53615d;
--muted:#626b66;
--line:#d0cec4;
--forest:#314c46;
--forest-deep:#233632;
--coral:#a94734;
--gold:#e1b34d;
--serif:Georgia,'Times New Roman',serif;
--sans:Arial,'Helvetica Neue',sans-serif;
--mono:'Cascadia Mono','Courier New',monospace;
--wrap:1240px;
--gutter:clamp(24px,6.1vw,92px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;
scroll-padding-top:80px}
body{margin:0;
background:var(--paper);
color:var(--ink);
font-family:var(--sans);
font-size:16px;
line-height:1.65;
-webkit-font-smoothing:antialiased}
a{color:inherit;
text-decoration:none}
button,input{font:inherit}
button{color:inherit}
.wrap{width:min(calc(100% - var(--gutter)*2),var(--wrap));
margin-inline:auto}
.skip-link{position:fixed;
z-index:30;
top:8px;
left:8px;
transform:translateY(-150%);
padding:12px 16px;
background:var(--ink);
color:white}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid var(--coral);
outline-offset:4px}
.site-header{height:78px;
padding:0 var(--gutter);
display:flex;
align-items:center;
gap:44px;
border-bottom:1px solid rgba(37,45,43,.16);
position:relative;
z-index:10}
.brand{display:flex;
align-items:center;
gap:10px;
font-size:10px;
font-weight:700;
line-height:1.1;
letter-spacing:1.7px}
.brand-mark{width:34px;
height:34px;
display:grid;
place-items:center;
border:1.5px solid var(--coral);
border-radius:50%;
color:var(--coral);
font-family:var(--serif);
font-size:22px;
font-weight:500}
.top-nav{display:flex;
align-items:center;
gap:clamp(18px,3vw,48px);
margin-left:auto}
.top-nav a,.nav-source{font-size:12px;
letter-spacing:.02em;
color:var(--ink-soft);
transition:color .2s}
.top-nav a:hover,.nav-source:hover{color:var(--coral)}
.nav-source{border-left:1px solid var(--line);
padding-left:26px}
.nav-source span{color:var(--coral)}
.menu-toggle,.mobile-nav{display:none}
.hero{min-height:665px;
display:grid;
grid-template-columns:1.05fr .95fr;
align-items:center;
padding-top:58px;
padding-bottom:18px;
position:relative}
.hero-copy{padding-bottom:54px;
position:relative;
z-index:1}
.eyebrow{font:500 10px/1.5 var(--mono);
letter-spacing:.11em;
color:var(--forest);
margin:0 0 22px;
text-transform:uppercase}
.issue-dot{display:inline-block;
width:7px;
height:7px;
background:var(--coral);
border-radius:50%;
margin-right:9px;
vertical-align:1px}
.issue-no{margin-left:14px;
color:#969990}
.hero h1,.sources-hero h1{font:500 clamp(48px,6vw,82px)/1.05 var(--serif);
letter-spacing:-.055em;
margin:0 0 27px;
max-width:690px}
.hero h1 em,.sources-hero h1 em,.opening-grid h2 em,.section h2 em,.closing-copy h2 em{font-weight:500;
color:var(--coral)}
.hero-deck{font-size:17px;
line-height:1.7;
color:var(--ink-soft);
max-width:520px;
margin:0 0 28px}
.text-link{display:inline-flex;
align-items:center;
gap:18px;
padding-bottom:6px;
border-bottom:1px solid var(--coral);
font-size:13px;
font-weight:600}
.text-link span{font-size:17px;
color:var(--coral)}
.hero-figure{margin:0 0 16px -8px;
align-self:center}
.hero-art{width:100%;
display:block;
filter:drop-shadow(0 16px 22px rgba(33,50,45,.08))}
.hero-figure figcaption{display:flex;
gap:16px;
align-items:center;
font-size:11px;
color:var(--muted);
padding:12px 2px}
.hero-figure figcaption span{font:10px var(--mono);
color:var(--coral)}
.hero-bottom{grid-column:1/-1;
display:grid;
grid-template-columns:repeat(3,1fr) auto;
padding-top:28px;
border-top:1px solid var(--line);
font:500 10px/1.5 var(--mono);
letter-spacing:.05em;
text-transform:uppercase;
color:var(--muted)}
.scroll-cue{font-size:22px;
color:var(--coral);
align-self:center}
.opening-band{background:var(--forest);
color:var(--paper);
padding:75px 0 80px}
.opening-grid{display:grid;
grid-template-columns:.6fr 1.1fr .65fr;
gap:48px;
align-items:start}
.eyebrow-light{color:#d5c28f}
.opening-grid h2,.section h2,.closing-copy h2{font:500 clamp(38px,4.4vw,60px)/1.12 var(--serif);
letter-spacing:-.04em;
margin:0 0 20px}
.opening-grid h2 em{color:var(--gold)}
.opening-lead{font-size:19px;
line-height:1.55;
max-width:510px;
margin:0}
.opening-note{font-size:13px;
line-height:1.75;
color:#d1d9d3;
margin:54px 0 0}
.section{padding-top:112px;
padding-bottom:116px}
.section-heading{display:flex;
justify-content:space-between;
align-items:end;
gap:48px;
margin-bottom:48px}
.section-heading .eyebrow{margin-bottom:18px}
.section h2{margin-bottom:0}
.section-intro{max-width:400px;
font-size:14px;
color:var(--ink-soft);
line-height:1.75;
margin:0 0 5px}
.stat-ribbon{display:grid;
grid-template-columns:repeat(3,1fr);
border-top:1px solid var(--line);
border-bottom:1px solid var(--line)}
.stat-item{padding:27px 30px 25px 0;
min-height:245px;
position:relative}
.stat-item+.stat-item{border-left:1px solid var(--line);
padding-left:30px}
.stat-kicker,.panel-overline{font:500 9px var(--mono);
letter-spacing:.09em;
color:var(--muted);
margin:0 0 17px}
.stat-value{font:500 clamp(42px,5vw,65px)/1 var(--serif);
letter-spacing:-.05em;
color:var(--coral);
margin:0 0 14px}
.stat-value span{font:500 16px var(--sans);
letter-spacing:0;
color:var(--ink)}
.stat-copy{font-size:12px;
line-height:1.6;
max-width:295px;
margin:0 0 27px}
.stat-copy a,.source-inline a,.war-figure p a{color:var(--forest);
border-bottom:1px solid var(--gold)}
.stat-foot{position:absolute;
bottom:23px;
left:0;
font:9px var(--mono);
color:var(--muted)}
.stat-item+.stat-item .stat-foot{left:30px}
.data-caution{display:flex;
gap:12px;
align-items:start;
color:var(--muted);
font-size:11px;
max-width:900px;
margin:18px 0 0}
.caution-mark{flex:0 0 17px;
height:17px;
border:1px solid var(--gold);
border-radius:50%;
display:grid;
place-items:center;
color:#927124;
font:10px var(--serif)}
.section-tint{background:#e8e5db}
.feature-grid{display:grid;
grid-template-columns:.92fr 1.08fr;
gap:clamp(50px,8vw,125px);
align-items:center}
.feature-copy h2{font-size:clamp(39px,4.2vw,56px);
margin-bottom:26px}
.feature-copy>p:not(.eyebrow):not(.source-inline){font-size:14px;
line-height:1.8;
color:var(--ink-soft);
margin:0 0 17px}
.source-inline{display:flex;
gap:20px;
font-size:11px;
margin:24px 0 0}
.food-visual{min-height:445px;
background:var(--forest);
color:var(--paper);
padding:30px;
display:grid;
grid-template-columns:1fr 1fr;
align-content:center;
gap:12px;
position:relative;
overflow:hidden}
.food-visual:before{content:"";
position:absolute;
width:380px;
height:380px;
border:1px solid rgba(236,229,207,.14);
border-radius:50%;
right:-110px;
top:-110px;
box-shadow:0 0 0 35px rgba(236,229,207,.025),0 0 0 70px rgba(236,229,207,.025)}
.food-stat{padding:23px 22px 20px;
background:rgba(248,246,236,.08);
border:1px solid rgba(248,246,236,.2);
position:relative;
z-index:1}
.food-stat-large{grid-row:span 2;
display:flex;
flex-direction:column;
justify-content:center}
.food-label{font:9px/1.55 var(--mono);
letter-spacing:.06em;
color:#d8d6c8;
display:block;
min-height:42px}
.food-stat strong{font:500 clamp(52px,7vw,88px)/1 var(--serif);
letter-spacing:-.07em;
color:var(--gold);
margin:14px 0 3px}
.food-stat-small strong{font-size:52px}
.food-unit{font-size:12px;
color:#f1ecdd}
.people-dots{height:60px;
margin-top:22px;
opacity:.8;
background-image:radial-gradient(circle,#e2b64e 2px,transparent 2.5px);
background-size:16px 14px;
background-position:0 0}
.food-source{font-size:10px;
color:#d8d6c8;
display:block;
line-height:1.5;
margin-top:14px}
.visual-footnote{position:absolute;
left:30px;
bottom:12px;
color:#d8d6c8;
font-size:9px;
z-index:1}
.section-heading-tight{margin-bottom:38px}
.distribution-panel{background:var(--paper-bright);
padding:35px 38px 24px;
border:1px solid var(--line)}
.distribution-top{display:flex;
align-items:start;
justify-content:space-between;
gap:24px}
.distribution-top h3{font:500 24px/1.25 var(--serif);
margin:0 0 6px}
.distribution-top p:last-child{font-size:10px;
color:var(--muted);
margin:0}
.segmented-control{display:flex;
border:1px solid var(--line);
padding:3px;
gap:3px}
.segment-button{border:0;
background:none;
padding:8px 14px;
font-size:11px;
color:var(--ink-soft);
cursor:pointer}
.segment-button[aria-pressed=true]{background:var(--forest);
color:white}
.distribution-chart{margin:33px 0 26px;
display:grid;
gap:24px}
.cohort-heading{display:flex;
justify-content:space-between;
gap:20px;
margin-bottom:8px}
.cohort-heading strong{font-size:12px}
.cohort-heading span{font:10px var(--mono);
color:var(--muted)}
.cohort-track{height:38px;
border:1px solid var(--line);
position:relative;
display:flex;
align-items:center;
background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),rgba(37,45,43,.07) calc(10% - 1px),rgba(37,45,43,.07) 10%)}
.cohort-fill{height:100%;
min-width:2px;
background:var(--cohort-color);
transition:width .45s cubic-bezier(.2,.8,.2,1)}
.cohort-track>b{position:absolute;
left:calc(var(--share,0)*1%);
margin-left:9px;
font:500 11px var(--mono)}
.cohort-track[aria-label] b{left:auto;
right:12px}
.distribution-reading{display:grid;
grid-template-columns:1fr auto;
gap:40px;
align-items:center;
border-top:1px solid var(--line);
padding-top:21px}
.distribution-reading>p{font-size:12px;
color:var(--ink-soft);
max-width:610px;
margin:0}
.ratio-callout{min-width:190px;
border-left:1px solid var(--line);
padding-left:24px}
.ratio-callout span,.ratio-callout small{display:block;
font:9px/1.5 var(--mono);
letter-spacing:.05em;
color:var(--muted)}
.ratio-callout strong{font:500 34px var(--serif);
color:var(--coral);
display:block}
.method-note{font-size:10px;
line-height:1.6;
color:var(--muted);
margin:17px 0 0}
.pull-quote{padding:86px 9%;
display:grid;
grid-template-columns:55px 1fr;
align-items:start;
gap:20px}
.quote-mark{font:90px/.8 var(--serif);
color:var(--gold)}
.pull-quote p{font:500 clamp(27px,3.5vw,45px)/1.27 var(--serif);
letter-spacing:-.03em;
margin:0;
max-width:760px}
.pull-quote p em{color:var(--coral)}
.quote-credit{grid-column:2;
font:9px var(--mono);
letter-spacing:.1em;
color:var(--muted)}
.section-dark{background:var(--forest-deep);
color:var(--paper)}
.resource-layout{display:grid;
grid-template-columns:.8fr 1.2fr;
gap:clamp(60px,10vw,150px);
align-items:center}
.resource-copy h2{font:500 clamp(40px,4.5vw,61px)/1.12 var(--serif);
letter-spacing:-.045em;
margin:0 0 23px}
.resource-copy h2 em{color:var(--gold)}
.resource-copy>p:not(.eyebrow){font-size:13px;
line-height:1.8;
color:#d2d9d3}
.resource-total{border-top:1px solid rgba(242,239,231,.3);
margin-top:30px;
padding-top:15px;
display:flex;
justify-content:space-between;
align-items:end;
font-size:11px;
color:#cdd5cf}
.resource-total strong{font:500 25px var(--serif);
color:var(--gold)}
.resource-total small{font:10px var(--sans);
color:var(--paper)}
.reset-button{border:0;
background:none;
color:var(--paper);
padding:15px 0 4px;
border-bottom:1px solid rgba(242,239,231,.4);
font-size:11px;
cursor:pointer}
.reset-button span{font-size:15px;
color:var(--gold);
margin-left:13px}
.allocation-visual{height:34px;
display:flex;
overflow:hidden;
border:1px solid rgba(242,239,231,.38);
margin-bottom:28px}
.allocation-segment{height:100%;
transition:width .2s ease}
.allocation-controls{display:grid;
gap:13px}
.allocation-row{display:grid;
grid-template-columns:minmax(120px,1fr) minmax(130px,1.1fr) 52px;
gap:17px;
align-items:center}
.allocation-row label{font-size:11px;
color:#e1e4dd;
display:flex;
align-items:center;
gap:10px}
.allocation-swatch{width:9px;
height:9px;
background:var(--area-color);
flex:0 0 auto}
.allocation-row output{font:500 14px var(--mono);
text-align:right;
color:white}
.allocation-row output small{font-size:9px;
color:#bec8c1;
margin-left:3px}
.allocation-row input{width:100%;
accent-color:var(--gold);
cursor:pointer}
.allocation-feedback{font-size:10px;
color:#bac7bf;
margin:21px 0 0;
min-height:20px}
.compact-section{display:grid;
grid-template-columns:1fr .8fr;
gap:100px;
align-items:start}
.compact-heading{display:grid;
grid-template-columns:50px 1fr;
gap:14px;
align-items:start}
.compact-heading h2{font-size:clamp(35px,4vw,52px)}
.section-number{font:11px var(--mono);
color:var(--coral);
padding-top:15px}
.compact-content p{font-size:13px;
line-height:1.85;
color:var(--ink-soft);
margin:0 0 18px}
.compact-content .text-link{margin-top:12px}
.housing-grid{display:grid;
grid-template-columns:.85fr 1.15fr;
gap:120px}
.housing-grid h2{font-size:clamp(40px,4.4vw,58px)}
.housing-copy p{font-size:13px;
line-height:1.85;
color:var(--ink-soft);
margin:0 0 20px}
.housing-principles{border-top:1px solid var(--line);
border-bottom:1px solid var(--line);
padding:16px 0;
margin-top:27px;
display:flex;
flex-wrap:wrap;
gap:10px 24px;
font:9px var(--mono);
color:var(--forest)}
.source-inline-link{display:inline-block;
margin-top:18px;
font-size:10px;
color:var(--forest);
border-bottom:1px solid var(--gold)}
.work-section{padding-top:112px;
padding-bottom:112px}
.work-top{display:flex;
justify-content:space-between;
align-items:end;
gap:50px;
margin-bottom:42px}
.work-top h2{font-size:clamp(41px,4.6vw,61px)}
.work-top>p{max-width:380px;
font-size:13px;
color:var(--ink-soft);
line-height:1.8;
margin-bottom:6px}
.work-figure{padding:31px 34px;
background:#e8e5db;
border-left:3px solid var(--coral)}
.work-bars{display:grid;
gap:22px}
.work-bar-row{display:grid;
grid-template-columns:210px 1fr 60px;
gap:22px;
align-items:center}
.work-bar-row>span{font-size:12px}
.work-bar-row>strong{font:500 18px var(--serif);
color:var(--forest)}
.work-track{height:17px;
background:rgba(49,76,70,.1);
position:relative}
.work-bar{height:100%;
background:var(--forest);
position:relative}
.work-bar:after{content:"";
position:absolute;
right:-3px;
top:-4px;
width:2px;
height:25px;
background:var(--forest)}
.work-bar.productivity{width:100%}
.work-bar.wage{width:52%;
background:var(--coral)}
.work-bar.wage:after{background:var(--coral)}
.work-period{display:flex;
justify-content:space-between;
align-items:center;
margin-top:25px;
padding-top:15px;
border-top:1px solid #c9c6bd}
.work-period b{font:10px var(--mono);
color:var(--coral)}
.work-period span{font-size:10px;
color:var(--muted)}
.environment-section{padding:100px 0;
background:#29423d;
color:var(--paper);
position:relative;
overflow:hidden}
.environment-section:after{content:"";
position:absolute;
width:52vw;
height:52vw;
border:1px solid rgba(242,239,231,.13);
border-radius:50%;
right:-23vw;
top:-16vw;
box-shadow:0 0 0 45px rgba(242,239,231,.025),0 0 0 90px rgba(242,239,231,.025)}
.environment-layout{display:grid;
grid-template-columns:.65fr 1.35fr;
gap:100px;
align-items:center;
position:relative;
z-index:1}
.climate-number{position:relative;
padding:33px 22px;
border:1px solid rgba(242,239,231,.28);
width:max-content;
min-width:235px}
.climate-number>span{font:500 86px/.95 var(--serif);
letter-spacing:-.08em;
color:var(--gold)}
.climate-number>small{font:22px var(--serif);
color:var(--gold)}
.climate-number p{font:10px/1.7 var(--mono);
color:#d3ddd5;
margin:20px 0 0}
.climate-line{height:4px;
width:110px;
background:var(--coral);
position:absolute;
right:-45px;
top:50%;
transform:rotate(-45deg)}
.environment-copy h2{font:500 clamp(40px,4.5vw,60px)/1.1 var(--serif);
letter-spacing:-.04em;
margin:0 0 23px}
.environment-copy h2 em{color:var(--gold)}
.environment-copy>p:not(.eyebrow){font-size:13px;
line-height:1.8;
color:#d6dfd9;
max-width:680px}
.environment-copy .source-inline-link{color:var(--gold);
border-color:rgba(225,179,77,.55)}
.war-section{display:grid;
grid-template-columns:1fr .8fr;
gap:50px 100px;
align-items:center}
.war-heading h2{font-size:clamp(40px,4.5vw,60px);
margin-bottom:20px}
.war-heading>p:last-child{max-width:560px;
font-size:13px;
color:var(--ink-soft);
line-height:1.85}
.war-figure{padding:28px;
border-top:2px solid var(--coral);
border-bottom:1px solid var(--line)}
.war-amount{font:500 clamp(44px,5.5vw,68px)/1 var(--serif);
letter-spacing:-.06em;
color:var(--forest)}
.war-amount>span{font-size:26px;
vertical-align:top;
margin-right:5px;
color:var(--coral)}
.war-amount small{display:block;
margin-top:10px;
font:10px var(--mono);
letter-spacing:.06em;
color:var(--muted)}
.war-growth{display:grid;
grid-template-columns:1fr;
gap:9px;
padding:18px 0 15px;
margin:8px 0 15px;
border-top:1px solid var(--line)}
.war-growth>div:first-child{display:flex;
justify-content:space-between;
align-items:center;
gap:12px}
.war-growth span{font:9px var(--mono);
letter-spacing:.04em;
color:var(--muted)}
.war-growth strong{font:500 18px var(--serif);
color:var(--coral)}
.war-growth-track{height:8px;
background:#dedbd1}
.war-growth-track i{display:block;
height:100%;
width:41%;
background:var(--coral)}
.war-figure p{font-size:10px;
color:var(--muted);
margin:0}
.nuclear-strip{grid-column:1/-1;
padding:23px 0 2px;
border-top:1px solid var(--line)}
.nuclear-metrics{display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:24px;
margin-top:14px}
.nuclear-metrics>div{display:grid;
align-content:start;
gap:6px}
.nuclear-metrics strong{font:500 29px/1 var(--serif);
letter-spacing:-.04em;
color:var(--coral)}
.nuclear-metrics span{max-width:240px;
font-size:10px;
line-height:1.55;
color:var(--ink-soft)}
.nuclear-strip .method-note a{color:var(--forest);
border-bottom:1px solid var(--gold)}
.war-caveat{grid-column:1/-1;
display:grid;
grid-template-columns:200px 1fr;
gap:20px;
padding:18px 22px;
background:#e8e5db;
font-size:11px;
line-height:1.7;
color:var(--ink-soft)}
.war-caveat strong{color:var(--coral);
font-weight:600}
.mechanisms-section{padding-top:110px;
padding-bottom:112px}
.mechanism-explorer{display:grid;
grid-template-columns:1fr 1.05fr;
border-top:1px solid var(--line);
border-bottom:1px solid var(--line);
min-height:470px}
.mechanism-list{display:flex;
flex-direction:column}
.mechanism-list [role=tab]{text-align:left;
display:grid;
grid-template-columns:35px 1fr 24px;
gap:3px 10px;
padding:13px 20px 12px 0;
background:none;
border:0;
border-bottom:1px solid var(--line);
cursor:pointer}
.mechanism-list [role=tab][aria-selected=true]{background:rgba(255,255,255,.33);
padding-left:11px;
border-left:2px solid var(--coral)}
.mechanism-index{grid-row:span 2;
font:10px var(--mono);
color:var(--coral);
padding-top:3px}
.mechanism-list strong{font:500 17px var(--serif)}
.mechanism-list [role=tab]>span:nth-last-child(2){font-size:9px;
color:var(--muted);
line-height:1.4}
.mechanism-list [role=tab]>span:last-child{grid-column:3;
grid-row:1/3;
align-self:center;
color:var(--coral)}
.mechanism-detail{padding:50px clamp(28px,5vw,75px);
background:#f6f4ec;
display:flex;
flex-direction:column;
justify-content:center}
.mechanism-detail h3{font:500 35px var(--serif);
margin:0 0 18px}
.mechanism-detail>p:not(.panel-overline){font-size:13px;
line-height:1.85;
color:var(--ink-soft);
margin:0}
.mechanism-scope{margin-top:25px;
padding:13px 0 0 17px;
border-top:1px solid var(--line);
font:9px/1.5 var(--mono);
color:var(--ink-soft);
position:relative}
.mechanism-scope:before{content:"";
position:absolute;
left:0;
top:17px;
width:9px;
height:9px;
background:#456d63;
border-radius:50%}
.mechanism-scope.scope-cross-system:before{background:#927124}
.mechanism-scope.scope-capital:before{background:var(--coral)}
.mechanism-scope.scope-specific:before{background:#456d63}
.scope-legend{display:flex;
gap:28px;
flex-wrap:wrap;
margin-top:17px;
font-size:9px;
color:var(--muted)}
.scope-legend span{display:flex;
align-items:center;
gap:7px}
.scope-legend i{width:9px;
height:9px;
background:var(--coral);
display:inline-block;
border-radius:50%}
.scope-legend .legend-cross{background:#927124}
.scope-legend .legend-specific{background:#456d63}
.systems-section{padding-top:112px;
padding-bottom:116px}
.systems-section .section-heading{margin-bottom:36px}
.filter-bar{display:flex;
gap:7px;
flex-wrap:wrap;
margin-bottom:23px}
.filter-chip{padding:8px 14px;
border:1px solid var(--line);
background:none;
border-radius:30px;
font-size:10px;
cursor:pointer;
transition:background .2s,color .2s,border .2s}
.filter-chip[aria-pressed=true]{background:var(--forest);
color:var(--paper);
border-color:var(--forest)}
.system-browser{display:grid;
grid-template-columns:.75fr 1.25fr;
min-height:530px;
border:1px solid var(--line)}
.system-list{display:flex;
flex-direction:column;
max-height:610px;
overflow:auto;
border-right:1px solid var(--line);
background:#e9e6dc}
.system-row{display:grid;
grid-template-columns:34px 1fr 15px;
gap:12px;
align-items:center;
text-align:left;
min-height:48px;
padding:11px 15px;
background:none;
border:0;
border-bottom:1px solid #d7d4ca;
cursor:pointer;
font-size:11px}
.system-row[aria-current=true]{background:var(--paper-bright);
color:var(--forest);
font-weight:700}
.system-row-no{font:9px var(--mono);
color:var(--coral)}
.system-row-arrow{font-size:10px;
color:var(--coral)}
.system-detail{padding:36px clamp(25px,4vw,58px);
background:var(--paper-bright)}
.system-detail-head{margin-bottom:25px}
.system-detail-head h3{font:500 28px/1.2 var(--serif);
margin:0}
.system-detail dl{margin:0;
display:grid}
.system-detail dl>div{display:grid;
grid-template-columns:155px 1fr;
gap:17px;
padding:13px 0;
border-top:1px solid var(--line)}
.system-detail dt{font:500 9px var(--mono);
color:var(--coral);
text-transform:uppercase;
letter-spacing:.03em;
padding-top:3px}
.system-detail dd{font-size:11px;
line-height:1.65;
color:var(--ink-soft);
margin:0}
.system-example-source{display:inline-block;
margin:6px 0 0;
color:var(--forest);
border-bottom:1px solid var(--gold);
font-size:9px}
.historical-note{display:grid;
grid-template-columns:58px 1fr;
gap:21px;
max-width:950px;
margin:70px auto 0;
padding:28px 30px;
background:#e8e5db}
.history-symbol{width:42px;
height:42px;
border:1px solid var(--coral);
border-radius:50%;
display:grid;
place-items:center;
color:var(--coral);
font:22px var(--serif)}
.historical-note .eyebrow{margin:0 0 8px}
.historical-note h3{font:500 24px var(--serif);
margin:0 0 9px}
.historical-note p:not(.eyebrow){font-size:11px;
line-height:1.75;
color:var(--ink-soft);
margin:0 0 14px}
.historical-note a{font-size:10px;
color:var(--forest);
border-bottom:1px solid var(--gold)}
.closing-section{background:var(--forest-deep);
color:var(--paper);
padding:96px 0 102px;
overflow:hidden;
position:relative}
.closing-section:after{content:"";
position:absolute;
width:600px;
height:600px;
border:1px solid rgba(242,239,231,.09);
border-radius:50%;
right:-180px;
bottom:-375px;
box-shadow:0 0 0 45px rgba(242,239,231,.02),0 0 0 90px rgba(242,239,231,.02)}
.closing-layout{position:relative;
z-index:1;
display:grid;
grid-template-columns:.6fr 1fr;
gap:100px;
align-items:center}
.closing-stamp{width:200px;
height:200px;
border:1px solid rgba(242,239,231,.38);
border-radius:50%;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
position:relative;
transform:rotate(-10deg);
font:500 9px/1.8 var(--mono);
letter-spacing:.18em;
color:#d6d2c5}
.closing-stamp:before,.closing-stamp:after{content:"";
position:absolute;
border:1px solid rgba(242,239,231,.25);
border-radius:50%;
inset:13px}
.closing-stamp:after{inset:26px}
.closing-stamp b{position:absolute;
right:15px;
bottom:18px;
color:var(--gold);
font-size:18px;
font-weight:400}
.closing-copy h2{font-size:clamp(44px,5.2vw,69px);
margin-bottom:20px}
.closing-copy h2 em{color:var(--gold)}
.closing-copy>p:not(.eyebrow){max-width:710px;
font-size:12px;
line-height:1.85;
color:#d2dad4}
.action-links{display:grid;
grid-template-columns:1fr 1fr;
gap:0 28px;
margin-top:27px}
.action-links a{padding:12px 0;
border-top:1px solid rgba(242,239,231,.24);
font-size:10px;
color:#f3eee0}
.action-links a span{float:right;
color:var(--gold)}
.site-footer{display:grid;
grid-template-columns:auto 1fr auto auto;
align-items:center;
gap:30px;
padding-top:27px;
padding-bottom:27px}
.brand-footer{font-size:9px}
.brand-footer .brand-mark{width:29px;
height:29px;
font-size:18px}
.site-footer>p{font-size:9px;
line-height:1.5;
color:var(--muted);
margin:0}
.site-footer>a:nth-last-of-type(1){font-size:10px;
border-bottom:1px solid var(--gold)}
.site-footer>a span{color:var(--coral)}
.footer-date{font:9px var(--mono);
color:var(--muted)}
/* Sources page */
.sources-hero{padding-top:90px;
padding-bottom:80px;
max-width:var(--wrap)}
.sources-hero h1{max-width:800px}
.sources-hero>p:not(.eyebrow){max-width:620px;
color:var(--ink-soft);
font-size:15px;
line-height:1.8;
margin:0 0 24px}
.source-section{padding-top:86px;
padding-bottom:100px}
.source-list{border-top:1px solid var(--line)}
.source-row{display:grid;
grid-template-columns:45px 1fr 180px;
gap:20px;
align-items:center;
padding:22px 8px;
border-bottom:1px solid var(--line);
scroll-margin-top:90px}
.source-index{font:10px var(--mono);
color:var(--coral)}
.source-publisher{font:9px var(--mono);
color:var(--muted);
margin:0 0 5px;
text-transform:uppercase;
letter-spacing:.07em}
.source-row h3{font:500 19px/1.35 var(--serif);
margin:0}
.source-row h3 a:hover{color:var(--coral)}
.source-row h3 span{font:12px var(--sans);
color:var(--coral)}
.source-date{justify-self:end;
font:9px var(--mono);
color:var(--muted);
text-align:right}
.methodology-grid{display:grid;
grid-template-columns:.72fr 1.28fr;
gap:100px}
.methodology-grid h2{font-size:clamp(40px,4.3vw,58px)}
.methodology-copy article{padding:0 0 20px;
margin-bottom:20px;
border-bottom:1px solid var(--line)}
.methodology-copy article:last-child{border-bottom:0;
margin-bottom:0}
.methodology-copy h3{font:500 20px var(--serif);
margin:0 0 5px}
.methodology-copy p{font-size:12px;
line-height:1.8;
color:var(--ink-soft);
margin:0}
.balance-grid{display:grid;
grid-template-columns:repeat(3,1fr);
gap:27px}
.balance-grid article{padding:25px 20px 18px 0;
border-top:1px solid var(--ink)}
.balance-number{font:11px var(--mono);
color:var(--coral)}
.balance-grid h3{font:500 23px var(--serif);
margin:17px 0 9px}
.balance-grid p{font-size:11px;
line-height:1.8;
color:var(--ink-soft);
margin:0}
.closing-sources{padding-top:82px;
padding-bottom:84px}
.source-contact{display:inline-block;
margin-top:12px;
border-bottom:1px solid var(--gold);
font-size:11px;
color:#f3eee0}
@media(max-width:980px){:root{--gutter:clamp(22px,5vw,52px)}
.site-header{gap:25px}
.top-nav{gap:18px}
.hero{min-height:590px}
.opening-grid{grid-template-columns:.55fr 1fr;
gap:28px}
.opening-note{grid-column:2;
margin:-15px 0 0;
max-width:620px}
.feature-grid{gap:48px}
.resource-layout{gap:50px}
.housing-grid,.environment-layout{gap:60px}
.closing-layout{gap:65px}
.stat-item{padding-right:18px}
.stat-item+.stat-item{padding-left:18px}
.stat-item+.stat-item .stat-foot{left:18px}
}
@media(max-width:720px){:root{--gutter:22px}
html{scroll-padding-top:65px}
.site-header{height:65px;
gap:12px}
.brand{font-size:9px;
letter-spacing:1.2px}
.brand-mark{width:30px;
height:30px;
font-size:19px}
.top-nav,.nav-source{display:none}
.menu-toggle{margin-left:auto;
width:40px;
height:40px;
background:none;
border:1px solid var(--line);
display:flex;
flex-direction:column;
gap:5px;
align-items:center;
justify-content:center;
cursor:pointer}
.menu-toggle span{display:block;
width:15px;
height:1px;
background:var(--ink);
transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}
.mobile-nav:not([hidden]){position:absolute;
z-index:9;
display:grid;
top:65px;
left:0;
right:0;
padding:10px var(--gutter) 18px;
background:var(--paper-bright);
border-bottom:1px solid var(--line);
box-shadow:0 12px 20px rgba(30,40,36,.08)}
.mobile-nav a{padding:10px 0;
font-size:13px;
border-bottom:1px solid var(--line)}
.hero{min-height:0;
grid-template-columns:1fr;
padding-top:47px;
padding-bottom:18px}
.hero-copy{padding:0}
.eyebrow{font-size:9px;
margin-bottom:18px}
.issue-no{float:right}
.hero h1{font-size:clamp(45px,11vw,68px);
margin-bottom:19px}
.hero-deck{font-size:14px;
max-width:450px}
.hero-figure{grid-row:2;
margin:28px 0 0}
.hero-art{max-height:340px}
.hero-figure figcaption{font-size:9px}
.hero-bottom{grid-row:3;
grid-template-columns:repeat(3,1fr) auto;
padding-top:18px;
font-size:8px}
.opening-band{padding:50px 0}
.opening-grid{grid-template-columns:1fr;
gap:16px}
.opening-grid .eyebrow{margin:0}
.opening-grid h2{font-size:40px}
.opening-lead{font-size:16px}
.opening-note{grid-column:auto;
margin:0;
font-size:12px}
.section{padding-top:72px;
padding-bottom:76px}
.section-heading{display:block;
margin-bottom:29px}
.section-heading .section-intro{margin-top:17px}
.section h2{font-size:clamp(37px,9vw,52px)}
.stat-ribbon{grid-template-columns:1fr}
.stat-item{min-height:0;
padding:21px 0 40px}
.stat-item+.stat-item{border-left:0;
border-top:1px solid var(--line);
padding:21px 0 40px}
.stat-item+.stat-item .stat-foot{left:0}
.stat-foot{bottom:15px}
.stat-value{font-size:55px}
.data-caution{font-size:10px}
.feature-grid,.resource-layout,.compact-section,.housing-grid,.environment-layout,.war-section,.methodology-grid{grid-template-columns:1fr;
gap:35px}
.feature-copy h2{font-size:42px}
.feature-copy>p:not(.eyebrow):not(.source-inline){font-size:12px}
.source-inline{flex-wrap:wrap;
gap:10px 18px}
.food-visual{min-height:380px;
padding:18px;
gap:8px}
.food-stat{padding:17px 14px}
.food-stat-large strong{font-size:62px}
.food-stat-small strong{font-size:48px}
.food-label{font-size:8px}
.visual-footnote{left:18px;
bottom:9px;
font-size:8px}
.distribution-panel{padding:22px 17px}
.distribution-top{display:block}
.distribution-top h3{font-size:20px}
.segmented-control{width:max-content;
margin-top:17px}
.segment-button{padding:7px 12px}
.distribution-chart{gap:19px;
margin:25px 0 20px}
.cohort-heading strong{font-size:10px}
.cohort-heading span{font-size:8px}
.cohort-track{height:31px}
.distribution-reading{grid-template-columns:1fr;
gap:17px}
.ratio-callout{border-left:0;
border-top:1px solid var(--line);
padding:14px 0 0}
.ratio-callout strong{font-size:29px}
.method-note{font-size:9px}
.pull-quote{padding:60px 0;
grid-template-columns:31px 1fr;
gap:10px}
.quote-mark{font-size:62px}
.pull-quote p{font-size:27px}
.quote-credit{font-size:8px}
.resource-copy h2{font-size:43px}
.resource-copy>p:not(.eyebrow){font-size:12px}
.resource-layout{gap:33px}
.allocation-row{grid-template-columns:minmax(108px,1fr) minmax(80px,1fr) 43px;
gap:11px}
.allocation-row label{font-size:9px;
gap:7px}
.allocation-row output{font-size:12px}
.allocation-controls{gap:17px}
.compact-section{gap:18px}
.compact-heading{grid-template-columns:28px 1fr;
gap:7px}
.compact-heading h2{font-size:36px}
.section-number{font-size:9px;
padding-top:11px}
.compact-content p,.housing-copy p{font-size:12px}
.housing-grid h2{font-size:42px}
.work-top{display:block}
.work-top>p{margin-top:17px}
.work-top h2{font-size:43px}
.work-figure{padding:22px 15px}
.work-bar-row{grid-template-columns:1fr 46px;
gap:7px 14px}
.work-bar-row>span{grid-column:1/-1;
font-size:10px}
.work-bar-row>strong{grid-column:2;
grid-row:2;
font-size:15px}
.work-track{grid-column:1;
grid-row:2}
.work-period{display:block}
.work-period span{display:block;
margin-top:6px;
line-height:1.5}
.environment-section{padding:72px 0}
.environment-layout{gap:34px}
.climate-number{min-width:195px;
padding:25px 18px}
.climate-number>span{font-size:72px}
.environment-copy h2{font-size:41px}
.environment-copy>p:not(.eyebrow){font-size:12px}
.war-section{gap:22px}
.war-heading h2{font-size:42px}
.war-heading>p:last-child{font-size:12px}
.war-figure{padding:23px 5px}
.war-amount{font-size:52px}
.nuclear-metrics{grid-template-columns:1fr;
gap:15px}
.nuclear-metrics strong{font-size:25px}
.war-caveat{grid-column:auto;
grid-template-columns:1fr;
gap:6px;
font-size:10px;
padding:17px}
.mechanisms-section{padding-top:75px;
padding-bottom:78px}
.mechanism-explorer{grid-template-columns:1fr;
min-height:0}
.mechanism-list [role=tab]{grid-template-columns:30px 1fr 20px;
padding:11px 12px}
.mechanism-list strong{font-size:15px}
.mechanism-detail{min-height:275px;
padding:28px 23px}
.mechanism-detail h3{font-size:29px}
.mechanism-detail>p:not(.panel-overline){font-size:11px}
.scope-legend{gap:10px 17px;
font-size:8px}
.systems-section{padding-top:75px;
padding-bottom:78px}
.filter-bar{gap:6px}
.filter-chip{font-size:9px;
padding:7px 11px}
.system-browser{grid-template-columns:1fr}
.system-list{max-height:300px;
border-right:0;
border-bottom:1px solid var(--line)}
.system-row{min-height:43px;
padding:9px 12px;
font-size:10px}
.system-detail{padding:25px 18px}
.system-detail-head h3{font-size:24px}
.system-detail dl>div{grid-template-columns:105px 1fr;
gap:10px;
padding:11px 0}
.system-detail dt{font-size:8px}
.system-detail dd{font-size:10px}
.historical-note{grid-template-columns:34px 1fr;
gap:12px;
padding:20px 14px;
margin-top:42px}
.history-symbol{width:30px;
height:30px;
font-size:17px}
.historical-note h3{font-size:19px}
.historical-note p:not(.eyebrow){font-size:10px}
.closing-section{padding:69px 0 72px}
.closing-layout{grid-template-columns:1fr;
gap:33px}
.closing-stamp{width:132px;
height:132px;
margin-left:3px;
font-size:7px}
.closing-stamp:before{inset:9px}
.closing-stamp:after{inset:18px}
.closing-stamp b{right:9px;
bottom:11px;
font-size:15px}
.closing-copy h2{font-size:47px}
.closing-copy>p:not(.eyebrow){font-size:11px}
.action-links{grid-template-columns:1fr;
gap:0}
.action-links a{font-size:10px}
.site-footer{grid-template-columns:1fr auto;
gap:14px 22px;
padding-top:22px;
padding-bottom:23px}
.site-footer>p{grid-column:1/2;
grid-row:2}
.site-footer>a:nth-last-of-type(1){grid-column:2;
grid-row:1}
.footer-date{grid-column:2;
grid-row:2;
font-size:8px}
.sources-hero{padding-top:58px;
padding-bottom:45px}
.sources-hero h1{font-size:clamp(46px,11vw,65px)}
.sources-hero>p:not(.eyebrow){font-size:13px}
.source-section{padding-top:66px;
padding-bottom:72px}
.source-row{grid-template-columns:28px 1fr;
gap:10px;
padding:17px 0}
.source-row h3{font-size:16px}
.source-date{grid-column:2;
justify-self:start;
font-size:8px}
.methodology-grid{gap:28px}
.methodology-grid h2{font-size:41px}
.methodology-copy h3{font-size:18px}
.methodology-copy p{font-size:11px}
.balance-grid{grid-template-columns:1fr;
gap:15px}
.balance-grid article{padding-top:17px}
.balance-grid h3{font-size:21px;
margin:9px 0 5px}
.balance-grid p{font-size:10px}
.closing-sources{padding-top:68px;
padding-bottom:70px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation-duration:.01ms!important;
animation-iteration-count:1!important;
transition-duration:.01ms!important;
scroll-behavior:auto!important}
}
