:root{--ivory: #f2ead8;--parchment: #d8ccb0;--gold: #c9a86a;--gold-bright: #f0d7a0;--oxblood: #6d1f29;--ink: #101416;--ink-soft: #1b2022;--line: rgba(240, 215, 160, .42);--line-soft: rgba(242, 234, 216, .2);--panel: rgba(11, 14, 15, .88);--font-display: "Cormorant Garamond", Georgia, serif;--font-ui: "Noto Sans TC", "PingFang TC", sans-serif;--font-mono: "IBM Plex Mono", Menlo, monospace;--safe-top: max(1rem, env(safe-area-inset-top));--safe-bottom: max(1rem, env(safe-area-inset-bottom))}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html,body{width:100%;min-height:100%;margin:0;background:var(--ink);color:var(--ivory);font-family:var(--font-ui);overflow:hidden;overscroll-behavior:none}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.mobile-only,.sensor-button,.recenter-button{display:none!important}body.is-touch-ui .mobile-only{display:revert!important}body.is-touch-ui .sensor-button{display:grid!important}body.is-touch-ui .desktop-only{display:none!important}button{color:inherit;font:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold-bright);outline-offset:4px}.skip-link{position:fixed;z-index:1000;top:.75rem;left:.75rem;padding:.75rem 1rem;background:var(--ivory);color:var(--ink);font-size:.8rem;transform:translateY(-160%);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-screen{position:fixed;z-index:900;inset:0;display:grid;align-content:center;justify-items:center;gap:.8rem;padding:2rem;background:radial-gradient(circle at 50% 44%,rgba(201,168,106,.08),transparent 28rem),var(--ink);transition:opacity .8s cubic-bezier(.2,.8,.2,1),visibility .8s}.loading-screen:before,.loading-screen:after{content:"";position:absolute;inset:1.2rem;pointer-events:none;border:1px solid rgba(201,168,106,.16)}.loading-screen:after{inset:1.6rem;border-color:#c9a86a0f}.loading-screen.is-hidden{opacity:0;visibility:hidden}.loading-crest{position:relative;width:4.4rem;height:5.2rem;margin-bottom:1.5rem;border:1px solid var(--gold);clip-path:polygon(50% 0,88% 17%,88% 68%,50% 100%,12% 68%,12% 17%)}.loading-crest span{position:absolute;left:50%;width:1px;height:2.7rem;top:1.15rem;background:var(--gold);transform-origin:center bottom}.loading-crest span:nth-child(1){transform:translate(-50%) rotate(-35deg)}.loading-crest span:nth-child(2){transform:translate(-50%)}.loading-crest span:nth-child(3){transform:translate(-50%) rotate(35deg)}.eyebrow{margin:0;color:var(--gold-bright);font-family:var(--font-mono);font-size:.62rem;font-weight:500;letter-spacing:.23em;text-transform:uppercase}.loading-label{margin:.7rem 0 0;font-family:var(--font-display);font-size:clamp(1.3rem,3vw,2rem);letter-spacing:.12em}.loading-track{width:min(17rem,68vw);height:1px;margin-top:1.2rem;overflow:hidden;background:#f2ead82e}.loading-track i{display:block;width:0;height:100%;background:var(--gold-bright);box-shadow:0 0 .8rem #f0d7a0b3;transition:width .3s ease}.loading-percent{color:var(--parchment);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em}.experience,.webgl-stage,.webgl-stage canvas{position:fixed;inset:0;width:100%;height:100%}.experience{isolation:isolate;background:#1c2225 url(/media/panoramas/castle-dawn-enhanced-medium.webp) center / cover no-repeat}.webgl-stage{z-index:-5;cursor:grab;touch-action:none}.webgl-stage.is-dragging{cursor:grabbing}.webgl-stage canvas{display:block;transition:transform .52s cubic-bezier(.16,1,.3,1),filter .52s ease}body.is-approaching .webgl-stage canvas{transform:scale(1.035);filter:brightness(.86)}.scene-scrim{position:fixed;z-index:-4;inset:0;pointer-events:none;background:linear-gradient(90deg,#050809c9,#070a0b47 46%,#070a0b0f 72%),linear-gradient(180deg,rgba(5,8,9,.42) 0%,transparent 28%,transparent 70%,rgba(5,8,9,.72) 100%);transition:background .9s ease}body.has-entered .scene-scrim{background:linear-gradient(90deg,rgba(5,8,9,.28) 0%,transparent 34%,transparent 72%,rgba(5,8,9,.12) 100%),linear-gradient(180deg,rgba(5,8,9,.35) 0%,transparent 26%,transparent 68%,rgba(5,8,9,.72) 100%)}.grain{position:fixed;z-index:30;inset:-60%;pointer-events:none;opacity:.045;background-image:repeating-radial-gradient(circle at 17% 28%,rgb(255 255 255 / 7%) 0 .55px,transparent .8px 3px),repeating-radial-gradient(circle at 74% 62%,rgb(0 0 0 / 8%) 0 .45px,transparent .75px 3.6px);background-size:5px 5px,7px 7px;animation:grainShift 9s steps(8) infinite}@keyframes grainShift{0%,to{transform:translateZ(0)}20%{transform:translate3d(-2%,1%,0)}40%{transform:translate3d(1%,-2%,0)}60%{transform:translate3d(2%,2%,0)}80%{transform:translate3d(-1%,-1%,0)}}.topbar{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;padding:var(--safe-top) 1rem 0;pointer-events:none}.topbar>*{pointer-events:auto}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ivory);text-decoration:none}.brand-cluster{display:flex;align-items:center;gap:1rem}.brand-mark{display:grid;width:2.25rem;aspect-ratio:1;place-items:center;border:1px solid var(--gold);color:var(--gold-bright);font-family:var(--font-display);font-size:1.3rem;line-height:1;transform:rotate(45deg)}.brand-mark:first-letter{transform:rotate(-45deg)}.brand-copy{display:none;flex-direction:column;gap:.15rem}.brand-copy b{font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.16em}.brand-copy small{color:var(--parchment);font-family:var(--font-mono);font-size:.47rem;letter-spacing:.12em}.primary-controls{display:flex;align-items:center;gap:.36rem}.time-switch{display:flex;padding:.22rem;border:1px solid var(--line-soft);background:#0a0d0e8a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.renovation-switch{display:flex;padding:.22rem;border:1px solid var(--gold);background:#0a0d0eb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.renovation-switch[hidden]{display:none}.renovation-button{min-width:3.15rem;padding:.45rem .55rem;border:0;background:transparent;color:var(--parchment);font-size:.66rem;letter-spacing:.06em;cursor:pointer}.renovation-button.is-active{background:var(--ivory);color:var(--ink)}.time-button{min-width:2.75rem;padding:.45rem .55rem;border:0;background:transparent;color:var(--parchment);font-size:.68rem;letter-spacing:.08em;cursor:pointer}.time-button.is-active{background:var(--ivory);color:var(--ink)}.icon-button,.text-button,.comfort-button{min-width:2.5rem;min-height:2.5rem;border:1px solid var(--line-soft);background:#0a0d0e8a;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:color .18s ease,border-color .18s ease,background .18s ease}.icon-button:hover,.text-button:hover,.comfort-button:hover{border-color:var(--gold);color:var(--gold-bright)}.icon-button svg{width:1rem;fill:currentColor}.comfort-button{display:grid;width:2.5rem;min-width:2.5rem;min-height:2.5rem;place-items:center;padding:0;color:var(--parchment);font-family:var(--font-display);font-size:.95rem;letter-spacing:.08em}.map-quick-button{display:flex;width:auto;min-width:0;gap:.6rem;padding:0 .72rem;font-family:var(--font-ui);font-size:.68rem;letter-spacing:.12em}.map-quick-button kbd{display:grid;min-width:1.25rem;min-height:1.25rem;place-items:center;border:1px solid rgba(240,215,160,.42);color:var(--gold-bright);font-family:var(--font-mono);font-size:.56rem;line-height:1}.map-quick-button.is-active{border-color:var(--gold);background:var(--ivory);color:var(--ink)}.map-quick-button.is-active kbd{border-color:#10141659;color:var(--oxblood)}.comfort-button[aria-pressed=true]{border-color:var(--gold);background:var(--ivory);color:var(--ink)}.sensor-button{display:grid}.recenter-button{border-color:var(--gold);color:var(--gold-bright)}.text-button{display:none;padding:0 1rem;font-size:.68rem;letter-spacing:.1em}.intro-panel{position:fixed;z-index:20;left:1rem;right:1rem;bottom:max(5.6rem,calc(var(--safe-bottom) + 4.5rem));max-width:35rem;transform-origin:left center;transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1),visibility .9s}body.has-entered .intro-panel{opacity:0;visibility:hidden;transform:translate(-2rem) scale(.98)}.chapter-kicker{display:flex;align-items:center;gap:.6rem;margin:0 0 1rem;color:var(--gold-bright);font-family:var(--font-mono);font-size:.54rem;letter-spacing:.15em}.chapter-kicker i{width:2rem;height:1px;background:var(--gold)}.intro-panel h1{display:flex;flex-direction:column;margin:0;font-family:var(--font-display);font-size:clamp(3.8rem,14vw,8rem);font-weight:400;line-height:.7;letter-spacing:-.045em;text-shadow:0 .2rem 2rem rgba(0,0,0,.35)}.intro-panel h1 span{margin:0 0 .5rem .3rem;font-family:var(--font-ui);font-size:.76rem;font-weight:300;letter-spacing:.45em}.intro-lede{margin:1.6rem 0 0;color:#f2ead8e6;font-family:var(--font-display);font-size:clamp(1rem,2.6vw,1.24rem);line-height:1.75;letter-spacing:.04em}.intro-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.7rem}.mobile-orientation-note{max-width:24rem;margin:.85rem 0 0;color:#f5efdfb8;font-size:.72rem;line-height:1.55;letter-spacing:.05em}.enter-button,.focus-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-width:12rem;padding:.85rem .9rem .85rem 1.1rem;border:1px solid var(--ivory);background:var(--ivory);color:var(--ink);font-size:.74rem;font-weight:500;letter-spacing:.11em;cursor:pointer;clip-path:polygon(0 0,calc(100% - .7rem) 0,100% .7rem,100% 100%,0 100%);transition:background .18s ease,color .18s ease,transform .18s ease}.enter-button:hover,.focus-button:hover{background:var(--gold-bright);transform:translateY(-2px)}.enter-button i{font-size:1.1rem;font-style:normal}.quiet-button{padding:.7rem .2rem;border:0;border-bottom:1px solid rgba(242,234,216,.55);background:transparent;color:var(--ivory);font-size:.7rem;letter-spacing:.08em;cursor:pointer}.edition{display:none;align-items:flex-end;gap:.7rem;margin:2rem 0 0;color:var(--parchment);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.18em}.edition strong{color:var(--ivory);font-family:var(--font-display);font-size:1rem;font-weight:400}.hotspot-layer{position:fixed;z-index:18;inset:0;pointer-events:none;opacity:0;transition:opacity .7s ease .3s}body.has-entered .hotspot-layer{opacity:1}.hotspot{position:absolute;display:flex;align-items:center;gap:.6rem;padding:0;border:0;background:transparent;color:var(--ivory);pointer-events:auto;cursor:pointer;transform:translate(-50%,-50%);transition:opacity .18s ease;touch-action:none}.hotspot.is-pressed .hotspot-ring{background:var(--ivory);color:var(--ink);transform:scale(.9)}.hotspot[hidden]{display:none}.hotspot-ring{position:relative;display:grid;width:2.7rem;aspect-ratio:1;place-items:center;border:1px solid var(--gold-bright);border-radius:50%;box-shadow:0 0 0 .3rem #10141661}.hotspot-ring:before,.hotspot-ring:after{content:"";position:absolute;border:1px solid rgba(240,215,160,.55);border-radius:50%;inset:-.45rem;animation:hotspotPulse 2.4s ease-out infinite}.hotspot-ring:after{inset:-.85rem;animation-delay:1.2s}.hotspot-index{font-family:var(--font-mono);font-size:.58rem;font-weight:500}.hotspot-label{padding:.42rem .6rem;border-left:1px solid var(--gold);background:#0b0e0fb8;font-family:var(--font-display);font-size:.86rem;letter-spacing:.08em;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.hotspot:hover .hotspot-ring,.hotspot:focus-visible .hotspot-ring{background:var(--ivory);color:var(--ink)}.hotspot.is-movement .hotspot-ring{width:3.15rem;border-radius:0;background:#0b0e0f80;transform:rotate(45deg)}.hotspot.is-movement .hotspot-index{font-size:0;transform:rotate(-45deg)}.hotspot.is-movement .hotspot-index:before{content:"→";font-size:.85rem}.hotspot.is-back .hotspot-index:before{content:"←"}.hotspot.is-npc .hotspot-ring{overflow:hidden;width:3.25rem;background:var(--ink)}.hotspot.is-npc .hotspot-ring:before,.hotspot.is-npc .hotspot-ring:after{border-color:#6d1f29d1}.hotspot.is-npc .hotspot-index{color:var(--gold-bright);font-family:var(--font-display);font-size:1rem}@keyframes hotspotPulse{0%{opacity:.7;transform:scale(.72)}to{opacity:0;transform:scale(1.24)}}.archive-panel,.guide-panel{position:fixed;z-index:70;top:0;right:0;bottom:0;width:min(100%,29rem);overflow-y:auto;padding:calc(var(--safe-top) + 3.3rem) 1.4rem calc(var(--safe-bottom) + 2rem);border-left:1px solid var(--line);background:linear-gradient(#0b0e0ff2,#0b0e0fe3),url(/media/panoramas/castle-twilight-enhanced-medium.webp) 65% center / auto 100%;box-shadow:-2rem 0 5rem #0000004d;transform:translate(102%);transition:transform .6s cubic-bezier(.16,1,.3,1),visibility .6s;visibility:hidden}.map-panel{position:fixed;z-index:96;inset:0;display:grid;grid-template-columns:minmax(12rem,20rem) minmax(0,1fr);align-items:center;gap:clamp(1.2rem,4vw,4rem);padding:calc(var(--safe-top) + 4rem) clamp(1rem,5vw,5rem) calc(var(--safe-bottom) + 3.5rem);background:radial-gradient(circle at 72% 48%,rgba(109,31,41,.16),transparent 35rem),#070a0bf5;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .34s ease,transform .52s cubic-bezier(.16,1,.3,1),visibility .52s}.map-panel.is-open{opacity:1;visibility:visible;transform:scale(1)}.map-copy h2{margin:.7rem 0 0;font-family:var(--font-display);font-size:clamp(2.8rem,6vw,5.5rem);font-weight:400;line-height:.9}.map-copy>p:last-child{max-width:26rem;margin:1.2rem 0 0;color:var(--parchment);font-family:var(--font-display);font-size:1rem;line-height:1.7}.floor-plan{position:relative;justify-self:center;width:min(100%,62rem);aspect-ratio:4 / 3;overflow:hidden;border:1px solid var(--gold);box-shadow:0 2rem 7rem #00000085;clip-path:polygon(0 0,calc(100% - 1.2rem) 0,100% 1.2rem,100% 100%,0 100%)}.floor-plan>img{width:100%;height:100%;object-fit:cover;filter:sepia(.08) contrast(1.03) brightness(.9)}.map-destinations{position:absolute;inset:0}.map-destination{position:absolute;left:calc(var(--map-x) * 1%);top:calc(var(--map-y) * 1%);display:flex;align-items:center;gap:.4rem;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer;transform:translate(-50%,-50%)}.map-destination b{position:relative;display:grid;width:2.25rem;aspect-ratio:1;place-items:center;border:1px solid rgba(77,49,24,.78);border-radius:50%;background:#f2ead8f0;box-shadow:0 0 0 .28rem #c9a86a59,0 .45rem 1.2rem #3a27164d;font-family:var(--font-mono);font-size:.58rem;font-weight:500}.map-destination span{max-width:7.5rem;padding:.35rem .48rem;border:1px solid rgba(77,49,24,.52);background:#f2ead8e6;font-family:var(--font-display);font-size:.75rem;line-height:1;white-space:nowrap}.map-destination:hover b,.map-destination:focus-visible b,.map-destination.is-current b{border-color:var(--oxblood);background:var(--oxblood);color:var(--ivory)}.map-destination.is-visited b:after{content:"";position:absolute;width:.38rem;aspect-ratio:1;margin:1.7rem 0 0 1.7rem;border-radius:50%;background:var(--gold-bright)}.map-legend{position:absolute;right:clamp(1rem,5vw,5rem);bottom:max(1rem,var(--safe-bottom));display:flex;align-items:center;gap:.45rem;margin:0;color:var(--parchment);font-size:.62rem;letter-spacing:.06em}.map-legend i{width:.55rem;aspect-ratio:1;border:1px solid var(--gold);border-radius:50%}.map-legend i:first-child{background:var(--oxblood)}.archive-panel.is-open,.guide-panel.is-open{transform:translate(0);visibility:visible}.guide-panel{width:min(100%,36rem);background:radial-gradient(circle at 85% 15%,rgba(109,31,41,.25),transparent 22rem),var(--panel)}.panel-close{position:absolute;top:var(--safe-top);right:1.1rem;display:grid;width:2.5rem;aspect-ratio:1;place-items:center;border:1px solid var(--line-soft);background:transparent;color:var(--ivory);font-family:var(--font-display);font-size:1.5rem;cursor:pointer}.archive-index{margin:2rem 0 .3rem;color:var(--gold);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em}.archive-panel h2,.guide-panel h2{margin:0;font-family:var(--font-display);font-size:clamp(2.7rem,9vw,4.5rem);font-weight:400;line-height:.95}.archive-latin{margin:.55rem 0 0;color:var(--parchment);font-family:var(--font-display);font-size:1rem;font-style:italic;letter-spacing:.08em}.archive-rule{display:flex;align-items:center;gap:.7rem;margin:2rem 0;color:var(--gold)}.archive-rule i{flex:1;height:1px;background:var(--line)}.archive-description{margin:0;color:#f2ead8e6;font-family:var(--font-display);font-size:1.15rem;line-height:1.95;letter-spacing:.035em}.steward-note{display:grid;grid-template-columns:4.3rem 1fr;gap:1rem;margin-top:1.5rem;padding:.8rem;border:1px solid var(--line-soft);background:#090c0da8}.steward-note img{width:4.3rem;height:5.35rem;object-fit:cover;object-position:center 24%;filter:saturate(.88) contrast(1.04)}.steward-note span{color:var(--gold);font-family:var(--font-mono);font-size:.52rem;letter-spacing:.12em}.steward-note strong{display:block;margin-top:.15rem;font-family:var(--font-display);font-size:1.18rem;font-weight:500}.steward-note p{margin:.35rem 0 0;color:var(--parchment);font-family:var(--font-display);font-size:.9rem;line-height:1.55}.archive-facts{margin:2.2rem 0;border-top:1px solid var(--line-soft)}.archive-facts div{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line-soft)}.archive-facts dt{color:var(--parchment);font-size:.66rem;letter-spacing:.1em}.archive-facts dd{margin:0;font-family:var(--font-display);font-size:.9rem}.focus-button{width:100%}.enter-location-button{width:100%;margin-top:.7rem;padding:.95rem 1rem;border:1px solid var(--gold);background:var(--oxblood);color:var(--ivory);font-family:var(--font-display);font-size:1rem;letter-spacing:.08em;cursor:pointer;transition:background .18s ease,color .18s ease}.enter-location-button:hover{background:var(--ivory);color:var(--ink)}.scene-transition{position:fixed;z-index:220;inset:0;display:grid;align-content:center;justify-items:center;gap:.45rem;pointer-events:none;background:#090b0c;opacity:0;visibility:hidden;transition:opacity .52s ease,visibility .52s}.scene-transition.is-active{opacity:1;visibility:visible}.scene-transition strong{margin-top:.8rem;font-family:var(--font-display);font-size:clamp(2.8rem,11vw,6rem);font-weight:400;letter-spacing:.035em}.scene-transition small{color:var(--gold);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.22em}.transition-gate{width:3.8rem;height:5.2rem;border:1px solid var(--gold);border-radius:2rem 2rem 0 0;box-shadow:inset 0 0 0 .45rem #090b0c,inset 0 0 0 .5rem #c9a86a61}.renovation-transition{position:fixed;z-index:218;inset:0;display:grid;place-items:center;overflow:hidden;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(240,215,160,.1),transparent 32%),#080b0cad;opacity:0;visibility:hidden;transition:opacity .26s ease,visibility .26s}.renovation-transition.is-active{opacity:1;visibility:visible}.renovation-transition>div{display:grid;justify-items:center;gap:.55rem;padding:1.5rem 2rem;border:1px solid var(--line);background:#080b0cc7;opacity:0;transform:translateY(1rem);transition:opacity .32s ease .12s,transform .54s cubic-bezier(.16,1,.3,1) .12s}.renovation-transition.is-active>div{opacity:1;transform:translateY(0)}.renovation-transition strong{font-family:var(--font-display);font-size:clamp(2rem,7vw,4.6rem);font-weight:400}.renovation-transition small{color:var(--parchment);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.12em}.renovation-scan{position:absolute;top:-12%;bottom:-12%;left:-24%;width:18%;border-right:1px solid var(--gold-bright);background:linear-gradient(90deg,transparent,rgba(240,215,160,.18));opacity:0;transform:skew(-9deg)}.renovation-transition.is-active .renovation-scan{opacity:1;animation:renovationScan 1.25s cubic-bezier(.4,0,.2,1) both}@keyframes renovationScan{0%{transform:translate(0) skew(-9deg)}to{transform:translate(760%) skew(-9deg)}}.motion-vignette{position:fixed;z-index:12;inset:-2rem;pointer-events:none;background:radial-gradient(circle,transparent 35%,rgba(3,5,6,.84) 100%);opacity:0;transform:scale(1.1);transition:opacity .26s ease,transform .9s cubic-bezier(.22,1,.36,1)}body.is-moving .motion-vignette{opacity:.68;transform:scale(1)}body.comfort-mode.is-moving .motion-vignette{opacity:.92}.scene-chapter{position:fixed;z-index:44;top:calc(var(--safe-top) + 3.2rem);left:50%;display:flex;flex-direction:column;align-items:center;gap:.45rem;width:min(92vw,28rem);transform:translate(-50%);pointer-events:none}.scene-chapter button{padding:.4rem .65rem;border:1px solid var(--line-soft);background:#0a0d0e94;color:var(--parchment);font-size:.58rem;letter-spacing:.08em;pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scene-chapter p{display:flex;align-items:center;gap:.65rem;margin:0;color:var(--ivory);font-family:var(--font-display);font-size:.9rem;letter-spacing:.08em;text-shadow:0 2px 1rem rgba(0,0,0,.9)}.scene-chapter p span{color:var(--gold);font-family:var(--font-mono);font-size:.55rem}.scene-chapter p i{width:2rem;height:1px;background:var(--line)}.scene-chapter p b{font-weight:500}.audio-panel{position:fixed;z-index:82;top:calc(var(--safe-top) + 3.4rem);right:1rem;width:min(25rem,calc(100% - 2rem));max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 4.5rem);overflow-y:auto;padding:2.8rem 1.25rem 1.25rem;border:1px solid var(--line);background:#0b0e0ff5;box-shadow:0 1.5rem 5rem #0000006b;opacity:0;visibility:hidden;transform:translateY(-.7rem);transition:opacity .24s ease,transform .24s ease,visibility .24s}.audio-panel.is-open{opacity:1;visibility:visible;transform:translateY(0)}.audio-panel h2{margin:.7rem 0 0;font-family:var(--font-display);font-size:2.5rem;font-weight:400}.audio-intro{margin:.5rem 0 1.2rem;color:var(--parchment);font-family:var(--font-display);font-size:.95rem;line-height:1.6}.audio-track{display:grid;grid-template-columns:1fr auto;gap:.55rem 1rem;padding:1rem 0;border-top:1px solid var(--line-soft)}.audio-track div{min-width:0}.audio-track span,.audio-track small,.audio-track label{display:block;color:var(--parchment);font-size:.52rem;letter-spacing:.1em}.audio-track strong{display:block;margin:.15rem 0;font-family:var(--font-display);font-size:1rem;font-weight:500}.audio-track button{align-self:center;padding:.55rem .65rem;border:1px solid var(--gold);background:transparent;color:var(--gold-bright);font-size:.58rem;cursor:pointer}.audio-track button[aria-pressed=true]{background:var(--ivory);color:var(--ink)}.audio-track label,.audio-track input{grid-column:1 / -1}.audio-track input{width:100%;accent-color:var(--gold)}.dialogue-panel{position:fixed;z-index:86;inset:0;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .38s ease,visibility .38s}.dialogue-panel.is-open{opacity:1;visibility:visible}.dialogue-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,6,7,.34) 72%,rgba(4,6,7,.78))}.dialogue-portrait{position:absolute;z-index:1;right:clamp(.25rem,3vw,3.5rem);bottom:0;width:min(38vw,31rem);height:min(78vh,48rem);transform:translate3d(2rem,3rem,0) scale(.96);transform-origin:bottom center;opacity:0;transition:opacity .42s ease .12s,transform .56s cubic-bezier(.16,1,.3,1) 90ms;filter:drop-shadow(-1.4rem .8rem 1.8rem rgba(0,0,0,.48))}.dialogue-panel.is-open .dialogue-portrait{transform:translateZ(0) scale(1);opacity:1}.dialogue-portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom;opacity:1;transition:opacity .18s ease}.dialogue-portrait img.is-loading{opacity:0}.dialogue-box{position:absolute;z-index:2;left:clamp(1rem,5vw,5.5rem);right:clamp(11rem,31vw,30rem);bottom:max(1rem,var(--safe-bottom));min-height:13rem;border:1px solid var(--line);background:linear-gradient(135deg,rgba(109,31,41,.17),transparent 26%),#080b0ce8;box-shadow:0 1.5rem 5rem #00000080;transform:translateY(2.5rem);opacity:0;transition:opacity .36s ease 80ms,transform .48s cubic-bezier(.16,1,.3,1) 70ms;pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);clip-path:polygon(0 0,calc(100% - 1rem) 0,100% 1rem,100% 100%,0 100%)}.dialogue-panel.is-open .dialogue-box{transform:translateY(0);opacity:1}.dialogue-copy{padding:1.25rem 1.2rem 1.15rem}.dialogue-speaker{display:flex;align-items:baseline;gap:.8rem;padding-bottom:.75rem;border-bottom:1px solid var(--line-soft)}.dialogue-copy h2{margin:0;font-family:var(--font-display);font-size:2.1rem;font-weight:400}.dialogue-line{max-width:54rem;margin:.8rem 0 0;color:var(--ivory);font-family:var(--font-display);font-size:clamp(1rem,3.5vw,1.3rem);line-height:1.65}.dialogue-options{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem}.dialogue-options button{padding:.58rem .7rem;border:1px solid var(--line);background:transparent;color:var(--parchment);font-size:.64rem;cursor:pointer}.dialogue-options button:hover,.dialogue-options button:focus-visible{background:var(--ivory);color:var(--ink)}.dialogue-close{position:absolute;z-index:2;top:max(.75rem,var(--safe-top));right:max(.75rem,env(safe-area-inset-right));display:grid;width:2rem;aspect-ratio:1;place-items:center;border:1px solid var(--line-soft);background:var(--ink);color:var(--ivory);cursor:pointer;pointer-events:auto}.orientation-calibration{position:fixed;z-index:110;top:50%;left:50%;width:min(31rem,calc(100% - 2rem));padding:1.5rem;border:1px solid var(--line);background:radial-gradient(circle at 82% 12%,rgba(109,31,41,.22),transparent 15rem),#080b0cf7;box-shadow:0 2rem 8rem #0000009e;transform:translate(-50%,calc(-50% + 1.4rem));opacity:0;visibility:hidden;transition:opacity .26s ease,transform .36s cubic-bezier(.16,1,.3,1),visibility .36s}.orientation-calibration.is-open{transform:translate(-50%,-50%);opacity:1;visibility:visible}.orientation-calibration h2{margin:.9rem 0 0;font-family:var(--font-display);font-size:clamp(2rem,8vw,3.5rem);font-weight:400;line-height:1}.orientation-calibration>p:not(.eyebrow){color:var(--parchment);font-size:.76rem;line-height:1.8}.calibration-level{display:flex;align-items:center;gap:.65rem;margin:1.3rem 0 .7rem}.calibration-level i{flex:1;height:1px;background:var(--line)}.calibration-level span{width:.7rem;aspect-ratio:1;border:1px solid var(--gold-bright);transform:rotate(45deg)}.calibration-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:1rem}.calibration-actions button{padding:.78rem .8rem;border:1px solid var(--line);background:transparent;color:var(--parchment);font-size:.68rem;cursor:pointer}.calibration-actions button:first-child{grid-column:1 / -1;border-color:var(--ivory);background:var(--ivory);color:var(--ink)}.movement-controls{position:fixed;z-index:46;left:max(.75rem,env(safe-area-inset-left));bottom:max(2.9rem,calc(var(--safe-bottom) + 2.1rem));display:grid;grid-template-columns:repeat(3,3.1rem);grid-template-rows:repeat(3,3.1rem);gap:.24rem;opacity:0;visibility:hidden;transform:translateY(.7rem);pointer-events:none;transition:opacity .32s ease,transform .32s ease,visibility .32s}body.has-entered .movement-controls{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}body.has-dialogue .movement-controls,body.is-moving .movement-controls{opacity:0;visibility:hidden;pointer-events:none}.movement-controls button{display:grid;place-content:center;gap:.05rem;border:1px solid var(--line-soft);background:#080b0c9e;color:var(--parchment);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.movement-controls button:hover,.movement-controls button:focus-visible,.movement-controls button:active{border-color:var(--gold);background:var(--ivory);color:var(--ink)}.movement-controls b{font-family:var(--font-mono);font-size:.62rem;font-weight:500}.movement-controls span{font-size:.5rem}.gesture-hint{position:fixed;z-index:44;left:50%;bottom:max(4.8rem,calc(var(--safe-bottom) + 3.7rem));margin:0;padding:.5rem .72rem;border:1px solid var(--line-soft);background:#080b0ca3;color:var(--parchment);font-size:.58rem;letter-spacing:.07em;pointer-events:none;transform:translate(-50%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gesture-hint[hidden],body.has-dialogue .gesture-hint,body.is-moving .gesture-hint{display:none}.move-forward{grid-column:2;grid-row:1}.move-left{grid-column:1;grid-row:2}.move-interact{grid-column:2;grid-row:2;border-color:var(--gold)!important}.move-right{grid-column:3;grid-row:2}.move-back{grid-column:2;grid-row:3}.mobile-controls{position:fixed;z-index:47;inset:0;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s}body.is-touch-ui.has-entered .mobile-controls{opacity:1;visibility:visible}body.has-dialogue .mobile-controls,body.is-moving .mobile-controls,body.has-map .mobile-controls{opacity:0;visibility:hidden}.mobile-joystick,.mobile-interact{position:absolute;bottom:calc(var(--safe-bottom) + .55rem);display:grid;place-items:center;border:1px solid var(--line);background:#080b0c80;color:var(--ivory);pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-joystick{left:max(.65rem,env(safe-area-inset-left));width:5.75rem;height:5.75rem;padding:0;border-radius:50%;touch-action:none}.joystick-track{position:relative;display:grid;width:4rem;height:4rem;place-items:center;border:1px solid rgba(240,215,160,.36);border-radius:50%;background:linear-gradient(90deg,transparent calc(50% - .5px),rgba(240,215,160,.18) 50%,transparent calc(50% + .5px)),linear-gradient(0deg,transparent calc(50% - .5px),rgba(240,215,160,.18) 50%,transparent calc(50% + .5px))}.joystick-track i{display:block;width:2.15rem;height:2.15rem;border:1px solid var(--gold-bright);border-radius:50%;background:#f2ead826;box-shadow:0 0 1rem #f0d7a02e;transform:translate3d(var(--stick-x, 0),var(--stick-y, 0),0);transition:transform .26s cubic-bezier(.16,1,.3,1),background .16s ease}.mobile-joystick.is-dragging .joystick-track i{background:var(--ivory);transition:none}.mobile-joystick>small,.mobile-interact small{position:absolute;color:var(--parchment);font-family:var(--font-mono);font-size:.48rem;letter-spacing:.08em}.mobile-joystick>small{bottom:-.1rem}.mobile-interact{right:max(.75rem,env(safe-area-inset-right));width:4rem;height:4rem;border-color:var(--gold);border-radius:50%}.mobile-interact span{font-family:var(--font-display);font-size:1.25rem}.mobile-interact small{bottom:.35rem}.mobile-interact:active,.mobile-interact.is-available{background:var(--ivory);color:var(--ink)}.mobile-interact.is-available small,.mobile-interact:active small{color:var(--ink)}.guide-panel h2{max-width:none;margin-top:1.7rem;font-size:clamp(2.35rem,10.5vw,4rem);line-height:1.05}.guide-grid{display:grid;gap:0;margin-top:2rem;border-top:1px solid var(--line-soft)}.guide-grid article{position:relative;padding:1.2rem 0 1.2rem 3rem;border-bottom:1px solid var(--line-soft)}.guide-grid article>span{position:absolute;top:1.3rem;left:0;color:var(--gold);font-family:var(--font-mono);font-size:.6rem}.guide-grid h3{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.25rem;font-weight:500}.guide-grid p{margin:0;color:var(--parchment);font-size:.75rem;line-height:1.7}.orientation-button{width:100%;margin-top:1.4rem;padding:.85rem 1rem;border:1px solid var(--gold);background:transparent;color:var(--gold-bright);font-size:.7rem;letter-spacing:.1em;cursor:pointer}.orientation-status{min-height:1.4rem;margin:.6rem 0 0;color:var(--parchment);font-size:.65rem;line-height:1.6}.bottom-hud{position:fixed;z-index:15;left:1rem;right:1rem;bottom:var(--safe-bottom);display:flex;align-items:flex-end;justify-content:space-between;pointer-events:none}.coordinates{display:none;align-items:center;gap:.45rem;color:var(--parchment);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.1em}.coordinates b{color:var(--ivory);font-weight:400}.coordinates i{width:1.8rem;height:1px;margin:0 .2rem;background:var(--line)}.interaction-hint{display:flex;align-items:center;gap:.55rem;margin:0 auto 0 0;color:#f2ead8c7;font-size:.6rem;letter-spacing:.08em;transition:opacity .5s ease}body:not(.has-entered) .interaction-hint{opacity:0}.interaction-hint i{width:2px;aspect-ratio:1;border-radius:50%;background:var(--gold)}.interaction-hint span:nth-of-type(n+3),.interaction-hint i{display:none}.drag-symbol{width:1rem;height:1.3rem;border:1px solid var(--parchment);border-radius:.7rem}.drag-symbol:before{content:"";display:block;width:1px;height:.28rem;margin:.18rem auto;background:var(--gold-bright)}.compass{position:relative;display:grid;width:2.8rem;aspect-ratio:1;place-items:center;border:1px solid var(--line-soft);border-radius:50%;font-family:var(--font-mono);font-size:.5rem}.compass span{position:absolute;top:.35rem}.compass i{position:absolute;width:1px;height:1rem;bottom:.35rem;background:linear-gradient(var(--oxblood) 0 50%,var(--ivory) 50%);transform-origin:center top;transition:transform 80ms linear}.journey-status{display:none;align-items:center;gap:.5rem;color:var(--parchment);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.08em}.journey-status i{width:1.4rem;height:1px;background:var(--line)}.journey-status b{color:var(--gold-bright);font-weight:400}body.is-interior .time-switch{display:none}body.is-interior .scene-scrim{background:linear-gradient(90deg,rgba(5,8,9,.12),transparent 20%,transparent 80%,rgba(5,8,9,.12)),linear-gradient(180deg,rgba(5,8,9,.28),transparent 22%,transparent 70%,rgba(5,8,9,.7))}.error-state{position:fixed;z-index:100;left:50%;top:50%;width:min(30rem,calc(100% - 2rem));padding:2rem;border:1px solid var(--line);background:var(--panel);transform:translate(-50%,-50%);text-align:left}.error-state h2{margin:1rem 0 .8rem;font-family:var(--font-display);font-size:2rem;font-weight:400}.error-state p:not(.eyebrow){color:var(--parchment);font-size:.78rem;line-height:1.8}.error-state button{margin-top:1rem;padding:.75rem 1rem;border:1px solid var(--ivory);background:var(--ivory);color:var(--ink);cursor:pointer}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.grain{animation:none}}body.is-touch-ui .topbar{align-items:flex-start;padding:var(--safe-top) max(.6rem,env(safe-area-inset-right)) 0 max(.6rem,env(safe-area-inset-left))}body.is-touch-ui .brand-mark{width:2rem}body.is-touch-ui .brand-cluster{gap:.38rem}body.is-touch-ui .map-quick-button{display:grid;width:2.75rem;min-width:2.75rem;padding:0}body.is-touch-ui .brand-copy,body.is-touch-ui .time-switch,body.is-touch-ui #comfort-button,body.is-touch-ui #fullscreen-button,body.is-touch-ui #archive-button,body.is-touch-ui #recenter-button,body.is-touch-ui.is-interior #mobile-time-button{display:none!important}body.is-touch-ui .primary-controls{gap:.22rem}body.is-touch-ui .icon-button,body.is-touch-ui .comfort-button,body.is-touch-ui #guide-button{display:grid;min-width:2.75rem;width:2.75rem;min-height:2.75rem;padding:0;place-items:center}body.is-touch-ui #guide-button{border:1px solid var(--line-soft);background:#0a0d0e9e;font-family:var(--font-display);font-size:1rem}body.is-touch-ui .renovation-switch{position:fixed;z-index:55;left:50%;bottom:calc(var(--safe-bottom) + .72rem);padding:.2rem;transform:translate(-50%);box-shadow:0 .8rem 2.5rem #0000005c}body.is-touch-ui .renovation-button{min-width:4.2rem;min-height:2.45rem;padding:.45rem .58rem;font-size:.62rem}body.is-renovating .renovation-switch{opacity:.45;pointer-events:none}body.is-touch-ui .movement-controls{display:none!important}body.is-touch-ui .bottom-hud{top:calc(var(--safe-top) + 2.75rem);right:auto;bottom:auto;left:50%;width:auto;transform:translate(-50%)}body.is-touch-ui .coordinates,body.is-touch-ui .interaction-hint,body.is-touch-ui .compass,body.is-touch-ui .journey-status i,body.is-touch-ui .journey-status b{display:none!important}body.is-touch-ui .journey-status{display:flex;min-width:0;padding:.28rem .55rem;border:1px solid rgba(240,215,160,.24);background:#080b0c7a;color:var(--parchment);font-size:.54rem;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}body.is-touch-ui .scene-chapter{top:calc(var(--safe-top) + 2.95rem);left:max(.65rem,env(safe-area-inset-left));width:auto;align-items:flex-start;transform:none}body.is-touch-ui .scene-chapter p{display:none}body.is-touch-ui .scene-chapter button{min-height:2.25rem;background:#080b0c8f;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}body.is-touch-ui .hotspot{flex-direction:column;gap:.24rem;min-width:3.3rem}body.is-touch-ui .hotspot-ring,body.is-touch-ui .hotspot.is-movement .hotspot-ring,body.is-touch-ui .hotspot.is-npc .hotspot-ring{width:2.75rem}body.is-touch-ui .hotspot-label{max-width:7.4rem;overflow:hidden;padding:.24rem .42rem;border-top:1px solid var(--gold);border-left:0;font-size:.7rem;text-align:center;text-overflow:ellipsis}body.is-touch-ui .map-panel{grid-template-columns:1fr;align-content:center;gap:.7rem;padding:calc(var(--safe-top) + 2.7rem) max(.65rem,env(safe-area-inset-right)) calc(var(--safe-bottom) + .65rem) max(.65rem,env(safe-area-inset-left))}body.is-touch-ui .map-copy{padding:0 .25rem}body.is-touch-ui .map-copy h2{margin-top:.28rem;font-size:clamp(1.7rem,8vw,2.35rem)}body.is-touch-ui .map-copy>p:last-child,body.is-touch-ui .map-legend{display:none}body.is-touch-ui .floor-plan{width:min(100%,calc((100dvh - var(--safe-top) - var(--safe-bottom) - 6.2rem) * 1.333));max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 6.2rem)}body.is-touch-ui .map-destination{gap:0;touch-action:manipulation}body.is-touch-ui .map-destination b{width:2rem}body.is-touch-ui .map-destination span{position:absolute;top:2.1rem;left:50%;max-width:6.5rem;padding:.22rem .32rem;overflow:hidden;font-size:.58rem;text-overflow:ellipsis;transform:translate(-50%)}body.is-touch-ui .guide-panel{width:min(100%,27rem);padding-top:calc(var(--safe-top) + 3rem)}body.is-touch-ui .guide-panel h2{font-size:clamp(2rem,10vw,3.1rem)}body.is-touch-ui .guide-grid{margin-top:1.2rem}body.is-touch-ui .dialogue-portrait{right:-1rem;bottom:9.5rem;width:min(70vw,21rem);height:54vh}body.is-touch-ui .dialogue-box{left:max(.65rem,env(safe-area-inset-left));right:max(.65rem,env(safe-area-inset-right));bottom:calc(var(--safe-bottom) + .15rem);min-height:10.6rem;max-height:46vh;overflow-y:auto}body.is-touch-ui.has-dialogue .bottom-hud{opacity:0}@media(max-width:767px){.topbar{padding-right:.65rem;padding-left:.65rem}.brand-mark{width:2rem}.primary-controls{gap:.2rem}.time-switch{padding:.15rem}.time-button{min-width:2.35rem;padding:.4rem .38rem;font-size:.61rem}.renovation-switch{padding:.15rem}.renovation-button{min-width:2.6rem;padding:.4rem .38rem;font-size:.58rem}.map-panel{grid-template-columns:1fr;align-content:center;gap:1rem;padding:calc(var(--safe-top) + 3rem) .75rem calc(var(--safe-bottom) + 3rem)}.map-copy{padding:0 .35rem}.map-copy h2{font-size:2.35rem}.map-copy>p:last-child{display:none}.floor-plan{width:100%}.map-destination{gap:0}.map-destination b{width:2rem}.map-destination span{position:absolute;top:2.2rem;left:50%;padding:.25rem .35rem;font-size:.61rem;transform:translate(-50%)}.icon-button,.comfort-button{min-width:2.2rem;width:2.2rem;min-height:2.2rem}.dialogue-portrait{right:-1.5rem;bottom:10.5rem;width:min(72vw,22rem);height:55vh}.dialogue-box{left:.75rem;right:.75rem;bottom:max(.75rem,var(--safe-bottom));min-height:11.5rem;max-height:47vh;overflow-y:auto}.dialogue-copy{padding:1rem}.dialogue-copy h2{font-size:1.7rem}.dialogue-line{font-size:.98rem;line-height:1.55}.dialogue-options{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.2rem}.dialogue-options button{flex:none;min-height:2.45rem}.movement-controls{display:none!important}body.has-dialogue .bottom-hud{opacity:0}.scene-chapter{top:calc(var(--safe-top) + 2.7rem)}}@media(pointer:coarse){.movement-controls{display:none!important}}@media(max-height:500px)and (orientation:landscape){body.is-touch-ui .topbar{padding-top:max(.45rem,env(safe-area-inset-top))}body.is-touch-ui .brand-mark{width:1.85rem}body.is-touch-ui .bottom-hud{top:max(.45rem,env(safe-area-inset-top))}body.is-touch-ui .scene-chapter{top:calc(max(.45rem,env(safe-area-inset-top)) + 2.35rem)}body.is-touch-ui .mobile-joystick{width:4.8rem;height:4.8rem;bottom:max(.45rem,env(safe-area-inset-bottom))}body.is-touch-ui .joystick-track{width:3.45rem;height:3.45rem}body.is-touch-ui .joystick-track i{width:1.9rem;height:1.9rem}body.is-touch-ui .mobile-interact{right:max(.55rem,env(safe-area-inset-right));bottom:max(.55rem,env(safe-area-inset-bottom));width:3.55rem;height:3.55rem}body.is-touch-ui .renovation-switch{bottom:max(.45rem,env(safe-area-inset-bottom))}body.is-touch-ui .renovation-button{min-height:2.2rem}body.is-touch-ui .map-panel{grid-template-columns:minmax(9rem,.55fr) minmax(20rem,1.45fr);gap:.8rem;padding:max(.55rem,env(safe-area-inset-top)) max(2.8rem,env(safe-area-inset-right)) max(.55rem,env(safe-area-inset-bottom)) max(.8rem,env(safe-area-inset-left))}body.is-touch-ui .map-copy{align-self:center}body.is-touch-ui .floor-plan{width:auto;max-width:100%;height:calc(100dvh - max(1.1rem,env(safe-area-inset-top) + env(safe-area-inset-bottom)));max-height:none}body.is-touch-ui .dialogue-portrait{right:-.5rem;bottom:0;width:31vw;height:88vh}body.is-touch-ui .dialogue-box{left:max(1rem,env(safe-area-inset-left));right:26vw;bottom:max(.45rem,env(safe-area-inset-bottom));min-height:8.7rem;max-height:calc(100dvh - .9rem)}.dialogue-portrait{right:-.5rem;bottom:0;width:32vw;height:88vh}.dialogue-box{left:2rem;right:27vw;bottom:.6rem;min-height:9.5rem;max-height:calc(100vh - 1.2rem)}.dialogue-copy{padding:.75rem .9rem}.dialogue-speaker{padding-bottom:.45rem}.dialogue-line{margin-top:.5rem;font-size:.92rem}.dialogue-options{margin-top:.55rem}.movement-controls{grid-template-columns:repeat(3,2.55rem);grid-template-rows:repeat(3,2.55rem);bottom:.6rem}}@media(min-width:768px){.topbar{padding:var(--safe-top) 1.5rem 0}.brand-copy,.text-button,.edition{display:flex}.intro-panel{left:clamp(2rem,7vw,7rem);right:auto;bottom:8vh}.intro-panel h1{line-height:.73}.archive-panel,.guide-panel{padding-right:3rem;padding-left:3rem}.audio-panel{right:1.5rem;padding-right:1.5rem;padding-left:1.5rem}.dialogue-copy{padding:1.45rem 1.6rem 1.3rem}.guide-panel h2{max-width:7em}.bottom-hud{left:1.5rem;right:1.5rem}.coordinates{display:flex}.interaction-hint{margin:0 auto}.interaction-hint span:nth-of-type(n+3),.interaction-hint i{display:inline-block}.journey-status{display:flex}}@media(min-width:1024px){.topbar{padding-right:2.5rem;padding-left:2.5rem}.primary-controls{gap:.5rem}.time-button{min-width:3.35rem}.intro-lede{margin-top:2rem}.intro-actions{margin-top:2.1rem}.bottom-hud{left:2.5rem;right:2.5rem}.guide-grid{grid-template-columns:repeat(4,1fr)}.guide-grid article{padding:3.2rem 1rem 1.2rem;border-right:1px solid var(--line-soft)}.guide-grid article:last-child{border-right:0}.scene-chapter{top:calc(var(--safe-top) + .25rem)}}@media(min-width:1440px){.topbar{padding-right:3.5rem;padding-left:3.5rem}.brand-mark{width:2.6rem}.intro-panel{left:8vw;bottom:10vh}.bottom-hud{left:3.5rem;right:3.5rem}}
