:root{--bg:#e7e9e8;--panel:#f4f5f4;--ink:#15191c;--muted:#59616a;--line:#c3c8cb;--hivis:#f2c200;--display:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;--body:"Atkinson Hyperlegible","Segoe UI",sans-serif;--mono:"JetBrains Mono",monospace;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#121517;--panel:#1b1f22;--ink:#e9ecec;--muted:#b0b7bc;--line:#424b51;color-scheme:dark}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 var(--body)}
.wrap{max-width:1120px;margin:auto;padding-inline:max(20px,env(safe-area-inset-left))}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--muted)}a:focus-visible{outline:3px solid var(--hivis);outline-offset:5px}
.skip{position:absolute;left:20px;top:-100px;background:var(--hivis);color:#15191c;padding:8px;z-index:5}.skip:focus{top:10px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:25px;flex-wrap:wrap}.mark{font:900 1.5rem var(--display);text-transform:uppercase;text-decoration:none}
.nav{display:flex;gap:8px 22px;flex-wrap:wrap;font:0.78rem var(--mono);text-transform:uppercase}.nav a{text-decoration:none;border-bottom:2px solid transparent;padding-block:6px}.nav a:hover,.nav a[aria-current=page]{border-color:var(--hivis)}
.label{font:0.75rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:0.12em;color:var(--muted)}
h1,h2,h3{font-family:var(--display);text-transform:uppercase;line-height:1;letter-spacing:0.01em;margin:0}h1{font-size:clamp(3.8rem,9vw,7.5rem);max-width:13ch}h2{font-size:clamp(2.4rem,5vw,4rem)}h3{font-size:1.7rem}p{margin:0;max-width:64ch}.stack{display:grid;gap:20px;align-content:start}
.intro{padding-block:65px 48px;display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:end}.intro .lede{font-size:1.2rem}.intro-note{padding:20px;border-left:4px solid var(--hivis);background:var(--panel)}
.index{display:flex;gap:12px 24px;flex-wrap:wrap;padding-block:22px 30px;border-top:1px solid var(--line);font:0.8rem/1.7 var(--mono)}
.timeline{padding-bottom:60px}.entry{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;padding-block:56px;border-top:1px solid var(--line);scroll-margin-top:20px;align-items:center}.entry>*{min-width:0}.entry:nth-child(even) figure{order:2}.entry:nth-child(even) .entry-copy{order:1}
figure{margin:0}.photo-link{display:block;background:#d8dcdd;border:1px solid var(--line)}.photo-link img{display:block;width:100%;height:385px;object-fit:contain}.photo-link:hover{outline:2px solid var(--hivis)}.diagram{display:block;width:100%;height:auto;background:#1b2024}.entry figcaption{font-size:0.8rem;line-height:1.6;color:var(--muted);padding-top:12px}.entry figcaption a{display:inline}
.year{font:800 2.8rem/1 var(--display);color:var(--ink);display:block;padding-left:15px;border-left:5px solid var(--hivis)}.lesson{padding:16px 18px;border-left:3px solid var(--hivis);background:var(--panel)}.lesson strong{display:block;font:600 0.7rem var(--mono);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:8px}.source{font-size:0.85rem;color:var(--muted)}
.next{padding-block:55px;background:var(--hivis);color:#15191c}.next .wrap{display:grid;grid-template-columns:1fr 1fr;gap:45px}.next p{max-width:60ch}.next a:hover{color:#403800}
.credits{padding-block:45px;border-top:1px solid var(--line);font-size:0.9rem;color:var(--muted)}.credits h2{color:var(--ink);font-size:2rem}.credits ul{padding-left:22px;margin:0;display:grid;gap:8px}footer{padding-block:30px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:0.85rem;color:var(--muted)}
@media(max-width:760px){.intro,.entry,.next .wrap{grid-template-columns:1fr;gap:28px}.intro{padding-top:35px}.entry{padding-block:36px}.entry:nth-child(even) figure,.entry:nth-child(even) .entry-copy{order:initial}.photo-link img{height:330px}.year{font-size:2.4rem}.nav{gap:8px 15px}.intro .lede{font-size:1.1rem}}
@media(max-width:400px){.photo-link img{height:290px}.wrap{padding-inline:16px}}
.story-note{max-width:75ch;margin:0 0 30px;color:var(--muted);font-size:.9rem}
.stories .photo-link{background:#faf9f5}.stories .photo-link img{height:390px;padding:18px}
.stories .photo-link img[src$="little-mermaid.jpg"]{padding:24px}
.reflection{padding-block:55px;border-top:1px solid var(--line);background:var(--panel);scroll-margin-top:20px}
.reflection-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 45px;margin-top:15px}.reflection-grid>div{border-top:3px solid var(--hivis);padding-top:20px;min-width:0}
.companion-link{margin-block:0 35px;padding:22px;border-left:4px solid var(--hivis);background:var(--panel);display:grid;gap:10px;max-width:none}
@media(max-width:760px){.reflection-grid{grid-template-columns:1fr}.stories .photo-link img{height:330px}}
.history-video{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;background:var(--panel)}
