@font-face{font-family:'Tenor-Rg';src:url('./assets/TenorSans-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{font-family:'Tenor-Rg',sans-serif;color:#f9f6ed;font-synthesis:none;background:#283024;--olive:#35432d;--ink:#30382c}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.6}button:focus-visible{outline:3px solid #a2b683;outline-offset:4px}[hidden]{display:none!important}
#viewer,#viewer canvas{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}#viewer{background:#35432d}body:before{content:'';position:fixed;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(21,29,21,.26),transparent 26%,transparent 64%,rgba(21,29,21,.46))}
.topbar{position:fixed;top:30px;left:38px;right:38px;z-index:2;pointer-events:none}.brand{display:inline-flex;flex-direction:column;align-items:center;gap:14px;filter:drop-shadow(0 1px 7px #0003)}.brand-logo{display:block;width:206px;height:auto;overflow:hidden}.brand-subtitle{font-size:10px;letter-spacing:3.4px;line-height:1.6;text-transform:uppercase;padding-left:3.4px}
.scene-caption{position:fixed;left:40px;bottom:125px;z-index:2;pointer-events:none;text-shadow:0 2px 18px #0005}.eyebrow{font-size:11px;letter-spacing:2.5px}.scene-caption h1{font-weight:400;font-size:clamp(38px,4.4vw,62px);letter-spacing:-1px;margin:14px 0 0;line-height:1.2}
.bottom-bar{position:fixed;bottom:28px;left:40px;right:32px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px}.view-help{font-size:10px;letter-spacing:.25px;display:flex;align-items:center;gap:9px}.dot{height:5px;width:5px;border-radius:50%;background:#d2dec0}.controls{display:flex;align-items:center;gap:4px;padding:7px;border:1px solid #fff3;border-radius:38px;background:#f4f0eaef;color:var(--ink);box-shadow:0 4px 25px #0002}.controls button{border:0;background:transparent;color:inherit;border-radius:30px;padding:13px 16px;white-space:nowrap;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:9px}.controls button:hover{background:#dfe3d6}.controls button[aria-pressed=true]{background:#dce4d2}.controls svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.controls #depth-state{font-size:9px;text-transform:uppercase}.controls button.vr{background:var(--olive);color:#fff;padding:14px 23px}.controls button.vr:hover{background:#4b5c40}.controls button.vr svg{width:28px;height:24px}.divider{width:1px;height:20px;background:#c8cdbf;margin:0 3px}
#toast{position:fixed;z-index:6;top:148px;left:50%;transform:translateX(-50%);max-width:min(90vw,550px);background:#f8f5ecef;color:#3c4934;padding:13px 20px;border-radius:8px;font-size:12px;line-height:1.6;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}#loading{position:fixed;inset:0;z-index:10;background:#eae8dc;color:#4d5b41;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;font-size:12px;letter-spacing:1px;text-align:center;padding:25px}#retry{border:1px solid #7e8c6c;background:transparent;border-radius:24px;padding:12px 20px;color:#35432d}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}body.xr-active .topbar,body.xr-active .bottom-bar,body.xr-active .scene-caption{visibility:hidden}
@media(max-width:700px){.topbar{top:24px;left:22px;right:22px}.brand-logo{width:156px}.brand{gap:10px}.brand-subtitle{font-size:8px;letter-spacing:2.8px}.scene-caption{left:22px;bottom:151px}.scene-caption h1{font-size:40px}.bottom-bar{left:15px;right:15px;bottom:max(20px,env(safe-area-inset-bottom));flex-direction:column;gap:14px}.controls{gap:0;padding:5px}.controls button{padding:12px}.controls button.vr{padding:13px 16px;font-size:10px}.view-help{font-size:9px}#toast{top:135px}}
@media(max-width:390px){.controls button{padding:11px 10px}.controls button.vr{padding:12px 13px}.controls button.vr svg{width:25px}.controls button span{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.scene-caption .eyebrow,.scene-caption h1,.controls button{text-transform:uppercase}

