@font-face{font-family:Inter;src:url('assets/inter-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-800.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-900.ttf') format('truetype');font-weight:900;font-display:swap}
:root{color-scheme:dark;--purple:#8e2bfa;--text:#f7f7fa;--muted:#c6c3cf;--gutter:6.72%;--button:linear-gradient(115deg,#a32ada 0%,#7821d3 45%,#421091 100%)}
*{box-sizing:border-box}
html{background:#030105;scroll-behavior:smooth}
body{margin:0;color:var(--text);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{font:inherit;color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button{border:0}
button:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:6px}
[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:12px;z-index:20;background:#fff;color:#111;padding:12px 18px;transform:translateY(-180%);border-radius:8px}
.skip-link:focus{transform:none}
.hero{position:relative;isolation:isolate;min-height:720px;height:100svh;overflow:hidden;background:#030105}
.hero-media{position:absolute;inset:0;z-index:-2;pointer-events:none}
.hero-image,.hero-video{width:100%;height:100%;object-fit:cover;object-position:50% 50%;position:absolute;inset:0}
.hero-video{opacity:0;transition:opacity .35s ease}
.hero-video.is-ready{opacity:1}
.site-header{height:66px;display:flex;align-items:center;position:relative;margin:0 5.86% 0 var(--gutter);gap:30px;z-index:5}
.brand{font-size:calc(36px + var(--text-size-offset, 0px));font-weight:800;letter-spacing:-1.9px;white-space:nowrap;line-height:1}
.brand span{margin-left:6px}
.desktop-nav{display:flex;align-items:center;gap:36px;margin-left:auto;position:relative;left:20px}
.nav-link{font-size:calc(15px + var(--text-size-offset, 0px));font-weight:400;letter-spacing:.02em;line-height:1.5;position:relative;padding:12px 0;background:none;white-space:nowrap;color:#d6d2dd;transition:color .15s ease}
.nav-link:hover{color:#fff}
.nav-link.current::after{content:'';position:absolute;height:2px;left:0;right:0;bottom:4px;background:#963cff}
.header-actions{display:flex;align-items:center;gap:17px;margin-left:auto}
.icon-button{display:inline-grid;place-items:center;width:44px;height:44px;padding:10px;background:none;color:#d4d0de;border-radius:50%}
.icon-button:hover{background:#ffffff12}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-button svg{width:23px;height:23px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border-radius:999px;background:var(--button);color:#fff;font-weight:500;letter-spacing:.025em;transition:filter .16s ease,transform .16s ease}
.button:hover{filter:brightness(1.04)}
.button:active{transform:scale(.97)}

.menu-button{display:none}
.hero-copy{position:absolute;left:var(--gutter);top:24.5%;outline:none}
h1{display:flex;gap:.18em;align-items:baseline;white-space:nowrap;font-size:calc(clamp(100px,11.4vw,180px) + var(--text-size-offset, 0px));font-weight:900;letter-spacing:-.065em;line-height:1;margin:0 0 7px}
.tagline{font-weight:700;font-size:calc(clamp(36px,3.59vw,56px) + var(--text-size-offset, 0px));line-height:1.035;letter-spacing:-.038em;margin:0;color:#d7d5df}
.tagline span{display:block}
.tagline span+span{color:#9b45ff}
.hero-cta{margin-top:52px;min-width:215px;min-height:62px;font-size:calc(20px + var(--text-size-offset, 0px));padding:15px 30px}
.hero-cta svg{width:24px;height:24px;stroke-width:1.5}




.motion-control{position:absolute;right:24px;bottom:24px;background:#09050dde;color:#eee;border:1px solid #ffffff45;padding:10px 16px;min-height:44px;border-radius:999px;font-size:calc(13px + var(--text-size-offset, 0px))}
.mobile-menu{position:absolute;top:70px;left:auto;right:20px;width:min(240px,calc(100% - 40px));max-height:calc(100svh - 160px);overflow:auto;z-index:6;background:#11091df5;border:1px solid #ffffff24;border-radius:18px;padding:12px;box-shadow:0 16px 60px #0009}
.mobile-menu nav{display:grid}
.mobile-menu a,.mobile-menu button{text-align:left;padding:14px 16px;background:none;border-radius:8px;font-size:calc(17px + var(--text-size-offset, 0px))}
.mobile-menu a:hover,.mobile-menu button:hover{background:#ffffff0c}
.info-dialog{width:min(460px,calc(100% - 40px));padding:42px 32px 32px;color:#f7f7fa;background:#141018;border:1px solid #ffffff29;border-radius:24px;box-shadow:0 30px 100px #0009}
.info-dialog::backdrop{background:#000b;backdrop-filter:blur(10px)}
.dialog-close{position:absolute;right:10px;top:10px}
.dialog-eyebrow{font-weight:700;color:#b98bff;font-size:calc(13px + var(--text-size-offset, 0px));letter-spacing:.04em;margin:0 0 18px}
.info-dialog h2{font-size:calc(32px + var(--text-size-offset, 0px));line-height:1.1;letter-spacing:-.04em;margin:0 0 16px}
.info-dialog p:not(.dialog-eyebrow){font-size:calc(16px + var(--text-size-offset, 0px));line-height:1.65;color:#d2ccd9;margin:0 0 28px}
.dialog-done{min-height:48px;padding:12px 24px;font-size:calc(15px + var(--text-size-offset, 0px))}
.no-script{position:fixed;bottom:0;left:0;right:0;padding:12px;background:#15111d;margin:0;text-align:center;font-size:calc(14px + var(--text-size-offset, 0px))}
/* Gently reveal the two slogan lines when motion is enabled. */
@media(prefers-reduced-motion:no-preference){
  .reveal-copy .tagline span{animation:reveal 3s ease-in-out both;animation-delay:.2s}
  .reveal-copy .tagline span+span{animation-delay:.45s}
  @keyframes reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
}
@media(min-width:1600px){.site-header{height:86px}.desktop-nav{gap:42px}.hero-copy{top:27%}.hero-cta{margin-top:65px}}
@media(max-width:1100px){
  .site-header{gap:20px}.desktop-nav{gap:24px;left:0}.nav-link{font-size:calc(14px + var(--text-size-offset, 0px))}.brand{font-size:calc(32px + var(--text-size-offset, 0px))}.header-actions{gap:10px}
}
@media(max-width:900px){
  .hero{min-height:650px}.site-header{margin:0 5%;height:76px}.desktop-nav,.search-button{display:none}.menu-button{display:inline-grid}.header-actions{gap:10px}.brand{font-size:calc(32px + var(--text-size-offset, 0px))}.hero-copy{left:6%;top:29%}h1{font-size:calc(13vw + var(--text-size-offset, 0px))}.tagline{font-size:calc(4.4vw + var(--text-size-offset, 0px))}.hero-image,.hero-video{object-position:59% 50%}.hero-cta{margin-top:40px;font-size:calc(18px + var(--text-size-offset, 0px));min-width:190px;min-height:56px}
}
@media(max-width:600px){
  .hero{min-height:760px;height:100svh}.hero-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#03010522 0%,#03010500 26%,#0301050d 42%,#030105db 68%,#030105 100%)}
  .hero-image,.hero-video{height:76%;object-position:77% 10%}.site-header{height:76px;margin:0 20px;gap:12px}.brand{font-size:calc(28px + var(--text-size-offset, 0px));letter-spacing:-1.6px}.brand span{margin-left:4px}.header-actions{gap:4px}.menu-button{width:40px;height:44px}
  .hero-copy{position:absolute;top:auto;bottom:132px;left:24px;right:24px}h1{font-size:calc(clamp(68px,17vw,103px) + var(--text-size-offset, 0px));letter-spacing:-.07em;gap:.15em;margin-bottom:18px}.tagline{font-size:calc(clamp(28px,7.1vw,38px) + var(--text-size-offset, 0px));line-height:1.08;letter-spacing:-.045em}.hero-cta{margin-top:28px;font-size:calc(17px + var(--text-size-offset, 0px));min-width:184px;min-height:54px}.motion-control{right:12px;bottom:92px;font-size:calc(12px + var(--text-size-offset, 0px))}
}
@media(max-width:360px){.site-header{margin:0 14px}.brand{font-size:calc(25px + var(--text-size-offset, 0px))}.hero-copy{left:20px;right:20px}h1{font-size:calc(17vw + var(--text-size-offset, 0px))}.tagline{font-size:calc(7.8vw + var(--text-size-offset, 0px))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-video{display:none}}
