:root{--night:#1a1511;--on-dark:#f7f2ea;--on-dark-2:#f7f2eab8;--gold:#e9c48a;--g:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);--sans:"Hanken Grotesk", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0}html{scrollbar-color:#e9c48a99 transparent;scrollbar-width:thin}body{background:var(--night);color:var(--on-dark);font:400 16px/1.5 var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow-x:hidden}::selection{background:var(--gold);color:var(--night)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1,p{margin:0}#loader{z-index:50;background:var(--night);transition:opacity 1.1s var(--ease-out), visibility 1.1s;place-content:center;justify-items:center;gap:18px;display:grid;position:fixed;inset:0}#loader.done{opacity:0;visibility:hidden}.loader-title{font:200 clamp(22px, 4vw, 30px)/1 var(--sans);letter-spacing:.42em;padding-left:.42em}.bar{background:#f7f2ea26;width:min(220px,60vw);height:1px}#bar-fill{background:var(--gold);transform-origin:0;height:100%;transition:transform .3s linear;display:block;transform:scaleX(0)}.top{z-index:20;padding:calc(env(safe-area-inset-top) + 18px) var(--g) 0;font:400 11px/1 var(--sans);letter-spacing:.22em;text-shadow:0 1px 12px #00000073;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;inset:0 0 auto}.brand{font-weight:300}.menu{justify-content:center;display:flex}#menu-rooms{gap:22px;display:flex}.menu button{color:var(--on-dark-2);font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;transition:color .25s}.menu button:hover,.menu button.on{color:var(--on-dark)}.link{color:var(--on-dark);border-bottom:1px solid #e9c48ab3;justify-self:end;padding:8px 0;text-decoration:none}#stage{position:relative}.sticky{background:var(--night);height:100dvh;position:sticky;top:0;overflow:hidden}#film{display:block;position:absolute;inset:0}.sticky:after{content:"";pointer-events:none;background:radial-gradient(120% 85% at 50% 45%,#0000 55%,#0a070573 100%);position:absolute;inset:0}#intro{text-align:center;will-change:opacity, transform, filter;width:min(92vw,900px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#intro .kicker{font:300 11px/1 var(--sans);letter-spacing:.34em;color:var(--on-dark-2)}#intro h1{font:200 clamp(44px, 9vw, 120px)/.98 var(--sans);letter-spacing:.08em;text-shadow:0 2px 30px #00000059;margin-top:22px}#intro .hint{font:300 11px/1 var(--sans);letter-spacing:.3em;color:var(--on-dark-2);margin-top:26px}.cue{background:linear-gradient(var(--gold), transparent);width:1px;height:46px;animation:cue 2.4s var(--ease-out) infinite;margin:14px auto 0;display:block}@keyframes cue{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}#titles{pointer-events:none;position:absolute;inset:0}.title{text-align:center;opacity:0;will-change:opacity, transform, filter;width:min(92vw,1000px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.title.low{top:76%}.title .num{font:300 11px/1 var(--sans);letter-spacing:.34em;color:var(--on-dark-2)}.title h2{font:200 clamp(40px, 7.4vw, 104px)/.98 var(--sans);letter-spacing:.06em;text-wrap:balance;text-shadow:0 2px 30px #0006;margin:18px 0 0}.title p{font:300 clamp(13px, 1.2vw, 16px)/1.5 var(--sans);letter-spacing:.08em;color:var(--on-dark-2);margin-top:18px;max-width:44ch;margin-inline:auto}.title .rule{background:var(--gold);width:36px;height:1px;margin:22px auto 0;display:block}#marker{opacity:0;pointer-events:none;will-change:left, top, opacity;position:absolute;top:0;left:0}#marker .ring{background:var(--gold);border-radius:50%;width:14px;height:14px;position:absolute;top:-7px;left:-7px;box-shadow:0 0 0 2px #1a151180,0 0 18px #e9c48ae6}#marker .ring:after{content:"";border:1px solid var(--gold);animation:pulse 2.2s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-10px}@keyframes pulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2.2)}}#marker .tag{white-space:nowrap;font:400 10px/1 var(--sans);letter-spacing:.22em;color:var(--on-dark);-webkit-backdrop-filter:blur(8px);background:#1a151199;border:1px solid #e9c48a80;border-radius:4px;padding:7px 10px;position:absolute;top:-28px;left:18px}#marker .tag:before{content:"";background:var(--gold);width:18px;height:1px;position:absolute;top:50%;left:-18px}.btn{left:50%;bottom:calc(env(safe-area-inset-bottom) + 10dvh);min-height:54px;color:var(--on-dark);font:400 11px/1 var(--sans);letter-spacing:.22em;white-space:nowrap;-webkit-backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#1a151159;border:1px solid #f7f2ea99;border-radius:999px;align-items:center;padding:0 30px;text-decoration:none;transition:background .25s,border-color .25s;display:inline-flex;position:absolute;transform:translate(-50%)}.btn:hover{border-color:var(--gold);background:#1a151199}.progress{background:#f7f2ea1f;height:2px;position:absolute;bottom:0;left:0;right:0}#progress{background:var(--gold);transform-origin:0;height:100%;display:block;transform:scaleX(0)}@media (width<=760px){.top{grid-template-columns:1fr auto 1fr}.menu{display:none}#intro h1{letter-spacing:.06em}.btn{white-space:normal;text-align:center;padding:12px 22px;line-height:1.5}}@media (prefers-reduced-motion:reduce){.cue{animation:none}}.links{justify-self:end;gap:18px;display:flex}
