:root{--font-display: "Cormorant Garamond", "Times New Roman", serif;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--ink: rgba(255, 255, 255, .92);--ink-soft: rgba(255, 255, 255, .62)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;background:#0a0714}body{font-family:var(--font-ui);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;cursor:default}canvas{display:block;outline:none;touch-action:none}button:focus-visible{outline:1px solid rgba(255,255,255,.7);outline-offset:4px;border-radius:2px}@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important}}.app{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10;padding:clamp(18px,3vw,40px)}.overlay>*{position:absolute}.brand{top:clamp(18px,3vw,40px);left:clamp(18px,3vw,40px);display:flex;align-items:center;gap:12px;mix-blend-mode:screen}.brand-mark{font-family:var(--font-display);font-size:30px;line-height:1;color:var(--ink);transform:translateY(-1px)}.brand-name{font-family:var(--font-display);font-weight:400;font-size:15px;letter-spacing:.34em;text-transform:uppercase;color:var(--ink-soft)}.controls{top:clamp(18px,3vw,40px);right:clamp(18px,3vw,40px);display:flex;gap:10px;pointer-events:auto}.ctrl{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:var(--ink);background:#ffffff0f;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:background .4s ease,transform .4s ease,border-color .4s ease}.ctrl:hover{background:#ffffff29;border-color:#fff6;transform:translateY(-1px)}.scene-title{left:clamp(18px,3vw,40px);bottom:clamp(24px,5vw,54px);max-width:60vw}.scene-numeral{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(14px,1.4vw,18px);letter-spacing:.3em;color:var(--ink-soft);margin-bottom:6px}.scene-name{font-family:var(--font-display);font-weight:300;font-size:clamp(30px,5.5vw,62px);line-height:1.02;color:var(--ink);text-shadow:0 2px 30px rgba(0,0,0,.35)}.scroll-hint{left:50%;bottom:clamp(22px,4vw,38px);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;letter-spacing:.4em;text-transform:uppercase;color:var(--ink-soft)}.chevron{width:8px;height:8px;border-right:1px solid var(--ink-soft);border-bottom:1px solid var(--ink-soft);transform:rotate(45deg)}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:radial-gradient(120% 90% at 50% 15%,#2b2a5e,#171436 45%,#0a0714);color:var(--ink)}.loader-inner{text-align:center;padding:24px;max-width:560px}.loader-mark{font-family:var(--font-display);font-size:56px;line-height:1;margin-bottom:18px;opacity:.9;animation:floaty 6s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.loader-title{font-family:var(--font-display);font-weight:300;font-size:clamp(30px,6vw,54px);letter-spacing:.16em;margin-bottom:14px}.loader-sub{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(14px,2vw,18px);color:var(--ink-soft);margin-bottom:40px}.loader-progress{display:flex;justify-content:center;margin-bottom:34px}.loader-bar{width:200px;height:1px;background:#ffffff29;overflow:hidden}.loader-fill{height:100%;width:0%;background:linear-gradient(90deg,#9fd0ff,#ffd9e0)}.enter{font-family:var(--font-ui);font-size:12px;letter-spacing:.36em;text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:14px 30px;cursor:pointer;transition:background .5s ease,border-color .5s ease}.enter:hover{background:#ffffff14;border-color:#fff9}@media (max-width: 820px){.brand-name{display:none}.scene-name{font-size:clamp(26px,8vw,40px)}}
