/* THE MUSEUM V5 — navigation / cinematic archives / adaptive audio */
/* Precisely center the indicator under each label, irrespective of translation length. */
.navbar .nav-links{align-items:center;gap:clamp(12px,1.55vw,24px)}
.navbar .nav-link{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:46px;padding:0 2px;line-height:1.35;white-space:nowrap;box-sizing:border-box}
.navbar .nav-link::after{content:"";position:absolute;left:2px;bottom:7px;width:calc(100% - 4px);height:2px;background:#d6aa81;transform:scaleX(0);transform-origin:center;transition:transform .28s cubic-bezier(.2,.75,.2,1);border-radius:3px}
.navbar .nav-link.current::after,.navbar .nav-link:hover::after,.navbar .nav-link:focus-visible::after{width:calc(100% - 4px);transform:scaleX(1)}
.navbar .nav-link:focus-visible,.studio-site-link:focus-visible,.museum-sound-toggle:focus-visible{outline:2px solid #f5d6a1;outline-offset:5px}
/* Museum archives with three supplied illustrations; text always retains contrast. */
.archive-stage{display:flex;flex-direction:column;min-height:610px;isolation:isolate;background:#151217}
.archive-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 34%;z-index:0;filter:brightness(.73) contrast(1.05) saturate(.88);pointer-events:none;transform:scale(1.01);transition:transform .9s ease,opacity .5s ease}
.archive-stage:hover .archive-image{transform:scale(1.055)}
.archive-stage[data-chapter="2"] .archive-image{object-position:50% 54%;filter:brightness(.78) contrast(1.06) saturate(.84)}
.archive-stage[data-chapter="3"] .archive-image{object-position:50% 37%;filter:brightness(.68) contrast(1.08) saturate(.90)}
.archive-art{display:none!important}
.archive-scene{z-index:1;pointer-events:none;background:linear-gradient(180deg,#0a0b0d18 0%,#05040830 32%,#0b0a0e9a 59%,#080609dd 100%)!important;filter:none!important}
.archive-stage::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(90deg,#10090e33 0%,transparent 45%,#100b0c44 100%)}
.archive-text{position:relative;top:auto;bottom:auto;left:auto;right:auto;z-index:3;margin-top:auto;width:100%;padding:135px clamp(20px,3vw,40px) 22px;background:linear-gradient(180deg,transparent 0%,#08080abb 42%,#0a090cec 100%);box-sizing:border-box}
.archive-text .archive-index{color:#e7b791}
.archive-text h3{font-size:clamp(25px,2.5vw,36px);margin:10px 0 11px;text-shadow:0 3px 25px #000d}
.archive-text p{max-width:720px;min-height:0;font-size:clamp(12px,.93vw,14px);line-height:1.72;color:#f0e4d8;text-shadow:0 1px 10px #000f}
.archive-pager{position:relative;bottom:auto;left:auto;right:auto;width:100%;z-index:5;padding:13px clamp(14px,2vw,25px) 16px;background:#0a090df2;box-sizing:border-box}
.archive-pager button{cursor:pointer;min-height:44px}
.archive-image-enter{animation:museumPhotoIn .48s ease-out both}
@keyframes museumPhotoIn{from{opacity:.45;filter:brightness(.5) blur(6px);transform:scale(1.04)}to{opacity:1;filter:brightness(.73) blur(0);transform:scale(1.01)}}
/* External studio reference remains separate from internal navigation. */
.studio-site-link{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:11px 0;margin:12px 0 2px;color:#e9c7a3;text-decoration:none;border-bottom:1px solid #ba93636e;font:700 11px/1.5 system-ui,sans-serif;letter-spacing:.5px;transition:color .25s,border-color .25s}
.studio-site-link:hover{color:#fff4db;border-color:#e7c393}
.footer-links{flex-wrap:wrap;row-gap:13px}
/* Audio is user-initiated, unobtrusive, and supports small-screen safe areas. */
.museum-sound-toggle{position:fixed;right:clamp(13px,2.5vw,34px);bottom:max(14px,env(safe-area-inset-bottom));z-index:1200;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 15px;border:1px solid #ba986f8c;border-radius:999px;background:linear-gradient(135deg,#251c21f2,#121013f5);box-shadow:0 10px 42px #000a;color:#f1d9b8;font:700 10px/1.25 system-ui,sans-serif;letter-spacing:.8px;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .22s,border-color .22s,transform .22s}
.museum-sound-toggle .sound-icon{font-size:17px;line-height:1;min-width:18px}
.museum-sound-toggle[aria-pressed="true"]{border-color:#dac092e0;color:#fff2d7;background:linear-gradient(135deg,#614326f0,#241d19f7)}
.museum-sound-toggle:hover{transform:translateY(-2px);border-color:#f5d4a0}
.museum-sound-toggle:active{transform:translateY(0)}
.museum-sound-toggle .sound-visualizer{display:flex;align-items:end;gap:2px;height:13px}
.museum-sound-toggle .sound-visualizer i{height:5px;width:2px;background:currentColor;border-radius:1px}
.museum-sound-toggle[aria-pressed="true"] .sound-visualizer i{animation:musicPulse .8s ease-in-out infinite alternate}
.museum-sound-toggle[aria-pressed="true"] .sound-visualizer i:nth-child(2){animation-delay:.2s}
.museum-sound-toggle[aria-pressed="true"] .sound-visualizer i:nth-child(3){animation-delay:.43s}
@keyframes musicPulse{0%{height:3px}100%{height:13px}}
html,body{max-width:100%;overflow-x:clip}
.archive-layout,.app-layout,.studio-layout,.footer-inner{min-width:0}
@media(max-width:1120px){
 .navbar .menu-toggle{display:block}
 .navbar .nav-links{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:4px;padding:15px 20px 21px;background:#151014f7;border-bottom:1px solid #71574f;box-shadow:0 22px 35px #000a;max-height:min(75vh,570px);overflow-y:auto;backdrop-filter:blur(13px)}
 .navbar .nav-links.open{display:flex}
 .navbar .nav-link{justify-content:flex-start;padding:12px 15px;min-height:45px;width:100%;font-size:12px;letter-spacing:1.4px}
 .navbar .nav-link::after,.navbar .nav-link.current::after{display:none}
 .navbar .nav-link.current{background:#77523540;border-left:3px solid #dbb68c}
 .nav-utilities{gap:8px}
}
@media(max-width:850px){.archive-layout{grid-template-columns:1fr}.archive-stage{min-height:590px}.archive-text{padding-top:125px}.chapter-list{max-width:100%}}
@media(max-width:650px){
 .archive-stage{min-height:610px}
 .archive-image{object-position:50% 25%}
 .archive-stage[data-chapter="2"] .archive-image{object-position:50% 22%}
 .archive-stage[data-chapter="3"] .archive-image{object-position:50% 26%}
 .archive-text{padding:170px 22px 19px}
 .archive-text h3{font-size:clamp(24px,7vw,30px);line-height:1.2}
 .archive-text p{font-size:12px;line-height:1.75}
 .archive-pager{padding:12px 13px 15px}
 .archive-pager button{font-size:10px;min-height:43px;padding:10px 12px}
 .archive-pager span{font-size:11px;letter-spacing:.5px}
 .chapter-list{display:flex;gap:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory}
 .chapter-tab{flex:0 0 min(79vw,330px);scroll-snap-align:start}
 .studio-site-link{font-size:10px}
 .museum-sound-toggle{right:12px;bottom:max(11px,env(safe-area-inset-bottom));padding:11px 13px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.archive-image-enter{animation:none!important}.archive-image,.museum-sound-toggle{transition:none!important}.museum-sound-toggle .sound-visualizer i{animation:none!important}}
