body.migration-page{background:#efe4cc;max-width:none;margin:0;padding:0}.migration{--paper:#efe4cc;--paper-deep:#e2d2ae;--ink:#3b2f22;--ink-soft:#7a6a55;--ocean:#b4c3bd;--water:#b6c7c3;--river:#5f818a;--graticule:#3b2f2229;--border:#9a8669;--route:#9b2f1d;--glow:#fff2d6;--handoff:0;--serif:Georgia, "Times New Roman", serif;color:var(--ink)}.migration .topbar{z-index:20;background:color-mix(in srgb, var(--paper) 88%, transparent);border:1px solid var(--border);border-radius:4px;padding:6px 12px;font-size:14px;position:fixed;top:12px;left:16px}.migration .topbar header{margin:0}.migration .topbar a{color:var(--ink)}.migration .stage{background:radial-gradient(at 50% 45%,#4a3d30 0%,#241d17 70%);position:fixed;inset:0}.migration #map,.migration #globe{width:100%;height:100%;position:absolute;inset:0}.migration #map{opacity:clamp(0, calc((var(--handoff) - .45) / .55), 1)}.migration #globe{pointer-events:none;opacity:clamp(0, calc((1 - var(--handoff)) / .35), 1)}.migration .globe-labels{pointer-events:none;opacity:clamp(0, calc((1 - var(--handoff)) / .35), 1);position:absolute;inset:0}.migration .globe-label{font:italic 15px var(--serif);color:var(--glow);text-shadow:0 1px 3px #000000b3;white-space:nowrap;margin:-.6em 0 0 12px;transition:opacity .4s;position:absolute;top:0;left:0}.migration .stop-marker,.migration .aside-marker{font-family:var(--serif);pointer-events:none;white-space:nowrap;align-items:center;gap:6px;display:flex}.migration .stop-marker>*,.migration .aside-marker>*{opacity:0;transition:opacity .6s}.migration .stop-marker.reached>*,.migration .aside-marker.visible>*{opacity:1}.migration .stop-marker .dot{background:var(--route);border:2px solid var(--paper);width:10px;height:10px;box-shadow:0 0 0 1px var(--route);border-radius:50%;transition:opacity .6s,transform .4s}.migration .stop-marker.active .dot{transform:scale(1.5)}.migration .stop-marker .name{color:var(--ink);text-shadow:0 0 3px var(--paper), 0 0 3px var(--paper), 0 0 6px var(--paper);font-size:14px}.migration .stop-marker.active .name{font-size:16px;font-weight:700}.migration .aside-marker .dot{border:1.5px solid var(--route);background:var(--paper);border-radius:50%;width:7px;height:7px}.migration .aside-marker .name{text-shadow:0 0 3px var(--paper), 0 0 3px var(--paper);font-size:13px;font-style:italic}.migration .legend{z-index:20;background:color-mix(in srgb, var(--paper) 92%, transparent);border:1px solid var(--border);width:210px;opacity:clamp(0, calc((var(--handoff) - .6) / .4), 1);border-radius:4px;padding:8px 12px;font-size:12px;transition:opacity .3s;position:fixed;top:12px;right:16px}.migration .legend p{align-items:center;gap:8px;margin:2px 0;display:flex}.migration .swatch{border-top:3px solid var(--route);flex:none;width:28px;height:0}.migration .swatch.probable{border-top-style:dashed}.migration .swatch.disputed{border-top-style:dotted}.migration .story{z-index:10;pointer-events:none;position:relative}.migration .story section{box-sizing:border-box;align-items:center;min-height:100vh;padding:0 40px;display:flex}.migration .story .card,.migration .story .title-card{pointer-events:auto}.migration .intro{text-align:center;justify-content:center}.migration .title-card{max-width:34rem;color:var(--paper);text-shadow:0 1px 6px #000c;background:radial-gradient(#241d17b8 0%,#241d1773 60%,#0000 75%);padding:24px 32px}.migration .title-card h1{font:normal 3.4rem/1.1 var(--serif);color:var(--glow);letter-spacing:.01em;margin:.2em 0 .3em}.migration .kicker{font:italic 15px var(--serif);letter-spacing:.04em;color:var(--ink-soft);margin:0}.migration .title-card .kicker{color:var(--paper-deep)}.migration .scroll-cue{font-size:1.6rem;animation:2s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.migration .scroll-cue{animation:none}}.migration .story .chapter{min-height:120vh}.migration .card{box-sizing:border-box;background:var(--paper);border:1px solid var(--border);border-radius:4px;width:380px;max-width:100%;padding:20px 24px;font-size:15px;line-height:1.55;box-shadow:0 6px 24px #241d1740}.migration .card h2{font:normal 1.6rem/1.2 var(--serif);color:var(--ink);margin:.2em 0 .5em}.migration .card a{color:var(--route)}.migration .people{border-left:3px solid var(--route);font-family:var(--serif);margin:0 0 1em;padding:0 0 0 10px;list-style:none}.migration .route{color:var(--ink-soft);font-style:italic}.migration .route strong{color:var(--ink)}.migration details{border-top:1px solid var(--paper-deep);padding-top:8px;font-size:13px}.migration details ul{margin:6px 0;padding-left:18px}.migration summary{cursor:pointer;color:var(--ink-soft)}.migration .small{color:var(--ink-soft);font-size:12px}.migration .story .end{min-height:100vh;padding-bottom:100px}.migration .explore-toggle{font:15px var(--serif);color:var(--paper);background:var(--route);cursor:pointer;border:none;border-radius:4px;padding:8px 16px}.migration .explore-toggle:focus-visible,.migration .timeline button:focus-visible{outline:2px solid var(--route);outline-offset:2px}.migration.exploring .story .chapter,.migration.exploring .story .intro{visibility:hidden}.migration.exploring .end .card>:not(.explore-row){display:none}.migration.exploring .end{min-height:0;padding:0 16px;position:fixed;bottom:70px;left:0}.migration.exploring .end .card{width:auto;padding:8px}.migration.exploring .end .card p{margin:0}.migration.exploring .timeline{display:none}.migration .timeline{z-index:20;background:color-mix(in srgb, var(--paper) 94%, transparent);border-top:1px solid var(--border);align-items:center;gap:16px;padding:8px 16px 10px;display:flex;position:fixed;bottom:0;left:0;right:0}.migration .timeline .year{font:1.7rem var(--serif);font-variant-numeric:tabular-nums;min-width:3.2em;color:var(--route)}.migration .ticks{border-top:2px solid var(--ink-soft);flex:1;display:flex;position:relative}.migration .ticks button{border:none;border-left:1px solid var(--border);text-align:left;min-width:0;font:12px var(--serif);color:var(--ink-soft);cursor:pointer;background:0 0;flex:1;padding:6px 6px 0}.migration .ticks button.active{color:var(--ink);font-weight:700}.migration .ticks .label,.migration .ticks .years{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.migration .ticks .years{font-size:11px;font-weight:400}.migration .now{background:var(--route);border:2px solid var(--paper);box-sizing:border-box;border-radius:50%;width:12px;height:12px;margin-left:-6px;transition:transform .15s linear;position:absolute;top:-7px;left:0}.migration .maplibregl-ctrl-attrib{margin-bottom:64px!important}.migration .no-webgl-note{display:none}.migration.no-webgl .stage{background:var(--paper-deep)}.migration.no-webgl .no-webgl-note{z-index:20;text-align:center;display:block;position:fixed;top:60px;left:16px;right:16px}.migration.no-webgl .legend,.migration.no-webgl .now{display:none}@media (width<=700px){.migration .story section{padding:0 16px}.migration .story .chapter{align-items:flex-end;min-height:170vh;padding-bottom:90px!important}.migration .card{width:100%;padding:16px 18px;font-size:14px}.migration .title-card h1{font-size:2.4rem}.migration .legend{width:auto;display:none;top:auto;bottom:64px;right:8px}.migration .timeline{gap:10px;padding:6px 8px 8px}.migration .timeline .year{font-size:1.2rem}.migration .ticks .years{display:none}.migration .ticks button{padding:6px 3px 0;font-size:11px}}
