.archive-page{--archive-width:1500px} .archive-page header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.archive-page main{width:100%;max-width:none}.archive-inner{width:min(90%,var(--archive-width));margin-inline:auto}.archive-intro{padding:50px 0 32px;background:var(--bg)}.archive-kicker{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.12em}.archive-title{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:end;margin:25px 0 35px}.archive-title h1{font-size:clamp(64px,8vw,132px);max-width:10ch}.archive-title h1 span{color:var(--accent)}.archive-title p{font-size:clamp(20px,2.3vw,32px);line-height:1.25;max-width:28ch}.archive-hero{margin:0;position:relative}.archive-hero>button{display:block;background:var(--paper);padding:0;border:0;width:100%;cursor:zoom-in;border-radius:8px;overflow:hidden}.archive-hero img{width:100%;max-height:660px;object-fit:cover;display:block}.archive-hero figcaption{font-size:11px;display:flex;justify-content:space-between;gap:20px;margin-top:10px}.archive-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:32px;border-top:1px solid var(--line);padding:22px 0 10px}.archive-facts span{font-size:10px;letter-spacing:.1em;display:block;opacity:.75}.archive-facts strong{font-size:14px;display:block;margin-top:7px;font-weight:500}.archive-band{color:var(--on-accent);background:var(--accent);padding:15px 0;font-size:clamp(27px,4.7vw,76px);font-weight:800;line-height:1.1;letter-spacing:-.025em}.archive-band-track{display:flex;width:max-content;animation:archive-drift 36s linear infinite;will-change:transform}.archive-band-track span{flex-shrink:0;min-width:100vw;padding-right:1em;white-space:nowrap}.archive-band.reverse .archive-band-track{animation-direction:reverse}@keyframes archive-drift{to{transform:translateX(-50%)}}.paused .archive-band-track,.band-offscreen .archive-band-track{animation-play-state:paused}.archive-story{background:var(--paper);color:var(--paper-ink);padding:70px 0}.archive-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.archive-story h2,.archive-gallery h2,.archive-model h2{font-size:clamp(36px,4.7vw,74px);letter-spacing:-.05em;line-height:1.05;margin:15px 0 20px}.archive-story p{font-size:17px;max-width:53ch;margin:0 0 20px}.archive-story .archive-credit{font-size:12px;border-top:1px solid currentColor;padding-top:17px;margin-top:25px}.archive-gallery{background:var(--bg);padding:55px 0 65px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}.gallery-heading p{font-size:12px;max-width:35ch;margin-bottom:23px}.archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 24px}.archive-grid figure{margin:0;min-width:0}.archive-grid button{display:block;padding:0;width:100%;border:1px solid transparent;background:var(--paper);border-radius:6px;overflow:hidden;cursor:zoom-in}.archive-grid button:hover{border-color:var(--accent)}.archive-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;transition:transform .4s}.archive-grid button:hover img{transform:scale(1.025)}.archive-grid figcaption{font-size:12px;line-height:1.5;margin-top:10px}.archive-grid figcaption b{display:block;font-size:15px;margin-bottom:2px}.archive-model{background:var(--paper);color:var(--paper-ink);padding:50px 0 60px}.archive-model-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:25px}.archive-model-intro p{font-size:16px;max-width:45ch;margin-bottom:20px}.archive-model .scene-shell{max-width:1200px;margin-inline:auto}.archive-model .scene-viewport{height:clamp(360px,38vw,530px)}.archive-model .scene-note{max-width:1200px;margin:15px auto!important}.archive-navigation{background:var(--bg);padding:38px 0 55px}.archive-navlinks{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;font-size:14px}.archive-navlinks a{padding:10px 0}.archive-page footer button{background:none;color:inherit;border:1px solid var(--line);border-radius:5px;padding:10px;font:inherit;cursor:pointer}.archive-page footer button:hover{color:var(--bg);background:var(--ink)}.archive-dialog{background:#0b1621;color:white;border:1px solid #ffffff33;border-radius:8px;width:min(94vw,1700px);max-height:94dvh;padding:15px}.archive-dialog::backdrop{background:#06131fed}.archive-dialog img{display:block;width:100%;max-height:76dvh;object-fit:contain}.archive-dialog button{margin:0 0 12px auto;display:block;min-height:44px;padding:8px 15px;color:white;border:1px solid #ffffff55;background:transparent;border-radius:5px;cursor:pointer}.archive-dialog button:hover{background:white;color:#142748}.archive-dialog p{font-size:12px;padding-top:10px}.archive-page :focus-visible{outline:3px solid var(--accent);outline-offset:4px}.archive-story a,.archive-model a{text-decoration:underline}.archive-page .scene-help{color:#40556c}
@media(min-width:1900px){.archive-inner{width:min(84%,1700px)}.archive-hero img{max-height:780px}}
@media(max-width:750px){.archive-intro{padding-top:32px}.archive-title{grid-template-columns:1fr;gap:23px;margin:25px 0}.archive-title h1{font-size:clamp(51px,12vw,88px);max-width:none}.archive-title p{font-size:22px;max-width:28ch}.archive-kicker{font-size:9px;letter-spacing:.06em}.archive-story{padding:35px 0}.archive-story-grid{grid-template-columns:1fr;gap:10px}.archive-story p{font-size:15px}.archive-facts{gap:12px;margin-top:20px}.archive-facts strong{font-size:11px}.archive-facts span{font-size:9px}.archive-hero figcaption{font-size:9px;gap:15px}.archive-grid{gap:22px 12px}.archive-grid img{aspect-ratio:4/3}.archive-grid figcaption{font-size:10px}.archive-grid figcaption b{font-size:12px}.gallery-heading{display:block}.gallery-heading p{margin-bottom:20px}.archive-gallery{padding:35px 0 40px}.archive-model-intro{grid-template-columns:1fr;gap:0}.archive-model-intro p{font-size:15px;margin:0 0 8px}.archive-model{padding:35px 0}.archive-page footer .legal{flex-wrap:wrap}.archive-navlinks{font-size:12px}.archive-page header{padding-bottom:6px}.archive-page .scene-topline{font-size:8px}.archive-band{padding:12px 0}}
@media(prefers-reduced-motion:reduce){.archive-band-track{animation-play-state:paused}.archive-grid img{transition:none}.archive-grid button:hover img{transform:none}}

/* Preserve the source image proportions; HTML dimension hints must not make tall cards. */
.archive-grid img{height:auto;aspect-ratio:auto}.archive-hero img{height:auto;object-fit:contain}.archive-page .scene-toolbar button{height:auto}
