:root{color-scheme:dark;--cream:#f1ead8;--muted:#c3b79e;--gold:#cfb17b}*{box-sizing:border-box}body{margin:0;background:#28271f;color:var(--cream);font-family:Arial,sans-serif;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;-webkit-tap-highlight-color:transparent}button:focus-visible,canvas:focus-visible{outline:1px solid var(--gold);outline-offset:6px}button:hover{color:#fff}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}#museum{position:fixed;inset:0;width:100%;height:100%;touch-action:none;outline:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(#10141060,transparent 22%,transparent 65%,#0b100d8c),radial-gradient(ellipse at center,transparent 35%,#11150f45 100%)}header{position:fixed;inset:0 0 auto;padding:28px 36px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}header button{pointer-events:auto}.brand{display:flex;align-items:center;gap:13px;text-align:left;font:11px/1.45 Arial;letter-spacing:3px;text-shadow:0 1px 8px #0008}.brand-second{display:block;letter-spacing:5.4px;font-size:10px}.seal{width:48px;height:48px;border:1px solid #d4c5a777;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font:24px Georgia;letter-spacing:-7px;padding-right:6px}.seal small{font:14px Georgia;letter-spacing:0;margin:-4px 0 0 5px}.header-center{display:flex;gap:18px;align-items:center;font-size:8px;letter-spacing:2.6px;color:#e1d6bf}.tiny-line{width:28px;height:1px;background:#d0b88970}.header-actions{display:flex;gap:26px;font-size:10px}.header-actions span{margin-left:8px;color:var(--gold)}#intro{position:fixed;bottom:11%;left:0;width:100%;text-align:center;transition:opacity .55s,transform .6s;pointer-events:none;text-shadow:0 2px 20px #000}#intro button{pointer-events:auto}.eyebrow{font-size:9px;letter-spacing:3px;color:var(--gold)}h1{font:400 clamp(30px,3.7vw,56px)/1.13 Georgia,serif;letter-spacing:-1.5px;margin:17px 0 26px}h2{font:400 34px Georgia;margin:16px 0 30px;letter-spacing:-.6px}.primary{font-size:10px;letter-spacing:1.5px;border:1px solid #c7b58e80;background:#252a21bf;backdrop-filter:blur(15px);padding:18px 23px;min-width:213px}.primary span{margin-left:30px;color:var(--gold)}.intro-note{font:12px Georgia;letter-spacing:.3px;color:#e2d6bd;margin-top:20px}.inside #intro{opacity:0;transform:translateY(15px);visibility:hidden}.inside #intro button{pointer-events:none}footer{position:fixed;bottom:24px;left:36px;right:36px;display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.8px;color:#d5c9b0;pointer-events:none}footer button{pointer-events:auto;font-size:10px;letter-spacing:.5px}footer button span{border:1px solid #d4c8af70;border-radius:50%;padding:2px 5px;margin-left:6px;font-size:9px}.status-dot{display:inline-block;width:4px;height:4px;background:var(--gold);border-radius:50%;margin-right:10px}#position{position:absolute;left:50%;transform:translateX(-50%)}#walkHint{position:fixed;bottom:122px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:12px 15px;border:1px solid #ebdfc520;background:#17201985;backdrop-filter:blur(12px);font-size:10px;white-space:nowrap;color:#e5dcca}#walkHint i{font-style:normal;opacity:.45;padding:0 10px}#dismissHint{font-size:18px;opacity:.65;margin-left:8px}.mouse-icon{width:12px;height:18px;border:1px solid #d0bea0;border-radius:7px;position:relative}.mouse-icon:before{content:'';position:absolute;width:1px;height:4px;top:3px;left:4px;background:#d0bea0}#controls{position:fixed;bottom:59px;left:50%;transform:translateX(-50%);display:flex;gap:5px}#controls button{width:40px;height:40px;border:1px solid #dccdad40;background:#1e271ed9;font:15px Georgia;touch-action:none}#controls button:hover{background:#b2996260}#crosshair{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);font:18px Georgia;color:#fff6;pointer-events:none}#navigation{position:fixed;left:36px;bottom:78px;width:114px;background:#1b231bc4;border:1px solid #d4c7a325;backdrop-filter:blur(10px);padding:12px 10px 9px}.nav-title{display:flex;justify-content:space-between;gap:5px;font-size:6px;letter-spacing:1px;color:#d7c8aa}#minimap{display:block;width:86px;height:150px;margin:10px auto}.map-caption{display:block;text-align:center;font:9px Georgia;letter-spacing:7px;color:var(--gold)}#doorHint{position:fixed;left:50%;top:59%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;pointer-events:none;padding:13px 20px;background:#1d251de8;border:1px solid #c7b07b55;box-shadow:0 10px 40px #0003}#hintLetter{font:42px Georgia;color:#dbc595}#hintName{font-size:10px;letter-spacing:2px}#doorHint small{display:block;font-size:9px;color:#c3b698;margin-top:8px}#doorHint small span{margin-left:15px}#exhibit{position:fixed;right:5%;top:50%;transform:translateY(-50%);width:330px;padding:32px;background:#1c231bec;backdrop-filter:blur(20px);border:1px solid #d5c6a440;box-shadow:0 12px 60px #0003}.back-link{font-size:9px;color:#cfbea0;padding:0 0 32px}#exhibit h1{font-size:49px;margin-bottom:16px}#pair{font:29px Georgia;letter-spacing:12px;color:var(--gold);border-bottom:1px solid #d4c29830;padding-bottom:20px}#roomText{font:16px/1.65 Georgia;color:#e0d5be}.next-link{display:flex;justify-content:space-between;width:100%;border-top:1px solid #d4c29830;margin-top:25px;padding:18px 0 0;font-size:10px;color:var(--gold)}dialog{background:#20281fee;color:var(--cream);backdrop-filter:blur(24px);padding:35px;border:1px solid #c6b48b60;box-shadow:0 30px 100px #0008;width:min(780px,91vw)}dialog::backdrop{background:#10170f99;backdrop-filter:blur(7px)}.dialog-head{display:flex;justify-content:space-between}.dialog-head button,.close-help{font-size:25px;align-self:flex-start;color:#d5c3a0}#letters{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}#letters button{position:relative;padding:15px 0 12px;border:1px solid #c3ac7c40;font:34px Georgia;background:#ffffff03}#letters button:hover{background:#c9ad7322;border-color:#c3ac7c}#letters small{display:block;font:8px Arial;letter-spacing:1px;margin-top:8px;color:#c9b996}#letters .seen:after{content:'·';position:absolute;right:8px;top:0;color:var(--gold)}.map-foot{display:flex;justify-content:space-between;font-size:9px;color:#c1b290;margin-top:24px}#helpDialog{max-width:540px}.close-help{float:right}dt{font-size:11px;color:var(--gold);margin-top:20px}dd{font:15px/1.5 Georgia;margin:7px 0;color:#d7cdb9}#error{position:fixed;top:40%;left:15%;right:15%;padding:35px;background:#20251f}body.in-room #navigation{opacity:.5}@media(max-width:700px){header{padding:20px}.brand{font-size:9px;gap:9px}.brand-second{font-size:8px}.seal{width:38px;height:38px;font-size:20px}.header-center,.footer-brand{display:none}.header-actions{gap:0;font-size:10px}#intro{bottom:15%;padding:0 25px}h1{font-size:34px}.intro-note{font-size:11px}footer{left:20px;right:20px;bottom:20px}#position{position:static;transform:none;font-size:7px}#navigation{left:16px;bottom:75px;width:72px;padding:8px 4px}.nav-title{justify-content:center}.nav-title>span:first-child{display:none}#minimap{width:53px;height:93px;margin:7px auto}.map-caption{font-size:7px}#walkHint{bottom:137px;max-width:90vw;font-size:9px;white-space:normal;width:260px;line-height:1.6}#walkHint i{padding:0 4px}#controls{bottom:63px;margin-left:25px}#controls button{width:36px;height:36px}#exhibit{width:90%;right:5%;top:auto;bottom:66px;transform:none;padding:20px}#exhibit h1{font-size:32px;display:inline-block;margin:10px 25px 10px 0}#pair{display:inline;border:0;padding:0;font-size:22px}#roomText{font-size:14px;margin:8px 0}.back-link{padding-bottom:10px}#exhibit .eyebrow{margin:5px 0;font-size:8px}.next-link{margin-top:12px;padding-top:12px}body.in-room #navigation{display:none}#letters{grid-template-columns:repeat(4,1fr)}#letters button{padding:9px;font-size:28px}dialog{padding:23px;max-height:90dvh}h2{font-size:26px}.map-foot{font-size:8px;gap:12px}#doorHint{top:52%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Refined museum identity and explicit navigation. */
:root{--cream:#f4f0e5;--muted:#c7c4b3;--gold:#c4ad7d}header{inset:16px 20px auto;padding:13px 23px;min-height:83px;background:linear-gradient(120deg,#f5f1e6f5,#e8e5d8ee);color:#27332e;border:1px solid #fff8;box-shadow:0 10px 45px #0b151826;backdrop-filter:blur(24px);z-index:10;gap:20px;pointer-events:auto}.brand{gap:12px;color:#27332e;text-shadow:none;padding:0;flex-shrink:0}.brand:hover{color:#4b624f}.seal{display:block;border:0;border-radius:0;width:57px;height:57px;padding:0}.seal svg{display:block;width:100%;height:100%;overflow:visible}.wordmark{font-size:10px;letter-spacing:2.7px;line-height:1.65}.brand-second{font-size:9px;letter-spacing:4.9px}.main-nav{display:flex;align-items:center;gap:5px;margin-left:auto}.nav-link{font-size:11px;padding:12px 17px;border:1px solid transparent;display:flex;align-items:center;gap:9px;transition:background .2s,border-color .2s}.nav-link:hover{background:#243d2d0c;color:#213a2c}.nav-link.active{background:#243d2d0c;border-color:#53664b25}.nav-icon{font:14px Georgia;color:#8c7851}.header-actions{gap:18px;margin-left:12px;align-items:center}.header-actions span{margin:0}.language-switch{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #56634a30;background:#fff5}.language-switch button{font-size:10px;letter-spacing:1px;padding:8px;color:#717466}.language-switch button[aria-pressed=true]{background:#2b3d32;color:#f6f1e4}.language-switch button:hover{color:#ab8852}.language-switch button[aria-pressed=true]:hover{color:#fff}#menuButton{display:none;align-items:center;gap:11px;border:1px solid #52644645;padding:10px 12px;font-size:11px;color:#293f32}.menu-icon{display:flex;flex-direction:column;gap:4px;width:14px}.menu-icon i{height:1px;background:currentColor;width:14px;display:block}#menuButton[aria-expanded=true] .menu-icon i:first-child{transform:translateY(2.5px) rotate(45deg)}#menuButton[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-2.5px) rotate(-45deg)}#mobileMenu{position:fixed;top:110px;right:20px;z-index:11;width:min(340px,calc(100vw - 40px));background:#f3efe4f7;backdrop-filter:blur(24px);border:1px solid #fff8;padding:24px;color:#2b3d32;box-shadow:0 25px 80px #07110d60}#mobileMenu .eyebrow{font-size:8px;line-height:1.8;letter-spacing:1.4px;margin:0 0 18px;color:#84724f}#mobileMenu button{width:100%;display:flex;justify-content:space-between;text-align:left;border-top:1px solid #50614a22;padding:16px 0;font:22px Georgia}#mobileMenu button:hover{color:#9f7c46}#mobileMenu button span+span{font:17px Georgia;color:#988154}.vignette{background:linear-gradient(#111d1625,transparent 24%,transparent 60%,#0c171ca3),radial-gradient(ellipse at center,transparent 42%,#0e201c28 100%)}#intro{bottom:10%;text-shadow:0 2px 30px #071814}#intro h1{font-size:clamp(31px,4.2vw,60px);letter-spacing:-1.5px;margin:16px 0 25px}.eyebrow{font-size:9px;letter-spacing:2.5px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:#f0eadb;color:#28382d;border-color:#f0eadb;box-shadow:0 8px 30px #0002;padding:18px 24px;min-width:220px;transition:background .2s,transform .2s}.primary:hover{background:#fff8e9;color:#273b2d;transform:translateY(-2px)}.primary span{margin:0;color:inherit}.primary span+span{color:#8a6d3c;font-size:17px}.intro-note{font-size:13px;color:#e8e4d3}.intro-note:before,.intro-note:after{content:'—';opacity:.4;margin:0 12px}#galleryCaption{position:fixed;top:123px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:15px;pointer-events:none;color:#eee9dc;text-shadow:0 1px 7px #0009;white-space:nowrap}#location{font-size:8px;letter-spacing:2.5px;margin:0}.caption-line{width:28px;height:1px;background:#dfd2b673}footer button{font-size:10px}#fullscreen{font-size:20px;padding:0}#navigation{background:#132821a6;border-color:#d0c5a333;box-shadow:0 8px 35px #0001}.nav-title{font-size:6.5px}#controls{gap:0;border:1px solid #d1c5a955;padding:4px;background:#162b24c9;backdrop-filter:blur(14px);border-radius:3px}#controls button{border:0;background:transparent;width:41px;height:35px}#controls button+button{border-left:1px solid #cdbb9430}#controls button:hover{background:#d5c19020}#walkHint{background:#152a23bd;border-color:#e1d8bd25;font-size:10px;box-shadow:0 5px 30px #0001;padding:12px 16px;bottom:118px}#crosshair{width:5px;height:5px;border:1px solid #f5eed780;border-radius:50%;box-shadow:0 0 8px #0004}#exhibit{background:linear-gradient(145deg,#f4f0e8fa,#e8e2d5f7);color:#26382d;border:1px solid #fff9;padding:32px;box-shadow:0 20px 70px #071c1638}#exhibit .eyebrow{color:#8e7348}#exhibit h1{letter-spacing:-1px}.back-link{color:#68705b;padding-bottom:30px}.back-link:hover{color:#2e4938}#pair{color:#90764f;border-color:#87917940;display:flex;gap:28px;letter-spacing:0}#pair>span{font:36px Georgia;display:flex;flex-direction:column;gap:5px}#pair small{font:6px Arial;letter-spacing:1.4px;color:#7d846e}#roomText{color:#53604f;font-size:16px}.next-link{border-color:#87917940;color:#4b614d;gap:15px;line-height:1.5}.next-link:hover{color:#9a7947}dialog{background:linear-gradient(145deg,#f4f0e8fa,#e8e2d5fa);color:#293c30;border-color:#fff8}dialog .eyebrow{color:#8b744e}dialog h2{font-size:36px}.dialog-head button,.close-help{color:#727e69}#letters{gap:9px}#letters button{border-color:#89937840;color:#2e4535;background:#fff3;padding:18px 0 13px}#letters button:hover{border-color:#93815b;background:#a3977330;color:#1e3628}#letters small{color:#788065;font-size:8px}#letters .seen{background:#e0e4d5}#letters .seen:after{color:#8e7144}.map-foot{color:#7a806f;font-size:10px;line-height:1.6;gap:15px}.map-foot span:last-child{white-space:nowrap}dt{color:#846c43}dd{color:#53604f}#doorHint{background:#f1eadff2;color:#2c3f31;border-color:#fff8}#hintLetter{color:#927b51}#doorHint small{color:#717862;font-size:9px}#doorHint small span{margin:0}.language-switch:focus-within{outline:1px solid #a58a59;outline-offset:4px}@media(max-width:960px){.main-nav{display:none}#menuButton{display:flex}.header-actions{margin-left:auto}#galleryCaption{top:118px}footer .footer-brand{display:none}#position{position:static;transform:none}}@media(max-width:700px){header{inset:12px 12px auto;padding:10px 13px;min-height:72px;gap:8px}.seal{width:46px;height:46px}.wordmark{font-size:8px;letter-spacing:1.7px}.brand-second{font-size:7px;letter-spacing:3.4px}.brand{gap:8px}.header-actions{gap:9px}.language-switch button{font-size:9px;padding:7px}.language-switch{gap:1px;padding:2px}#menuButton{padding:9px;font-size:10px;gap:8px}#mobileMenu{top:94px;right:12px;width:min(340px,calc(100vw - 24px));padding:22px}#galleryCaption{top:105px;gap:10px}#location{font-size:6px;letter-spacing:1.6px}.caption-line{width:17px}#intro{bottom:13%;padding:0 20px}#intro h1{font-size:34px;line-height:1.15}.intro-note{font-size:11px}.intro-note:before,.intro-note:after{display:none}#position{font-size:6.5px;letter-spacing:1px}#fullscreen{font-size:18px}#walkHint{width:268px;font-size:9px;bottom:127px}#navigation{bottom:72px}#controls{bottom:61px}#controls button{width:34px;height:31px}#exhibit{padding:23px;bottom:62px;max-height:calc(100dvh - 165px);overflow:auto}#exhibit h1{font-size:33px;margin:9px 0 17px}#pair{float:right;display:flex;gap:18px;margin-top:7px;padding-bottom:0}#pair>span{font-size:25px}#pair small{font-size:5px;letter-spacing:.7px}#roomText{clear:both;font-size:14px;line-height:1.65}.back-link{padding-bottom:10px;font-size:9px}.next-link{font-size:9px}dialog h2{font-size:28px}#letters{gap:7px}#letters button{padding:11px 0}#letters small{font-size:7px}.map-foot{font-size:8px}.eyebrow{font-size:8px;letter-spacing:1.8px}#doorHint{top:54%}}@media(max-width:380px){.wordmark{display:none}.seal{width:42px;height:42px}#intro h1{font-size:30px}#walkHint{width:238px}#exhibit{padding:19px}.map-foot{flex-direction:column;gap:3px}}@media(max-height:620px) and (min-width:701px){#exhibit{max-height:calc(100dvh - 150px);overflow:auto;top:112px;transform:none}#intro{bottom:8%}#intro h1{font-size:36px}.intro-note{margin:12px 0}}
#menuButton span{color:inherit}#menuButton:hover{background:#2b453015;color:#23392b}#menuButton[aria-expanded=true]{background:#2b3d32;color:#f4efdf;border-color:#2b3d32}.header-actions .language-switch{flex-shrink:0}.brand .seal{filter:none}
/* A shared typographic baseline for collection, progress and project credit. */
footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;bottom:calc(16px + env(safe-area-inset-bottom,0px));font:8px/1.6 Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#d5c9b0}
.footer-left{display:flex;align-items:center;gap:8px;min-width:0}
footer .footer-brand{display:block}
footer #fullscreen{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;font-size:20px;padding:0;letter-spacing:0}
footer #position{position:static;transform:none;max-width:none;padding:0;font:inherit;letter-spacing:inherit;text-align:center}
.project-credit{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap;font:inherit;letter-spacing:inherit}
.project-credit a{display:inline-flex;align-items:center;min-height:44px;color:inherit;font:inherit;letter-spacing:inherit;text-decoration:none;text-underline-offset:4px;pointer-events:auto}
.project-credit a:hover,.project-credit a:focus-visible{text-decoration:underline;color:#fff}
.project-credit a:focus-visible{outline:1px solid var(--gold);outline-offset:3px}
@media(max-width:960px){
 footer{grid-template-columns:1fr auto;column-gap:16px;row-gap:0}
 footer #position{grid-column:1/-1;grid-row:2}
}
@media(max-width:700px){
 footer{left:12px;right:16px;bottom:calc(10px + env(safe-area-inset-bottom,0px));font-size:7px;letter-spacing:1.1px;column-gap:12px}
 .footer-left{gap:4px}
 .project-credit{gap:5px}
 #controls{bottom:calc(90px + env(safe-area-inset-bottom,0px))}
 #walkHint{bottom:calc(156px + env(safe-area-inset-bottom,0px))}
 #navigation{bottom:calc(100px + env(safe-area-inset-bottom,0px))}
 #exhibit{bottom:calc(94px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 195px - env(safe-area-inset-bottom,0px))}
}
/* Preserve the original artwork, including its paper background and aspect ratio. */
.seal img{display:block;width:100%;height:100%;object-fit:contain;filter:none;mix-blend-mode:normal}

/* Leave the walking controls accessible below the room description on phones. */
@media(max-width:700px){body.in-room #exhibit{bottom:calc(146px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 247px - env(safe-area-inset-bottom,0px))}}
/* Keep the entrance architecture and its guardians visible above the invitation. */
body:not(.inside) #intro{bottom:7%;}
body:not(.inside) #intro h1{font-size:clamp(27px,2.65vw,38px);margin:8px 0 14px;letter-spacing:-.8px;}
body:not(.inside) #intro .eyebrow{margin:0 0 8px;font-size:8px;}
body:not(.inside) #intro .primary{padding:13px 23px;}
body:not(.inside) #intro .intro-note{margin:12px 0 0;font-size:11px;}
@media(max-width:700px){body:not(.inside) #intro{bottom:12%;}body:not(.inside) #intro h1{font-size:28px;}}
@media(max-height:620px){body:not(.inside) #intro{bottom:8%;}body:not(.inside) #intro .eyebrow,body:not(.inside) #intro .intro-note{display:none;}body:not(.inside) #intro h1{font-size:25px;}}

#readScreens{margin-top:14px;color:#274139;font-size:12px;text-decoration:underline;text-underline-offset:4px}#screenReader{width:min(800px,calc(100% - 28px));max-height:90dvh;overflow:auto;background:#102521;color:#f7f1e4;padding:30px;border:1px solid #8d856f}#screenReader .dialog-head{gap:20px;align-items:flex-start}#screenReader h2{font-size:clamp(24px,4vw,34px);color:#f7f1e4;margin:0}#screenReader button{color:inherit;border:1px solid #7b897d;background:transparent;padding:10px 14px;min-height:44px}#screenReader button:hover{background:#2b4138}#screenReader #closeScreen{font-size:25px;min-width:44px;flex-shrink:0}#screenGlyph{font:clamp(56px,12vw,104px) Georgia,serif;color:#e2c68b;margin:24px 0;overflow-wrap:anywhere}#screenCopy{font-size:19px;line-height:1.6;max-width:65ch}#screenCopy p{margin:0 0 16px}.screen-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px}.screen-sources{font-size:12px;line-height:1.7;margin:24px 0 0;color:#ced4c6}.screen-sources a{color:inherit;text-underline-offset:3px}#screenReader button:focus-visible,#screenReader a:focus-visible{outline:2px solid #e2c68b;outline-offset:4px}@media(max-width:600px){#screenReader{padding:20px}#screenCopy{font-size:17px}.screen-actions{gap:8px}#screenPause{width:100%}}
/* Information lives on the televisions; a compact room card leaves both displays visible. */
body.in-room #exhibit{top:auto;bottom:130px;right:3%;transform:none;width:280px;padding:18px 22px;max-height:300px;backdrop-filter:none;background:#eee9dc}
#exhibit #pair,#exhibit #roomText,#exhibit #roomNumber{display:none}#exhibit h1{font-size:30px;margin:10px 0}#exhibit .next-link{padding:12px 0;margin-top:0}#exhibit #back{font-size:11px}
@media(max-width:700px){body.in-room #exhibit{right:14px;width:230px;padding:14px 18px;bottom:146px;max-height:230px}#exhibit h1{font-size:26px;margin:6px 0}#exhibit .next-link{padding:9px 0}}

#loadingStatus{position:fixed;z-index:30;bottom:76px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#263c32;color:#eee6cf;font:13px/1.5 Arial,sans-serif;max-width:calc(100vw - 36px);text-align:center;pointer-events:none;}
@media(max-width:700px){body.inside:has(#walkHint:not([hidden])) #walkHint{bottom:290px;left:18px;right:18px;width:auto;max-width:none;transform:none;}}
/* The architecture leads the entrance; the invitation stays below its silhouette. */
body:not(.inside) header{background:transparent;border:0;box-shadow:none;backdrop-filter:none;color:#fff1d9;}
body:not(.inside) header .brand,body:not(.inside) header .nav-link,body:not(.inside) header #menuButton{color:#fff1d9;text-shadow:0 2px 8px #35251c;}
body:not(.inside) #intro .eyebrow,body:not(.inside) #intro h1,body:not(.inside) #intro .intro-note{display:none;}
body:not(.inside) #intro{bottom:8%;}
body:not(.inside) #intro .primary{background:#392c20e8;color:#fff0d3;border:1px solid #e7c58b80;backdrop-filter:none;padding:17px 26px;}
@media(max-width:700px){body:not(.inside) #intro{bottom:12%;}body:not(.inside) header{background:#36291fd9;}body:not(.inside) .wordmark{display:none;}}
/* Reference-driven entrance. The aperture is measured from the actual photo,
   rather than approximating the sculpture with generated vector shapes. */
#cinematicEntrance{position:fixed;inset:0;z-index:2;overflow:hidden;isolation:isolate;}
#entranceStage{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:50% 50%;will-change:transform;pointer-events:none;}
#entranceFacade{display:block;width:100%;height:100%;mask-image:url('assets/entrance-v3/facade-mask.svg');mask-size:100% 100%;mask-mode:luminance;user-select:none;}
.portal-slot{position:absolute;left:48.90625%;top:46.455224%;width:5.3125%;height:28.731343%;overflow:hidden;perspective:300px;}
.portal-darkness{position:absolute;inset:0;background:#100b07;}
.portal-leaf{position:absolute;top:0;bottom:0;width:50%;background-image:url('assets/entrance-v3/facade.webp');background-size:3764.705882% 348.051948%;backface-visibility:hidden;will-change:transform;}
.portal-left{left:0;background-position:50.240770% 65.183246%;transform-origin:left center;}
.portal-right{right:0;background-position:52.969502% 65.183246%;transform-origin:right center;}
#portalButton{position:absolute;left:50%;top:50%;width:19vw;height:64vh;transform:translate(-50%,-50%);border:0;background:transparent;}
#portalButton:disabled{cursor:default;pointer-events:none;}
#portalButton:focus-visible{outline:2px solid #e8c381;outline-offset:8px;}
#portalPrompt{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);margin:0;padding:14px 24px;color:#fff1d8;background:#1d140de8;font:13px Georgia,serif;letter-spacing:.4px;text-align:center;white-space:nowrap;pointer-events:none;}
#entryReturn{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);font-size:11px;color:#ffedca;padding:12px 20px;background:#1d140de8;}
body.cinematic-active .vignette{z-index:3;background:linear-gradient(#24180d25,transparent 18%,transparent 84%,#24180d66);}
body.cinematic-active header{z-index:10;inset:16px 20px auto;min-height:68px;padding:12px 20px;background:#22170d66;border:0;box-shadow:none;backdrop-filter:none;color:#fff2d7;}
body.cinematic-active header .brand,body.cinematic-active header .nav-link,body.cinematic-active header #menuButton{color:#fff2d7;text-shadow:0 1px 4px #201408;}
body.cinematic-active .brand .seal svg{filter:brightness(0) invert(1);opacity:.85;}
body.cinematic-active footer{z-index:4;color:#ffefd6;text-shadow:0 1px 3px #201408;}
body.cinematic-active #intro{z-index:4;bottom:6%;}
body.cinematic-active #intro .primary{background:#20170eed;border:1px solid #e4c08880;color:#fff2d9;padding:17px 27px;min-width:210px;}
body.cinematic-active #galleryCaption,body.cinematic-active #navigation{visibility:hidden;}
#cinematicEntrance[data-phase='passing'] #portalButton{display:none;}
@media(max-width:700px){body.cinematic-active header{inset:12px 12px auto;min-height:64px;padding:8px 12px;}body.cinematic-active .wordmark{display:none;}body.cinematic-active #intro{bottom:10%;}#portalButton{width:48vw;height:56vh;}#portalPrompt{bottom:11%;max-width:90vw;white-space:normal;width:max-content;}#entryReturn{bottom:5%;}}
@media(prefers-reduced-motion:reduce){#entranceStage,.portal-leaf{will-change:auto;}}
body.cinematic-active .brand .seal{filter:brightness(0) invert(1)!important;opacity:.85;}
body.inside.cinematic-active footer{visibility:hidden;}
body.inside.cinematic-active #portalPrompt{bottom:11%;}
body.inside.cinematic-active #entryReturn{bottom:4%;}
body.cinematic-active #intro .primary{font-size:13px;letter-spacing:1px;}
body.cinematic-active .nav-link{font-size:12px;}
body.cinematic-active #menuButton{font-size:12px;}
#entryReturn{font-size:12px;}
.entrance-icon{display:none;}
body.cinematic-active .legacy-icon{display:none;}
body.cinematic-active .entrance-icon{display:inline-block;width:16px;height:16px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
body.cinematic-active .nav-icon{display:inline-flex;color:#f1d7a7;}
body.cinematic-active .primary .entrance-icon{width:19px;height:19px;}
body.cinematic-active .language-switch{background:#20170f;border-color:#d4bb8980;}
body.cinematic-active .language-switch button{color:#e8d5b1;}
body.cinematic-active .language-switch button[aria-pressed='true']{background:#f0e8d6;color:#30271d;}
body.cinematic-active .language-switch button:hover{color:#fff5de;background:#55402c;}
body.cinematic-active .language-switch button[aria-pressed='true']:hover{color:#30271d;background:#fff5de;}
