@font-face{font-family:Inter;src:url('assets/fonts/Inter-variable.woff') format('woff');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#080d18;--panel:#101522;--text:#f6f6fa;--muted:#c4c5cf;--violet:#6656ff;--lavender:#aa9cff;--line:rgba(211,212,243,.22);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a:focus-visible,button:focus-visible{outline:3px solid #b6adff;outline-offset:5px}button:hover,a:hover{color:#fff}button[disabled]{cursor:default}img{display:block;max-width:100%}[hidden]{display:none!important}.skip-link{position:fixed;left:15px;top:-100px;background:#221c52;padding:14px;z-index:100}.skip-link:focus{top:15px}
.hero{container-type:inline-size;position:relative;aspect-ratio:1587/991;isolation:isolate;overflow:hidden;--u:calc(100cqw / 1587)}
.scene,.scene-shade{position:absolute;inset:0;pointer-events:none}.scene{z-index:-4;transform:translate3d(var(--px,0px),var(--py,0px),0) scale(var(--zoom,1));transform-origin:67% 45%;will-change:transform}.scene img,.scene picture{display:block;width:100%;height:100%;object-fit:cover}.scene-shade{z-index:-3;background:linear-gradient(90deg,rgba(3,7,15,.10),transparent 50%),linear-gradient(180deg,rgba(4,9,18,.22),transparent 15%,transparent 78%,rgba(5,10,19,.25))}
.outline-word{position:absolute;left:calc(138*var(--u));top:calc(42*var(--u));font-size:calc(285*var(--u));line-height:1;font-weight:800;letter-spacing:calc(14*var(--u));color:transparent;-webkit-text-stroke:1px rgba(197,204,231,.15);z-index:-2;pointer-events:none;opacity:.65}
.light-bloom{position:absolute;left:51%;top:32%;width:20%;height:8%;z-index:-1;background:radial-gradient(ellipse,rgba(100,75,255,.18),transparent 65%);mix-blend-mode:screen;pointer-events:none;animation:breathe 7s ease-in-out infinite alternate}
.header{position:absolute;top:0;left:calc(56*var(--u));right:calc(56*var(--u));height:calc(67*var(--u));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);z-index:10;gap:calc(24*var(--u))}
.brand{display:flex;align-items:center;gap:calc(22*var(--u));flex-shrink:0}.brand img{width:calc(68*var(--u));height:auto}.brand b{display:block;font-weight:800;letter-spacing:calc(2.2*var(--u));font-size:calc(27*var(--u));line-height:1.1}.brand small{display:block;font-size:calc(10*var(--u));letter-spacing:calc(6*var(--u));margin-top:calc(4*var(--u))}
.main-nav{display:flex;align-items:center;gap:calc(57*var(--u));margin-left:auto;margin-right:auto;padding-left:calc(110*var(--u));font-size:calc(15*var(--u));white-space:nowrap}.main-nav a{position:relative;line-height:calc(42*var(--u))}.main-nav a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--violet);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.main-nav a:hover:after,.main-nav .selected:after{transform:scaleX(1)}
.header-actions{display:flex;gap:calc(23*var(--u));align-items:center}.server-status{height:calc(43*var(--u));min-width:calc(198*var(--u));border:1px solid var(--line);border-radius:5px;background:rgba(14,19,31,.65);display:flex;align-items:center;justify-content:center;gap:calc(11*var(--u));white-space:nowrap;padding:0 calc(14*var(--u));font-size:calc(14*var(--u));font-variant-numeric:tabular-nums}.server-status strong{font-size:calc(21*var(--u));margin-right:calc(8*var(--u))}.status-dot{width:calc(14*var(--u));height:calc(14*var(--u));border-radius:50%;background:#8a8e9b;flex-shrink:0}.server-status[data-status=online] .status-dot{background:#54cf41;box-shadow:0 0 10px #54cf4130}.server-status[data-status=stale] .status-dot{background:#e8b55a}.server-status[data-status=offline] .status-dot{background:#f07578}.icon-button{width:calc(48*var(--u));height:calc(43*var(--u));display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:5px;background:rgba(14,19,31,.65)}.icon-button svg{width:calc(20*var(--u));height:calc(20*var(--u))}.menu-button{display:none}
.hero-copy{position:absolute;left:calc(56*var(--u));top:calc(254*var(--u));z-index:2}.eyebrow{display:flex;align-items:center;gap:calc(20*var(--u));font-size:calc(13*var(--u));letter-spacing:calc(4.2*var(--u));margin:0 0 calc(17*var(--u));font-weight:500;white-space:nowrap}.eyebrow span{width:calc(55*var(--u));height:calc(4*var(--u));background:#9279ff;flex-shrink:0}h1{margin:0;font-weight:900;font-size:calc(94*var(--u));letter-spacing:calc(-3.3*var(--u));line-height:.86}h1>span{display:block}h1 .accent{color:var(--lavender);background:linear-gradient(110deg,#c3b9ff,#8e78ed);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.intro{font-size:calc(22*var(--u));line-height:1.38;margin:calc(18*var(--u)) 0 calc(20*var(--u));letter-spacing:calc(-.4*var(--u))}.hero-actions{display:flex;align-items:center;gap:calc(25*var(--u))}.primary{display:inline-flex;align-items:center;justify-content:space-between;min-height:62px;border:1px solid rgba(178,166,255,.34);border-radius:6px;background:linear-gradient(115deg,#6455fa,#6558ff);box-shadow:0 3px 25px #6656ff24;color:#fff;transition:transform .24s var(--ease),box-shadow .24s var(--ease)}.primary span{padding:0 28px;font-size:17px;letter-spacing:.2px}.primary>svg{width:59px;height:60px;padding:19px;border-left:1px solid rgba(220,214,255,.18)}.hero .primary{min-height:calc(62*var(--u));border-radius:calc(6*var(--u))}.hero .primary span{padding:0 calc(26*var(--u));font-size:calc(17*var(--u))}.hero .primary>svg{width:calc(59*var(--u));height:calc(60*var(--u));padding:calc(19*var(--u))}.primary:hover{transform:translateY(-2px);box-shadow:0 5px 30px #6656ff44}.trailer-button{display:flex;align-items:center;gap:calc(19*var(--u));padding:0;background:none;text-align:left;font-size:calc(19*var(--u))}.trailer-button small{display:block;font-size:calc(10*var(--u));letter-spacing:calc(3*var(--u));margin-top:calc(7*var(--u));color:var(--muted)}.play-ring{display:flex;align-items:center;justify-content:center;width:calc(56*var(--u));height:calc(56*var(--u));border:1px solid rgba(255,255,255,.8);border-radius:50%;transition:background .25s}.play-ring svg{width:calc(19*var(--u));height:calc(19*var(--u))}.trailer-button:hover .play-ring{background:#7764fb33}
.location{position:absolute;left:84.7%;top:28.2%;font-size:calc(9*var(--u));font-weight:600;letter-spacing:calc(3*var(--u));line-height:1.7;color:#d6d9e8}.location span{position:absolute;left:-35%;top:130%;width:calc(56*var(--u));height:1px;background:#c4c6d8;transform:rotate(-45deg);transform-origin:right}.section-index{position:absolute;right:calc(35*var(--u));top:calc(184*var(--u));display:flex;align-items:center;flex-direction:column;gap:calc(18*var(--u));font-size:calc(14*var(--u));color:#8e91a2}.section-index a{padding:4px}.section-index .active{color:#9b81ff;font-weight:800}.section-index>span{height:calc(43*var(--u));width:1px;background:linear-gradient(#9b81ff,#9b81ff33)}
.chapter-dock{position:absolute;left:calc(56*var(--u));right:calc(56*var(--u));top:calc(802*var(--u));height:calc(76*var(--u));display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(171,174,212,.35);border-radius:7px;background:linear-gradient(130deg,rgba(22,27,49,.86),rgba(8,10,19,.86));backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #ddd8ff0c,0 10px 32px #0003;overflow:hidden}.chapter{position:relative;display:flex;align-items:center;padding:0 calc(25*var(--u));gap:calc(24*var(--u));font-size:calc(14*var(--u));letter-spacing:calc(1.7*var(--u));transition:background .2s}.chapter>svg{width:calc(26*var(--u));height:calc(26*var(--u))}.chapter b{margin-left:calc(20*var(--u));letter-spacing:0}.chapter.active b{color:#8d72ff}.chapter-arrow{margin-left:auto}.chapter:not(:last-child):before{position:absolute;right:0;top:35%;height:36%;width:1px;content:'';background:var(--line)}.chapter:after{content:'';position:absolute;left:0;bottom:0;height:3px;width:50%;background:linear-gradient(90deg,#987cff,#fff,#8862ff);opacity:0;box-shadow:0 0 12px #8f78ff}.chapter.active:after{opacity:1}.chapter:hover{background:#7561ff12}.chapter:hover .chapter-arrow{transform:translateX(4px)}
.hero-bottom{position:absolute;left:calc(56*var(--u));right:calc(56*var(--u));top:calc(908*var(--u));display:flex;align-items:center;justify-content:space-between}.bottom-kicker{display:flex;align-items:center;gap:calc(45*var(--u));font-size:calc(12*var(--u));letter-spacing:calc(4*var(--u));color:#c8c8d2}.bottom-kicker i{width:calc(366*var(--u));height:1px;background:var(--line)}.hero-bottom p{font-size:calc(27*var(--u));font-weight:800;letter-spacing:calc(-.7*var(--u));margin:0}.hero-bottom p span{color:#9980ff}.scroll-cue{position:absolute;left:50%;top:0;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:calc(9*var(--u))}.scroll-cue svg{width:calc(25*var(--u));height:calc(34*var(--u));animation:scrollHint 2s ease-in-out infinite}.scroll-cue i{height:calc(31*var(--u));width:1px;background:var(--line)}
.mobile-menu{position:absolute;top:76px;left:20px;right:20px;background:#111625f5;border:1px solid var(--line);border-radius:9px;padding:12px;z-index:15;box-shadow:0 20px 60px #0008}.mobile-menu a{display:block;padding:13px 18px;border-radius:5px}.mobile-menu a:hover{background:#6656ff25}.continuation{max-width:1300px;margin:auto;padding:0 5vw}.content-section{padding:100px 0;border-top:1px solid var(--line);scroll-margin-top:35px;max-width:100%}.section-label{color:#a996ff;letter-spacing:3px;font-size:12px;font-weight:600}.content-section h2{font-size:clamp(32px,4vw,62px);max-width:850px;line-height:1.1;letter-spacing:-1.5px;margin:20px 0}.content-section>p:not(.section-label){max-width:650px;line-height:1.7;color:var(--muted);font-size:18px}.text-link{display:inline-block;margin-top:18px;padding-bottom:9px;border-bottom:1px solid #9c85ff;font-size:17px}.text-link span{margin-left:15px;color:#aa98ff}.community-section .primary{margin-top:24px}footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 5vw;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}footer nav{display:flex;gap:24px}footer>a{font-weight:800;letter-spacing:2px}.trailer-dialog{background:#101522;border:1px solid var(--line);border-radius:12px;color:var(--text);width:min(900px,92vw);padding:24px}.trailer-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.trailer-dialog>div{display:flex;align-items:center;justify-content:space-between}.dialog-close{width:44px;height:44px}.dialog-close svg{width:20px;height:20px}.trailer-dialog video{width:100%;margin-top:20px;max-height:70vh}.trailer-unavailable{color:var(--muted);line-height:1.5}.demo-notice{position:fixed;bottom:8px;left:8px;z-index:50;font:11px Inter,sans-serif;padding:6px 9px;border:1px solid #7667c5;background:#161125;color:#d8ccff;border-radius:4px}
@keyframes breathe{from{opacity:.2}to{opacity:.7}}@keyframes scrollHint{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@media(min-width:1100px){.hero-copy{animation:copyIn .85s var(--ease) both}@keyframes copyIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:700px) and (max-width:1099px){.hero{height:820px;aspect-ratio:auto;--u:.67px}.header{left:28px;right:28px;height:76px}.main-nav{display:none}.menu-button{display:inline-flex}.header-actions{gap:12px}.server-status{height:40px;font-size:13px;min-width:170px}.status-dot{width:10px;height:10px}.server-status strong{font-size:18px}.icon-button{height:42px;width:42px}.icon-button svg{height:20px;width:20px}.hero-copy{top:245px;left:35px}.scene img{object-position:60% 50%}.hero .primary{min-height:48px}.hero .primary span{font-size:15px;padding:0 20px}.hero .primary>svg{height:48px;width:48px;padding:15px}.intro{font-size:18px}.play-ring{width:48px;height:48px}.trailer-button{font-size:16px}.eyebrow{font-size:11px;letter-spacing:2px}.chapter-dock{left:28px;right:28px;top:auto;bottom:92px;height:66px}.chapter{font-size:11px;padding:0 14px;gap:10px}.chapter b{margin-left:0}.hero-bottom{left:28px;right:28px;top:auto;bottom:35px}.bottom-kicker{font-size:9px;letter-spacing:2px}.bottom-kicker i{display:none}.hero-bottom p{font-size:18px}.scroll-cue{display:none}.section-index,.location{display:none}}
@media(max-width:699px){.hero{aspect-ratio:auto;min-height:1000px;height:auto;--u:1px;padding:410px 22px 32px}.scene{bottom:auto;height:1000px}.scene img{object-position:50% 0;object-fit:cover}.scene-shade{background:linear-gradient(180deg,rgba(4,9,18,.2),transparent 25%,rgba(4,9,18,.1) 40%,rgba(4,9,18,.60) 58%,#080d18 98%)}.header{position:absolute;left:20px;right:20px;height:75px;gap:10px}.brand{gap:9px}.brand img{width:40px}.brand b{font-size:17px;letter-spacing:1px}.brand small{font-size:7px;letter-spacing:3px;margin-top:4px}.main-nav,.discord{display:none}.header-actions{gap:8px}.menu-button{display:flex}.icon-button{width:40px;height:40px}.icon-button svg{width:20px;height:20px}.server-status{min-width:0;width:auto;height:35px;padding:0 9px;gap:6px;font-size:10px}.server-status strong{font-size:14px;margin-right:4px}.status-dot{width:7px;height:7px}.hero-copy{position:relative;left:auto;top:auto}.eyebrow{font-size:9px;letter-spacing:2px;gap:12px;white-space:normal;margin-bottom:18px}.eyebrow span{width:24px;height:3px}h1{font-size:clamp(42px,11.3vw,75px);letter-spacing:-1.8px;line-height:.9}.intro{font-size:15px;line-height:1.55;margin:20px 0}.hero-actions{gap:18px;flex-wrap:wrap}.hero .primary{min-height:50px;border-radius:5px}.hero .primary span{font-size:14px;padding:0 20px}.hero .primary>svg{width:45px;height:48px;padding:15px}.trailer-button{font-size:14px;gap:10px}.trailer-button small{font-size:7px;letter-spacing:1.5px;margin-top:5px}.play-ring{width:43px;height:43px}.play-ring svg{width:15px;height:15px}.outline-word,.section-index,.location,.light-bloom{display:none}.chapter-dock{position:relative;left:auto;right:auto;top:auto;height:auto;display:flex;flex-direction:column;margin-top:40px;border-radius:7px;background:#111625c9;backdrop-filter:none}.chapter{height:58px;padding:0 15px;font-size:11px;letter-spacing:1.2px;gap:15px}.chapter>svg{width:22px;height:22px}.chapter b{margin:0}.chapter:not(:last-child):before{width:auto;height:1px;left:15px;right:15px;top:auto;bottom:0}.chapter.active:after{width:3px;height:100%;left:0;bottom:0}.hero-bottom{position:static;margin-top:30px;display:block}.bottom-kicker{font-size:9px;letter-spacing:2.2px}.bottom-kicker i,.scroll-cue{display:none}.hero-bottom p{font-size:20px;line-height:1.25;letter-spacing:-.5px;margin:15px 0 0;max-width:320px}.content-section{padding:64px 0}.content-section>p:not(.section-label){font-size:16px}.continuation{padding:0 22px}footer{flex-wrap:wrap;padding:28px 22px}footer nav{flex-wrap:wrap;gap:15px}footer small{width:100%}}
@media(max-width:359px){.brand b{font-size:14px}.brand img{width:32px}.brand small{font-size:6px}.server-status{font-size:9px;padding:0 6px}.header-actions{gap:5px}.header{left:14px;right:14px}.hero{padding-left:18px;padding-right:18px}}
/* Optical type calibration: the generated target uses wider glyphs than Inter. */
@media(min-width:1100px){h1>span{width:max-content;transform:scaleX(1.23);transform-origin:left}.intro{margin-top:calc(6*var(--u));margin-bottom:calc(16*var(--u))}.outline-word{opacity:.38}}
@media(max-width:699px){.scene img{height:auto;object-fit:contain}.scene picture{height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scene{transform:none!important;will-change:auto}}
html[data-still=true]{scroll-behavior:auto}html[data-still=true] *,html[data-still=true] *:before,html[data-still=true] *:after{animation:none!important;transition:none!important}html[data-still=true] .scene{transform:none!important}
