@font-face{font-family:Plex Sans;src:url(/assets/fonts/IBMPlexSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Plex Sans;src:url(/assets/fonts/IBMPlexSans-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Plex Mono;src:url(/assets/fonts/IBMPlexMono-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Plex Mono;src:url(/assets/fonts/IBMPlexMono-Medium.ttf) format("truetype");font-weight:500;font-display:swap}:root{--bg: #000000;--panel: #0a0a0c;--panel-alt: #111114;--line: #232328;--line-2: #3a3a42;--fg: #f0f0f3;--fg-2: #ababb2;--fg-3: #6c6c74;--fg-4: #4a4a52;--ok: #6cc98a;--accent: #a55cff;--on-accent: #ffffff;--accent-faint: color-mix(in srgb, var(--accent) 8%, transparent);--accent-ink: var(--accent);--logo-flip: none;--sans: "Plex Sans", ui-sans-serif, system-ui, sans-serif;--mono: "Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter: clamp(20px, 5vw, 56px);--wide: 1180px;--rhythm: clamp(72px, 11vh, 128px)}:root[data-mode=light]{--bg: #eaeaec;--panel: #fbfbfc;--panel-alt: #f1f1f3;--line: #dadade;--line-2: #bcbcc2;--fg: #18181c;--fg-2: #4c4c54;--fg-3: #8a8a92;--fg-4: #8f8f97;--ok: #1f9d57;--accent: #7c3aed;--accent-ink: color-mix(in srgb, var(--accent) 58%, #140f22);--logo-flip: invert(1)}*,*:before,*:after{box-sizing:border-box}:root.booting *,:root.booting *:before,:root.booting *:after{transition:none!important}body{margin:0;background:var(--bg);color:var(--fg-2);font:400 clamp(.95rem,.9rem + .2vw,1.0625rem)/1.65 var(--sans);-webkit-font-smoothing:antialiased;transition:background-color .3s ease,color .3s ease}img,video{max-width:100%;height:auto;display:block}a{color:var(--fg);text-decoration-color:var(--line-2);text-underline-offset:3px}a:hover{text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hero{max-width:var(--wide);margin:0 auto;padding:clamp(64px,13vh,132px) var(--gutter) clamp(32px,5vh,52px)}.hero__title{margin:0 0 clamp(28px,4vw,44px);font:500 clamp(3rem,2rem + 4vw,4.5rem)/1 var(--mono);letter-spacing:-.055em;color:var(--fg)}.hero__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}.lede{margin:0;font-size:1.05em;max-width:46ch}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.hero__note{margin:16px 0 0;font:400 .78rem/1.6 var(--mono);color:var(--fg-4)}@media(max-width:780px){.hero__body{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;gap:9px;font:500 .86rem var(--mono);letter-spacing:-.01em;text-decoration:none;padding:12px 18px;border-radius:7px;border:1px solid var(--line-2);color:var(--fg);background:transparent;transition:border-color .16s ease,background-color .16s ease}.btn:hover{border-color:var(--fg-3);background:var(--panel-alt)}.btn__icon{width:15px;height:15px;flex:none}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);transition:background-color .3s ease,border-color .3s ease,filter .16s ease}.btn--primary:hover{filter:brightness(1.08);background:var(--accent);border-color:var(--accent)}.showcase{max-width:var(--wide);margin:0 auto;padding:0 var(--gutter) var(--rhythm);position:relative}.showcase:before{content:"";position:absolute;z-index:0;left:8%;right:8%;top:6%;height:60%;background:var(--accent);opacity:.16;filter:blur(110px);transition:background-color .35s ease;pointer-events:none}:root[data-mode=light] .showcase:before{opacity:.2}.themectl{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-bottom:14px}.swatches{display:flex;gap:3px}.swatch{width:24px;height:24px;padding:0;border-radius:50%;display:grid;place-items:center;border:2px solid transparent;background:none;cursor:pointer;transition:border-color .15s ease}.swatch:after{content:"";width:14px;height:14px;border-radius:50%;background:var(--s);transition:transform .15s ease}.swatch:hover:after{transform:scale(1.14)}.swatch[aria-pressed=true]{border-color:var(--s)}.mode{margin-left:auto;font:400 .74rem var(--mono);color:var(--fg-3);cursor:pointer;background:transparent;border:1px solid var(--line);padding:4px 12px;border-radius:6px;letter-spacing:.02em}.mode:hover{color:var(--fg);border-color:var(--line-2)}.stage{position:relative;z-index:1;border-radius:10px;overflow:hidden;box-shadow:0 30px 90px -30px #000c}:root[data-mode=light] .stage{box-shadow:0 30px 80px -34px #281e4666}#shot{width:100%;transition:opacity .22s ease}#shot.is-swapping{opacity:0}.showcase__cap{position:relative;z-index:1;margin:13px 2px 0;display:flex;flex-wrap:wrap;gap:10px;font:400 .76rem var(--mono);color:var(--fg-4)}#theme-label{margin-left:auto;color:var(--accent-ink);transition:color .3s ease}@media(max-width:700px){#theme-label{margin-left:0}.themectl{flex-wrap:wrap}.mode{margin-left:0}}.section{max-width:var(--wide);margin:0 auto var(--rhythm);padding:0 var(--gutter)}.section--last{margin-bottom:clamp(48px,8vh,96px)}.section__note{margin:-8px 0 26px;font:400 .78rem var(--mono);color:var(--fg-4)}.section__title{margin:0 0 22px;padding-bottom:20px;border-bottom:1px solid var(--line);font:500 clamp(1.35rem,1rem + 1.3vw,1.9rem)/1.1 var(--mono);letter-spacing:-.045em;color:var(--fg)}.tabs{display:flex;gap:4px;margin-bottom:18px;flex-wrap:wrap}.tab{font:400 .8rem var(--mono);letter-spacing:.02em;cursor:pointer;background:transparent;border:1px solid transparent;color:var(--fg-3);padding:6px 14px;border-radius:6px;transition:color .16s ease,background-color .16s ease}.tab:hover{color:var(--fg)}.tab[aria-selected=true]{color:var(--accent-ink);background:var(--accent-faint);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.panel[hidden]{display:none}.figure{margin:0}.figure__media{width:100%;border-radius:9px}.figure__cap{margin:11px 2px 0;font:400 .76rem var(--mono);color:var(--fg-4)}.sys{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}.sys__cell{background:var(--bg);display:flex;align-items:center;justify-content:center;min-height:116px;padding:20px}.sys__link{display:flex;text-decoration:none}.sys__logo{width:100%;height:var(--h, 30px);object-fit:contain;filter:var(--logo-flip);opacity:.38;transition:opacity .2s ease}.sys__cell:hover .sys__logo{opacity:.62}.is-live .sys__logo,.is-live:hover .sys__logo{filter:none;opacity:1}@media(max-width:780px){.sys{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.sys__cell{min-height:92px;padding:14px}.sys__logo{height:calc(var(--h, 30px) * .78)}}.stills{margin:34px 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.stills figure{margin:0}.stills img{width:100%;image-rendering:pixelated;border:1px solid var(--line);border-radius:5px;background:#000}.stills figcaption{margin-top:7px;font:400 .68rem var(--mono);color:var(--fg-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.stills{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:460px){.stills{grid-template-columns:repeat(2,minmax(0,1fr))}}.reveal{opacity:0;transform:translateY(14px)}.reveal.is-in{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}@media(prefers-reduced-motion:reduce){.reveal,.reveal.is-in{opacity:1;transform:none;transition:none}#shot,.swatch,.swatch:after,.btn{transition:none}.swatch:hover:after{transform:none}}
