:root{
  --ink:#10110f;
  --paper:#f2eee4;
  --paper-2:#e7e0d2;
  --signal:#ff4b2b;
  --electric:#244cff;
  --acid:#efff38;
  --muted:#77746c;
  --line:rgba(16,17,15,.22);
  --sans:"DM Sans",Arial,sans-serif;
  --serif:"Newsreader",Georgia,serif;
  --mono:"DM Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);overflow-x:hidden}
button,a{font:inherit}
a{color:inherit}
.skip-link{position:fixed;left:12px;top:-100px;z-index:1000;background:var(--acid);padding:12px 16px}.skip-link:focus{top:12px}
.reading-progress{position:fixed;inset:0 0 auto;z-index:90;height:4px;background:transparent}.reading-progress span{display:block;width:0;height:100%;background:var(--signal)}
.article-nav{position:fixed;z-index:80;top:4px;left:0;right:0;height:68px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;color:#fff;background:rgba(16,17,15,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.16)}
.brand{text-decoration:none;font-weight:700;letter-spacing:-.03em}.brand-mark{display:inline-block;width:15px;height:15px;margin-right:10px;background:var(--acid);vertical-align:-1px}
.nav-actions{display:flex;align-items:center;gap:20px}.nav-actions a{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.nav-actions a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{min-height:100svh;display:grid;align-content:end;position:relative;padding:clamp(118px,15vh,180px) clamp(22px,6vw,92px) clamp(48px,7vw,92px);color:#fff;background:var(--ink);overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 77% 20%,rgba(36,76,255,.48),transparent 28%),radial-gradient(circle at 15% 78%,rgba(255,75,43,.4),transparent 30%),linear-gradient(115deg,transparent 0 48%,rgba(239,255,56,.09) 48% 49%,transparent 49% 100%)}
.hero-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to bottom,black,transparent 85%)}
.hero-copy{position:relative;z-index:2;max-width:1420px}
.kicker,.section-kicker{font-family:var(--mono);font-size:clamp(.72rem,1vw,.9rem);letter-spacing:.14em;text-transform:uppercase}
.hero h1{margin:.15em 0 .2em;max-width:11ch;font-size:clamp(4.2rem,13vw,12rem);line-height:.76;letter-spacing:-.085em;text-transform:uppercase}
.hero .dek{max-width:32ch;margin:0;font:500 clamp(1.4rem,3vw,2.8rem)/1.02 var(--serif)}
.hero .scroll-cue{position:absolute;right:clamp(22px,6vw,92px);bottom:clamp(48px,7vw,92px);z-index:2;width:54px;height:54px;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:1.4rem}
.article-shell{position:relative}
.chapter{min-height:66svh;padding:clamp(74px,10vw,150px) clamp(22px,8vw,140px);border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,36%);gap:clamp(32px,7vw,120px);align-items:start}
.chapter:nth-child(odd){background:var(--paper)}
.chapter:nth-child(even){background:var(--paper-2)}
.chapter-head{position:sticky;top:105px}
.chapter h2{margin:14px 0 0;max-width:10ch;font-size:clamp(3rem,7vw,7.6rem);line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.chapter-body{max-width:760px;padding-top:clamp(26px,6vw,84px)}
.chapter-body p{margin:0 0 .42em;font:500 clamp(1.55rem,2.5vw,2.8rem)/1.06 var(--serif);letter-spacing:-.02em}
.chapter-body p.short-line{font-family:var(--sans);font-weight:700;font-size:clamp(2rem,4.7vw,5.4rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}
.chapter-body p.punch{color:var(--signal)}
.evidence-card{display:grid;grid-template-columns:108px 1fr;align-items:stretch;margin-top:clamp(34px,5vw,64px);border:1px solid var(--ink);background:rgba(255,255,255,.5)}
.evidence-thumb{width:108px;height:100%;min-height:100px;object-fit:cover;border-right:1px solid var(--ink);background:#d9d5ca}
.evidence-copy{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.evidence-copy span{font-family:var(--mono);font-size:.68rem;line-height:1.35;text-transform:uppercase;letter-spacing:.08em}
.evidence-open{border:0;background:transparent;padding:8px 0;font-weight:800;white-space:nowrap;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.evidence-open:hover,.evidence-open:focus-visible{color:var(--electric)}
.poll{min-height:100svh;padding:clamp(92px,12vw,170px) clamp(22px,8vw,140px);background:var(--electric);color:#fff;display:grid;align-content:center;position:relative;overflow:hidden}
.poll::after{content:attr(data-number);position:absolute;right:-.05em;bottom:-.22em;font-weight:800;font-size:min(54vw,38rem);line-height:1;color:rgba(255,255,255,.07);letter-spacing:-.12em;pointer-events:none}
.poll-inner{position:relative;z-index:2;max-width:1240px;margin:auto;width:100%}
.poll .section-kicker{color:var(--acid)}
.poll h2{max-width:18ch;margin:.45em 0 .65em;font-size:clamp(2.8rem,7vw,7rem);line-height:.88;letter-spacing:-.065em}
.choices{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.65)}
.choice{min-height:clamp(130px,20vw,230px);padding:24px;border:0;border-right:1px solid rgba(255,255,255,.65);background:transparent;color:#fff;font-weight:800;font-size:clamp(1.4rem,3.2vw,3.3rem);line-height:.95;letter-spacing:-.045em;text-align:left;cursor:pointer}
.choice:last-child{border-right:0}.choice:hover,.choice:focus-visible{background:var(--acid);color:var(--ink)}.choice[aria-pressed="true"]{background:#fff;color:var(--ink)}
.choice-result{min-height:52px;padding-top:18px;font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.choice-result strong{color:var(--acid)}
.manifesto{background:var(--signal)!important;color:#fff}.manifesto h2{max-width:12ch}.manifesto .chapter-body p{font-family:var(--sans);font-weight:700;letter-spacing:-.055em;font-size:clamp(2.1rem,4.8vw,5.7rem);line-height:.9}
.dark{background:var(--ink)!important;color:#fff}.dark .evidence-card{border-color:#fff;background:rgba(255,255,255,.08)}.dark .evidence-thumb{border-color:#fff}.dark .evidence-open:hover{color:var(--acid)}
.finale{min-height:100svh;background:var(--ink);color:#fff;padding:clamp(100px,14vw,190px) clamp(22px,8vw,140px);display:grid;align-content:center;text-align:center}
.finale p{margin:0;font-size:clamp(3.8rem,11vw,11rem);font-weight:800;line-height:.8;letter-spacing:-.08em;text-transform:uppercase}.finale p:last-child{margin-top:.25em;color:var(--acid)}
.article-footer{padding:52px clamp(22px,6vw,92px);background:#080806;color:#fff;display:flex;justify-content:space-between;gap:40px;align-items:flex-end}.article-footer p{margin:0;font-family:var(--mono);font-size:.72rem;line-height:1.7;text-transform:uppercase;letter-spacing:.08em}.article-footer a:hover{color:var(--acid)}
.summary-button{border:1px solid currentColor;background:transparent;color:inherit;padding:15px 18px;font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.summary-button:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}
dialog{width:min(1120px,calc(100vw - 28px));max-height:calc(100svh - 28px);padding:0;border:0;background:var(--paper);color:var(--ink);box-shadow:0 24px 100px rgba(0,0,0,.55)}dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(6px)}
.modal-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--ink);color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}.modal-bar p{margin:0;font:500 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.modal-close{border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:1.4rem;line-height:1}.modal-close:hover{background:var(--acid);color:var(--ink)}
.modal-content{padding:clamp(18px,4vw,48px)}.receipt{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:clamp(22px,4vw,54px);padding-bottom:42px;margin-bottom:42px;border-bottom:1px solid var(--line)}.receipt:last-child{border:0;margin:0;padding:0}.receipt img{width:100%;max-height:68svh;object-fit:contain;background:#fff;border:1px solid var(--line)}.receipt-meta h3{font-size:clamp(1.6rem,3vw,3rem);line-height:.95;letter-spacing:-.05em;margin:0 0 20px}.receipt-meta p{font:500 clamp(1rem,1.4vw,1.25rem)/1.35 var(--serif);margin:0 0 18px}.receipt-meta .label{margin:24px 0 6px;font:500 .66rem/1.2 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.receipt-meta a{font-weight:800;text-underline-offset:5px}.receipt-placeholder{min-height:340px;display:grid;place-items:center;padding:40px;background:var(--ink);color:#fff;font-weight:800;font-size:clamp(1.8rem,4vw,4rem);line-height:.9;text-align:center;letter-spacing:-.05em}
.decision-summary{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.decision-row{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:18px;background:var(--paper)}.decision-row span:first-child{font:500 .72rem/1 var(--mono);color:var(--muted)}.decision-row strong{font-size:1.05rem}.empty-summary{font:500 1.2rem/1.4 var(--serif)}
@media(max-width:820px){.article-nav{height:60px}.nav-actions a:first-child{display:none}.chapter{grid-template-columns:1fr;min-height:0;padding-top:84px}.chapter-head{position:static}.chapter-body{padding-top:0}.chapter h2{max-width:12ch}.choices{grid-template-columns:1fr}.choice{border-right:0;border-bottom:1px solid rgba(255,255,255,.65)}.choice:last-child{border-bottom:0}.receipt{grid-template-columns:1fr}.article-footer{align-items:flex-start;flex-direction:column}.evidence-card{grid-template-columns:82px 1fr}.evidence-thumb{width:82px}.evidence-copy{align-items:flex-start;flex-direction:column}.hero .scroll-cue{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
