@font-face{font-family:Hanken;src:url(/assets/hanken-variable.woff2) format("woff2");font-weight:100 900;font-display:block}@font-face{font-family:JBMono;src:url(/assets/jb-mono-variable.woff2) format("woff2");font-weight:100 800;font-display:block}.stage{--u:min(calc(100vw / 1280),calc(100vh / 640));--u:min(calc(100vw / 1280),calc(100svh / 640));--frame-w:calc(1280 * var(--u));--frame-x:calc(50% - 640 * var(--u));--cu:var(--u);--hb:var(--u);--tb:var(--u);--nu:var(--u);--layout:desktop;--strip-top:calc(120 * var(--u));--strip-w:var(--frame-w);--strip-bot:calc(10 * var(--u));--lilac:#dec1fc;--nav:#c2c2c2;--ink:#1a0b1f;position:relative;width:100%;height:100vh;height:100svh;overflow:hidden;background:#000;isolation:isolate;color:#fff;font-family:Hanken,system-ui,-apple-system,Segoe UI,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}.stage a{color:inherit;text-decoration:none}.stage :focus-visible{outline:2px solid var(--lilac);outline-offset:3px;border-radius:2px}.photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:54% 50%;z-index:0;user-select:none;-webkit-user-drag:none;pointer-events:none}.photo.is-placed{inset:auto;object-fit:fill;max-width:none}.photo:not(.is-placed){opacity:0;animation:photo-late 0s 1.2s forwards}@keyframes photo-late{to{opacity:1}}.hero-dim{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}.lift{left:0;right:0;top:0;height:var(--band-h,calc(320 * var(--u)));background:rgba(150,118,104,.3);mix-blend-mode:screen}.lift,.shade{position:absolute;z-index:1;pointer-events:none}.shade{inset:0;background:linear-gradient(0deg,rgba(0,0,0,.78) 0,rgba(0,0,0,.28) 24%,transparent 46%)}.band{position:absolute;left:0;right:0;top:0;z-index:2;display:grid;grid-template-columns:1fr var(--strip-w) 1fr;grid-template-rows:var(--strip-top) calc(var(--strip-w) * 190 / 1280) var(--strip-bot)}.band>span{background:#000;box-shadow:0 0 0 1px #000}.band .band-bot,.band .band-top{grid-column:1/-1}.band h1{grid-column:2;grid-row:2;position:relative;margin:0;overflow:hidden;font-size:0;line-height:0}.band svg{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;display:block}.lid{opacity:0;transform-box:fill-box;transform-origin:50% 0}.nav{position:absolute;top:0;left:0;width:100%;height:var(--strip-top);z-index:4;gap:clamp(16px,1.8vw,28px);padding:0 clamp(22px,3vw,48px)}.nav,.nav-links{display:flex;align-items:stretch}.nav-links{flex:1;min-width:0;height:100%}.nav .col{display:flex;align-items:stretch;gap:clamp(16px,1.8vw,34px);margin:0;padding:0;list-style:none;font-weight:360;font-size:clamp(14px,calc(16 * var(--u)),17px);line-height:1;white-space:nowrap;color:var(--nav)}.nav .col-side{position:relative;margin-left:auto;padding-left:clamp(20px,2.2vw,32px)}.nav .col-side:before{content:"";position:absolute;left:0;top:50%;width:1px;height:22px;margin-top:-11px;background:rgba(255,255,255,.28)}.nav .col a{position:relative;display:inline-flex;align-items:center;height:100%;min-height:44px;letter-spacing:-.03em;transition:color .2s}.nav .col a:after{content:"";position:absolute;left:0;right:0;top:calc(50% + 13px);height:1px;background:var(--lilac);transform:scaleX(0);transform-origin:left center;transition:transform .45s cubic-bezier(.16,1,.3,1)}.nav .col a:hover:after,.nav .col a[aria-current=page]:after{transform:scaleX(1)}.nav .col a:hover,.nav .col a[aria-current=page]{color:#fff}.nav .col a[aria-current=page]{font-weight:520}.nav .col a small{display:none;margin-right:7px;font-family:JBMono,ui-monospace,Menlo,monospace;font-size:9.5px;letter-spacing:.04em;color:var(--lilac);transform:translateY(-4px)}@media (min-width:1360px) and (min-height:538px){.nav .col a small{display:inline}}.tagline{margin:0;font-weight:300;font-size:clamp(12px,calc(13 * var(--u)),13px);line-height:1;letter-spacing:-.03em;color:var(--nav)}.cta,.tagline{align-self:center;flex:none;white-space:nowrap}.cta{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px 0 13px;background:var(--lilac);color:var(--ink);border-radius:2px;transition:filter .15s}.cta b{font-weight:inherit}.cta:hover{filter:brightness(1.06)}.cta:hover svg{transform:translate(1px,1px)}.cta svg{width:9px;height:9px;flex:none;transition:transform .45s cubic-bezier(.16,1,.3,1)}.cta span{font-weight:450;font-size:13.5px;line-height:1;letter-spacing:-.03em}.menu-btn{display:none}.copy{position:absolute;left:var(--frame-x);width:var(--frame-w);bottom:0;z-index:3;display:flex;flex-direction:column;align-items:center;gap:calc(18 * var(--u));padding:calc(12 * var(--u)) calc(24 * var(--u)) calc(34 * var(--u))}.headline{margin:0;font-weight:290;font-size:calc(28.571 * var(--hb));line-height:1.05;letter-spacing:calc(-.896 * var(--hb));word-spacing:calc(5.62 * var(--hb));white-space:nowrap;text-align:center}.codebox{display:flex;flex-direction:column;align-items:center}.codebox,.slots{gap:calc(8 * var(--u))}.slots{position:relative;display:grid;grid-template-columns:repeat(5,calc(46 * var(--u)))}.slot{display:grid;height:calc(54 * var(--u));place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:2px;font-weight:290;font-size:calc(22 * var(--u));line-height:1}.slot.is-on{border-color:var(--lilac)}.slot i{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.28)}.slot-input{position:absolute;inset:0;width:100%;border:0;opacity:0;font-size:16px;cursor:text}.code-meta{min-height:1.2em;margin:0;font-family:JBMono,ui-monospace,Menlo,monospace;font-weight:400;font-size:calc(11.37 * var(--tb));letter-spacing:.04em;color:#fffef7}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}html.is-entering .lid{opacity:1}.lid-cover{opacity:0;pointer-events:none}html.is-entering .lid-cover{opacity:1}html.is-entering :is(.nav .col,.menu-btn,.tagline,.cta,.headline,.codebox){opacity:0}@media (max-height:537.98px),(max-width:1074.98px){.stage{--layout:tablet;--pad:clamp(20px,3.2vw,32px);--nu:1px;--cu:1px;--hb:1px;--tb:1px;--head-h:72px;--strip-top:var(--head-h);--strip-w:min(100vw,calc((100svh - var(--head-h)) * 0.3 * 1280 / 190));--strip-bot:calc(var(--strip-w) * 10 / 1280)}.nav{left:0;width:100%;height:var(--head-h);padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;column-gap:16px}.menu-btn,.nav{align-items:center}.menu-btn{display:inline-flex;justify-self:start;gap:10px;min-height:44px;background:none;border:0;color:var(--nav);font-family:inherit;font-weight:250;font-size:14.286px;line-height:1;letter-spacing:-.04em;cursor:pointer;padding:0 8px 0 0;-webkit-tap-highlight-color:transparent}.menu-btn i{position:relative;display:block;width:18px;height:7px}.menu-btn i:after,.menu-btn i:before{content:"";position:absolute;left:0;right:0;height:1px;background:currentColor;transition:transform .22s ease}.menu-btn i:before{top:0}.menu-btn i:after{bottom:0}.nav.is-open .menu-btn i:before{transform:translateY(3px) rotate(45deg)}.nav.is-open .menu-btn i:after{transform:translateY(-3px) rotate(-45deg)}.tagline{justify-self:center}.cta{justify-self:end;height:36px}.nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 28px;position:absolute;top:calc(var(--strip-top) + var(--strip-w) * 190 / 1280 + var(--strip-bot));left:0;right:0;z-index:5;height:auto;flex:none;padding:12px var(--pad) 16px;background:#000;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .26s cubic-bezier(.2,.7,.2,1),visibility 0s linear .26s}.nav.is-open .nav-links{visibility:visible;clip-path:inset(0);transition:clip-path .26s cubic-bezier(.2,.7,.2,1)}.nav .col,.nav .col-side{position:static;height:auto;align-items:center;margin-left:0;padding-left:0;font-size:15px;line-height:1}.nav .col-side:before{display:none}.nav .col a{height:auto;padding:12px 0}.nav .col a:after{top:auto;bottom:8px}.copy{left:0;width:100%;bottom:calc(18px + env(safe-area-inset-bottom));gap:16px;padding:0 var(--pad)}.headline{white-space:normal;text-wrap:balance;max-width:16em;font-size:28.571px}.slots{grid-template-columns:repeat(5,46px);gap:8px}.slot{height:54px;font-size:22px}.code-meta{font-size:11.37px}}@media (max-width:559.98px){.stage{--layout:mobile;--pad:clamp(14px,4.2vw,22px);--head-h:64px;--tag-row:30px;--cu:min(1px,calc((100vw - 2 * var(--pad) - 88px) / 199.5));--hb:min(1.1px,calc((100vw - 2 * var(--pad)) / 300));--tb:min(1px,calc((100vw - 2 * var(--pad)) / 322));--strip-top:calc(var(--head-h) + var(--tag-row));--strip-w:calc((100vw - 2 * var(--pad)) * 1280 / 1259);--strip-bot:10px}.nav{height:var(--strip-top);grid-template-columns:1fr auto;grid-template-rows:var(--head-h) var(--tag-row);column-gap:12px}.menu-btn{grid-column:1;grid-row:1}.cta{grid-column:2;grid-row:1;width:auto;height:34px;padding:0 12px 0 10px}.cta span{font-size:13px}.tagline{grid-column:1/-1;grid-row:2;align-self:start;justify-self:center;margin-top:2px;font-size:12.5px}.nav-links{gap:2px 18px;padding-bottom:16px}.copy{bottom:calc(max(18px, env(safe-area-inset-bottom)) + 6px);gap:14px}.headline{font-size:calc(28.571 * var(--hb));line-height:1.08;max-width:calc(318 * var(--hb))}.slots{grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,280px);gap:8px}.slot{height:52px;font-size:22px}.lift{background:rgba(150,118,104,.52)}}@media (hover:none){.nav .col a:hover{opacity:1}.cta:hover{filter:none}.cta:hover svg{transform:none}}@media (prefers-reduced-motion:reduce){html.is-entering .lid,html.is-entering .lid-cover{opacity:0}html.is-entering :is(.nav .col,.menu-btn,.tagline,.cta,.headline,.codebox){opacity:1}.menu-btn i:after,.menu-btn i:before,.nav-links,.nav.is-open .nav-links{transition:none}}@media (max-height:537.98px),(max-width:1074.98px){.nav-links{flex-wrap:nowrap;padding:4px var(--pad) 18px}.nav .col,.nav .col-side,.nav-links{flex-direction:column;align-items:stretch;gap:0}.nav .col,.nav .col-side{white-space:normal}.nav .col-side{margin-top:10px}.nav .col a{display:flex;align-items:baseline;gap:12px;width:100%;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:19px;font-weight:300;letter-spacing:-.035em;color:#fff}.nav .col-side a{font-size:15px;color:var(--nav);border-bottom:0;padding:10px 0}.nav .col a small{display:inline;margin:0;transform:none}.nav .col a:after{display:none}}.nav .col-side .nav-lang{display:flex;align-items:center}.nav .col-side .nav-lang a{height:auto;min-height:32px;font-size:11px}.nav .col-side .nav-lang a:after,.vl-loader{display:none}html.is-loading .vl-loader{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(22px,3vw,36px);background:#000;clip-path:inset(0 0 0 0);transition:clip-path .9s cubic-bezier(.76,0,.24,1)}html.is-loaded .vl-loader{clip-path:inset(0 0 100% 0)}.vl-word,html.is-loading{overflow:hidden}.vl-word{display:flex;margin:0;font-family:Hanken,sans-serif;font-weight:860;font-size:clamp(64px,15vw,210px);line-height:.9;letter-spacing:-.02em;color:#fff}.vl-word span{display:inline-block;transform:translateY(105%);animation:vl-rise .9s cubic-bezier(.16,1,.3,1) forwards}html.is-loaded .vl-word span{animation:vl-out .6s cubic-bezier(.76,0,.24,1) forwards;animation-delay:0s!important}.vl-boxes{display:flex;gap:10px;margin:0}.vl-boxes i{width:26px;height:34px;border-radius:3px;border:1px solid rgba(255,255,255,.22);animation:vl-box 1.6s ease-in-out infinite}@keyframes vl-rise{to{transform:translateY(0)}}@keyframes vl-out{0%{transform:translateY(0)}to{transform:translateY(-105%)}}@keyframes vl-box{0%,to{border-color:rgba(255,255,255,.22);background:transparent;box-shadow:none}35%,60%{border-color:#dec1fc;background:rgba(222,193,252,.16);box-shadow:0 0 18px -4px rgba(222,193,252,.8)}}.stage.has-dock .nav{display:none}@media (max-width:559.98px){.stage:is(.is-fan,.has-dock){--strip-top:74px;--strip-bot:18px;--strip-w:calc(100vw - 24px)}.stage:is(.is-fan,.has-dock) .band{grid-template-rows:var(--strip-top) 38vw var(--strip-bot)}.stage:is(.is-fan,.has-dock) .band h1 svg{left:calc(-100% * 44 / 1192);top:calc(-100% * 16 / 152);width:calc(100% * 1280 / 1192);height:calc(100% * 190 / 152)}.stage:is(.is-fan,.has-dock) .band>span{box-shadow:0 0 0 3px #000}.stage.has-dock{--strip-top:max(74px,calc(45svh - 18px - 38vw));--strip-bot:18px}.stage.is-fan{--strip-top:max(74px,calc(45svh - 38vw));--strip-bot:0px}.stage.is-fan .band .band-bot,.stage.is-fan .lift{display:none}.stage.is-fan .band>span{clip-path:inset(-3px -3px 0 -3px)}.stage.is-fan .band h1 svg{top:calc(-100% * 16 / 146);height:calc(100% * 190 / 146)}}