@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-mono-latin-400-normal-DTRLJnHl.woff2)format("woff2"),url(/assets/geist-mono-latin-400-normal-B2yvC1Cq.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-mono-latin-500-normal-YINYabwD.woff2)format("woff2"),url(/assets/geist-mono-latin-500-normal-D-GG86Jb.woff)format("woff")}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter Display;src:url(/fonts/InterDisplay-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter Display;src:url(/fonts/InterDisplay-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter Display;src:url(/fonts/InterDisplay-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@property --angle{syntax:"<angle>";inherits:false;initial-value:0deg}:root{--s-orange:#ff9f0a;--s-pink:#ff375f;--s-purple:#bf5af2;--s-indigo:#5e5ce6;--s-blue:#0a84ff;--s-cyan:#64d2ff;--spectrum:var(--s-orange), var(--s-pink), var(--s-purple), var(--s-indigo), var(--s-blue), var(--s-cyan), var(--s-orange);--positive:#06c167;--warning:#ffb020;--accent:#276ef1;--font-display:"Inter Display", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-text:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease-emph:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.215, .61, .355, 1);--ease-back:cubic-bezier(.175, .885, .32, 1.275);--ease-expo:cubic-bezier(.16, 1, .3, 1);--gutter:max(clamp(20px, 4vw, 64px), env(safe-area-inset-left,0px), env(safe-area-inset-right,0px));--maxw:1440px;--nav-h:72px;--radius-sheet:clamp(28px, 3.4vw, 48px)}[data-theme=dark],:root{--bg:#000;--fg:#fff;--fg-2:#a6a6a6;--fg-3:#8e8e93;--surface:#0e0e0f;--surface-2:#161616;--surface-3:#262626;--raised:#1c1c1c;--sep:#ffffff1a;--sep-strong:#ffffff2e;--inverse:#fff;--on-inverse:#000;--accent-t:#5b91f5;--positive-t:#06c167}[data-theme=light]{--bg:#fff;--fg:#000;--fg-2:#5e5e5e;--fg-3:#6e6e73;--surface:#f3f3f3;--surface-2:#ededed;--surface-3:#e8e8e8;--raised:#fff;--sep:#e6e6e6;--sep-strong:#d4d4d4;--inverse:#000;--on-inverse:#fff;--accent-t:#276ef1;--positive-t:#05944f}[data-theme]{color:var(--fg)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}body{color:var(--fg);font-family:var(--font-text);letter-spacing:-.009em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern", "liga", "calt";background:#000;margin:0;font-size:16.5px;line-height:1.55;overflow-x:clip}img,svg,video,canvas{max-width:100%;display:block}:where(img[width][height]){height:auto}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p,ol,ul,figure,blockquote{margin:0}ol,ul{padding:0;list-style:none}::selection{background:color-mix(in srgb, var(--accent) 30%, transparent)}:focus-visible{outline:2px solid var(--accent-t);outline-offset:3px;border-radius:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nw{white-space:nowrap}.skip{z-index:200;color:#000;transition:transform .3s var(--ease-emph);background:#fff;border-radius:999px;padding:10px 16px;font-weight:600;position:fixed;top:16px;left:16px;transform:translateY(-200%)}.skip:focus{transform:none}.container{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(88px,10.5vw,156px);position:relative}.display,.h-xxl,.h-xl,.h-l,.h-m,.h-s{font-family:var(--font-display);color:var(--fg);font-feature-settings:"kern", "liga", "calt";font-weight:700}h1,h2,h3,h4,.display,.h-xxl,.h-xl,.h-l,.h-m,.h-s{text-wrap:balance}p,li,dd,figcaption,caption,blockquote{text-wrap:pretty}.h-xxl{letter-spacing:-.048em;font-size:clamp(48px,8.2vw,144px);line-height:.95}.h-xl{letter-spacing:-.042em;font-size:clamp(40px,5.4vw,92px);line-height:1}.h-l{letter-spacing:-.036em;font-size:clamp(32px,3.6vw,60px);line-height:1.04}.h-m{letter-spacing:-.026em;font-size:clamp(24px,2.2vw,34px);line-height:1.12}.h-s{letter-spacing:-.018em;font-size:clamp(19px,1.45vw,22px);font-weight:600;line-height:1.25}.lead{letter-spacing:-.012em;color:var(--fg-2);max-width:38em;font-size:clamp(18px,1.4vw,22px);line-height:1.5}.body-l{color:var(--fg-2);font-size:clamp(17px,1.2vw,19px);line-height:1.55}.muted{color:var(--fg-2)}.faint{color:var(--fg-3)}.tnum{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:10px;font-size:12px;font-weight:500;display:inline-flex}.eyebrow .idx{color:var(--fg)}.eyebrow .idx:after{content:"";vertical-align:middle;background:var(--sep-strong);width:28px;height:1px;margin-left:10px;display:inline-block}.mono{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.btn{--h:56px;height:var(--h);font-family:var(--font-display);letter-spacing:-.012em;white-space:nowrap;transition:transform .26s var(--ease-back), background-color .3s var(--ease-out), color .3s var(--ease-out), box-shadow .3s var(--ease-out), opacity .2s;-webkit-tap-highlight-color:transparent;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:17px;font-weight:600;display:inline-flex;position:relative}.btn:active{opacity:.88;transition-duration:90ms;transform:scale(.97)}.btn svg{width:18px;height:18px;transition:transform .4s var(--ease-expo)}.btn:hover svg.i-arrow{transform:translate(3px)}.btn--primary{background:var(--inverse);color:var(--on-inverse)}.btn--primary:hover{box-shadow:0 0 0 6px color-mix(in srgb, var(--inverse) 12%, transparent)}.btn--ghost{background:color-mix(in srgb, var(--fg) 8%, transparent);color:var(--fg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--fg) 12%, transparent);-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%)}.btn--ghost:hover{background:color-mix(in srgb, var(--fg) 14%, transparent)}.btn--sm{--h:40px;padding:0 18px;font-size:15px}@media (pointer:coarse){.btn--sm{--h:44px}}.link-arrow{min-height:24px;color:var(--fg);align-items:center;gap:8px;font-weight:500;display:inline-flex}.link-arrow svg{width:16px;height:16px;transition:transform .4s var(--ease-expo)}.link-arrow:hover svg{transform:translate(2px,-2px)}.chip{height:28px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);background:color-mix(in srgb, var(--fg) 6%, transparent);box-shadow:inset 0 0 0 1px var(--sep);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:11px;font-weight:500;display:inline-flex}@media (max-width:760px),(pointer:coarse){.chip{font-size:12px}}.dot{background:var(--fg-3);border-radius:50%;flex:none;width:7px;height:7px}.dot--live{background:var(--positive);animation:live 2.4s var(--ease-out) infinite;box-shadow:0 0 #06c16780}.dot--dev{background:var(--warning);animation:1.6s ease-in-out infinite pulse}.dot--ship{background:var(--positive-t)}@keyframes live{0%{box-shadow:0 0 #06c16773}70%,to{box-shadow:0 0 0 8px #06c16700}}@keyframes pulse{50%{opacity:.35}}.shimmer{background:linear-gradient(100deg, var(--fg-3) 20%, var(--fg) 45%, var(--fg-3) 70%);color:#0000;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;animation:1.5s linear infinite shimmer}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-130% 0}}.glow-frame{isolation:isolate;position:relative}.glow-frame:before,.glow-frame:after{content:"";border-radius:inherit;background:conic-gradient(from var(--angle), var(--spectrum));-webkit-mask-composite:xor;opacity:0;transition:opacity .52s var(--ease-out);pointer-events:none;padding:1.5px;animation:3.2s linear infinite paused spin-angle;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.glow-frame:after{filter:blur(8px);z-index:-1;padding:5px}.glow-frame.is-active:before,.glow-frame.is-active:after{animation-play-state:running}.glow-frame.is-active:before{opacity:1}.glow-frame.is-active:after{opacity:.55}@keyframes spin-angle{to{--angle:360deg}}.css-orb{background:#f4f1ff;border-radius:50%;flex:none;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff80}.css-orb:before{content:"";background:radial-gradient(circle at 30% 70%,#ff9f0a 0%,#0000 42%),radial-gradient(circle at 70% 30%,#bf5af2 0%,#0000 45%),radial-gradient(circle at 72% 72%,#64d2ff 0%,#0000 42%),radial-gradient(circle at 45% 45%,#5e5ce6 0%,#0000 48%),radial-gradient(circle at 30% 35%,#ff375f 0%,#0000 44%);animation:9s linear infinite orb-drift;position:absolute;inset:-25%}.css-orb:after{content:"";background:radial-gradient(circle at 28% 22%,#ffffffbf,#fff0 60%);border-radius:50%;position:absolute;inset:0}.css-orb--violet:before{background:radial-gradient(circle at 30% 70%,#ff7ab6 0%,#0000 42%),radial-gradient(circle at 70% 30%,#bf5af2 0%,#0000 45%),radial-gradient(circle at 72% 72%,#7d5cff 0%,#0000 42%),radial-gradient(circle at 45% 45%,#5e5ce6 0%,#0000 48%),radial-gradient(circle at 30% 35%,#ff375f 0%,#0000 44%)}.css-orb--ocean:before{background:radial-gradient(circle at 30% 70%,#30d5c8 0%,#0000 42%),radial-gradient(circle at 70% 30%,#0a84ff 0%,#0000 45%),radial-gradient(circle at 72% 72%,#64d2ff 0%,#0000 42%),radial-gradient(circle at 45% 45%,#3b6cff 0%,#0000 48%),radial-gradient(circle at 30% 35%,#5e5ce6 0%,#0000 44%)}.css-orb.is-busy:before{animation-duration:2.2s}@keyframes orb-drift{to{transform:rotate(360deg)}}.orb-host{position:relative}.orb-fallback{display:none}.no-gl .orb-fallback{width:calc(var(--orb-r,.5) * 100%);aspect-ratio:1;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 80px 10px #8e7cff59}.orb-canvas{z-index:40;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.phone{--w:min(340px, calc(100vw - 2 * var(--gutter)));width:var(--w);padding:calc(var(--w) * .032);border-radius:calc(var(--w) * .155);box-shadow:inset 0 0 0 1px #ffffff24, inset 0 0 0 calc(var(--w) * .012) #050505, 0 0 0 1px #0009, 0 50px 100px -30px #00000073, 0 30px 60px -40px #3c288c59;background:linear-gradient(150deg,#3a3a40 0%,#1a1a1d 18%,#0b0b0c 50%,#1d1d21 82%,#45454c 100%);position:relative}.phone:before,.phone:after{content:"";right:calc(var(--w) * -.009);width:calc(var(--w) * .011);background:linear-gradient(90deg,#2a2a2e,#4a4a52);border-radius:0 3px 3px 0;position:absolute}.phone:before{height:9%;top:22%}.phone:after{height:15%;top:34%}.phone__screen{aspect-ratio:1080/2392;border-radius:calc(var(--w) * .125);isolation:isolate;background:#fff;position:relative;overflow:hidden;transform:translateZ(0)}.phone__screen>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.phone__screen:after{content:"";aspect-ratio:1;z-index:5;background:radial-gradient(circle at 35% 35%,#26262c,#050505 60%);border-radius:50%;width:3.4%;position:absolute;top:1.55%;left:50%;transform:translate(-50%);box-shadow:0 0 0 1.5px #000}.js [data-reveal]{opacity:0;transform:translateY(24px)}.js .is-revealed[data-reveal],.reduced-motion [data-reveal]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.line-mask{margin:-.08em -.16em -.2em;padding:.08em .16em .2em}.store-btns{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:inline-flex}.store-btns .btn{white-space:nowrap}.nav__cta.store-btns{flex-wrap:nowrap;gap:8px}.menu__foot .store-btns{gap:10px;width:100%;display:grid}.menu__foot .store-btns .btn{width:100%}@media (max-width:720px){.hero__ctas>.store-btns,.p-hero__ctas>.store-btns,.doc-cta .store-btns{display:contents}.access__inner .store-btns{gap:10px;width:min(100%,340px);display:grid}.access__inner .store-btns .btn{width:100%}}.nav{z-index:50;height:var(--nav-h);color:var(--fg);transition:transform .6s var(--ease-expo), color .4s var(--ease-out);position:fixed;inset:0 0 auto}.nav:before{content:"";background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(22px)saturate(180%);backdrop-filter:blur(22px)saturate(180%);box-shadow:inset 0 -1px 0 var(--sep);opacity:0;transition:opacity .5s var(--ease-out), background-color .4s var(--ease-out);position:absolute;inset:0}.nav.is-scrolled:before,.nav[data-menu=open]:before{opacity:1}.nav.is-hidden{transform:translateY(-100%)}.nav__inner{max-width:var(--maxw);height:100%;padding:0 var(--gutter);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:0 auto;display:grid;position:relative}.nav__brand{justify-self:start;align-items:center;gap:10px;display:flex}.nav__orb{width:22px;height:22px}.nav__word{font-family:var(--font-display);letter-spacing:-.045em;font-size:22px;font-weight:700}.nav__si{border-left:1px solid var(--sep-strong);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);margin-left:2px;padding-left:10px;font-size:11px;line-height:14px}.nav__links{gap:26px;font-size:14.5px;font-weight:500;display:flex}.nav__links a{color:var(--fg-2);transition:color .25s;position:relative}.nav__links a:hover,.nav__links a.is-current{color:var(--fg)}.nav__links a.is-current:after{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)}.nav__actions{justify-self:end;align-items:center;gap:10px;display:flex}.nav__menu{background:color-mix(in srgb, var(--fg) 8%, transparent);border-radius:50%;place-items:center;width:44px;height:44px;display:none}.nav__menu svg{width:22px;height:22px}@media (max-width:1180px){.nav__links{display:none}.nav__inner{grid-template-columns:1fr auto}.nav__menu{display:grid}.nav__si{font-size:12px}}@media (max-width:560px){.nav__si,.nav__cta{display:none}}.menu{z-index:45;padding:calc(var(--nav-h) + 12px) var(--gutter) max(24px, env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;color:#fff;background:#000;flex-direction:column;justify-content:space-between;gap:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.menu[hidden]{display:none}body:has(>.menu:not([hidden]))>.progress{visibility:hidden}.menu__links{display:grid}.menu__links a{font-family:var(--font-display);letter-spacing:-.04em;border-bottom:1px solid var(--sep);align-items:baseline;gap:16px;padding:max(6px,1.1vh) 0;font-size:clamp(26px,min(10vw,6vh),56px);font-weight:700;line-height:1.05;display:flex}@supports (height:1svh){.menu__links a{padding:max(6px,1.1svh) 0;font-size:clamp(26px,min(10vw,6svh),56px)}}.menu__links .mono{min-width:2.2ch;color:var(--fg-3);letter-spacing:.06em;flex:none;font-size:12px}.menu__links a[aria-current] .mono{color:var(--fg)}.menu__links a[aria-current]:after{content:"";background:currentColor;border-radius:50%;flex:none;align-self:center;width:7px;height:7px;margin-left:auto}.menu__more{flex-wrap:wrap;column-gap:28px;margin-top:6px;display:flex}.menu__more a{min-height:44px;font-family:var(--font-display);letter-spacing:-.015em;color:var(--fg-2);align-items:center;font-size:19px;font-weight:600;transition:color .25s;display:inline-flex}.menu__more a:hover,.menu__more a[aria-current]{color:var(--fg)}.menu__foot{gap:16px;display:grid}.menu__foot .btn{width:100%}@media (min-width:561px){.menu__foot .btn{display:none}}@media (max-height:640px) and (max-width:560px){.menu{padding-top:calc(var(--nav-h) + 4px);gap:16px}.menu__links a{padding:6px 0;font-size:clamp(24px,5.4svh,34px)}.menu__foot{gap:12px}}@media (max-height:520px) and (min-width:561px){.menu{padding-top:calc(var(--nav-h) + 4px);gap:12px}.menu__links{grid-template-rows:repeat(3,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;column-gap:32px}.menu__links a{padding:8px 0;font-size:clamp(22px,7.5vh,34px)}.menu__more{margin-top:2px}}.menu__status{flex-wrap:wrap;align-items:center;gap:2px 22px;display:flex;overflow:clip}.menu__status>span:not(.dot){margin-left:-22px;padding-left:22px;position:relative}.menu__status>span:not(.dot):before{content:"·";content:"·" / "";text-align:center;width:22px;position:absolute;left:0}.menu__status>.dot+span{margin-left:-12px;padding-left:0}.menu__status>.dot+span:before{content:none}.section-head{gap:24px;max-width:980px;margin-bottom:clamp(56px,7vw,104px);display:grid}.section-head .h-xl{max-width:13.5em}.section-head--wide{max-width:none}.section-head--wide .h-xl{max-width:17em}.section-head--split{grid-template-columns:1.3fr 1fr;align-items:end;gap:48px;max-width:none}.section-head--split>div{gap:24px;display:grid}@media (max-width:900px){.section-head--split{grid-template-columns:1fr}}.hero__ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:4px;display:flex}.footer{z-index:3;color:var(--fg);background:#000;padding-top:clamp(64px,8vw,120px);position:relative;overflow:clip}.footer__top{border-bottom:1px solid var(--sep);grid-template-columns:minmax(240px,400px) 1fr;gap:48px;padding-bottom:56px;display:grid}@media (max-width:1180px){.footer__top{grid-template-columns:1fr}}.footer__line{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;font-size:clamp(28px,3vw,44px);font-weight:700;line-height:1.05}.footer__cols{grid-template-columns:repeat(4,minmax(130px,1fr));gap:40px 32px;display:grid}@media (max-width:1180px){.footer__cols{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (max-width:560px){.footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}}.footer__brand{align-content:start;gap:16px;max-width:400px;display:grid}.footer__sub{font-size:14.5px;line-height:1.5}@media (max-width:760px){.footer__sub{font-size:15px}}.footer__cols div{align-content:start;gap:6px;display:grid}.footer__cols .mono{margin-bottom:9px}.footer__cols a{color:var(--fg-2);text-wrap:balance;padding-block:3px;font-size:15px;line-height:1.55;transition:color .25s}.footer__cols a:hover{color:var(--fg)}.footer__bottom{flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding:28px 0;font-size:13.5px;display:flex}.footer__privacy{align-items:flex-start;gap:8px;display:inline-flex}.footer__privacy svg{flex:none;width:12px;height:12px;margin-top:calc(.775em - 6px)}.footer__word{height:.74em;font-family:var(--font-display);letter-spacing:-.065em;-webkit-user-select:none;user-select:none;justify-content:center;margin-top:clamp(8px,2vw,32px);font-size:clamp(120px,31vw,520px);font-weight:700;line-height:.82;display:flex}.footer__word span{background:linear-gradient(#1e1e20 0%,#0a0a0a 70%);color:#0000;-webkit-background-clip:text;background-clip:text;padding-inline:.08em;display:block}.nav.is-switching,.nav.is-switching:before,.nav.is-switching *{transition:none!important}.nav,.menu,.footer{-webkit-tap-highlight-color:transparent}.nav a:active,.nav button:active,.menu a:active,.footer a:active{opacity:.6}body[data-theme=light]{color:#000;background:#fff}.progress{z-index:60;pointer-events:none;height:2px;position:fixed;inset:0 0 auto}.progress i{background:linear-gradient(90deg, var(--spectrum));height:100%;transform:scaleX(var(--p,0));transform-origin:0;display:block}.masthead{padding:calc(var(--nav-h) + clamp(24px, 4vw, 56px)) var(--gutter) clamp(64px, 8vw, 112px);text-align:center;border-bottom:1px solid var(--sep);justify-items:center;display:grid;position:relative;overflow:clip}.masthead__orb,.masthead .orb-host{--s:clamp(220px, 26vw, 360px);width:var(--s);aspect-ratio:1;margin-bottom:calc(var(--s) * -.12)}.masthead__inner{justify-items:center;gap:22px;max-width:1100px;display:grid;position:relative}.masthead__title{max-width:11em;font-size:clamp(40px,6.4vw,104px)}.masthead__lead{max-width:32em}.masthead__meta{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}:root{--doc-gap:clamp(32px, 9vw, 168px);--doc-w:calc(260px + var(--doc-gap) + 720px);--doc-free:max(0px, (min(100vw, var(--maxw)) - 2 * var(--gutter) - var(--doc-w)) / 2)}.doc{max-width:var(--maxw);padding:clamp(56px, 7vw, 104px) var(--gutter) clamp(80px, 10vw, 140px);justify-content:center;gap:var(--doc-gap);grid-template-columns:minmax(200px,260px) minmax(0,720px);margin:0 auto;display:grid}@media (max-width:960px){.doc{grid-template-columns:minmax(0,1fr)}.toc{display:none}}.doc>*,.p-req__grid>*,.p-two>*,.p-hero__grid>*,.cards>*{min-width:0}.toc{top:calc(var(--nav-h) + 40px);transition:opacity .4s var(--ease-out);align-self:start;position:sticky}.toc.is-shy{opacity:0;pointer-events:none}.toc__title{margin-bottom:18px}.toc ol{border-left:1px solid var(--sep);gap:2px;display:grid}.toc a{color:var(--fg-3);text-wrap:balance;transition:color .3s var(--ease-out);gap:12px;padding:8px 0 8px 18px;font-size:14.5px;display:flex;position:relative}.toc a .mono{flex:none;min-width:2.2ch;padding-top:3px;font-size:11px}@media (pointer:coarse){.toc a .mono{font-size:12px}}.toc a:before{content:"";background:var(--fg);width:2px;transition:transform .5s var(--ease-expo);border-radius:1px;position:absolute;top:6px;bottom:6px;left:-1px;transform:scaleY(0)}.toc a:hover{color:var(--fg-2)}.toc a.is-current{color:var(--fg)}.toc a.is-current:before{transform:scaleY(1)}.toc-m{display:none}@media (max-width:960px){.doc:has(>.toc-m){padding-top:32px}.toc-m{border-block:1px solid var(--sep);display:block}.toc-m summary{cursor:pointer;min-height:52px;color:var(--fg);align-items:center;gap:12px;list-style:none;display:flex}.toc-m summary::-webkit-details-marker{display:none}.toc-m__t{font-family:var(--font-display);letter-spacing:-.012em;font-size:17px;font-weight:600}.toc-m__n{color:var(--fg-3);margin-left:auto}.toc-m summary:after{content:"";width:8px;height:8px;transition:transform .3s var(--ease-out);border-bottom:1.6px solid;border-right:1.6px solid;flex:none;margin:-4px 4px 0 0;transform:rotate(45deg)}.toc-m[open] summary:after{margin-top:4px;transform:rotate(-135deg)}.toc-m ol{border-top:1px solid var(--sep);padding:0 0 12px;display:grid}.toc-m a{color:var(--fg-2);text-wrap:balance;gap:12px;padding:11px 0;font-size:15.5px;line-height:1.4;display:flex}.toc-m a:hover{color:var(--fg)}.toc-m a .mono{min-width:2.2ch;color:var(--fg-3);flex:none;padding-top:3px}}.prose{color:#262626;font-size:clamp(17px,1.25vw,19px);line-height:1.68}.prose section{scroll-margin-top:calc(var(--nav-h) + 24px)}.prose section+section{margin-top:clamp(72px,8vw,112px)}.prose__num{color:var(--fg-3);margin-bottom:14px}.prose h2{font-family:var(--font-display);letter-spacing:-.035em;color:#000;margin-bottom:28px;font-size:clamp(30px,3vw,46px);font-weight:700;line-height:1.06}.prose h3{font-family:var(--font-display);letter-spacing:-.018em;color:#000;font-size:clamp(19px,1.5vw,22px);font-weight:600;line-height:1.25}.prose p+p{margin-top:1.1em}.prose strong{color:#000;font-weight:600}.prose a{text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--sep-strong);text-decoration-color:var(--sep-strong)}.prose__lede{font-family:var(--font-display);letter-spacing:-.022em;color:#000;margin-bottom:1.2em;font-size:clamp(22px,2vw,30px);font-weight:600;line-height:1.28}.pull{border-left:2px solid #0000;border-image:linear-gradient(180deg, var(--s-orange), var(--s-pink), var(--s-purple), var(--s-indigo)) 1;font-family:var(--font-display);letter-spacing:-.028em;color:#000;margin:1.6em 0;padding:.2em 0 .2em 28px;font-size:clamp(24px,2.3vw,34px);font-weight:600;line-height:1.2}.prose__list{counter-reset:n;gap:14px;margin:1.4em 0;display:grid}.prose__list li{counter-increment:n;padding-left:40px;position:relative}.prose__list li:before{content:counter(n, decimal-leading-zero);font-family:var(--font-mono);color:var(--fg-3);font-size:12px;position:absolute;top:.32em;left:0}.prose__bullets{gap:14px;margin-top:1.2em;display:grid}.prose__bullets li{padding-left:24px;position:relative}.prose__bullets li:before{content:"";background:conic-gradient(var(--spectrum));border-radius:50%;width:7px;height:7px;position:absolute;top:.72em;left:2px}.layers-doc{grid-template-columns:repeat(3,1fr);gap:12px;margin:1.6em 0;display:grid}@media (max-width:720px){.layers-doc{grid-template-columns:1fr}}.layers-doc>div{background:var(--surface);border-radius:20px;align-content:start;gap:8px;padding:22px;font-size:15.5px;line-height:1.55;display:grid}.commit-list{border-bottom:1px solid var(--sep);margin-top:1.6em;display:grid}.commit-list li{border-top:1px solid var(--sep);grid-template-columns:48px 1fr;gap:8px;padding:26px 0;display:grid}.commit-list .mono{color:var(--fg-3);padding-top:6px}.commit-list h3{margin-bottom:6px}.commit-list p{color:var(--fg-2);font-size:16.5px}.lines{border-bottom:1px solid var(--sep);gap:0;display:grid}.lines li{border-top:1px solid var(--sep);font-family:var(--font-display);letter-spacing:-.015em;color:#000;padding:18px 0 18px 36px;font-size:clamp(18px,1.4vw,21px);font-weight:600;line-height:1.35;position:relative}.lines li:before,.lines li:after{content:"";background:#e11900;border-radius:1px;width:14px;height:2px;position:absolute;top:calc(18px + .68em);left:4px;transform:rotate(45deg)}.lines li:after{transform:rotate(-45deg)}.signoff{font-family:var(--font-display);color:#000;letter-spacing:-.012em;font-weight:600;margin-top:2.2em!important}.doc-cta{color:#fff;background:#000;border-radius:28px;justify-items:start;gap:14px;margin-top:clamp(64px,8vw,104px);padding:clamp(28px,4vw,44px);display:grid}.lic{border-bottom:1px solid var(--sep);gap:0;margin-top:1.2em;display:grid}.lic li{border-top:1px solid var(--sep);grid-template-columns:1fr auto;gap:4px 24px;padding:22px 0;display:grid}.lic h3{grid-column:1}.lic .mono{color:var(--fg-2);grid-area:1/2;align-self:center}.lic p{color:var(--fg-2);grid-column:1/-1;font-size:15.5px}.cards{gap:clamp(28px,3vw,40px) 20px;display:grid}.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1000px){.cards--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.cards--3{grid-template-columns:1fr}}.card{color:var(--fg);align-content:start;gap:18px;display:grid}.card[hidden]{display:none}.card__media{aspect-ratio:16/9;isolation:isolate;background:#0b0b0c;border-radius:20px;position:relative;overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease-expo)}.card__media--tint-1 img{filter:hue-rotate(-42deg)saturate(1.08)}.card__media--tint-2 img{filter:hue-rotate(58deg)saturate(1.08)}.card:hover .card__media img{transform:scale(1.035)}.card__media:after{content:"";border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff14}.card__body{gap:10px;display:grid}.card__meta{color:var(--fg-3);flex-wrap:wrap;gap:2px 8px;font-size:11.5px;display:flex}.card__title{font-family:var(--font-display);letter-spacing:-.024em;text-wrap:balance;font-size:clamp(20px,1.6vw,24px);font-weight:700;line-height:1.18}.card__desc{color:var(--fg-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:15px;line-height:1.5;display:-webkit-box;overflow:hidden}.card__more{align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:inline-flex}.card__more svg{width:15px;height:15px;transition:transform .5s var(--ease-expo)}.card:hover .card__more svg{transform:translate(4px)}.card:not(:is(.latest,.index-list .cards--3,.index-topics) *){grid-template-rows:auto 1fr}.card:not(:is(.latest,.index-list .cards--3,.index-topics) *) .card__body{grid-template-rows:auto auto auto 1fr;align-content:start}.card:not(:is(.latest,.index-list .cards--3,.index-topics) *) .card__desc{-webkit-line-clamp:unset;display:block;overflow:visible}.card:not(:is(.latest,.index-list .cards--3,.index-topics) *) .card__more{place-self:end start}@media (max-width:760px),(pointer:coarse){.card__meta{font-size:12px}}.card--feature{border-bottom:1px solid var(--sep);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,64px);margin-bottom:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px)}.card--feature .card__media{border-radius:28px}.card--feature .card__title{letter-spacing:-.035em;font-size:clamp(30px,3.2vw,48px);line-height:1.04}.card--feature .card__desc{-webkit-line-clamp:5;font-size:clamp(16px,1.2vw,18px)}@media (max-width:900px){.card--feature{grid-template-columns:1fr}}.research-head{padding:calc(var(--nav-h) + clamp(40px, 6vw, 96px)) 0 clamp(40px, 5vw, 72px)}.research-head__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:32px 64px;display:grid}@media (max-width:900px){.research-head__grid{grid-template-columns:1fr}}.research-head h1{letter-spacing:-.055em;font-size:clamp(56px,9vw,152px);line-height:.92}.research-head .lead{max-width:30em}.research-body{padding-bottom:clamp(96px,10vw,160px)}.filters{flex-wrap:wrap;gap:8px;margin-bottom:clamp(40px,5vw,64px);display:flex}.filter{background:var(--surface);height:40px;color:var(--fg-2);transition:background .25s, color .25s, transform .26s var(--ease-back);border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:14.5px;font-weight:600;display:inline-flex}.filter span{font-family:var(--font-mono);color:var(--fg-3);font-size:11px;font-weight:500}@media (max-width:760px),(pointer:coarse){.filter{height:44px}.filter span{font-size:12px}}.filter:hover{color:var(--fg)}.filter:active{transform:scale(.96)}.filter.is-on{background:var(--inverse);color:var(--on-inverse)}.filter.is-on span{color:color-mix(in srgb, var(--on-inverse) 60%, transparent)}.research-intro{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(40px,5vw,64px);display:grid}@media (max-width:900px){.research-intro{grid-template-columns:1fr}}.research-intro div{border-top:1px solid var(--fg);gap:8px;padding-top:18px;display:grid}.research-intro h2{font-family:var(--font-display);letter-spacing:-.015em;font-size:18px;font-weight:600}.research-intro p{color:var(--fg-2);font-size:15px}.related{border-top:1px solid var(--sep);padding:clamp(72px,8vw,128px) 0}.related__head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:40px;display:flex}.related__head .link-arrow{flex:none}.related__head .link-arrow:hover svg{transform:translate(3px)}.latest{padding-top:0}.latest__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(40px,5vw,64px);display:flex}.art-head{max-width:calc(var(--doc-w) + 2 * var(--gutter));padding:calc(var(--nav-h) + clamp(32px, 5vw, 72px)) var(--gutter) clamp(32px, 4vw, 56px);grid-template-columns:minmax(0,1fr);justify-items:start;gap:22px;margin:0 auto;display:grid}:where(.art-head)>*{max-width:100%}.art-back{color:var(--fg-2);align-items:center;gap:8px;transition:color .25s;display:inline-flex}.art-back:hover{color:var(--fg)}.art-back svg{width:14px;height:14px}.art-title{font-family:var(--font-display);letter-spacing:-.045em;max-width:15em;font-size:clamp(40px,5.6vw,88px);font-weight:700;line-height:1}.art-dek{color:var(--fg-2);letter-spacing:-.012em;max-width:40em;font-size:clamp(19px,1.5vw,23px);line-height:1.45}.art-meta{color:var(--fg-3)}.art-cat{max-width:100%}@media (max-width:560px){.art-cat{white-space:normal;border-radius:14px;height:auto;min-height:28px;padding-block:6px;line-height:1.35}}.art-head>.status-note{max-width:820px;margin:0}.art-cover{max-width:calc(var(--doc-w) + 2 * var(--gutter));padding:0 var(--gutter);margin:0 auto}.art-cover img{aspect-ratio:16/9;object-fit:cover;background:#0b0b0c;border-radius:clamp(20px,2.4vw,32px);width:100%;height:auto}.art-meta,.doc-hero__meta,p.cmp-status__line,.card__meta:not(:is(.latest,.index-list .cards--3,.index-topics) *){--sep-gap:22px;align-items:baseline;column-gap:var(--sep-gap);overflow-clip-margin:6px;flex-wrap:wrap;row-gap:4px;display:flex;overflow:clip}:is(.art-meta,.doc-hero__meta,p.cmp-status__line,.card__meta:not(:is(.latest,.index-list .cards--3,.index-topics) *))>.sep{display:none}:is(.art-meta,.doc-hero__meta,p.cmp-status__line,.card__meta:not(:is(.latest,.index-list .cards--3,.index-topics) *))>:not(.sep,:empty){margin-left:calc(-1 * var(--sep-gap));padding-left:var(--sep-gap);position:relative}:is(.art-meta,.doc-hero__meta,p.cmp-status__line,.card__meta:not(:is(.latest,.index-list .cards--3,.index-topics) *))>:not(.sep,:empty):before{content:"·";content:"·" / "";width:var(--sep-gap);text-align:center;position:absolute;left:0}:is(.art-meta,.doc-hero__meta,p.cmp-status__line)>:empty{margin-right:calc(10px - var(--sep-gap));align-self:center}:is(.art-meta,.doc-hero__meta,p.cmp-status__line)>:empty+:not(.sep,:empty):before{content:none}.doc--article{padding-top:clamp(56px,6vw,96px)}.share{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.share button,.share a{background:var(--surface);height:36px;color:var(--fg);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13.5px;font-weight:600;display:inline-flex}.share svg{width:14px;height:14px}.toc .share{margin-top:32px}.prose h3{margin:1.8em 0 .6em}.prose h3+p{margin-top:0}.prose ul.prose__bullets{margin:1.2em 0}.prose code{font-family:var(--font-mono);background:var(--surface);color:#000;overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px;padding:.12em .4em;font-size:.86em}@media (min-width:600px){.prose :is(p,li)>code{white-space:nowrap}}.prose pre{color:#e8e8e8;font-family:var(--font-mono);background:#0b0b0c;border-radius:18px;margin:1.6em 0;padding:22px 24px;font-size:13.5px;line-height:1.65;overflow-x:auto}@media (max-width:760px){.prose pre{background:linear-gradient(90deg,#0b0b0c 30%,#0b0b0c00) 0/32px 100% no-repeat local,linear-gradient(270deg,#0b0b0c 30%,#0b0b0c00) 100%/32px 100% no-repeat local,radial-gradient(farthest-side at 0,#fff3,#0000) 0/14px 100% no-repeat,radial-gradient(farthest-side at 100%,#fff3,#0000) 100%/14px 100% no-repeat,#0b0b0c}}.prose pre code{color:inherit;font-size:inherit;overflow-wrap:normal;-webkit-box-decoration-break:slice;box-decoration-break:slice;background:0 0;padding:0}.prose pre .c{color:#8e8e93}.prose pre .k{color:#ff9f0a}.prose pre .s{color:#64d2ff}.prose pre .n{color:#bf5af2}.callout{background:var(--surface);border-radius:18px;margin:1.8em 0;padding:22px 24px;font-size:16px;line-height:1.6}.callout strong:first-child{margin-bottom:4px;display:block}.callout--note{background:#f4f1ff}.prose table{border-collapse:collapse;width:100%;margin:1.8em 0;font-size:15px;line-height:1.5}.prose th,.prose td{text-align:left;vertical-align:top;border-top:1px solid var(--sep);padding:12px 14px 12px 0}.prose thead th{border-top:0;border-bottom:1px solid var(--fg);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);font-size:11px;font-weight:500}.prose td.num,.prose th.num{text-align:right;font-variant-numeric:tabular-nums;padding-left:14px;padding-right:0}@media (max-width:760px),(pointer:coarse){.prose thead th{font-size:12px}}.table-scroll{overscroll-behavior-x:contain;margin:1.8em 0;position:relative;overflow-x:auto}.table-scroll table{min-width:560px;margin:0}.table-scroll.table-scroll--fit table{min-width:0;margin:0}.table-scroll caption{max-width:calc(100vw - 2 * var(--gutter))}.table-scroll.is-scrollable{--shade-l:0 0 0 transparent;--shade-r:inset -18px 0 16px -16px #00000038;box-shadow:var(--shade-l), var(--shade-r);transition:box-shadow .3s var(--ease-out)}.table-scroll.is-scrollable:not(.at-start){--shade-l:inset 18px 0 16px -16px #00000038}.table-scroll.is-scrollable.at-end{--shade-r:0 0 0 transparent}.table-scroll.is-scrollable:after{content:"Swipe to see the whole table";width:max-content;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-top:10px;font-size:12px;display:block;position:sticky;left:0}.math{background:var(--surface);text-align:center;border-radius:18px;margin:1.8em 0;padding:28px 24px;overflow-x:auto}.math math{font-size:1.25em}.math figcaption{text-align:left;color:var(--fg-2);margin-top:18px;font-size:14.5px}.refs{font-size:14.5px;line-height:1.6}.refs ol{counter-reset:r;gap:12px;display:grid}.refs li{counter-increment:r;color:var(--fg-2);padding-left:36px;position:relative}.refs li:before{content:"[" counter(r) "]";font-family:var(--font-mono);color:var(--fg-3);font-size:12px;position:absolute;top:.1em;left:0}.refs a{color:var(--fg)}.fn{font-family:var(--font-mono);vertical-align:super;color:var(--accent);margin:0 -7.5px;padding:6px 8.5px;font-size:max(12px,.72em);line-height:0;text-decoration:none!important}.status-note{color:#5c3d00;background:#fff6e5;border-radius:14px;align-items:flex-start;gap:12px;margin:0 0 2em;padding:16px 18px;font-size:15px;line-height:1.5;display:flex}.status-note .dot{margin-top:.55em}.status-note p{margin:0}.fig{margin:2.4em 0}.fig--wide{margin-left:clamp(-150px,-9vw,0px);margin-right:calc(-1 * min(150px, 9vw, var(--doc-free,150px)))}@media (max-width:1240px){.fig--wide{margin-left:0;margin-right:0}}.fig__frame{border-radius:clamp(18px,2vw,26px);padding:clamp(16px,2.6vw,36px);position:relative;overflow:hidden}.fig--dark .fig__frame{color:#fff;background:radial-gradient(120% 100% at 50% 0,#141416 0%,#0a0a0b 65%)}.fig--light .fig__frame{background:#fafafa;box-shadow:inset 0 0 0 1px #ededed}.fig--plain .fig__frame{background:0 0;padding:0;overflow:visible}.fig__svg{width:100%;height:auto;overflow:visible}.fig figcaption{color:var(--fg-2);margin-top:14px;font-size:14.5px;line-height:1.55}.fig__num{color:var(--fg);margin-right:8px;font-size:11.5px}@media (max-width:760px),(pointer:coarse){.fig__num{font-size:12px}}@media (max-width:760px){.fig figcaption{font-size:15px}}.fig__shot{justify-items:center;padding:clamp(24px,4vw,48px) 16px;display:grid}.fig__shot .phone{--w:min(300px, 70vw)}.fig__shots{flex-wrap:wrap;justify-content:center;gap:clamp(16px,3vw,40px);display:flex}.fig svg text{font-family:var(--font-text)}.d-label{letter-spacing:-.01em;fill:currentColor;font-size:15px;font-weight:500}.d-label--strong{font-weight:600}.d-label--sm{font-size:13px}.d-label--muted{fill:#8a8a8a}.fig--dark .d-label--muted{fill:#8e8e93}.d-mono{letter-spacing:.1em;text-transform:uppercase;fill:#8a8a8a;font-size:11px;font-family:var(--font-mono)!important}.fig--dark .d-mono{fill:#7c7c80}.d-node{fill:#fff;stroke:#e0e0e0;stroke-width:1px}.fig--dark .d-node{fill:#161618;stroke:#ffffff24}.d-node--strong{fill:#000;stroke:none}.fig--dark .d-node--strong{fill:#fff}.d-node--soft{fill:#f3f3f3;stroke:none}.fig--dark .d-node--soft{fill:#1e1e21;stroke:none}.d-on-strong{fill:#fff}.fig--dark .d-on-strong{fill:#000}.d-zone{fill:none;stroke:#cfcfcf;stroke-width:1.25px;stroke-dasharray:5 6}.fig--dark .d-zone{stroke:#ffffff38}.d-zone--fill{fill:#5e5ce60d}.fig--dark .d-zone--fill{fill:#8e7cff0f}.d-edge{fill:none;stroke:#bdbdbd;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.fig--dark .d-edge{stroke:#ffffff52}.d-edge--strong{stroke:#000}.fig--dark .d-edge--strong{stroke:#fff}.d-edge--flow{stroke-dasharray:3 6;animation:1.6s linear infinite d-flow}.d-edge--accent{stroke:#276ef1}.d-edge--warn{stroke:#d9590b}@keyframes d-flow{to{stroke-dashoffset:-18px}}.d-arrow{fill:#bdbdbd}.fig--dark .d-arrow{fill:#ffffff80}.d-accent{fill:#276ef1}.d-warn{fill:#d9590b}.d-cite{fill:#276ef1;font-size:12px;font-weight:500;font-family:var(--font-mono)!important}.fig--dark .d-cite{fill:#5b91f5}.c-grid{stroke:#e6e6e6;stroke-width:1px;shape-rendering:crispedges}.c-base{stroke:#9a9a9a;stroke-width:1px;shape-rendering:crispedges}.c-tick{font-family:var(--font-text);fill:#6b6b6b;font-variant-numeric:tabular-nums;font-size:12px}.c-cat{font-family:var(--font-text);fill:#000;font-size:14px;font-weight:500}.c-val{font-family:var(--font-text);fill:#000;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.c-note{font-family:var(--font-text);fill:#6b6b6b;font-size:12px}.c-1{fill:#276ef1}.c-2{fill:#d9590b}.c-muted{fill:#cfcfcf}.c-line-1{fill:none;stroke:#276ef1;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.c-ref{stroke:#000;stroke-width:1px;stroke-dasharray:none}[data-tip]{cursor:default;outline:none;transition:opacity .2s}.fig svg:has([data-tip].is-hot) [data-tip]:not(.is-hot){opacity:.45}.c-legend{color:var(--fg-2);flex-wrap:wrap;gap:6px 18px;margin-bottom:14px;font-size:13.5px;display:flex}.c-legend span{align-items:center;gap:8px;display:inline-flex}.c-legend i{border-radius:3px;width:12px;height:12px}.fig__title{font-family:var(--font-display);letter-spacing:-.015em;color:#000;margin-bottom:4px;font-size:17px;font-weight:600}.fig__sub{color:var(--fg-2);margin-bottom:18px;font-size:13.5px}.fig__data{margin-top:10px;font-size:14px}.fig__data summary{cursor:pointer;color:var(--fg-2);align-items:center;gap:6px;font-weight:500;list-style:none;display:inline-flex}.fig__data summary::-webkit-details-marker{display:none}.fig__data summary:before{content:"+";font-family:var(--font-mono)}.fig__data[open] summary:before{content:"–"}.fig__data table{margin:12px 0 0;font-size:14px}.fig-tip{z-index:95;color:#fff;pointer-events:none;background:#000;border-radius:12px;max-width:260px;padding:10px 12px;font-size:13px;line-height:1.45;position:fixed;top:0;left:0;box-shadow:0 12px 32px #00000038}.fig-tip b{font-weight:600}.fig-tip[hidden]{display:none}.doc-hero{padding:calc(var(--nav-h) + clamp(40px, 6vw, 88px)) 0 clamp(40px, 5vw, 64px);border-bottom:1px solid var(--sep)}.doc-hero .container{grid-template-columns:minmax(0,1fr);justify-items:start;gap:20px;display:grid}:where(.doc-hero .container)>*{max-width:100%}.doc-hero:has(+.doc) .container{max-width:calc(var(--doc-w) + 2 * var(--gutter))}.doc-hero h1{letter-spacing:-.05em;font-size:clamp(40px,7vw,112px);line-height:.95}.doc-hero .lead{max-width:36em}.doc-hero__meta{color:var(--fg-3)}.summary{color:#fff;background:#000;border-radius:22px;margin:0 0 2.4em;padding:clamp(22px,3vw,32px)}.summary h2{color:#fff!important;margin-bottom:16px!important;font-size:clamp(22px,2vw,28px)!important}.summary ul{gap:10px;display:grid}.summary li{color:#cfcfcf;padding-left:26px;font-size:16px;line-height:1.5;position:relative}.summary li:before{content:"";border-bottom:2px solid #06c167;border-left:2px solid #06c167;width:12px;height:7px;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.summary strong{color:#fff}.faq-group+.faq-group{margin-top:clamp(56px,6vw,88px)}.faq-group>h2{margin-bottom:20px!important}.accs{border-bottom:1px solid var(--sep)}.acc{border-top:1px solid var(--sep)}.acc__q{text-align:left;width:100%;font-family:var(--font-display);letter-spacing:-.015em;color:#000;grid-template-columns:1fr 24px;align-items:center;gap:16px;padding:22px 0;font-size:clamp(18px,1.5vw,21px);font-weight:600;line-height:1.3;display:grid}.acc__q i{justify-self:end;width:18px;height:18px;position:relative}.acc__q i:before,.acc__q i:after{content:"";width:13px;height:1.5px;transition:transform .5s var(--ease-expo);background:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.acc__q i:after{transform:translate(-50%,-50%)rotate(90deg)}.acc.is-open .acc__q i:after{transform:translate(-50%,-50%)rotate(0)}.acc__a{transition:grid-template-rows .55s var(--ease-expo);grid-template-rows:0fr;display:grid}.acc.is-open .acc__a{grid-template-rows:1fr}.acc__a>div{overflow:hidden}.acc__a p{color:var(--fg-2);max-width:44em;padding-bottom:22px;font-size:16.5px;line-height:1.6}.acc__a p+p{margin-top:-10px}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:1.4em;display:grid}@media (max-width:640px){.contact-grid{grid-template-columns:1fr}}.contact-grid a{background:var(--surface);border-radius:18px;gap:6px;padding:20px 22px;transition:background .25s;display:grid;text-decoration:none!important}.contact-grid a:hover{background:var(--surface-3)}.contact-grid strong{font-family:var(--font-display);font-size:17px}.contact-grid span{color:var(--fg-2);font-size:14.5px}.notfound{min-height:100vh;min-height:100svh;padding:var(--nav-h) var(--gutter);text-align:center;color:#fff;background:#000;place-content:center;justify-items:center;gap:20px;display:grid}.notfound .orb-host{aspect-ratio:1;width:min(70vw,460px);margin:-10% 0 -14%}.notfound h1{font-size:clamp(44px,6vw,84px)}.research-cta{color:#fff;background:#000;padding:clamp(72px,9vw,128px) 0}.research-cta__inner{grid-template-columns:minmax(0,1.4fr) auto;align-items:end;gap:32px 64px;display:grid}.research-cta__inner>div:first-child{gap:20px;display:grid}.research-cta__inner .h-l{max-width:16em}.research-cta__actions{flex-wrap:wrap;gap:12px;display:flex}@media (max-width:900px){.research-cta__inner{grid-template-columns:1fr}}.cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:760px){.cards--2{grid-template-columns:1fr}}.cards--featured{border-bottom:1px solid var(--sep);margin-bottom:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px)}.card--large .card__media{border-radius:26px}.card--large .card__title{letter-spacing:-.032em;font-size:clamp(26px,2.4vw,36px);line-height:1.08}.card--large .card__desc{-webkit-line-clamp:4;font-size:clamp(15.5px,1.1vw,17px)}body[data-page=product]{background:#fff}.p-hero{color:#fff;padding:calc(var(--nav-h) + clamp(40px, 6vw, 96px)) 0 clamp(56px, 7vw, 96px);background:#000;overflow:clip}.p-hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:48px;display:grid}@media (max-width:900px){.p-hero__grid{grid-template-columns:1fr}}.p-hero__copy{justify-items:start;gap:24px;display:grid}.p-hero__copy .h-xxl{max-width:10em;font-size:clamp(44px,6.4vw,104px)}.p-hero__ctas{justify-content:flex-start}.p-hero__visual{place-items:center;padding:24px 0;display:grid;position:relative}.p-hero__glow{filter:blur(30px);background:radial-gradient(38% 42% at 40% 45%,#ff375f52,#0000 70%),radial-gradient(38% 42% at 62% 52%,#5e5ce666,#0000 70%),radial-gradient(30% 34% at 50% 75%,#64d2ff38,#0000 70%);position:absolute;inset:-10%}.p-hero__visual .phone{position:relative}.p-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:clamp(48px,6vw,88px);display:grid}@media (max-width:760px){.p-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.p-stats div{border-top:1px solid #ffffff3d;flex-direction:column-reverse;gap:6px;padding-top:18px;display:flex}.p-stats dt{color:var(--fg-2);font-size:14px}.p-stats dd{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(22px,2.2vw,32px);font-weight:700}.p-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}@media (max-width:1100px){.p-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.p-grid{grid-template-columns:1fr}}.p-card{background:var(--surface);border-radius:22px;align-content:start;gap:10px;padding:24px;display:grid}.p-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin-top:8px;font-size:19px;font-weight:700}.p-card p{color:var(--fg-2);font-size:15px;line-height:1.5}.p-card .mono{margin-top:6px;font-size:11px}@media (max-width:760px),(pointer:coarse){.p-card .mono{font-size:12px}}.p-icon{background:#fff;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.p-icon svg{width:20px;height:20px}.p-gallery{background:#fff;padding:0 0 clamp(56px,7vw,104px)}.p-gallery__track{padding:24px max(var(--gutter), calc((100vw - var(--maxw)) / 2 + var(--gutter))) 40px;scroll-snap-type:x mandatory;scrollbar-width:none;gap:clamp(20px,3vw,40px);display:flex;overflow-x:auto}.p-gallery__track::-webkit-scrollbar{display:none}.p-gallery figure{scroll-snap-align:center;flex:none;justify-items:center;gap:14px;display:grid}.p-gallery figcaption{font-family:var(--font-display);letter-spacing:-.012em;font-size:15px;font-weight:600}.p-orbs{justify-content:center;gap:clamp(16px,6vw,96px);margin-bottom:32px;display:flex}.p-orbs>div{justify-items:center;gap:4px;display:grid}.p-orbs .orb-host{aspect-ratio:1;width:clamp(92px,22vw,180px)}.p-orbs p{font-family:var(--font-display);font-size:15px;font-weight:600}.p-table table{border-collapse:collapse;width:100%;font-size:15px}.p-table th,.p-table td{text-align:left;border-top:1px solid var(--sep);vertical-align:top;padding:14px 16px 14px 0}.p-table thead th{font-family:var(--font-display);letter-spacing:-.015em;border-top:0;border-bottom:1px solid #000;font-size:17px;font-weight:700}.p-table tbody th{color:var(--fg-2);width:24%;font-weight:500}.p-table .num{font-variant-numeric:tabular-nums}.p-note{max-width:52em;margin-top:20px;font-size:14px}.p-note a,.p-limits a{text-underline-offset:3px;text-decoration:underline}.p-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (max-width:820px){.p-two{grid-template-columns:1fr}}.p-panel{background:var(--surface);border-radius:24px;padding:clamp(24px,3vw,36px)}.p-panel--dark{color:#fff;background:#000}.p-panel h3{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:10px;margin-bottom:18px;font-size:22px;font-weight:700;display:flex}.p-panel ul{gap:12px;display:grid}.p-panel li{border-top:1px solid var(--sep);color:var(--fg-2);padding-top:12px;font-size:15.5px;line-height:1.5}.p-panel strong{color:var(--fg);font-weight:600}.p-req__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;gap:32px 80px;display:grid}.p-req__grid>div:first-child{gap:18px;display:grid}@media (max-width:900px){.p-req__grid{grid-template-columns:minmax(0,1fr)}}.p-req table{border-collapse:collapse;width:100%;font-size:15.5px}.p-req th,.p-req td{text-align:left;border-top:1px solid var(--sep);vertical-align:top;padding:16px 16px 16px 0}.p-req tbody th{width:34%;color:var(--fg-2);font-weight:500}.p-limits{padding-top:0}.p-limits__list{border-bottom:1px solid var(--sep);display:grid}.p-limits__list li{border-top:1px solid var(--sep);color:var(--fg-2);padding:16px 0 16px 28px;font-size:16px;line-height:1.5;position:relative}.p-limits__list li:before{content:"";background:var(--fg);width:10px;height:2px;position:absolute;top:25px;left:2px}@media (max-width:680px){.fig__frame{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.fig--wide .fig__svg{min-width:640px}.fig:not(.fig--wide) .fig__svg{min-width:520px}.fig__frame:has(.fig__svg):after{content:"Swipe to see the whole figure";font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#6e6e73;margin-top:10px;font-size:12px;display:block;position:sticky;left:0}.fig--dark .fig__frame:has(.fig__svg):after{color:#8e8e93}}.crumbs ol{color:var(--fg-3);flex-wrap:wrap;align-items:center;gap:0;font-size:13.5px;display:flex}.crumbs li{align-items:center;min-width:0;display:inline-flex}.crumbs li+li:before{content:"";opacity:.6;border-top:1.4px solid;border-right:1.4px solid;width:5px;height:5px;margin:0 10px;transform:rotate(45deg)}.crumbs a{min-height:24px;color:var(--fg-2);align-items:center;transition:color .2s;display:inline-flex}.crumbs a:hover{color:var(--fg)}.crumbs [aria-current]{min-width:0;max-width:min(64ch,100%);color:var(--fg-3);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}@media (max-width:640px){.crumbs li:last-child:nth-child(n+3){display:none}}.abstract{background:var(--surface);border-radius:20px;justify-self:stretch;max-width:820px;margin-top:8px;padding:clamp(20px,2.4vw,28px) clamp(20px,2.6vw,32px);position:relative}.abstract:before{content:"";background:var(--fg);border-radius:0 2px 2px 0;width:3px;position:absolute;top:20px;bottom:20px;left:0}.abstract__label{color:var(--fg-3);margin-bottom:10px}.abstract>p:not(.abstract__label){color:#1a1a1a;font-size:clamp(16.5px,1.2vw,18px);line-height:1.6}.takeaways{border-top:1px solid var(--sep);gap:10px;margin-top:16px;padding-top:16px;display:grid}.takeaways li{color:var(--fg-2);padding-left:26px;font-size:15.5px;line-height:1.5;position:relative}.takeaways li:before{content:"";border-left:1.8px solid var(--fg);border-bottom:1.8px solid var(--fg);width:11px;height:6px;position:absolute;top:.5em;left:2px;transform:rotate(-45deg)}.takeaways strong{color:var(--fg);font-weight:600}.cite-block,.history{border-top:1px solid var(--sep);margin-top:clamp(56px,6vw,88px);padding-top:28px}.cite-block h2,.history h2{font-family:var(--font-display);letter-spacing:-.025em;margin-bottom:16px;font-size:clamp(22px,1.8vw,26px);font-weight:700}.cite-block__plain{color:var(--fg-2);font-size:15px;line-height:1.6}.cite-block__bib{background:var(--surface);font-family:var(--font-mono);color:#1a1a1a;border-radius:14px;margin:14px 0;padding:18px 20px;font-size:12.5px;line-height:1.7;overflow-x:auto}@media (max-width:680px){.cite-block__bib{white-space:pre-wrap;overflow-wrap:anywhere}}.history ol{gap:8px;display:grid}.history li{color:var(--fg-2);grid-template-columns:196px 1fr;gap:16px;font-size:14.5px;display:grid}.history__when{font-family:var(--font-mono);letter-spacing:.04em;color:var(--fg-3);flex-wrap:wrap;gap:0 8px;padding-top:2px;font-size:12px;display:flex}.history__v{color:var(--fg-2)}.history time{font-family:var(--font-mono);letter-spacing:.04em;color:var(--fg-3);padding-top:2px;font-size:12px}.history__when time{padding-top:0}@media (max-width:560px){.history li{grid-template-columns:1fr;gap:2px}}.prose a.gloss{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:color-mix(in srgb, currentColor 45%, transparent);text-decoration-color:color-mix(in srgb, currentColor 45%, transparent);text-underline-offset:3px;text-decoration-thickness:1.5px}.prose a.gloss:hover{text-decoration-style:solid;text-decoration-color:currentColor}.gloss-az{flex-wrap:wrap;gap:6px;margin-bottom:2.4em;display:flex}.gloss-az a{background:var(--surface);width:36px;height:36px;font-family:var(--font-mono);color:var(--fg);border-radius:10px;place-items:center;font-size:13px;font-weight:500;transition:background .2s,color .2s;display:grid;text-decoration:none!important}.gloss-az a:hover{background:var(--inverse);color:var(--on-inverse)}.gloss-group+.gloss-group{margin-top:clamp(56px,6vw,88px)}.gloss-list{border-bottom:1px solid var(--sep);margin:0}.gloss-term{border-top:1px solid var(--sep);scroll-margin-top:calc(var(--nav-h) + 24px);grid-template-columns:minmax(150px,220px) 1fr;gap:8px 32px;padding:22px 0;display:grid}.gloss-term:target{background:linear-gradient(90deg,#276ef10f,#0000 70%)}.gloss-term dt{font-family:var(--font-display);letter-spacing:-.015em;color:#000;font-size:18px;font-weight:600}.gloss-term dd{gap:8px;margin:0;display:grid}.gloss-term dd p{font-size:16px;line-height:1.6}.gloss-in{background:var(--surface);color:var(--fg-2);border-radius:12px;gap:2px;padding:10px 14px;display:grid;font-size:15px!important}.gloss-in .mono{color:var(--fg-3);font-size:10.5px}@media (max-width:760px),(pointer:coarse){.gloss-in .mono{font-size:12px}}.gloss-links{color:var(--fg-3);font-size:14px!important}@media (max-width:640px){.gloss-term{grid-template-columns:1fr}}.refs ol{grid-template-columns:minmax(0,1fr)}.refs li{overflow-wrap:break-word}.refs a{overflow-wrap:anywhere}.fx{--fx-bg:#08080a;--fx-ink:#fff;--fx-ink-2:#a1a1a6;--fx-ink-3:#8e8e93;--fx-line:#ffffff29;--fx-line-2:#ffffff4d;--fx-node:#111114;--fx-node-2:#18181c;--fx-dot:#ffffff12;--fx-accent:#5b91f5;--fx-radius:clamp(18px, 2vw, 28px);color:var(--fx-ink);margin:2.8em 0;position:relative}.fx--light{--fx-bg:#fbfbfc;--fx-ink:#000;--fx-ink-2:#5e5e5e;--fx-ink-3:#6e6e73;--fx-line:#0000001f;--fx-line-2:#00000047;--fx-node:#fff;--fx-node-2:#f3f3f5;--fx-dot:#0000000f;--fx-accent:#276ef1}.fx--wide{margin-left:clamp(-150px,-9vw,0px);margin-right:calc(-1 * min(150px, 9vw, var(--doc-free,150px)))}@media (max-width:1240px){.fx--wide{margin-left:0;margin-right:0}}.fx__stage{border-radius:var(--fx-radius) var(--fx-radius) 0 0;background:radial-gradient(120% 80% at 50% 0%, #8e7cff0f, transparent 60%), radial-gradient(var(--fx-dot) 1px, transparent 1.3px) 0 0 / 22px 22px, var(--fx-bg);isolation:isolate;padding:clamp(14px,2.4vw,32px);position:relative;overflow:hidden}.fx--light .fx__stage{background:radial-gradient(var(--fx-dot) 1px, transparent 1.3px) 0 0 / 22px 22px, var(--fx-bg);box-shadow:inset 0 0 0 1px #ececef}.fx__stage>svg{width:100%;height:auto;display:block;overflow:visible}.js .fx[data-fx]:not(.is-ready):not(.is-static) .fx__stage>*{visibility:hidden}.fx__ui{border-radius:0 0 var(--fx-radius) var(--fx-radius);background:var(--fx-bg);box-shadow:inset 0 1px 0 var(--fx-line);gap:14px;padding:16px clamp(16px,2.4vw,28px) 20px;display:grid}.fx--light .fx__ui{box-shadow:inset 0 1px #ececef,inset 0 0 0 1px #ececef}.fx__steps{scrollbar-width:none;gap:4px;margin:0 -4px;padding:0 4px;display:flex;overflow-x:auto}.fx__steps::-webkit-scrollbar{display:none}.fx__steps[data-more=end]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.fx__steps[data-more=start]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 40px),#0000)}.fx__steps[data-more=both]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000)}.fx__chip{text-align:left;min-width:96px;color:var(--fx-ink-3);flex:1 0 auto;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px;padding:6px 4px 0;transition:color .3s;display:grid}.fx__chip:hover{color:var(--fx-ink-2)}.fx__chip-n{font-family:var(--font-mono);letter-spacing:.06em;font-size:10.5px}.fx__chip-t{letter-spacing:-.01em;white-space:nowrap;font-size:13.5px;font-weight:600}.fx__chip-bar{background:var(--fx-line);border-radius:1px;grid-column:1/-1;height:2px;margin-top:8px;display:block;overflow:hidden}.fx__chip-bar b{transform-origin:0;background:linear-gradient(90deg,#ff9f0a,#ff375f,#bf5af2,#5e5ce6,#0a84ff);height:100%;display:block;transform:scaleX(0)}.fx--light .fx__chip-bar b{background:#000}.fx__chip[aria-current=step]{color:var(--fx-ink)}.fx__chip.is-done{color:var(--fx-ink-2)}.fx__chip:focus-visible{outline:2px solid var(--fx-accent);outline-offset:2px;border-radius:6px}.fx__row{grid-template-columns:1fr auto;align-items:start;gap:16px;display:grid}.fx__caption{letter-spacing:-.008em;min-height:3.1em;color:var(--fx-ink-2);max-width:62em;font-size:15.5px;line-height:1.55}.fx__caption b,.fx__caption strong{color:var(--fx-ink);font-weight:600}.fx__capbox{min-width:0;display:grid}.fx__capbox>*,.fx__sizer>*{grid-area:1/1}.fx__sizer{visibility:hidden;pointer-events:none;display:grid}.fx__caption .fx-ref{color:var(--fx-accent);font-family:var(--font-mono);font-size:.85em}.fx__controls{gap:6px;display:flex}.fx__toggle,.fx__replay{width:34px;height:34px;color:var(--fx-ink);background:color-mix(in srgb, var(--fx-ink) 8%, transparent);transition:background .2s, transform .26s var(--ease-back);border-radius:50%;place-items:center;display:grid}.fx__toggle:hover,.fx__replay:hover{background:color-mix(in srgb, var(--fx-ink) 14%, transparent)}.fx__toggle:active,.fx__replay:active{transform:scale(.92)}.fx__toggle svg,.fx__replay svg{width:15px;height:15px}.fx__captions{display:none}.no-js .fx__captions,.fx.is-static .fx__captions{border-radius:0 0 var(--fx-radius) var(--fx-radius);background:var(--fx-bg);color:var(--fx-ink-2);gap:8px;margin:0;padding:16px 24px 20px 40px;font-size:15px;list-style:decimal;display:grid}.fx>figcaption{color:var(--fg-2);margin-top:14px;font-size:14.5px;line-height:1.55}@media (max-width:760px){.fx>figcaption{font-size:15px}}.fx>figcaption .fig__num{color:var(--fg)}.fx svg text{font-family:var(--font-text)}.fx-t{letter-spacing:-.01em;fill:var(--fx-ink);font-size:15px;font-weight:500}.fx-t--lg{letter-spacing:-.02em;font-size:19px;font-weight:600;font-family:var(--font-display)!important}.fx-t--sm{font-size:13px}.fx-t--2{fill:var(--fx-ink-2)}.fx-t--3{fill:var(--fx-ink-3)}.fx-mono{letter-spacing:.12em;text-transform:uppercase;fill:var(--fx-ink-3);font-size:10.5px;font-weight:500;font-family:var(--font-mono)!important}.fx-mono--ink{fill:var(--fx-ink-2)}.fx-num{font-variant-numeric:tabular-nums;font-family:var(--font-mono)!important}.fx-cite{fill:var(--fx-accent);font-weight:500;font-family:var(--font-mono)!important}.fx-zone{fill:#8e7cff08;stroke:var(--fx-line-2);stroke-width:1.2px;stroke-dasharray:4 6}.fx--light .fx-zone{fill:#5e5ce608}.fx-box{fill:var(--fx-node);stroke:var(--fx-line);stroke-width:1px;transition:stroke .4s,fill .4s}.fx-box--2{fill:var(--fx-node-2);stroke:none}.fx-box--ink{fill:var(--fx-ink);stroke:none}.fx-edge{fill:none;stroke:var(--fx-line-2);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.fx-edge--faint{stroke:var(--fx-line)}.fx-edge.is-flowing{stroke:color-mix(in srgb, var(--fx-ink) 55%, transparent);stroke-dasharray:2 7;animation:.9s linear infinite fx-dash}@keyframes fx-dash{to{stroke-dashoffset:-18px}}.fx [data-focus]{transition:opacity .5s var(--ease-out), filter .5s var(--ease-out)}.fx-node.is-focus .fx-box{stroke:color-mix(in srgb, var(--fx-ink) 70%, transparent)}.fx-node.is-focus{filter:drop-shadow(0 0 18px #bf5af259)}.fx--light .fx-node.is-focus{filter:drop-shadow(0 6px 18px #276ef12e)}.fx-dim{transition:opacity .5s var(--ease-out)}.has-focus .fx-dim:not(.is-focus){opacity:.4}.fx--light .has-focus .fx-dim:not(.is-focus){opacity:.46}.fx-ring{transform-box:fill-box;transform-origin:50%}.fx [data-ghost]{transition:opacity .7s var(--ease-out)}.fx .is-ghost{opacity:.4!important}.fx--light .is-ghost{opacity:.46!important}.fx .is-ghost:is(.fx-t--2,.fx-t--3,.fx-mono),.fx .is-ghost :is(.fx-t--2,.fx-t--3,.fx-mono),.fx .has-focus .fx-dim:not(.is-focus):is(.fx-t--2,.fx-t--3,.fx-mono),.fx .has-focus .fx-dim:not(.is-focus) :is(.fx-t--2,.fx-t--3,.fx-mono){fill:var(--fx-ink)}.fx-packets{pointer-events:none}.fx-packet{mix-blend-mode:screen}.fx--light .fx-packet{mix-blend-mode:normal}.no-js .fx [data-out]{display:none}.fx__fade{z-index:2;pointer-events:none;opacity:0;width:32px;transition:opacity .3s var(--ease-out);position:absolute;top:0}.fx__fade--l{border-top-left-radius:var(--fx-radius);background:linear-gradient(to right, var(--fx-bg), transparent);left:0}.fx__fade--r{border-top-right-radius:var(--fx-radius);background:linear-gradient(to left, var(--fx-bg), transparent);right:0}.fx__fade.is-on{opacity:1}.fx__hint{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fx-ink-3);font-size:12px;font-weight:500}.fx__hint[hidden],.fx__count{display:none}@media (pointer:coarse){.fx__chip{align-content:start;min-height:44px}.fx__chip-n{font-size:12px}.fx__toggle,.fx__replay{background:0 0;width:44px;height:44px;position:relative}.fx__toggle:before,.fx__replay:before{content:"";background:color-mix(in srgb, var(--fx-ink) 8%, transparent);border-radius:50%;transition:background .2s;position:absolute;inset:5px}.fx__toggle:hover:before,.fx__replay:hover:before{background:color-mix(in srgb, var(--fx-ink) 14%, transparent)}.fx__toggle svg,.fx__replay svg{position:relative}.fx__controls{gap:0}}@media (max-width:680px){.fx__stage{overscroll-behavior-x:contain;overflow-x:auto}.fx__stage>svg{min-width:640px}.fx__ui{gap:10px;padding:14px 16px 18px}.fx__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 6px;margin:0;padding:0;display:grid;overflow:visible;-webkit-mask-image:none!important;mask-image:none!important}:is(.fx__steps:has(>.fx__chip:nth-child(2):last-child),.fx__steps:has(>.fx__chip:nth-child(4):last-child)){grid-template-columns:repeat(2,minmax(0,1fr))}.fx__chip{grid-template-columns:minmax(0,1fr);align-content:start;gap:1px;min-width:0;min-height:44px;padding:6px 0 0}.fx__chip-n{font-size:12px}.fx__chip-t{white-space:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:13.5px;line-height:1.2}.fx__chip-bar{margin-top:7px}.fx__row{flex-direction:column-reverse;align-items:stretch;gap:6px;display:flex}.fx__controls{justify-content:flex-end;align-items:center;gap:0;margin:-4px -5px 0 0}.fx__count{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fx-ink-3);margin-right:auto;font-size:12px;font-weight:500;display:block}.fx__caption{min-height:4.65em;font-size:15px}.fx__toggle,.fx__replay{background:0 0;width:44px;height:44px;position:relative}.fx__toggle:before,.fx__replay:before{content:"";background:color-mix(in srgb, var(--fx-ink) 8%, transparent);border-radius:50%;position:absolute;inset:5px}.fx__toggle svg,.fx__replay svg{position:relative}}
