@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,560;0,9..144,640;1,9..144,400&family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{--paper:#f7f3ec;--ink:#21201c;--muted:#6f675c;--male:#4a6a5a;--female:#c08552;--accent:#b5432e;--display:"Fraunces", Georgia, serif;--body:"IBM Plex Sans", system-ui, sans-serif}*{box-sizing:border-box;margin:0}body{font-family:var(--body);background:var(--paper);color:var(--ink)}main{max-width:1000px;margin:0 auto;padding:40px 16px}.stage{background:var(--paper);outline:1px solid color-mix(in srgb, var(--muted) 25%, transparent);padding:34px 38px 26px}.stage-head{margin-bottom:22px}.subtitle{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:.95rem}.slider-row{align-items:center;gap:12px;margin-bottom:6px;display:flex}.slider-year{letter-spacing:.08em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:600}.slider-row input[type=range]{flex:1}.caption-band{min-height:74px;margin-bottom:6px}.caption{font-family:var(--display);color:var(--ink);font-size:1.5rem;font-style:italic;line-height:1.3}.ratio-readout{letter-spacing:.12em;color:var(--accent);font-variant-numeric:tabular-nums;margin-top:8px;font-size:.72rem;font-weight:600}.kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:.72rem;font-weight:600}h1{font-family:var(--display);font-variation-settings:"opsz" 90;letter-spacing:-.015em;margin-bottom:14px;font-size:2.6rem;font-weight:560;line-height:1.02}h2{font-family:var(--display);margin:72px 0 12px;font-size:2rem;font-weight:560;line-height:1.1}.dek{color:var(--muted);max-width:68ch;margin:8px 0 0;font-size:.95rem;line-height:1.5}.ridge .subtitle{font-family:var(--display);color:var(--ink);font-size:1.05rem;font-style:italic}.ridge .stage-head{margin-bottom:16px}.source{color:var(--muted);font-variant-numeric:tabular-nums;max-width:92ch;margin-top:14px;font-size:.72rem;line-height:1.5}svg text{font-family:var(--body);font-variant-numeric:tabular-nums}input[type=range]{appearance:none;background:0 0;height:44px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:color-mix(in srgb, var(--muted) 40%, transparent);border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:3px solid var(--paper);width:22px;height:22px;box-shadow:0 0 0 1.5px color-mix(in srgb, var(--accent) 60%, transparent);cursor:grab;border-radius:50%;margin-top:-9px}input[type=range]::-moz-range-track{background:color-mix(in srgb, var(--muted) 40%, transparent);border-radius:2px;height:4px}input[type=range]::-moz-range-thumb{background:var(--accent);border:3px solid var(--paper);width:22px;height:22px;box-shadow:0 0 0 1.5px color-mix(in srgb, var(--accent) 60%, transparent);cursor:grab;border-radius:50%}input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (width<=640px){main{padding:12px 8px}.stage{padding:20px 16px 18px}h1{font-size:1.9rem}.caption{font-size:1.15rem}.caption-band{min-height:96px}.dek{font-size:.95rem}}.step-btn{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--ink);cursor:pointer;text-underline-offset:5px;background:0 0;border:none;padding:8px 0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .18s}.step-btn:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.step-btn:focus-visible{outline:1.5px solid var(--accent);outline-offset:4px;border-radius:2px}.step-btn:disabled{color:var(--muted);opacity:.45;cursor:default;text-decoration:none}.step-dot{background:var(--muted);opacity:.35;cursor:pointer;border:none;border-radius:50%;width:6px;height:6px;padding:0;transition:transform .18s,opacity .18s,background .18s}.step-dot.done{opacity:1;background:var(--ink)}.step-dot.now{opacity:1;background:var(--accent);transform:scale(1.4)}.step-dot:hover{opacity:1}.step-dot:focus-visible{outline:1.5px solid var(--accent);outline-offset:3px}
