:root{color-scheme:light;--bg: #f6efe3;--surface: rgba(255, 250, 242, .88);--line: rgba(11, 41, 58, .12);--ink: #102536;--muted: #51606a;--accent: #d46a2e;--accent-alt: #147a78;--shadow: 0 24px 60px rgba(16, 37, 54, .1);font-family:Chivo,sans-serif;line-height:1.5;font-weight:400;background:radial-gradient(circle at top left,rgba(212,106,46,.18),transparent 32%),radial-gradient(circle at top right,rgba(20,122,120,.18),transparent 30%),linear-gradient(180deg,#fdf8ef 0%,var(--bg) 42%,#efe6d6 100%);color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:inherit}#app{position:relative;z-index:1}.page-shell{width:min(1120px,calc(100vw - 32px));margin:0 auto;padding:28px 0 56px}.hero-copy,.content-block{border:1px solid var(--line);border-radius:24px;background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow)}.hero-copy{padding:34px;margin-bottom:20px}.content-block{padding:22px;margin-top:20px}.eyebrow{margin:0 0 10px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:700;color:var(--accent-alt)}h1,h2{margin:0;font-weight:900;letter-spacing:-.03em}h1{max-width:18ch;font-size:clamp(2rem,4.4vw,3.9rem);line-height:.96}h2{font-size:clamp(1.4rem,2.5vw,2.1rem);line-height:1.04}.hero-tagline,.hero-note,.hero-map-subtitle{color:var(--muted)}.hero-tagline{max-width:58rem;margin:14px 0 0;font-family:"Source Serif 4",serif;font-size:clamp(1.05rem,1.8vw,1.25rem)}.hero-note{margin-top:12px}.section-heading{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.section-transition{margin:2px 0 0;max-width:72ch;color:#102536d6;font-family:"Source Serif 4",serif;font-size:clamp(1rem,1.45vw,1.1rem)}.hero-map,.supporting-chart{width:100%;overflow:hidden}.hero-map svg{width:100%;height:auto;display:block}.supporting-chart svg{width:100%;height:auto;display:block}.hero-map__label{font-size:11px;font-weight:700;fill:#102536;paint-order:stroke;stroke:#fffaf2f2;stroke-width:2px;stroke-linejoin:round}.hero-map__annotation{font-size:12px;font-weight:600;fill:#102536bf}.supporting-chart__label{font-size:12px;font-weight:700;fill:#102536}.supporting-chart__value{font-size:11px;font-weight:700;fill:#102536cc}.supporting-chart__annotation{font-size:12px;font-weight:600;fill:#102536c7}.cogen__node{stroke:#10253633;stroke-width:1}.cogen__node--neutral{fill:#efe6d6e6}.cogen__node--accent{fill:#d46a2e42}.cogen__node--accent-alt{fill:#147a783d}.cogen__node-title{font-size:14px;font-weight:800;fill:#102536}.cogen__node-subtitle{font-size:12px;font-weight:600;fill:#102536b8}.cogen__link{fill:none;stroke:#1025368c;stroke-width:2}.cogen__link--risk{stroke:#d46a2ed6;stroke-dasharray:7 5}.timeline__spine{stroke:#10253638;stroke-width:2}.timeline__date{font-size:12px;font-weight:700;fill:#102536d6}.timeline__marker{stroke:#fffaf2f5;stroke-width:2}.timeline__marker--confirmed{fill:#d46a2ee6}.timeline__marker--reported{fill:#147a78e0}.timeline__marker--alleged{fill:#5f6e78eb}.timeline__status{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.timeline__status--confirmed{fill:#9d3610}.timeline__status--reported{fill:#0e5f5e}.timeline__status--alleged{fill:#4f5961}.timeline__country{font-size:12px;font-weight:700;fill:#102536e6}.timeline__summary{font-size:12px;font-weight:600;fill:#102536c2}.supporting-chart__error,.hero-map__error{margin:12px 0;color:#9a2f0f;font-weight:700}.methodology{margin-top:24px}.methodology__subheading{margin:12px 0 8px;font-size:1rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-alt)}.methodology__list{margin:0;padding-left:18px;color:var(--muted)}.methodology__list li+li{margin-top:6px}@media (max-width: 768px){.page-shell{width:min(100vw - 20px,1120px);padding:18px 0 34px}.hero-copy{padding:22px}.content-block{padding:14px}.hero-map__label{font-size:9px}.hero-map__annotation,.supporting-chart__label{font-size:10px}.supporting-chart__value{font-size:9px}.supporting-chart__annotation{font-size:10px}.section-transition{font-size:.98rem}.cogen__node-title{font-size:11px}.cogen__node-subtitle,.timeline__date,.timeline__status,.timeline__country,.timeline__summary{font-size:10px}}@media (max-width: 375px){.page-shell{width:calc(100vw - 14px)}h1{font-size:1.72rem}.hero-tagline{font-size:1rem}.hero-map__label{font-size:8px}}
