:root{--ink:#e9e3d6;--ink-dim:#e9e3d699;--ink-faint:#e9e3d652;--bg:#0b0b0d;--accent:#d8c9a3;--line:#e9e3d638;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--mono:"Courier New", ui-monospace, SFMono-Regular, Menlo, monospace;--focus:2px solid var(--accent)}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--serif);overflow:hidden}#app{position:fixed;inset:0}canvas#game{cursor:crosshair;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#vhud{pointer-events:none;position:absolute;inset:0;overflow:hidden}#fade{opacity:1;background:#000;transition:opacity 1.1s;position:absolute;inset:0}#fade.clear{opacity:0}#fade.fast{transition:opacity .35s}#flash{opacity:0;background:#fff;position:absolute;inset:0}#flash.white{opacity:.92;background:#fdfbf4}#flash.black{opacity:1;background:#000}#bars .bar{background:#000;height:6.5vh;transition:transform 1.2s cubic-bezier(.6,0,.2,1);position:absolute;left:0;right:0}#bars .top{top:0;transform:translateY(-101%)}#bars .bot{bottom:0;transform:translateY(101%)}#bars.in .top,#bars.in .bot{transform:translateY(0)}#title-card{text-align:center;opacity:0;letter-spacing:.04em;pointer-events:none;z-index:6;max-width:min(72vw,720px);transition:opacity .55s;position:absolute;top:10%;left:50%;transform:translate(-50%)}#title-card.visible{opacity:1}#title-card .card-sub{font-family:var(--mono);letter-spacing:.42em;color:var(--ink-dim);text-transform:uppercase;text-shadow:0 2px 16px #000000d1;margin-bottom:10px;font-size:11px}#title-card .card-main{font-family:var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-shadow:0 2px 22px #000000a6;font-size:clamp(22px,3.2vw,40px);font-weight:400}.reduced-motion #title-card{transition-duration:.15s}#prompt{text-align:center;opacity:0;pointer-events:none;transition:opacity .35s;position:absolute;bottom:13%;left:50%;transform:translate(-50%)}#prompt.visible{opacity:1}#prompt .p-title{font-family:var(--mono);letter-spacing:.38em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:8px;font-size:11px}#prompt .p-keys{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);font-size:13px}#prompt .p-keys .key{border:1px solid var(--line);color:var(--accent);border-radius:2px;margin:0 4px;padding:3px 8px;display:inline-block}#prompt.deny{animation:.3s prompt-deny}@keyframes prompt-deny{0%,to{transform:translate(-50%)}30%{transform:translate(calc(-50% - 7px))}65%{transform:translate(calc(7px - 50%))}}.high-contrast #prompt .p-title,.high-contrast #prompt .p-keys{color:#fff;text-shadow:0 0 4px #000,0 2px 6px #000}.high-contrast #prompt .p-keys .key{color:#fff;background:#000000b8;border-color:#fff}#captions{font-family:var(--mono);letter-spacing:.1em;color:var(--ink);opacity:0;text-align:center;background:#0000008c;border-radius:2px;max-width:60ch;padding:4px 12px;font-size:13px;transition:opacity .25s;position:absolute;bottom:6.5%;left:50%;transform:translate(-50%)}#captions.visible{opacity:1}#tray{font-family:var(--mono);gap:22px;display:flex;position:absolute;bottom:24px;left:28px}#tray .slot{opacity:.34;flex-direction:column;align-items:flex-start;gap:4px;transition:opacity .4s;display:flex}#tray .slot .num{letter-spacing:.3em;color:var(--ink-faint);font-size:10px}#tray .slot .name{letter-spacing:.34em;text-transform:uppercase;color:var(--ink-dim);border-bottom:1px solid #0000;padding-bottom:3px;font-size:11px}#tray .slot.ready{opacity:1}#tray .slot.ready .name{color:var(--accent);border-bottom-color:var(--accent);animation:1.8s ease-in-out infinite slot-breathe}#tray .slot.done{opacity:.8}#tray .slot.done .name{color:var(--ink-dim);border-bottom-color:var(--line)}#tray .slot.done .num:after{content:" ·  OK";color:var(--accent)}@keyframes slot-breathe{0%,to{opacity:1}50%{opacity:.55}}.reduced-motion #tray .slot.ready .name{animation:none}.high-contrast #tray .slot{opacity:.75}.high-contrast #tray .slot .name{color:#fff}.boot-card{text-align:center;max-width:480px;padding:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.boot-card h1{font-family:var(--serif);letter-spacing:.18em;margin-bottom:18px;font-size:22px;font-weight:400}.boot-card p{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-dim);margin-bottom:12px;font-size:12px;line-height:1.8}.boot-card a{color:var(--accent)}#boot-error{background:var(--bg);z-index:60;position:absolute;inset:0}#pause-root .veil{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;opacity:0;background:#050507d6;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:absolute;inset:0}#pause-root .veil[hidden]{display:none!important}#pause-root .veil.visible{opacity:1}.pause-inner{justify-content:center;align-items:flex-start;gap:clamp(40px,8vw,130px);width:min(95vw,1500px);display:flex}.pause-col{flex:0 auto}.pause-col .pause-eyebrow{font-family:var(--mono);letter-spacing:.42em;color:var(--ink-faint);text-transform:uppercase;margin-bottom:8px;font-size:10px}.pause-col h2{font-family:var(--serif);letter-spacing:.16em;text-transform:uppercase;margin-bottom:34px;font-size:clamp(20px,2.6vw,30px);font-weight:400}.pause-menu{flex-direction:column;gap:13px;list-style:none;display:flex}.pause-menu button,.pause-menu a{appearance:none;font-family:var(--mono);letter-spacing:.34em;text-transform:uppercase;color:var(--ink-dim);cursor:pointer;text-align:left;background:0 0;border:none;border-left:2px solid #0000;padding:2px 0 2px 14px;font-size:13px;text-decoration:none;transition:color .2s,border-color .2s}.pause-menu button:hover,.pause-menu a:hover,.pause-menu button:focus-visible,.pause-menu a:focus-visible{color:var(--ink);border-left-color:var(--accent);outline:none}.pause-menu button:focus-visible,.pause-menu a:focus-visible{outline:var(--focus);outline-offset:4px}.pause-menu .sep{background:var(--line);width:46px;height:1px;margin:8px 0 8px 14px}.pause-panel{border-left:1px solid var(--line);min-width:min(430px,82vw);max-width:460px;max-height:82vh;padding-left:clamp(24px,3vw,44px);overflow-y:auto}.pause-panel[data-panel=reel],.pause-panel[data-panel=editing],.pause-panel[data-panel=cv]{width:min(60vw,900px);min-width:min(620px,60vw);max-width:900px;max-height:94svh}.pause-panel[data-panel=treatment]{width:min(62vw,980px);min-width:min(640px,62vw);max-width:980px;max-height:96svh}.pause-panel h3{font-family:var(--mono);letter-spacing:.4em;text-transform:uppercase;color:var(--accent);margin-bottom:22px;font-size:12px;font-weight:400}.pause-panel p{font-family:var(--serif);color:var(--ink-dim);max-width:44ch;margin-bottom:14px;font-size:14px;line-height:1.9}.menu-stage{background:radial-gradient(62% 78% at 50% 18%,#ffecce1a,#0000 68%),radial-gradient(80% 40% at 50% 100%,#00000080,#0000 70%);justify-content:center;margin-bottom:18px;padding:26px 12px 30px;display:flex;position:relative}.menu-object{transform-style:preserve-3d;will-change:transform;outline:none}.menu-object:focus-visible .menu-frame,.menu-object:focus-visible.menu-cv-card{outline:var(--focus);outline-offset:5px}.menu-frame{background:#060605;border:1px solid #e9e3d666;padding:8px;box-shadow:0 26px 60px #000000a6,0 4px 14px #00000080}.menu-video{aspect-ratio:16/9;object-fit:contain;background:#030303;width:100%;display:block}.menu-stage-video .menu-object{width:min(92%,820px)}.menu-cv-card{cursor:pointer;background:#0d0c0a;border:1px solid #e9e3d659;width:min(100%,460px);padding:7px 7px 0;text-decoration:none;display:block;position:relative;box-shadow:0 26px 60px #000000a6,0 4px 14px #00000080}.menu-cv-img{object-fit:contain;width:100%;height:min(60svh,720px);display:block}.menu-cv-action{text-align:center;font-family:var(--mono);letter-spacing:.34em;color:var(--accent);padding:10px 0 11px;font-size:10px;display:block}.menu-cv-card:hover .menu-cv-action{color:var(--ink)}.menu-carousel{margin-bottom:18px}.car-stage{border:1px solid var(--line);touch-action:pan-y;background:#060605;justify-content:center;align-items:center;width:100%;height:min(77svh,820px);margin:0 auto;padding:5px;display:flex;box-shadow:0 22px 52px #0009}.car-img{object-fit:contain;opacity:1;-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:opacity .26s}.menu-return{appearance:none;border:1px solid var(--line);min-height:40px;color:var(--ink-dim);font:10px/1 var(--mono);letter-spacing:.28em;cursor:pointer;background:0 0;border-radius:999px;margin:16px auto 0;padding:10px 16px;display:block}.menu-return:hover,.menu-return:focus-visible{color:var(--accent);border-color:var(--accent);outline:var(--focus);outline-offset:3px}.car-img.car-fading{opacity:0}.car-controls{justify-content:center;align-items:center;gap:22px;margin-top:12px;display:flex}.car-btn{appearance:none;border:1px solid var(--line);width:34px;height:34px;color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;font-size:18px;line-height:1}.car-btn:hover,.car-btn:focus-visible{color:var(--accent);border-color:var(--accent);outline:none}.car-count{font-family:var(--mono);letter-spacing:.3em;color:var(--ink-faint);font-size:10px}.reduced-motion .car-img{transition:none}.set-row{border-bottom:1px solid #e9e3d614;justify-content:space-between;align-items:center;gap:18px;padding:9px 0;display:flex}.set-row label{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-dim);font-size:11px}.set-row input[type=range]{width:130px;accent-color:var(--accent)}.set-row select{color:var(--ink);border:1px solid var(--line);font-family:var(--mono);letter-spacing:.16em;background:#141416;padding:4px 8px;font-size:11px}.set-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.set-row input:focus-visible,.set-row select:focus-visible{outline:var(--focus);outline-offset:2px}#project-root{z-index:35;pointer-events:none;position:absolute;inset:0}.project-layer{height:100%;max-height:100svh;overscroll-behavior:contain;pointer-events:auto;opacity:0;box-sizing:border-box;background:radial-gradient(at 58% 28%,#252018 0%,#0a0a0c 67%),#0a0a0c;flex-direction:column;max-height:100dvh;transition:opacity .55s;display:flex;position:absolute;inset:0;overflow:hidden auto}.project-layer.visible{opacity:1}.project-chrome{z-index:2;font-family:var(--mono);letter-spacing:.34em;color:var(--ink-faint);flex:none;justify-content:space-between;align-items:center;gap:24px;padding:clamp(10px,1.6svh,18px) clamp(18px,4vw,56px);font-size:10px;display:flex}.project-chrome button{appearance:none;border:0;border-bottom:1px solid var(--line);color:var(--ink-dim);font:inherit;letter-spacing:.22em;cursor:pointer;background:0 0;padding:7px 0}.project-chrome button:focus-visible,.project-chrome button:hover{color:var(--accent);outline:var(--focus);outline-offset:5px}.project-body{box-sizing:border-box;flex-direction:column;flex:auto;justify-content:flex-start;width:min(100%,980px);max-width:980px;min-height:0;margin:0 auto;padding:clamp(4px,1.2svh,16px) clamp(18px,3.5vw,32px) clamp(12px,2.4svh,28px);display:flex}.project-sub{font-family:var(--mono);letter-spacing:.42em;color:var(--ink-faint);text-transform:uppercase;margin:0 0 clamp(6px,1.1svh,12px);font-size:10px}.project-body h1{font-family:var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:0 0 clamp(10px,2svh,26px);font-size:clamp(28px,5.2svh + 1.2vw,68px);font-weight:400;line-height:.96}.project-screen{aspect-ratio:16/9;border:1px solid var(--line);background:linear-gradient(135deg,#16191b,#5c3c29 52%,#0e0f11);position:relative;overflow:hidden;box-shadow:0 30px 90px #000a}.reel-placeholder:before,.reel-placeholder:after{content:"";background:conic-gradient(from 70deg,#0000,#d99a6155,#0000 30%,#718aa055,#0000 62%);animation:14s linear infinite reel-drift;position:absolute;inset:-20%}.reel-placeholder:after{mix-blend-mode:screen;animation-duration:21s;animation-direction:reverse}@keyframes reel-drift{to{transform:rotate(360deg)scale(1.12)}}.reel-grain{opacity:.22;background-image:repeating-linear-gradient(0deg,#fff1 0 1px,#0000 1px 4px);position:absolute;inset:0}.reel-mark,.reel-time{z-index:1;font-family:var(--mono);letter-spacing:.25em;font-size:11px;position:absolute}.reel-mark{top:7%;left:5%}.reel-time{color:var(--ink-dim);bottom:7%;right:5%}.project-video-slot{aspect-ratio:16/9;background:#0a0908;flex:none;width:min(100%,980px,92.4444svh);max-height:50svh;position:relative;overflow:hidden}.project-video-slot video,.reel-video{object-fit:contain;background:#050504;width:100%;height:100%;display:block}.reel-unavailable{color:#e8dcc4;letter-spacing:.04em;text-align:center;background:#0c0b0ad1;padding:.65rem .9rem;font:500 13px/1.4 Segoe UI,Helvetica,Arial,sans-serif;position:absolute;inset:auto 8% 10%}.project-return-hint{opacity:.72;margin:0;font-family:var(--mono)!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-size:10px!important}.project-notes{border-bottom:1px solid var(--line);max-width:min(100%,62ch);color:var(--ink-dim);flex-direction:column;flex:none;align-items:flex-start;gap:0;padding:clamp(12px,2svh,20px) 0 clamp(4px,1svh,12px);display:flex}.project-copy{font-family:var(--serif);letter-spacing:.01em;color:var(--ink-dim);max-width:100%;margin:0;font-size:clamp(14px,1.5svh + .35vw,17px);font-weight:400;line-height:1.55}.case-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.15fr 1fr .85fr;min-height:360px;display:grid}.case-strip div{border-right:1px solid var(--line);font:13px var(--mono);letter-spacing:.24em;align-items:flex-end;gap:18px;padding:28px;display:flex}.case-strip div:first-child{background:#181a1c}.case-strip div:nth-child(2){background:#27231d}.case-strip div:nth-child(3){background:#3e2e22}.case-strip span{font-size:56px;font-family:var(--serif);color:var(--ink-faint)}.treatment-capture{color:#171718;background:#e9e4d8;grid-template-columns:1fr 2.4fr;align-items:start;gap:4vw;min-height:470px;padding:clamp(26px,6vw,78px);display:grid}.treatment-rail,.treatment-status{font:11px var(--mono);letter-spacing:.25em}.treatment-copy{font-size:clamp(34px,6vw,72px);line-height:1.02}.treatment-status{color:#705b45;grid-column:2}.cv-sheet{color:#171718;background:#eeeae0;max-width:680px;margin:0 auto;padding:clamp(28px,6vw,72px);box-shadow:0 30px 90px #000a}.cv-sheet:focus-visible{outline-offset:8px;outline:3px solid #d8964e}.cv-sheet header{border-bottom:2px solid #171718;justify-content:space-between;gap:24px;padding-bottom:26px;display:flex}.cv-sheet header strong{font-size:34px}.cv-sheet header span,.cv-sheet h3{font:10px var(--mono);letter-spacing:.2em}.cv-sheet section{border-bottom:1px solid #aaa49a;padding:25px 0}.cv-sheet h3{margin-bottom:10px}.cv-sheet p{line-height:1.65}.contact-stage{text-align:center;background:radial-gradient(circle at 50% 42%,#6b452c 0%,#201711 48%,#0a0a0c 78%);border:1px solid #8b623c;flex-direction:column;justify-content:center;align-items:center;min-height:480px;display:flex}.contact-kicker{font-family:var(--mono);letter-spacing:.42em;color:var(--ink-dim);text-transform:uppercase;margin-bottom:26px;font-size:10px}.contact-email{color:#ffd2a2;border-bottom:1px solid #d89a60;margin-bottom:28px;font-size:clamp(24px,4vw,52px);text-decoration:none}.contact-email:focus-visible{outline:var(--focus);outline-offset:8px}.contact-stage>p:last-child{max-width:48ch;color:var(--ink-dim);line-height:1.7}.pause-panel a{color:var(--accent)}.map-prompt{z-index:24;color:#ead9ba;font:10px var(--mono);letter-spacing:.34em;text-shadow:0 2px 12px #000;opacity:0;pointer-events:none;border-bottom:1px solid #efdab48c;padding:9px 14px 8px;transition:opacity .35s,transform .55s;position:absolute;bottom:5.5vh;left:50%;transform:translate(-50%,10px)}.map-prompt.visible{opacity:1;transform:translate(-50%)}.map-veil{z-index:23;opacity:0;pointer-events:none;background:radial-gradient(at 50% 42%,#0000 42%,#0304047a 100%),linear-gradient(#07080840,#0000 25% 72%,#07080852);transition:opacity .8s;position:absolute;inset:0}.map-veil.visible{opacity:1}.map-veil.quick{transition-duration:.18s}.reduced-motion #fade,.reduced-motion #bars .bar,.reduced-motion .project-layer,.reduced-motion .map-prompt,.reduced-motion .map-veil{transition-duration:.15s}.reduced-motion .reel-placeholder:before,.reduced-motion .reel-placeholder:after{animation:none}@media (max-width:700px){.pause-inner{width:100%;padding:max(16px, env(safe-area-inset-top,0px)) 16px max(16px, env(safe-area-inset-bottom,0px));flex-direction:column;align-items:stretch;gap:22px;max-height:100svh;overflow-y:auto}.pause-panel,.pause-panel[data-panel=reel],.pause-panel[data-panel=editing],.pause-panel[data-panel=cv],.pause-panel[data-panel=treatment]{border-left:0;border-top:1px solid var(--line);width:100%;min-width:0;max-width:none;max-height:none;padding:20px 0 0;overflow:visible}.menu-stage{padding:16px 0 20px}.menu-stage-video .menu-object{width:100%}.menu-cv-card{width:min(100%,430px)}.menu-cv-img{object-fit:contain;height:auto;max-height:66svh}.car-stage{height:min(66svh,640px)}.pause-panel h3{margin-bottom:16px}#tray{gap:12px;bottom:14px;left:14px}}#desktop-dock{pointer-events:none;top:max(12px, env(safe-area-inset-top,0px));z-index:27;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#12110f7a;border:1px solid #e9e3d633;border-radius:999px;gap:clamp(4px,.9vw,10px);padding:5px 7px;transition:opacity .25s;display:flex;position:absolute;left:50%;transform:translate(-50%)}#desktop-dock.visible{pointer-events:auto;opacity:.78}#desktop-dock.visible:hover,#desktop-dock.visible:focus-within{opacity:1}#desktop-dock[hidden]{display:none!important}#desktop-dock button{appearance:none;color:#f2ebe0;font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:34px;padding:7px 9px;font-size:clamp(9px,1.1vw,11px)}#desktop-dock button:hover,#desktop-dock button:focus-visible{background:#ffffff1f;outline:none}#desktop-dock button:focus-visible{outline:var(--focus);outline-offset:2px}:is(body:has(#mobile-hud.visible) #desktop-dock,body:has(#pause-root .veil.visible) #desktop-dock,body:has(.project-layer.visible) #desktop-dock,body:has(.first-camera-layer.visible) #desktop-dock){display:none!important}#mobile-hud{z-index:28;pointer-events:none;opacity:0;transition:opacity .25s;position:absolute;inset:0}#mobile-hud.visible{opacity:1}#mobile-hud[hidden]{display:none!important}.mobile-dock{pointer-events:auto;top:max(10px, env(safe-area-inset-top,0px));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#12110f8c;border:1px solid #e9e3d638;border-radius:999px;gap:clamp(6px,1.6vw,12px);padding:6px 8px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.mobile-dock button{appearance:none;color:#f2ebe0;font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:40px;padding:8px 10px;font-size:clamp(10px,2.8vw,12px)}.mobile-dock button:active,.mobile-dock button:focus-visible{background:#ffffff1f;outline:none}.mobile-hint{pointer-events:none;left:50%;top:calc(max(10px, env(safe-area-inset-top,0px)) + 52px);color:#f4efe6;max-width:min(86vw,340px);font-family:var(--mono);letter-spacing:.04em;text-align:center;z-index:2;background:#100f0d9e;border-radius:8px;padding:8px 12px;font-size:clamp(11px,3.1vw,13px);line-height:1.45;transition:opacity .4s;position:absolute;transform:translate(-50%)}.mobile-hint.gone{opacity:0}.mobile-stick{pointer-events:auto;left:max(14px, env(safe-area-inset-left,0px));bottom:max(18px, calc(env(safe-area-inset-bottom,0px) + 12px));touch-action:none;z-index:2;border-radius:50%;width:clamp(72px,22vw,96px);height:clamp(72px,22vw,96px);position:absolute}.mobile-stick-ring{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#100f0d6b;border:1.5px solid #f2ebe073;border-radius:50%;position:absolute;inset:0;box-shadow:0 8px 28px #00000047}.mobile-stick-knob{background:#f2ebe0e0;border-radius:50%;width:42%;height:42%;margin:-21% 0 0 -21%;transition:background .15s;position:absolute;top:50%;left:50%;box-shadow:0 2px 10px #00000059}.mobile-stick.is-disabled{opacity:.28;pointer-events:none}.mobile-actions{pointer-events:none;right:max(14px, env(safe-area-inset-right,0px));bottom:max(18px, calc(env(safe-area-inset-bottom,0px) + 12px));z-index:2;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:absolute}.mobile-map{pointer-events:auto;left:max(14px, env(safe-area-inset-left,0px));bottom:calc(max(18px, calc(env(safe-area-inset-bottom,0px) + 12px)) + clamp(72px, 22vw, 96px) + 14px);appearance:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f6f0e6;min-width:clamp(52px,15vw,68px);height:34px;font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;z-index:2;background:#100f0d8c;border:1px solid #f2ebe061;border-radius:999px;padding:0 14px;font-size:clamp(10px,2.4vw,11px);position:absolute}.mobile-map.pressed{background:#28241ed1;transform:scale(.96)}.mobile-map:disabled{opacity:.32}.mobile-jump,.mobile-interact{pointer-events:auto;appearance:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f6f0e6;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;touch-action:manipulation;background:#100f0d8c;border:1px solid #f2ebe061;box-shadow:0 8px 24px #00000047}.mobile-jump{border-radius:50%;width:clamp(56px,16vw,72px);height:clamp(56px,16vw,72px);font-size:clamp(10px,2.6vw,12px)}.mobile-interact{border-radius:999px;min-width:clamp(88px,28vw,124px);min-height:clamp(56px,15vw,72px);padding:0 16px;font-size:clamp(12px,3.2vw,14px);font-weight:600}.mobile-interact.is-active{background:#1c1a16c7;border-color:#f2ebe0b3}.mobile-interact:disabled,.mobile-jump:disabled{opacity:.32}.mobile-jump.pressed,.mobile-interact:active{background:#28241ed1;transform:scale(.96)}#mobile-hud.media-open{z-index:38}#mobile-hud.media-open .mobile-dock,#mobile-hud.media-open .mobile-hint,#mobile-hud.media-open .mobile-map{visibility:hidden}#mobile-hud.media-open .mobile-stick,#mobile-hud.media-open .mobile-jump{opacity:.22;pointer-events:none}#mobile-debug{pointer-events:none;left:8px;top:calc(max(8px, env(safe-area-inset-top,0px)) + 56px);color:#9fef9f;white-space:pre;z-index:5;background:#000000b3;border-radius:4px;padding:6px 8px;font:10px/1.4 ui-monospace,monospace;position:absolute}@media (orientation:landscape) and (max-height:480px){.mobile-dock{top:max(6px, env(safe-area-inset-top,0px));padding:4px 6px}.mobile-hint{top:calc(max(6px, env(safe-area-inset-top,0px)) + 42px);padding:6px 10px;font-size:11px}.mobile-stick{width:clamp(64px,18vw,84px);height:clamp(64px,18vw,84px);bottom:max(10px, env(safe-area-inset-bottom,0px))}.mobile-actions{bottom:max(10px, env(safe-area-inset-bottom,0px));gap:8px}.mobile-map{bottom:calc(max(10px, env(safe-area-inset-bottom,0px)) + clamp(64px, 18vw, 84px) + 12px);height:30px}}body:has(#mobile-hud.visible) #prompt{bottom:28%}body:has(#mobile-hud.visible) #captions{bottom:22%}body:has(#mobile-hud.visible) .project-chrome button[data-project-back]{display:none!important}body:has(#mobile-hud.visible) .project-return-hint{display:none!important}body:has(#mobile-hud.visible) #prompt .p-keys{display:none!important}body:has(#mobile-hud.visible) #prompt .click-hint{display:none!important}:is(body:has(#mobile-hud.media-open) #prompt,body:has(#mobile-hud.visible):has(.project-layer.visible) #prompt){visibility:hidden!important;opacity:0!important;pointer-events:none!important}body:has(#mobile-hud.visible) .project-layer{padding-bottom:env(safe-area-inset-bottom,0px)}body:has(#mobile-hud.visible) .project-chrome{padding:max(8px, env(safe-area-inset-top,0px)) clamp(14px, 4vw, 22px) 6px}body:has(#mobile-hud.visible) .project-body{width:100%;max-width:none;padding:2px clamp(14px, 4vw, 20px) calc(clamp(72px, 18vw, 96px) + env(safe-area-inset-bottom,0px) + 18px)}body:has(#mobile-hud.visible) .project-sub{letter-spacing:.34em;margin-bottom:6px;font-size:9px}body:has(#mobile-hud.visible) .project-body h1{margin-bottom:clamp(8px,1.6svh,14px);font-size:clamp(22px,7.2vw,34px);line-height:.98}body:has(#mobile-hud.visible) .project-video-slot{width:min(100%,60.4444svh);max-height:min(34svh,42dvh)}body:has(#mobile-hud.visible) .project-notes{border-bottom:0;max-width:100%;padding:clamp(10px,1.6svh,14px) 0 0}body:has(#mobile-hud.visible) .project-copy{font-size:clamp(13px,3.4vw,15px);line-height:1.55}.first-camera-layer{z-index:36;pointer-events:none;position:absolute;inset:0;overflow:hidden}.first-camera-layer[hidden]{display:none!important}.first-camera-layer:before{content:"";opacity:0;background:radial-gradient(at 52% 42%,#0000 22%,#0505062e 62%,#05050694 100%),linear-gradient(90deg,#050506b8 0%,#0505062e 47%,#05050652 100%);transition:opacity .7s;position:absolute;inset:0}.first-camera-layer.visible{pointer-events:auto}.first-camera-layer.visible:before{opacity:1}.first-camera-copy{z-index:2;opacity:0;background:linear-gradient(90deg,#070708a3,#0707082e);border-left:1px solid #d8c9a38c;width:min(520px,100vw - 56px);padding:24px 26px 18px;transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:clamp(34px,8vh,96px);left:clamp(28px,7vw,112px);transform:translateY(14px)}.first-camera-layer.visible .first-camera-copy{opacity:1;transform:translateY(0)}.first-camera-eyebrow{color:var(--accent);font:10px/1.4 var(--mono);letter-spacing:.32em;text-transform:uppercase;margin-bottom:12px}.first-camera-copy h2{color:#f1ece2;font-family:var(--serif);letter-spacing:.09em;margin-bottom:22px;font-size:clamp(28px,4vw,54px);font-weight:400;line-height:1}.first-camera-prose{max-width:42ch}.first-camera-prose p{color:#f1ece2db;font:17px/1.55 var(--serif);margin-bottom:9px}.first-camera-close{appearance:none;color:#f1ece2;font:10px/1 var(--mono);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;background:#0808098f;border:1px solid #d8c9a385;border-radius:999px;margin-top:18px;padding:11px 16px}.first-camera-close:hover,.first-camera-close:focus-visible{border-color:var(--accent);color:var(--accent);outline:var(--focus);outline-offset:4px}.first-camera-flash{z-index:3;pointer-events:none;opacity:0;background:#fffdf7;position:absolute;inset:0}.first-camera-flash.active{animation:.2s ease-out both first-camera-flash}@keyframes first-camera-flash{0%{opacity:0}16%{opacity:.72}to{opacity:0}}.reduced-motion .first-camera-layer:before,.reduced-motion .first-camera-copy{transition-duration:.14s}.reduced-motion .first-camera-flash{display:none}@media (max-width:700px){.first-camera-copy{left:18px;right:18px;bottom:max(104px, calc(env(safe-area-inset-bottom,0px) + 92px));width:auto;max-height:calc(100vh - 130px);padding:20px 20px 16px;overflow-y:auto}.first-camera-copy h2{margin-bottom:16px;font-size:clamp(28px,9vw,42px)}.first-camera-prose p{margin-bottom:7px;font-size:clamp(14px,4vw,17px);line-height:1.42}.first-camera-close{min-height:44px}}
