@font-face{font-family:Fraunces;src:url('./fonts/fraunces-normal-latin.48282a415ec22e31.woff2') format('woff2');font-weight:100 900;unicode-range:U+0000-00FF,U+2000-206F,U+2212}@font-face{font-family:Fraunces;src:url('./fonts/fraunces-normal-latin-ext.f120089b9440f3e3.woff2') format('woff2');font-weight:100 900;unicode-range:U+0100-024F,U+1E00-1EFF}@font-face{font-family:Source;src:url('./fonts/source-serif-4-normal-latin.2a24bad466f09b88.woff2') format('woff2');font-weight:200 900;unicode-range:U+0000-00FF,U+2000-206F,U+2212}@font-face{font-family:Source;src:url('./fonts/source-serif-4-normal-latin-ext.a0cd390d017200f9.woff2') format('woff2');font-weight:200 900;unicode-range:U+0100-024F,U+1E00-1EFF}
:root{--bg:#eaf0f2;--paper:#f8faf9;--ink:#142e3e;--muted:#405b68;--line:#acbec8;--blue:#144e68;--water:#c6dce6;--violet:#654b83;--focus:#84322d;color-scheme:light}html[data-theme=dark]{--bg:#122631;--paper:#1b3542;--ink:#edf4f5;--muted:#c1d1d8;--line:#506e7e;--blue:#98d1e8;--water:#244b60;--violet:#cdb4ea;--focus:#ffb8a9;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0;background:var(--bg);color:var(--ink);font-family:Source,Georgia,serif;line-height:1.6;font-size:1.08rem}a{color:var(--blue);text-underline-offset:4px}button{font:inherit;color:inherit;background:var(--paper);border:1px solid var(--line);cursor:pointer;min-height:44px;padding:.45rem .8rem;border-radius:6px}button:hover,a:hover{color:var(--focus)}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}[hidden]{display:none!important}.skip{position:fixed;top:-6rem;left:1rem;z-index:20;background:var(--paper);padding:1rem}.skip:focus{top:.5rem}.topbar{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line);padding:.6rem 3%;display:flex;align-items:center;gap:1rem;font:500 .9rem/1.2 system-ui}.topbar a{min-height:44px;display:flex;align-items:center}.topbar nav{display:flex;gap:1rem;margin-left:auto}.topbar button{font-size:1.25rem;padding:.25rem .75rem}.progress{height:2px;position:fixed;top:0;left:0;background:var(--blue);width:100%;transform:scaleX(0);transform-origin:left;z-index:30}.hero{max-width:1360px;margin:auto;padding:4rem 4% 2.5rem;display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:end}.kicker,.eyebrow{font:600 .78rem/1.5 system-ui;letter-spacing:.13em;color:var(--muted);text-transform:uppercase}.hero h1{font:560 3.8rem/1.08 Fraunces,Georgia,serif;letter-spacing:-.035em;margin:1rem 0 0;max-width:850px}.deck{font-size:1.35rem;line-height:1.5;margin-top:1rem}.intro{border-left:2px solid var(--blue);padding-left:1.25rem;margin:1.4rem 0 0}.share{display:flex;gap:.6rem;align-items:center;font: .85rem system-ui;max-width:1250px;padding:0 4%;margin:0 auto 3rem}.share a,.share button{height:44px;width:44px;min-width:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:transparent;text-decoration:none;font:600 1rem system-ui}.share .feedback{font-size:.8rem}.story{max-width:1360px;margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:4rem;padding:0 4%}.comparison{position:sticky;top:5rem;align-self:start;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.comparison header{padding:1.1rem 1.25rem .8rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.comparison h2{font:500 1.4rem Fraunces;margin:0}.epoch{font:600 .85rem system-ui;color:var(--blue)}.controls{padding:0 1.25rem .8rem;display:flex;flex-wrap:wrap;gap:.45rem}.controls button{font:500 .85rem system-ui}.controls [aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.river-view{padding:1.2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;background:var(--water)}.bank{padding:1rem .9rem;background:var(--paper);border:1px solid var(--line);border-top:5px solid var(--blue);border-radius:5px;min-width:0}.bank[data-side=north]{border-top-color:var(--violet)}.bank.focused{outline:3px solid var(--blue);outline-offset:2px}.bank h3{font:540 1.3rem/1.25 Fraunces;margin:.6rem 0}.bank .country{font:.75rem system-ui;color:var(--muted)}.bank .mark{font-size:1.2rem;color:var(--blue)}.bank .claim-type{font:600 .78rem/1.4 system-ui;color:var(--violet);margin:.8rem 0 .3rem}.bank p{font-size:.92rem;line-height:1.5;margin:.4rem 0 0}.river-ribbon{grid-column:1/-1;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.6rem;font:500 .85rem system-ui;color:var(--ink)}.river-ribbon .approach{display:block;margin:.25rem auto;font-size:.75rem}.legend{padding:.75rem 1.25rem;display:flex;flex-wrap:wrap;gap:.4rem 1rem;font:.72rem/1.5 system-ui;color:var(--muted)}.diagram-note{padding:0 1.25rem 1rem;font:.72rem/1.4 system-ui;margin:0;color:var(--muted)}.status{padding:0 1.25rem .8rem;font:.75rem system-ui;margin:0;color:var(--muted)}.chapters{min-width:0}.chapter{padding:2rem 0 4rem;min-height:80vh;border-top:1px solid var(--line);scroll-margin-top:5rem}.chapter h2,.ending h2,.source-section h2{font:530 2rem/1.15 Fraunces;margin:1rem 0}.chapter h2 a{color:inherit;text-decoration:none;display:block}.chapter p{margin:1rem 0}.evidence{border-left:3px solid var(--blue);padding:0 0 0 1rem;margin:1.8rem 0}.evidence.north{border-color:var(--violet)}.evidence h3{font:600 .85rem/1.4 system-ui}.evidence p{font-size:1rem;line-height:1.55}.refs{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font:.8rem system-ui}figure{margin:1.5rem 0}figure img{display:block;width:100%;height:auto;border-radius:5px}figcaption{font:.8rem/1.5 Source;color:var(--muted);margin:.6rem 0}figcaption a{color:inherit}.photo-pair{display:grid;gap:1.4rem}.ending,.source-section{max-width:850px;margin:3rem auto;padding:2rem 4%;border-top:1px solid var(--line)}.ending{background:var(--paper);border-radius:10px}.source-section li{margin:.7rem 0}.source-section summary{cursor:pointer;padding:.8rem 0}.related{font-size:1rem}footer{padding:2rem 4% 5rem;max-width:1250px;margin:auto;border-top:1px solid var(--line);font:.8rem/1.7 system-ui}.to-top{position:fixed;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));z-index:11;border-radius:50%;width:48px;height:48px;padding:0;background:var(--ink);color:var(--paper);font:.8rem system-ui}.read-bank-label{font:.8rem system-ui;padding:0 1.25rem;margin:0 0 .5rem}.only-js{display:none}.js-ready .only-js{display:flex}.no-js-note{padding:1rem}.js-ready .no-js-note{display:none}
@media(max-width:1000px){.hero{gap:2rem}.hero h1{font-size:3rem}.story{gap:2rem}.river-view{padding:.9rem;gap:.7rem}.bank{padding:.7rem}.bank h3{font-size:1.1rem}.bank p{font-size:.85rem}}
@media(max-width:760px){.topbar{gap:.6rem}.topbar nav{gap:.7rem}.topbar .wide{display:none}.hero{display:block;padding:2rem 5% 1.5rem}.hero h1{font-size:2.55rem}.deck{font-size:1.12rem}.intro{font-size:1rem}.share{padding:0 5%;margin-bottom:1.5rem;flex-wrap:wrap}.story{display:block;padding:0 5%}.comparison{position:relative;top:auto;margin-bottom:2rem}.comparison header{padding:1rem}.controls{padding:0 1rem .8rem}.controls button{padding:.4rem .6rem}.river-view{gap:.8rem}.bank h3{font-size:1.15rem}.bank p{font-size:.88rem}.chapter{min-height:0;padding:1rem 0 2.5rem}.chapter h2{font-size:1.85rem}.ending,.source-section{margin:2rem 5%;padding:1.5rem 0}.ending{padding:1.5rem}.legend{padding:.7rem 1rem}.comparison .bank h3{overflow-wrap:anywhere}.share .feedback{flex-basis:100%}.photo-pair{gap:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.evidence.focused{background:var(--water);padding:.75rem 1rem;border-radius:5px}.only-js.to-top{align-items:center;justify-content:center}
/* The return path shares the sticky header so it cannot cover evidence. */
.topbar .to-top{position:static;flex-shrink:0;width:44px;height:44px;min-height:44px;padding:0;background:var(--ink);color:var(--paper);font:.75rem system-ui}
@media(max-width:390px){.topbar{gap:.5rem}.topbar nav{gap:.5rem}.topbar .to-top{width:44px}.topbar button{padding:.2rem .5rem}}
