:root{color-scheme:dark;--cream:#f2e6cc;--muted:#b8ae98;--amber:#edb969;--ink:#0f1414}*{box-sizing:border-box}body{margin:0;background:#101514;color:var(--cream);font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,a,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;background:none;border:0;cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--amber);outline-offset:5px}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(4,10,10,.7),transparent 18%,transparent 64%,rgba(4,10,10,.85)),linear-gradient(90deg,rgba(3,7,7,.18),transparent 40%)}header{position:fixed;left:36px;right:36px;top:30px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:4}.wordmark{font-size:13px;font-weight:800;letter-spacing:.1em;line-height:1.4}.wordmark span{display:block;font-size:8px;font-weight:400;letter-spacing:.48em;margin-top:3px}.concept-label{display:flex;gap:18px;align-items:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}#concept-number{border:1px solid #bbaa7350;border-radius:50%;padding:9px;letter-spacing:0}header nav{display:flex;gap:24px;font-size:12px;align-items:center}header nav button span{margin-left:15px}.project-link{border-bottom:1px solid #dbc49588;padding:12px 0}.intro{position:fixed;left:5vw;bottom:112px;pointer-events:none;transition:opacity .5s,transform .5s;max-width:580px}.intro button{pointer-events:auto}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.20em;color:var(--amber);line-height:1.8}h1{font:400 clamp(30px,3.6vw,59px)/1.06 Georgia,serif;letter-spacing:-.03em;margin:18px 0}h1 br{display:block}.intro-copy{font-size:12px;color:#d0c9b9;line-height:1.8}.primary{background:var(--cream);color:#1b201f;padding:15px 23px;font-size:11px;letter-spacing:.035em;margin-top:14px}.text-button{font-size:11px;margin-left:22px;border-bottom:1px solid #dbc49588;padding:8px 0}.exploring .intro{opacity:0;transform:translateY(15px);pointer-events:none}.exploring .intro button{pointer-events:none}.touring .intro{opacity:0;pointer-events:none}.touring .intro button{pointer-events:none}footer{position:fixed;bottom:28px;left:36px;right:36px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:10px;letter-spacing:.03em;z-index:4;color:#c9c4b5}.transport{display:flex;gap:8px;border:1px solid #dfc49c30;background:#0a100e99;border-radius:30px;padding:5px 11px;backdrop-filter:blur(8px)}.transport button{font-size:10px;padding:8px 11px}.transport button:hover{color:var(--amber)}#help{width:225px;text-align:right;color:#aaa995}#tour-caption{position:fixed;left:50%;bottom:115px;transform:translateX(-50%);text-align:center;font:italic 22px Georgia,serif;max-width:500px;text-shadow:0 2px 10px #000;pointer-events:none}#tooltip{position:fixed;display:none;padding:13px 17px;background:#101918ef;border:1px solid #dabc8060;pointer-events:none;font-size:12px;z-index:5;border-radius:2px;color:var(--cream);box-shadow:0 8px 40px #0004}#tooltip small{display:block;font-size:9px;color:var(--muted);margin-top:7px}#explore-menu{position:fixed;top:89px;right:30px;width:330px;max-height:calc(100dvh - 180px);overflow:auto;background:#15201ef5;border:1px solid #c7b07845;padding:22px;z-index:6;backdrop-filter:blur(20px)}[hidden]{display:none!important}.menu-heading{display:flex;justify-content:space-between;align-items:center;font:italic 17px Georgia,serif;margin-bottom:12px}.menu-heading button{font-size:26px}#destinations{display:grid;grid-template-columns:1fr 1fr;gap:0 13px}#destinations button{text-align:left;border-bottom:1px solid #cfbc8929;padding:13px 0;font-size:11px}#destinations button:hover{color:var(--amber)}#explore-menu>p{font:italic 14px/1.5 Georgia,serif;color:var(--muted);margin-bottom:0}.tour-track{position:fixed;bottom:0;left:0;right:0;height:2px;background:#fff1}#tour-progress{height:100%;width:0;background:var(--amber)}#special-controls{position:fixed;top:104px;left:36px;background:#0d151bcc;border:1px solid #c7b07845;padding:12px 16px;z-index:3;font-size:10px;display:none;max-width:260px}#special-controls label{display:block;line-height:1.7}#special-controls input{display:block;width:210px;margin-top:10px;accent-color:var(--amber)}#special-controls button{padding:8px;border:1px solid #bba77f44;margin:3px;font-size:10px}#special-controls p{color:var(--muted);line-height:1.6}dialog{color:var(--cream);background:#14201eef;border:1px solid #c7b07850;padding:45px;width:min(580px,calc(100vw - 30px));margin:auto 4vw auto auto;max-height:calc(100dvh - 110px);box-shadow:0 40px 120px #0007;backdrop-filter:blur(30px)}dialog::backdrop{background:#040a0938}#close-content{position:absolute;top:12px;right:17px;font-size:28px;color:var(--muted)}dialog h2{font:400 36px/1.09 Georgia,serif;letter-spacing:-.02em;margin:18px 0 20px}dialog p{font-size:13px;line-height:1.85;color:#d2cdbf}dialog ul{padding:0;list-style:none;border-top:1px solid #d0b8873a}dialog li{padding:13px 0;border-bottom:1px solid #d0b8873a;font-size:12px;color:#d2cdbf}dialog .note{font-size:10px;color:#a9ad9d}dialog label{display:block;font-size:11px;margin:17px 0 5px}dialog input,dialog textarea{width:100%;border:1px solid #d0b88755;background:#07111055;color:var(--cream);padding:12px;font-size:12px;border-radius:0}dialog textarea{height:95px;resize:vertical}#panel-actions{margin-top:22px}#panel-actions button{font-size:11px;margin-right:18px}#panel-actions .primary{margin-top:0}.panel-tagline{font:italic 17px Georgia,serif!important;color:var(--amber)!important}#error{position:fixed;top:35%;left:10%;right:10%;padding:30px;background:var(--ink);z-index:10;border:1px solid var(--amber);line-height:1.8;font-size:14px}@media(max-width:800px){header{left:20px;right:20px;top:20px}.wordmark{font-size:10px}.wordmark span{font-size:7px}.concept-label{display:none}header nav{gap:14px;font-size:10px}.project-link{display:none}.intro{left:25px;bottom:125px;max-width:330px}h1{font-size:40px}.intro-copy{font-size:11px}footer{left:18px;right:18px;bottom:20px;flex-wrap:wrap;font-size:9px}footer>a{order:2}#help{width:auto;order:3;font-size:9px}.transport{justify-content:center;width:100%;order:1;margin-bottom:5px}.transport button{font-size:9px}#special-controls{top:82px;left:20px;max-width:225px;padding:8px 12px}#special-controls input{width:180px}#tour-caption{width:80%;bottom:145px;font-size:20px}#explore-menu{right:18px;left:18px;width:auto;top:80px}dialog{padding:30px 25px;margin:auto;max-height:calc(100dvh - 50px)}dialog h2{font-size:30px}.text-button{margin-left:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Each composition keeps the editorial language of its illustrated direction. */
body[data-concept="2"] h1{font-family:Arial,Helvetica,sans-serif;font-weight:750;letter-spacing:-.065em;line-height:1.02;max-width:350px}body[data-concept="4"] h1{text-transform:uppercase;font-family:Arial,Helvetica,sans-serif;font-weight:750;letter-spacing:-.055em;line-height:1.02;max-width:330px}body[data-concept="6"] .intro{bottom:26vh;max-width:370px}.vignette{background:linear-gradient(180deg,rgba(4,10,10,.47),transparent 17%,transparent 74%,rgba(4,10,10,.67)),linear-gradient(90deg,rgba(3,7,7,.16),transparent 42%)}
@media(min-width:1000px){
body[data-concept="3"]{background:#e9e4d7;color:#27362e}body[data-concept="3"] #world{left:32%;width:68%}body[data-concept="3"] .vignette{left:32%}body[data-concept="3"] header{color:#ece4d3}body[data-concept="3"] .wordmark{color:#27362e}body[data-concept="3"] .concept-label{display:none}body[data-concept="3"] .intro{left:3.4vw;bottom:28vh;max-width:25vw}body[data-concept="3"] h1{font-size:clamp(30px,3.0vw,52px)}body[data-concept="3"] .intro-copy{color:#526054}body[data-concept="3"] .eyebrow{color:#697463}body[data-concept="3"] .primary{background:#324c3e;color:#f0eadb;border-radius:30px}body[data-concept="3"] .text-button{color:#425c4c;margin-left:0;margin-top:15px}body[data-concept="3"] footer>a{color:#536252}body[data-concept="3"] .explore-menu{color:#ece4d3}body[data-concept="3"].exploring .intro{opacity:1;transform:none}body[data-concept="3"] .transport{margin-left:25vw;color:#e6deca}
body[data-concept="5"]{background:#e9e4d7}body[data-concept="5"] #world{top:205px;bottom:80px;left:3vw;width:94vw;height:calc(100vh - 285px)}body[data-concept="5"] .vignette{display:none}body[data-concept="5"] header{color:#29382e}body[data-concept="5"] .concept-label{color:#647363}body[data-concept="5"] .intro{top:93px;left:3vw;bottom:auto;width:94vw;max-width:none;color:#29382e}body[data-concept="5"] .intro h1{font-size:34px;width:390px;margin:7px 0}body[data-concept="5"] .intro .eyebrow{margin:0;color:#7b7861;font-size:9px}body[data-concept="5"] .intro-copy{position:absolute;right:0;top:8px;color:#526151}body[data-concept="5"] .intro button{position:absolute;right:0;top:55px;margin:0;color:#29382e}body[data-concept="5"] .intro #skip{right:150px}body[data-concept="5"].exploring .intro{opacity:1;transform:none}body[data-concept="5"] footer{color:#465748}body[data-concept="5"] .transport{color:#e6deca}body[data-concept="5"] #special-controls{top:auto;bottom:86px;left:4vw;max-width:430px;background:#e9e4d7ef;color:#29382e}
}

#robot-controls{position:fixed;top:94px;left:36px;z-index:4;color:var(--cream);background:#0d1718d9;border:1px solid #c7b07838;border-radius:8px;padding:10px 12px;font-size:10px;backdrop-filter:blur(10px)}#robot-controls>div{display:flex;gap:12px;margin-top:9px}#robot-controls button{padding:4px 0;font-size:10px;color:#d2c8b3}#robot-controls button:hover{color:#ffcf89}.robot-dot{display:inline-block;width:5px;height:5px;background:#ffd591;box-shadow:0 0 9px #ffd591;border-radius:50%;margin-right:8px}#robot-state{letter-spacing:.04em}#motion-review{position:fixed;z-index:8;bottom:86px;left:36px;padding:15px;background:#11201feb;color:#e9d9bb;width:270px;font-size:11px}#motion-review input{width:100%;margin-top:12px}#motion-time{float:right}body[data-concept="4"] #robot-controls,body[data-concept="6"] #robot-controls{left:auto;right:36px}body[data-concept="5"] #robot-controls{top:auto;bottom:86px;left:auto;right:4vw}#world[data-scene-version]~.vignette{pointer-events:none}@media(max-width:800px){#robot-controls{top:74px;left:18px;padding:9px 11px}#robot-controls button{font-size:9px}body[data-concept="4"] #robot-controls,body[data-concept="6"] #robot-controls{top:161px;left:20px;right:auto}body[data-concept="5"] #robot-controls{bottom:143px;right:18px;left:auto}#motion-review{left:18px;bottom:140px}}

/* Direct client journeys sit alongside spatial discovery. */
#client-shortcuts{position:fixed;z-index:4;bottom:87px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 48px);text-align:center;padding:12px 16px;background:#0b151ddd;border:1px solid #bba67844;backdrop-filter:blur(12px);border-radius:9px}#client-shortcuts>span{font:italic 12px Georgia,serif;color:#c6bdab}#client-shortcuts>div{display:flex;gap:3px;justify-content:center;margin-top:8px}#client-shortcuts button{white-space:nowrap;padding:9px 12px;font-size:11px;color:#e3dfd3;border-radius:4px}#client-shortcuts button:hover{background:#e3bf7630;color:#ffe0a5}#client-shortcuts .shortcut-cta{color:#16221e;background:#e7cea1;margin-left:6px}.gear-direct{color:#ebcc95}.object-label{position:fixed;transform:translate(-50%,-50%);z-index:3;white-space:nowrap;border:1px solid #cebb8255;background:#101a22d9;color:#e4d9c4;border-radius:20px;font-size:10px;line-height:16px;padding:5px 10px;backdrop-filter:blur(5px);box-shadow:0 2px 12px #0005}.object-label:hover,.object-label:focus-visible{border-color:#f4cf88;background:#293128}.object-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:#f4cb84;box-shadow:0 0 6px #eab971;margin-right:6px}#destinations{display:block}.destination-group{margin:15px 0}.destination-group h3{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#ddc38e;font-weight:400;margin:18px 0 4px}.destination-group button{display:block;width:100%;padding:11px 0!important}.destination-group button span{display:block}.destination-group button small{display:block;color:#969f9c;font-size:9px;margin-top:4px}#explore-menu{width:355px}.personal-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.personal-gallery img{display:block;width:100%;height:auto;border-radius:2px}.source-link{border-bottom:1px solid #e1bf7377}.seek-label{display:flex;align-items:center;gap:10px;font-size:10px;margin-top:7px}.seek-label input{width:72px!important;margin:0!important;background:#0a141b;color:#e9d9bb;border:1px solid #bda57566;padding:4px}#motion-review small{display:block;margin-top:6px;font-size:9px;color:#adb9b6}#motion-review{bottom:184px;padding:12px;width:245px}#robot-controls{top:94px}#help{display:none}footer{gap:12px}.transport{flex-wrap:wrap;justify-content:center}.transport button{padding:7px 8px}#tour-caption{bottom:180px}
@media(max-width:800px){header nav{gap:12px}.gear-direct{font-size:10px}#client-shortcuts{width:calc(100vw - 36px);bottom:100px;padding:9px 10px}#client-shortcuts>div{flex-wrap:wrap;margin-top:5px;gap:0}#client-shortcuts button{padding:7px 9px;font-size:10px}#client-shortcuts>span{font-size:11px}#client-shortcuts .shortcut-cta{margin-left:3px}#motion-review{bottom:225px;width:230px}#explore-menu{width:auto;max-height:calc(100dvh - 130px)}#robot-controls{top:74px}footer{bottom:16px}.concept-label{display:none}.transport button{font-size:9px;padding:7px}.intro{bottom:245px}#tour-caption{bottom:220px}}
@media(max-width:480px){header nav .project-link{display:none}.wordmark{font-size:9px}header nav{gap:8px;font-size:9px}#client-shortcuts{bottom:108px}.object-label{font-size:9px;padding:4px 8px}.personal-gallery{grid-template-columns:repeat(2,1fr)}}

/* Keep the practical lamp a discoverable detail, with a keyboard-accessible equivalent. */
#light-toggle{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#light-toggle:focus-visible{position:static;width:auto;height:auto;padding:7px 8px;overflow:visible;clip-path:none}.gallery-heading{font:400 20px Georgia,serif;color:#d9c59e}

.projection-media{position:fixed;width:1px;height:1px;left:-10px;top:-10px;opacity:0;pointer-events:none}.touring #object-labels{display:none}#tour-caption{font-size:22px;text-shadow:0 2px 20px #000,0 2px 5px #000}

/* Immersive navigation: no labels attached to objects. */
#tooltip,#client-shortcuts{display:none!important}#object-labels{position:fixed;left:28px;top:150px;bottom:112px;width:190px;padding:18px 14px;overflow:auto;background:linear-gradient(90deg,#070d15bc,#070d1520);border-left:1px solid #d1b5864d;z-index:3;scrollbar-width:thin}.object-list-heading{display:block;font-size:8px;letter-spacing:.17em;color:#ad9e85;margin:0 0 14px 4px}#object-labels button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font-size:11px;padding:9px 4px;color:#ccc5b9;transition:color .2s,transform .2s}#object-labels button small{font-size:8px;color:#8b897f}#object-labels button:hover,#object-labels button.active{color:#ffe0ac;transform:translateX(3px)}#robot-controls{left:auto;right:32px;top:94px;background:#070e1580}#motion-review{left:auto;right:28px;bottom:170px;opacity:.75}#tour-caption{font:500 clamp(27px,4vw,64px)/1.2 Georgia,serif;font-style:normal;letter-spacing:.09em;max-width:1100px;width:85vw;bottom:18vh;text-shadow:0 3px 22px #000;transition:opacity .2s}.touring #robot-controls,.touring #motion-review{opacity:0;pointer-events:none}#focus-card{position:fixed;bottom:122px;left:50%;transform:translateX(-50%);text-align:center;z-index:4;background:#080e16cc;padding:12px 20px;border:1px solid #dcc29540;backdrop-filter:blur(10px)}#focus-title{display:block;font:italic 21px Georgia,serif;margin-bottom:9px}#focus-open{font-size:10px;letter-spacing:.08em;color:#e4c590;border-bottom:1px solid #e4c59066;padding-bottom:5px}#sound-toggle{border:1px solid #dbc49555;padding:9px 13px;border-radius:25px}#flight-help{position:fixed;bottom:82px;right:30px;z-index:5;font-size:10px;color:#c3b8a4;text-align:right;max-width:250px}#flight-help[open]{padding:18px;background:#101a22f5;text-align:left;border:1px solid #cfb47b44}#flight-help summary{cursor:pointer}#flight-help p{line-height:1.9}#flight-help small{line-height:1.6;color:#9ea99f}.personal-gallery{display:block;columns:3;column-gap:9px}.personal-gallery a{display:block;break-inside:avoid;margin-bottom:9px}.personal-gallery img{width:100%;height:auto}.gallery-heading{font-size:13px}
@media(max-width:700px){#object-labels{left:12px;top:130px;width:150px;bottom:150px;padding:10px 9px}#object-labels button{font-size:10px;padding:8px 0}#robot-controls{display:none}#motion-review{width:190px;bottom:150px;right:12px}header nav{gap:9px}#sound-toggle{font-size:9px;padding:8px}header .concept-label{display:none}#tour-caption{bottom:25vh;font-size:29px}#flight-help{right:18px;bottom:115px}#focus-card{bottom:155px;left:68%;max-width:180px}#focus-title{font-size:17px}.personal-gallery{columns:2}footer{left:14px;right:14px}footer>a{display:none}.transport{width:100%}}

.flight-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0}.flight-pad button{border:1px solid #dbc49544;padding:8px}#playback-status,#navigation-status{display:block;font-size:8px;color:#aeb7b7;margin:6px 0;line-height:1.5}

#flight-help[open]{z-index:10}body:has(#flight-help[open]) #motion-review{visibility:hidden}
/* Cinematic chapter cards and discoverable desktop camera controls. */
#tour-caption{color:#ffcf00;font-family:Impact,'Arial Narrow','Helvetica Neue',sans-serif;font-size:clamp(42px,7.8vw,128px);font-weight:900;font-style:normal;line-height:.93;letter-spacing:.025em;text-transform:uppercase;bottom:20vh;max-width:1300px;transform:translateX(-50%) rotate(-2deg);text-shadow:2px 3px 0 #43150a,0 6px 25px #000c;-webkit-text-stroke:.5px #ffcf00;transition:none}
#tour-caption::before{content:attr(data-chapter);display:block;margin-bottom:17px;font:700 11px/1 Arial,sans-serif;letter-spacing:.4em;-webkit-text-stroke:0;text-shadow:0 2px 7px #000}
#flight-hint{display:none;position:fixed;bottom:80px;left:50%;transform:translateX(-50%);color:#ddd2bc;background:#070d15b0;padding:9px 15px;border-radius:20px;font-size:10px;white-space:nowrap;pointer-events:none;z-index:3}.exploring #flight-hint{display:block}#flight-hint span{margin-left:15px;color:#b5b2a9}
#flight-help{max-width:none;width:190px;bottom:78px;right:28px}#flight-help summary{font-size:12px;color:#eed7aa;list-style:none;padding:10px 13px;border:1px solid #dcc29550;background:#0a111ade;border-radius:6px}#flight-help[open]{width:min(390px,calc(100vw - 36px));max-height:calc(100dvh - 180px);overflow:auto;padding:21px;background:#0b1421f7;border:1px solid #dcc29570;border-radius:9px;box-shadow:0 20px 60px #0008}#flight-help[open] summary{border:0;padding:0;background:none;font-size:10px;text-transform:uppercase;letter-spacing:.12em}#flight-help h3{font:26px Georgia,serif;color:#f3e8d1;margin:21px 0 10px}#flight-help .controls-intro{font-size:11px;line-height:1.6;color:#b4b9bd}#controls-close{position:absolute;right:13px;top:12px;font-size:23px;color:#dec39b}#flight-help:not([open]) #controls-close{display:none}.controls-grid{display:grid;grid-template-columns:1fr 1.45fr;gap:15px 10px;font-size:11px;align-items:center;margin:22px 0}.controls-grid dt{color:#c8c8c0}.controls-grid dd{margin:0;color:#e4decf}.controls-grid dd span{color:#989d9e;font-size:10px}kbd{display:inline-block;font:11px Arial,sans-serif;padding:3px 6px;background:#ffffff0b;border:1px solid #dac59e55;border-bottom-width:2px;border-radius:4px;color:#f5dfac;min-width:23px;text-align:center}.flight-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.flight-pad button{border:1px solid #c2ad843e;padding:9px 5px;font-size:10px;border-radius:4px}.flight-pad button:hover{background:#c1a36f25}.gamepad-guide{font-size:10px!important;color:#a4b0b6;line-height:1.7!important}.touring #flight-help,.touring #flight-hint{display:none!important}
.client-logos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.client-logo{display:flex;min-height:165px;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#09121c;border:1px solid #e3cc9c30;padding:20px 15px;text-align:center}.client-logo img{display:block;width:100%;height:65px;object-fit:contain}.client-logo span{font-size:11px;color:#e4d6bc}.client-logo small{font-size:9px;color:#c3b6a1}.client-logo-gitman,.client-logo-flosports{background:#eee8da}.client-logo-gitman span,.client-logo-flosports span{color:#262521}.client-logo-gitman small,.client-logo-flosports small{color:#59584f}
@media(max-width:850px){#flight-hint{display:none!important}#flight-help{bottom:120px;right:18px}#tour-caption{font-size:clamp(40px,9vw,80px);width:94vw;bottom:26vh}}

body:not(.touring) #tour-caption{display:none}

.touring #motion-review.rehearsal{opacity:.8;pointer-events:auto}#tour-seek{width:55px;color:inherit;background:#ffffff10;border:1px solid #ffffff33;padding:4px}

.gear-filters{display:grid;grid-template-columns:1.7fr 1fr;gap:16px;margin:25px 0}.gear-filters label{font-size:11px;color:#cab997}.gear-filters input,.gear-filters select{width:100%;display:block;margin-top:8px;padding:12px;background:#142026;color:#f4ead6;border:1px solid #cab99750;border-radius:4px;font:13px Arial,sans-serif}.gear-items{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gear-item{padding:18px;background:#cbb58a07;border:1px solid #cbb58a28;border-radius:4px}.gear-item small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#c3aa75}.gear-item h3{font:19px/1.35 Georgia,serif;margin:8px 0}.gear-item p{font-size:11px;line-height:1.6;margin:6px 0}.gear-quantity{display:block;margin-top:12px;font-size:10px;color:#cab997}.gear-inventory a{color:#ddbe82}@media(max-width:700px){.gear-items,.gear-filters{grid-template-columns:1fr}}

#tour-caption{white-space:pre-line} #tour-caption[data-chapter=""]{font-size:clamp(25px,4.7vw,70px);line-height:.98;max-width:85vw;}

header nav{margin-left:auto;gap:19px}#now-playing{display:flex;align-items:center;gap:16px;padding-left:22px;border-left:1px solid #dbc49544;flex-shrink:0}#now-playing a{display:flex;flex-direction:column;gap:7px;white-space:nowrap}#now-playing a:hover{color:#f4d65b}.now-playing-kicker{font-size:8px;text-transform:uppercase;letter-spacing:.19em;color:#cabd9f;display:flex;justify-content:space-between}.now-playing-kicker>span{font-size:11px}.now-playing-track{font-size:12px;letter-spacing:.06em;font-weight:600}.now-playing-track>span{font-size:10px;letter-spacing:.01em;font-weight:400;margin-left:5px}#now-playing #sound-toggle{font-size:10px;padding:10px 12px;min-width:48px}header{gap:22px}@media(max-width:1150px){header nav{gap:14px}header nav .studio-direct-clients,header nav .gear-direct{display:none}#now-playing{gap:12px;padding-left:17px}.now-playing-track{font-size:11px}.now-playing-track>span{display:block;margin:4px 0 0;font-size:9px}header{gap:17px}}@media(max-width:800px){header{align-items:flex-start}header nav{padding-top:10px}header nav .studio-direct{display:none}#now-playing{gap:8px;padding-left:13px}.now-playing-kicker{font-size:7px;letter-spacing:.1em}.now-playing-track{font-size:10px}#now-playing #sound-toggle{font-size:9px;padding:9px 7px;min-width:44px}.wordmark{max-width:125px}.wordmark span{letter-spacing:.27em}}@media(max-width:540px){header{left:15px;right:15px;gap:8px;flex-wrap:wrap}header nav{position:absolute;left:0;top:56px;padding:0}#now-playing{margin-left:auto;border-left:0;padding-left:0}#menu-toggle{padding:8px 0}#explore-menu{top:112px}}

/* Responsive touch targets, with space left for the attic itself. */
@media(max-width:800px){
  #menu-toggle,#now-playing #sound-toggle,#now-playing a{min-height:44px}
  #menu-toggle{padding:10px 0}
  #object-labels button{min-height:44px;font-size:12px}
  .transport{padding:3px 6px;gap:2px;flex-wrap:nowrap}
  .transport button{min-height:44px;padding:8px;font-size:11px}
  #flight-help summary{min-height:44px;display:flex;align-items:center;justify-content:flex-end;gap:8px}
  #flight-help[open] summary{justify-content:flex-start;padding-right:36px}
  #controls-close,#menu-close{min-width:44px;min-height:44px}
  .flight-pad button{min-height:44px;font-size:12px}
  #focus-open{min-height:44px;font-size:12px}
  #destinations button{min-height:48px;font-size:13px}
  #destinations button small{font-size:11px}
  footer{bottom:max(12px,env(safe-area-inset-bottom))}
}
@media(max-width:360px){
  header{left:12px;right:12px}
  .wordmark{max-width:112px;font-size:8px}
  #now-playing{gap:6px}
  #now-playing #sound-toggle{max-width:70px;white-space:normal}
  .transport button{font-size:10px;padding:6px}
}

/* Keep the room usable across changing window shapes and phone safe areas. */
.skip-studio{position:fixed;z-index:30;top:10px;left:10px;padding:14px;background:#f2e6cc;color:#101514;transform:translateY(-160%)}
.skip-studio:focus{transform:none}
header{top:max(20px,env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right))}
#error a{display:inline-block;margin:8px 0}
body[data-room-unavailable] .intro,body[data-room-unavailable] #flight-help,body[data-room-unavailable] .transport{display:none}
#destinations button{width:100%;min-height:44px}
#flight-help{max-width:calc(100vw - 36px)}
.flight-pad button{touch-action:none;user-select:none}
.flight-pad button:active{background:#dec39b33}
@media(max-width:800px){
  #object-labels{max-height:calc(100dvh - 275px);background:#080f1ee8;border-radius:6px}
  #focus-card{left:50%;max-width:calc(100vw - 32px);width:max-content;bottom:150px}
  .intro{bottom:145px;left:24px;right:24px;max-width:500px}
  .intro .text-button{margin:12px 12px 0 0;min-height:44px}
  #flight-help[open]{max-height:calc(100dvh - 170px)}
}
@media(max-height:520px) and (orientation:landscape){
  header{top:max(10px,env(safe-area-inset-top));align-items:center}
  header nav{position:static;padding:0}
  header nav .studio-direct,header nav .gear-direct,header nav .project-link{display:none}
  footer{bottom:max(8px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));justify-content:center}
  footer>span,#flight-hint,#robot-controls{display:none!important}
  .transport{width:auto;margin:0}
  #flight-help{bottom:74px;right:16px}
  #flight-help[open]{max-height:calc(100dvh - 92px);bottom:12px}
  #explore-menu{top:70px;bottom:72px;max-height:none}
  #object-labels{top:76px;bottom:76px;max-height:none;width:155px}
  #focus-card{bottom:76px;left:50%;padding:8px 14px}
  #focus-title{font-size:18px;margin-bottom:0}
  #tour-caption{bottom:28%;font-size:clamp(35px,7vw,65px)}
  .intro{top:88px;bottom:75px;max-width:560px;overflow:auto}
  .intro h1{font-size:32px;margin:8px 0}
  .intro-copy,.intro .eyebrow{display:none}
}

#controls-close,#menu-close{min-width:44px;min-height:44px}
.flight-pad button{min-height:44px}
@media(pointer:coarse){.controls-grid,.gamepad-guide,#controller-status{display:none}}

/* Destination hints fade after arrival and dismiss on navigation. */
#focus-card{transition:opacity .4s ease}#focus-card.fading{opacity:0;pointer-events:none}

/* Phone UI: a readable header, one toolbar, and mutually exclusive drawers. */
.mobile-menu-label{display:none}.desktop-menu-label{margin-left:0}
@media(max-width:600px),(max-height:500px) and (max-width:950px){
 header{top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));display:grid;grid-template-columns:1fr auto;gap:12px 10px;align-items:center}
 .wordmark{font-size:12px;max-width:none;line-height:1.4;letter-spacing:.06em}
 .wordmark span{font-size:9px;letter-spacing:.34em;margin-top:2px}
 header nav{position:static;display:block;margin:0;padding:0;font-size:15px}
 header nav>button:not(#menu-toggle){display:none}
 .desktop-menu-label{display:none}.mobile-menu-label{display:inline}
 header nav button span{margin:0}#menu-toggle{display:flex;gap:14px;align-items:center;min-height:48px;border:1px solid #d7c29355;border-radius:24px;padding:10px 16px;font-size:15px;background:#080e16bf}
 #now-playing{grid-column:1/-1;width:100%;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:0;border:0}
 #now-playing a{display:flex;flex-direction:row;gap:10px;align-items:center;min-height:44px;white-space:normal}
 .now-playing-kicker{font-size:10px;letter-spacing:.06em;white-space:nowrap}.now-playing-kicker>span{display:none}
 .now-playing-track{font-size:13px;letter-spacing:.035em;line-height:1.3}.now-playing-track>span{font-size:12px;margin:2px 0 0}
 #now-playing #sound-toggle{font-size:13px;min-height:44px;min-width:64px;padding:10px 14px}
 .vignette{background:linear-gradient(180deg,#030a12cc,transparent 24%,transparent 75%,#030a12e6)}
 footer{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}
 footer>span:first-child{display:block;order:0;font-size:12px;letter-spacing:.01em;text-align:center;text-shadow:0 2px 6px #000}
 .transport{order:1;display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:2px;width:100%;margin:0;padding:4px;border-radius:18px;background:#09131deb;border:1px solid #bdb2a655;backdrop-filter:blur(16px)}
 .transport button{font-size:14px;line-height:1.2;min-height:52px;padding:8px 4px;white-space:normal}
 #labels-toggle{order:-1;background:#ecd8aa;color:#1c211e;border-radius:12px;font-weight:600}
 #home{order:0}#tour-toggle{order:2;font-size:12px}
 #flight-hint,#robot-controls{display:none!important}
 #flight-help:not([open]){display:none}
 #flight-help[open]{position:fixed;left:12px;right:12px;bottom:114px;top:auto;width:auto;max-width:none;max-height:calc(100dvh - 250px);overflow:auto;border-radius:16px;padding:20px;background:#0c1725fa;text-align:left;z-index:8}
 #flight-help[open] summary{display:none}#flight-help h3{font-size:28px;margin:8px 35px 14px 0}
 #flight-help .controls-intro{font-size:15px;line-height:1.55;margin-bottom:16px}
 .flight-pad{gap:8px}.flight-pad button{min-height:54px;font-size:14px;border-radius:10px}
 .controls-grid,.gamepad-guide,#controller-status{display:none}
 #object-labels{left:12px;right:12px;top:auto;bottom:114px;width:auto;max-height:calc(100dvh - 250px);padding:20px;overflow:auto;border-radius:16px;border:1px solid #d7c29355;background:#0c1725fa;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;z-index:7}
 .object-list-heading{grid-column:1/-1;font-size:11px;line-height:1.5;margin:0 0 12px;color:#d6c4a4}
 #object-labels button{font-size:16px;min-height:52px;padding:10px 6px;border-bottom:1px solid #d7c29324;gap:9px}#object-labels button small{font-size:10px}
 #explore-menu{left:12px;right:12px;top:calc(max(16px,env(safe-area-inset-top)) + 62px);bottom:114px;width:auto;max-height:none;border-radius:16px;padding:20px;background:#0c1725fa;z-index:10}
 .menu-heading{font-size:21px;padding-right:2px}.destination-group h3{font-size:11px;letter-spacing:.1em}.destination-group button{padding:14px 0!important}#destinations button{font-size:17px;min-height:58px}#destinations button small{font-size:13px;margin-top:5px}#explore-menu>p{font-size:16px}
 #focus-card{left:12px;right:12px;bottom:114px;transform:none;width:auto;max-width:none;border-radius:14px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}
 #focus-title{font-size:23px;line-height:1.1;margin:0;text-align:left}#focus-open{font-size:14px;letter-spacing:0;min-height:44px;padding:6px 0;max-width:135px;text-align:right}
 body:has(#object-labels:not([hidden])) #focus-card,body:has(#flight-help[open]) #focus-card{display:none}
 #tour-caption{bottom:23%;width:calc(100vw - 32px);font-size:clamp(38px,11vw,64px);letter-spacing:.025em;line-height:1.02}
 .intro{left:24px;right:24px;bottom:145px}.intro h1{font-size:42px}.intro-copy{font-size:16px}.intro .eyebrow{font-size:11px}.intro button{font-size:15px;min-height:48px}
}
@media(max-width:350px){.wordmark{font-size:10px}.wordmark span{font-size:8px}#menu-toggle{padding:10px 13px;font-size:14px}.now-playing-kicker{display:none}.transport button{font-size:13px}#object-labels button{font-size:15px}}
@media(max-height:500px) and (max-width:950px) and (orientation:landscape){
 header{display:flex;gap:18px;top:max(8px,env(safe-area-inset-top))}header nav{order:2;margin-left:auto}#now-playing{width:auto;gap:12px;margin-left:auto}.now-playing-kicker{display:none}.now-playing-track>span{display:inline;margin-left:4px}
 footer{left:25%;right:25%;bottom:max(8px,env(safe-area-inset-bottom))}footer>span:first-child{display:none}.transport button{min-height:46px}
 #object-labels,#flight-help[open]{left:12px;right:12px;bottom:76px;max-height:calc(100dvh - 142px)}#object-labels{grid-template-columns:repeat(3,1fr);padding:14px}
 #explore-menu{top:70px;bottom:76px}#focus-card{left:26%;right:26%;bottom:76px;padding:8px 14px}#focus-title{font-size:20px}#tour-caption{bottom:24%;font-size:42px}
}

@media(max-width:600px),(max-height:500px) and (max-width:950px){#flight-help{display:none!important}.transport{grid-template-columns:1.15fr 1fr 1fr}}

@media(pointer:coarse){#flight-help{display:none!important}}

/* A quiet arrival, followed by the film, followed by the navigation. */
body:not(.attic-entered) header{justify-content:center;display:flex;top:max(40px,env(safe-area-inset-top))}
body:not(.attic-entered) .wordmark{text-align:center;font-size:13px;max-width:none;line-height:1.5}
body:not(.attic-entered) .wordmark span{font-size:9px;letter-spacing:.38em}
body:not(.attic-entered) header nav,body:not(.attic-entered) #now-playing,
body:not(.attic-entered) footer,body:not(.attic-entered) #robot-controls,
body:not(.attic-entered) #flight-help,body:not(.attic-entered) #flight-hint,
body:not(.attic-entered) #object-labels,body:not(.attic-entered) #motion-review,
body:not(.attic-entered) .tour-track,body:not(.attic-entered) #focus-card{display:none!important}
body:not(.attic-entered) .vignette{background:radial-gradient(ellipse at 50% 58%,#080d16a6,#050910ed 85%)}
body:not(.attic-entered) #world{pointer-events:none;opacity:0}
#world{transition:opacity .7s ease}
.intro{left:24px;right:24px;top:50%;bottom:auto;transform:translateY(-42%);width:auto;max-width:none;text-align:center;z-index:3}
.intro h1{max-width:850px;margin:0 auto;font:400 clamp(38px,5.7vw,78px)/1.1 Georgia,serif;letter-spacing:-.035em;text-wrap:balance;text-shadow:0 3px 30px #0009}
.intro #enter{display:block;min-width:210px;min-height:56px;margin:36px auto 0;padding:16px 28px;border-radius:3px;font-size:15px;letter-spacing:.025em}
.intro #enter:disabled{opacity:.7}
.attic-entered .intro{visibility:hidden;opacity:0;pointer-events:none}
.touring #robot-controls,.touring header nav,.touring #now-playing a,.touring footer>span,.touring #home,.touring #labels-toggle,.touring #light-toggle{display:none!important}
.touring #now-playing{width:auto;grid-column:auto;border:0;padding:0;margin-left:auto}
.touring header{display:flex;align-items:center}
.touring footer{left:auto;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:auto}
.touring .transport{display:block;width:auto;margin:0;padding:0;border:0;background:none;backdrop-filter:none}
.touring #tour-toggle{min-height:48px;padding:12px 20px;border:1px solid #d7c29355;border-radius:26px;background:#080e16bf;font-size:14px}
@media(max-width:600px){
 body:not(.attic-entered) header{top:max(36px,env(safe-area-inset-top))}
 .intro{left:22px;right:22px;transform:translateY(-40%)}
 .intro h1{font-size:clamp(36px,9.5vw,46px);line-height:1.13}
 .intro #enter{margin-top:32px;font-size:16px;min-width:205px}
}
@media(max-height:500px) and (orientation:landscape){
 body:not(.attic-entered) header{top:20px}
 .intro{top:48%;bottom:auto;overflow:visible;max-width:none}
 .intro h1{font-size:34px;line-height:1.1}
 .intro #enter{margin-top:20px;min-height:48px;padding:12px 24px}
}
