:root{--ease:cubic-bezier(.22, .61, .36, 1);--bg:#08080c;--fg:#f4f4f6;--dim:#8c8c99;--line:#ffffff1a;--accent:#c8b4ff}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;font-family:system-ui,-apple-system,Pretendard,sans-serif;overflow-x:clip}a{color:inherit;text-decoration:none}.fx{opacity:0;transform:translateY(var(--fy,20px));transition:opacity .85s var(--ease) var(--fd,0s), transform .85s var(--ease) var(--fd,0s)}.fx.in{opacity:1;transform:none}.pill{border:1px solid var(--line);color:var(--fg);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1.5rem;font-size:.95rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.pill:hover{background:#ffffff0f;border-color:#ffffff59}.pill.solid{background:var(--fg);color:#101014;border-color:#0000}.pill.solid:hover{background:#dcdce2}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin:0 0 .8rem;font-size:.78rem;font-weight:600}.display{letter-spacing:-.045em;margin:0;font-size:clamp(3rem,12vw,9rem);font-weight:800;line-height:.9}.wrap{width:min(1120px,90vw);margin:0 auto}.aura{pointer-events:none;opacity:0;transition:opacity .6s var(--ease);position:absolute;inset:-20%}.aura.live{opacity:.5}.aura:before,.aura:after{content:"";filter:blur(80px);mix-blend-mode:screen;border-radius:50%;width:46%;height:46%;animation-play-state:paused;position:absolute}.aura:before{background:radial-gradient(circle, var(--accent), transparent 70%);animation:auraA 7s var(--ease) infinite alternate;top:12%;left:8%}.aura:after{animation:auraB 9s var(--ease) infinite alternate;background:radial-gradient(circle,#7fd4e8,#0000 70%);bottom:10%;right:6%}.aura.live:before,.aura.live:after{animation-play-state:running}@keyframes auraA{0%{transform:translate(0)scale(.9)}to{transform:translate(14%,-10%)scale(1.2)}}@keyframes auraB{0%{transform:translate(0)scale(1.15)}to{transform:translate(-12%,12%)scale(.85)}}.kb{animation:kb var(--kbd,17s) ease-in-out infinite alternate;animation-play-state:paused}.live .kb{animation-play-state:running}@keyframes kb{0%{transform:scale(1.05)translate(0)}to{transform:scale(var(--kbs,1.13)) translate(var(--kbx,-2%), var(--kby,-1.5%))}}@media (prefers-reduced-motion:reduce){.fx{opacity:1;transition:none;transform:none}.aura,.aura:before,.aura:after{opacity:0;animation:none}.kb{animation:none}*{scroll-behavior:auto!important}}
