:root{--bg: #05060d;--ink: #eef2ff;--ink-dim: rgba(238, 242, 255, .62);--ink-faint: rgba(238, 242, 255, .46);--cyan: #6ee7ff;--violet: #a78bfa;--champagne: #f6e3b4;--serif: "Cormorant Garamond", "Times New Roman", serif;--sans: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overscroll-behavior:none}body{touch-action:none}#scene{position:fixed;inset:0;width:100%;height:100%;display:block}.loader{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:var(--bg);transition:opacity .9s var(--ease),visibility .9s}.loader.is-done{opacity:0;visibility:hidden}.loader__inner{display:grid;justify-items:center;gap:22px}.loader__mark{width:46px;height:46px;border-radius:50%;border:1px solid rgba(110,231,255,.28);position:relative}.loader__mark:after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid transparent;border-top-color:var(--cyan);animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loader__bar{width:160px;height:1px;background:#eef2ff1f;overflow:hidden}.loader__bar span{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--cyan),var(--violet));transition:width .35s var(--ease)}.loader__pct{font-size:11px;letter-spacing:.22em;color:var(--ink-faint);font-variant-numeric:tabular-nums}.overlay{position:fixed;inset:0;z-index:20;pointer-events:none}.panel{position:absolute;left:50%;transform:translate(-50%);width:min(760px,88vw);text-align:center;opacity:0;visibility:hidden;transition:opacity .6s var(--ease),transform .9s var(--ease),visibility .6s}.panel.is-active{opacity:1;visibility:visible}.panel--intro{bottom:clamp(54px,11vh,110px)}.panel--bottom{bottom:clamp(88px,15vh,160px)}.panel--sr{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.eyebrow{margin:0 0 14px;font-size:clamp(9px,1.6vw,11px);font-weight:300;letter-spacing:.42em;text-transform:uppercase;color:var(--ink-faint)}.display{margin:0;font-family:var(--serif);font-weight:300;font-size:clamp(31px,5.9vw,62px);line-height:1.06;letter-spacing:.01em;background:linear-gradient(180deg,#fff 10%,#eef2ff8c);-webkit-background-clip:text;background-clip:text;color:transparent}.lede{margin:18px auto 0;max-width:46ch;font-size:clamp(12px,2.2vw,14px);font-weight:200;line-height:1.85;letter-spacing:.06em;color:var(--ink-dim)}.cta{pointer-events:auto;position:relative;margin:34px auto 0;padding:0;width:138px;height:138px;border:0;border-radius:50%;background:none;color:var(--ink);cursor:pointer;font-family:inherit;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}.cta__ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(238,242,255,.2);transition:transform .8s var(--ease),border-color .5s}.cta:before{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid rgba(110,231,255,.4);animation:pulse 3.4s var(--ease) infinite}@keyframes pulse{0%{transform:scale(1);opacity:.65}70%{transform:scale(1.35);opacity:0}to{transform:scale(1.35);opacity:0}}.cta__label{position:relative;font-size:12px;font-weight:300;letter-spacing:.3em;text-transform:uppercase;padding-left:.3em}.cta:hover .cta__ring{transform:scale(.94);border-color:#6ee7ffbf}.actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}.action{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 26px;border:1px solid rgba(238,242,255,.22);border-radius:999px;background:#0c102080;backdrop-filter:blur(10px);color:var(--ink);font-family:inherit;font-size:11px;font-weight:300;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:border-color .35s,background .35s,color .35s;-webkit-tap-highlight-color:transparent}.action:hover{border-color:#6ee7ffb3;background:#6ee7ff17}.action--ghost{border-color:#eef2ff1f;background:none;color:var(--ink-dim)}.action--ghost:hover{color:var(--ink)}.hud{position:fixed;inset:0;z-index:30;pointer-events:none;opacity:0;transition:opacity .8s var(--ease)}.hud.is-visible{opacity:1}.icon-btn{pointer-events:auto;position:absolute;top:max(22px,env(safe-area-inset-top));right:22px;width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(238,242,255,.14);border-radius:50%;background:#0a0c1859;backdrop-filter:blur(8px);color:var(--ink-dim);cursor:pointer;transition:color .3s,border-color .3s;-webkit-tap-highlight-color:transparent}.icon-btn:hover{color:var(--ink);border-color:#6ee7ff80}.ico{width:19px;height:19px;fill:currentColor;stroke:none}.ico .wave{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.ico--off,.icon-btn.is-muted .ico--on{display:none}.icon-btn.is-muted .ico--off{display:block}.dots{pointer-events:auto;position:absolute;right:26px;top:50%;transform:translateY(-50%);display:grid;gap:16px;justify-items:end}.dot{display:flex;align-items:center;gap:10px;border:0;background:none;padding:4px 0;cursor:pointer;color:var(--ink-faint);font-family:inherit;font-size:9px;letter-spacing:.2em;text-transform:uppercase;transition:color .4s;-webkit-tap-highlight-color:transparent}.dot__label{opacity:0;transform:translate(6px);transition:opacity .4s var(--ease),transform .4s var(--ease);white-space:nowrap}.dot:hover .dot__label,.dot.is-active .dot__label{opacity:1;transform:none}.dot__mark{width:6px;height:6px;border-radius:50%;border:1px solid currentColor;transition:background .4s,transform .4s var(--ease)}.dot.is-active{color:var(--cyan)}.dot.is-active .dot__mark{background:var(--cyan);transform:scale(1.25)}.scroll-hint{pointer-events:auto;position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:grid;justify-items:center;gap:10px;border:0;background:none;padding:10px 16px;cursor:pointer;color:var(--ink-faint);font-family:inherit;font-size:9px;font-weight:300;letter-spacing:.28em;text-transform:uppercase;transition:color .4s,opacity .5s var(--ease);-webkit-tap-highlight-color:transparent}.scroll-hint:hover{color:var(--ink)}.scroll-hint.is-hidden{opacity:0;pointer-events:none}.scroll-hint__arrow{width:1px;height:26px;background:linear-gradient(180deg,currentColor,transparent);animation:drop 2.2s var(--ease) infinite}@keyframes drop{0%{transform:translateY(-6px);opacity:0}40%{opacity:1}to{transform:translateY(8px);opacity:0}}@media(max-width:640px){.dots{right:16px;gap:13px}.dot__label{display:none}.icon-btn{right:16px}.cta{width:124px;height:124px;margin-top:26px}}@media(prefers-reduced-motion:reduce){.cta:before,.scroll-hint__arrow{animation:none}}
