@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap");

:root { --ink:#18231e; --paper:#f4f0e8; --muted:#68736d; --line:#d7d0c4; --acid:#d7f36b; --orange:#f0774b; --blue:#a5c7da; --cream:#fffdf8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"DM Sans",sans-serif; }
a { color:inherit; text-decoration:none; }
.wrap { width:min(1120px, calc(100% - 48px)); margin:auto; }
.masthead { border-bottom:1px solid var(--line); }
.nav { display:flex; align-items:center; justify-content:space-between; min-height:78px; }
.wordmark,.eyebrow,.nav-links,.hero-meta,.formula,.arm-grid,.chart,.footer { font-family:"DM Mono",monospace; }
.wordmark { font-size:14px; letter-spacing:.08em; font-weight:500; }
.wordmark span { color:var(--orange); }
.nav-links { display:flex; align-items:center; gap:28px; font-size:12px; }
.nav-links a:not(.nav-button):hover,.text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.nav-button { background:var(--ink); color:var(--paper); padding:11px 15px; border-radius:2px; }
.hero { padding:110px 0 72px; }
.eyebrow { color:var(--orange); font-size:11px; letter-spacing:.11em; text-transform:uppercase; }
h1,h2 { font-weight:500; letter-spacing:-.055em; line-height:.97; margin:18px 0 0; }
h1 { font-size:clamp(58px, 9vw, 124px); max-width:850px; }
h2 { font-size:clamp(42px, 6vw, 76px); }
h1 em,h2 em { font-family:"Playfair Display",serif; font-weight:600; letter-spacing:-.06em; }
.lede { font-size:clamp(19px,2.4vw,28px); line-height:1.35; max-width:700px; margin:38px 0; }
.hero-actions { display:flex; align-items:center; gap:25px; }
.button { display:inline-flex; gap:26px; padding:16px 20px; font-family:"DM Mono",monospace; font-size:12px; }
.button-dark { background:var(--ink); color:var(--paper); }
.button-dark span { color:var(--acid); }
.text-link { font-family:"DM Mono",monospace; font-size:12px; }
.hero-rule { border-top:1px solid var(--ink); margin-top:105px; }
.hero-meta { display:flex; gap:68px; padding-top:20px; }
.hero-meta div { display:grid; gap:6px; }
.hero-meta strong { font-size:24px; font-weight:500; }
.hero-meta span { color:var(--muted); font-size:10px; max-width:125px; line-height:1.4; }
.section { padding:120px 0; }
.section-ink,.closing { background:var(--ink); color:var(--paper); }
.eyebrow-light { color:var(--acid); }
.two-column { display:grid; grid-template-columns:1fr 1fr; gap:12%; }
.section-copy { font-size:19px; line-height:1.5; max-width:480px; }
.section-copy p { margin:0 0 28px; }
.boundary { border-top:1px solid #59625d; padding-top:18px; margin-top:58px; display:grid; gap:10px; font-family:"DM Mono",monospace; font-size:11px; line-height:1.5; }
.boundary span { color:var(--acid); text-transform:uppercase; letter-spacing:.08em; }
.design-intro { display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:end; margin-bottom:75px; }
.design-intro p,.section-note { line-height:1.55; color:var(--muted); max-width:390px; margin:0; }
.formula { border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); padding:24px 0; display:flex; justify-content:space-between; align-items:center; font-size:13px; }
.formula b { font-weight:400; color:var(--orange); font-size:20px; }
.formula strong { font-size:22px; }
.arm-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:28px; }
.arm-grid div { border:1px solid var(--line); padding:18px; display:grid; grid-template-columns:auto 1fr; gap:0 10px; }
.arm-grid small { color:var(--muted); grid-column:2; font-size:10px; }
.arm-dot { width:9px; height:9px; border-radius:50%; margin-top:3px; }
.dot-neutral { background:var(--muted); }.dot-t { background:var(--blue); }.dot-d { background:var(--orange); }.dot-b { background:var(--acid); }
.section-paper { background:var(--cream); }
.section-note { margin-top:24px; }
.chart { margin-top:60px; font-size:11px; }
.chart-row { display:grid; grid-template-columns:150px 1fr 1fr; gap:28px; align-items:center; border-bottom:1px solid var(--line); padding:17px 0; }
.chart-header { color:var(--muted); padding-top:0; }
.bar-track { height:22px; background:#eae5dc; position:relative; display:flex; align-items:center; }
.bar { display:block; height:100%; }
.bar.negative { background:var(--orange); }.bar.positive { background:var(--blue); }.bar.zero { background:var(--muted); }
.bar-track b { position:absolute; left:calc(100% + 8px); font-weight:400; white-space:nowrap; }
.chart-footnote { color:var(--muted); font:11px "DM Mono",monospace; margin-top:26px; }
.legend { display:inline-block; width:8px; height:8px; margin:0 7px 0 16px; }.negative-legend { background:var(--orange); margin-left:0; }.positive-legend { background:var(--blue); }
.evidence { display:grid; grid-template-columns:1fr 1fr; gap:12%; }
.evidence-links { border-top:1px solid var(--ink); }
.evidence-links a { display:flex; justify-content:space-between; border-bottom:1px solid var(--line); padding:19px 0; font:13px "DM Mono",monospace; }
.evidence-links b { font-weight:400; color:var(--orange); }
.closing { padding:115px 0; }
.closing-inner { max-width:700px; margin-left:max(24px, calc((100% - 1120px)/2)); }
.closing p:last-child { line-height:1.5; max-width:420px; color:#bbc1bc; margin-top:32px; }
.footer { display:flex; justify-content:space-between; padding:25px 0; font-size:10px; color:var(--muted); }
.footer a { color:var(--ink); }
@media (max-width:700px) {
  .wrap { width:min(100% - 32px, 1120px); }
  .nav { min-height:64px; }.nav-links a:not(.nav-button) { display:none; }.nav-button { padding:9px 11px; }
  .hero { padding:75px 0 55px; }.hero-rule { margin-top:70px; }.hero-meta { gap:22px; flex-wrap:wrap; }.hero-meta strong { font-size:18px; }
  .two-column,.design-intro,.evidence { grid-template-columns:1fr; gap:42px; }.section { padding:80px 0; }
  .formula { flex-wrap:wrap; gap:13px; justify-content:flex-start; }.formula strong { width:100%; }
  .arm-grid { grid-template-columns:1fr 1fr; }.chart { overflow-x:auto; padding-bottom:12px; }.chart-row { min-width:620px; }
}
