html:has(.nw){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:#080a0e;background-color:lab(2.73823% -.148535 -1.58682)}.nw{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-0:color-mix(in oklab, #080a0e, var(--accent) 3%);--ink-1:color-mix(in oklab, #101317, var(--accent) 3%);--ink-2:color-mix(in oklab, #1b1e24, var(--accent) 4%);--line:#ffffff17;--line-strong:#ffffff2e;--fg-0:#f3f5f8;--fg-1:#bbbec3;--fg-2:#898c92;--accent-fill:var(--accent);--on-accent:oklch(from var(--accent) clamp(.14, (.6 - l) * 100, .97) 0 0);--accent-text:oklch(from var(--accent) max(l, .76) min(c, .19) h);--accent-soft:color-mix(in oklab, var(--accent) 14%, var(--ink-0));--accent-line:color-mix(in oklab, var(--accent) 45%, transparent);--accent-glow:color-mix(in oklab, var(--accent) 28%, transparent);--success:#61da92;--danger:#fd736d;--r-sm:6px;--r-md:12px;--r-lg:20px;--r-pill:999px;--fs-hero:clamp(2.75rem, 1.2rem + 5.4vw, 6.5rem);--fs-h2:clamp(2.1rem, 1.2rem + 3.6vw, 4.5rem);--fs-h3:clamp(1.375rem, 1.05rem + 1.2vw, 2rem);--fs-lead:clamp(1.125rem, 1rem + .5vw, 1.5rem);--fs-body:clamp(1rem, .96rem + .18vw, 1.0625rem);--fs-small:.875rem;--fs-label:.75rem;--fs-stat:clamp(3rem, 1.4rem + 7vw, 8rem);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--spring-soft:linear(0, .0095, .0377, .0839, .1465, .2237, .3135, .4137, .5214, .6321, .7391, .8346, .9137, .9747, 1.0188, 1.0485, 1.0668, 1.0762, 1.0792, 1.0777, 1.0734, 1.0675, 1.0611, 1.0548, 1.0491, 1.0443, 1.0405, 1.0377, 1.0358, 1.0346, 1.0341, 1.0341, 1);background:var(--ink-0);min-height:100svh;color:var(--fg-1);font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;font-size:var(--fs-body);-webkit-font-smoothing:antialiased;line-height:1.6;position:relative;overflow-x:clip}@supports (color:lab(0% 0 0)){.nw{--ink-0:color-mix(in oklab, lab(2.73823% -.148535 -1.58682), var(--accent) 3%);--ink-1:color-mix(in oklab, lab(5.68779% -.305086 -3.22411), var(--accent) 3%);--ink-2:color-mix(in oklab, lab(11.2132% -.472777 -4.4093), var(--accent) 4%);--line:lab(100% -.0000298023 .0000119209/.09);--line-strong:lab(100% -.0000298023 .0000119209/.18);--fg-0:lab(96.5076% -.214994 -1.49846);--fg-1:lab(76.7744% -.415951 -2.9888);--fg-2:lab(58.207% -.503033 -3.72663);--success:lab(78.7566% -47.6652 24.555);--danger:lab(65.8493% 53.3364 30.7453)}}@supports not (color:oklch(from red l c h)){.nw{--ink-0:#0c0d10;--ink-1:#16181d;--ink-2:#202329;--accent-fill:#ff5a1f;--on-accent:#0c0d10;--accent-text:#ff8a5c;--accent-soft:#241712;--accent-line:#ff5a1f73;--accent-glow:#ff5a1f47}}.nw:after{content:"";pointer-events:none;z-index:60;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.nw *,.nw :before,.nw :after{box-sizing:border-box}.nw h1,.nw h2,.nw h3{font-family:var(--font-display), ui-sans-serif, system-ui, sans-serif;color:var(--fg-0);text-wrap:balance;overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual;margin:0;font-weight:600}.nw p{text-wrap:pretty;margin:0}.nw a{color:inherit}.nw :focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}.nw ::selection{background:var(--accent-line);color:var(--fg-0)}.nw .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nw .skip{z-index:100;border-radius:var(--r-pill);background:var(--accent-fill);color:var(--on-accent);clip-path:inset(50%);opacity:0;pointer-events:none;white-space:nowrap;padding:.6rem 1rem;position:fixed;top:.75rem;left:.75rem}.nw .skip:focus{clip-path:none;opacity:1;pointer-events:auto}.nw .wrap{width:100%;max-width:1320px;margin-inline:auto;padding-inline:clamp(1.25rem,.5rem + 3vw,3rem)}.nw .grid12{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:1.5rem;display:grid}.nw .label{font-family:var(--font-mono), ui-monospace, monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);line-height:1.2}.nw .lead{font-size:var(--fs-lead);letter-spacing:-.01em;color:var(--fg-1);max-width:46ch;line-height:1.45}.nw .text-measure{max-width:62ch}.nw .site-header{z-index:50;height:4rem;transition:transform .3s var(--ease-out-quart), background-color .3s var(--ease-out-quart);position:fixed;inset:0 0 auto}.nw .site-header[data-hidden=true]{transform:translateY(-100%)}.nw .site-header[data-scrolled=true]{background:color-mix(in oklab, var(--ink-0) 72%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nw .site-header .wrap{justify-content:space-between;align-items:center;gap:2rem;height:100%;display:flex}.nw .site-nav{align-items:center;margin-left:auto;display:flex}.nw .brand{font-family:var(--font-display), sans-serif;letter-spacing:-.01em;color:var(--fg-0);white-space:nowrap;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;text-decoration:none;display:inline-flex}.nw .brand-mark{background:var(--accent-fill);width:8px;height:8px;transition:transform .5s var(--ease-out-expo)}@media (hover:hover) and (pointer:fine){.nw .brand:hover .brand-mark{transform:rotate(90deg)}}.nw .nav-links{align-items:center;gap:1.5rem;padding:0;list-style:none;display:none}.nw .nav-link{min-height:44px;font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);transition:color .2s var(--ease-out-quart);align-items:center;gap:.45rem;text-decoration:none;display:inline-flex;position:relative}.nw .nav-link:before{content:"";background:var(--accent-fill);width:4px;height:4px;transition:transform .25s var(--ease-out-expo);border-radius:50%;transform:scale(0)}.nw .nav-link[aria-current=true]{color:var(--fg-0)}.nw .nav-link[aria-current=true]:before{transform:scale(1)}@media (hover:hover) and (pointer:fine){.nw .nav-link:hover{color:var(--fg-0)}}.nw .nav-more{position:relative}.nw .nav-more summary{cursor:pointer;min-height:44px;font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);align-items:center;list-style:none;display:inline-flex}.nw .nav-more summary::-webkit-details-marker{display:none}.nw .nav-more[open] .nav-more-list{display:grid}.nw .nav-more-list{background:var(--ink-1);border:1px solid var(--line);border-radius:var(--r-md);gap:.25rem;min-width:14rem;padding:.5rem;display:none;position:absolute;top:100%;right:0;box-shadow:0 30px 80px -30px #000c}.nw .nav-more-list .nav-link{padding-inline:.75rem}.nw .site-header .nav-cta{display:none}.nw .burger{cursor:pointer;width:44px;height:44px;color:var(--fg-0);background:0 0;border:0;place-items:center;margin-left:auto;display:inline-grid}.nw .burger-bars{width:18px;height:1.5px;transition:transform .3s var(--ease-out-quart), background-color .3s;background:currentColor;position:relative}.nw .burger-bars:before,.nw .burger-bars:after{content:"";width:18px;height:1.5px;transition:transform .3s var(--ease-out-quart);background:currentColor;position:absolute;left:0}.nw .burger-bars:before{top:-6px}.nw .burger-bars:after{top:6px}.nw .burger[aria-expanded=true] .burger-bars{background:0 0}.nw .burger[aria-expanded=true] .burger-bars:before{transform:translateY(6px)rotate(45deg)}.nw .burger[aria-expanded=true] .burger-bars:after{transform:translateY(-6px)rotate(-45deg)}.nw .menu-sheet{z-index:49;background:var(--ink-0);clip-path:circle(0 at calc(100% - 2rem) 2rem);transition:clip-path .6s var(--ease-in-out);visibility:hidden;flex-direction:column;justify-content:center;gap:.25rem;padding:6rem clamp(1.25rem,4vw,3rem) 3rem;display:flex;position:fixed;inset:0}.nw .menu-sheet[data-open=true]{clip-path:circle(150% at calc(100% - 2rem) 2rem);visibility:visible}.nw .menu-sheet .nav-link{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;text-transform:none;min-height:3.5rem;color:var(--fg-0);font-size:clamp(2rem,1.2rem + 4vw,3.5rem)}.nw .menu-sheet .nav-link:before{display:none}.nw .menu-sheet .nav-cta{align-self:flex-start;margin-top:1.5rem;display:inline-flex}@media (min-width:960px){.nw .site-header .wrap{grid-template-columns:1fr auto 1fr;display:grid}.nw .brand{justify-self:start}.nw .site-nav{justify-self:center;margin-left:0}.nw .nav-links{display:flex}.nw .site-header .nav-cta{justify-self:end;min-height:44px;padding-block:.6rem;display:inline-flex}.nw .burger,.nw .menu-sheet{display:none}}.nw .btn{border-radius:var(--r-pill);background:var(--accent-fill);min-height:44px;color:var(--on-accent);font:600 1rem/1 var(--font-body), sans-serif;cursor:pointer;isolation:isolate;transition:box-shadow .4s var(--ease-out-quart), transform .2s var(--ease-out-quart);border:0;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.4rem;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.nw .btn--lg{min-height:56px;padding-inline:2rem;font-size:1.0625rem}.nw .btn:active{transform:scale(.97)}.nw .btn:disabled{opacity:.6;cursor:progress}.nw .btn-label{transition:transform .5s var(--ease-out-expo);display:inline-block}.nw .btn-spin{opacity:0;border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;transition:opacity .2s;animation:.8s linear infinite spin;position:absolute}.nw .btn[data-pending=true] .btn-label{opacity:0}.nw .btn[data-pending=true] .btn-spin{opacity:1}@media (hover:hover) and (pointer:fine){.nw .btn:hover{box-shadow:0 10px 40px -10px var(--accent-glow)}}.nw .link-ghost{min-height:44px;color:var(--fg-0);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.nw .link-ghost:after{content:"";transform-origin:0;height:1px;transition:transform .3s var(--ease-out-quart);background:currentColor;position:absolute;bottom:10px;left:0;right:0;transform:scaleX(0)}.nw .link-ghost:hover:after{transform:scaleX(1)}.nw .link-ghost svg{transition:transform .3s var(--ease-out-expo)}.nw .link-ghost:hover svg{transform:translate(3px)}.nw .text-link{color:var(--accent-text);text-underline-offset:.25em}.nw .magnet{transition:transform .6s var(--spring-soft);will-change:auto}.nw .magnet.is-pulled{transition:transform .25s var(--ease-out-quart)}.nw .magnet-label{transition:transform .25s var(--ease-out-quart);display:inline-block}.nw .hero{isolation:isolate;flex-direction:column;justify-content:flex-end;min-height:max(40rem,100svh);padding-block:9rem 3rem;display:flex;position:relative}.nw .hero-field{z-index:-1;position:absolute;inset:0;overflow:hidden}.nw .hero-field:after{content:"";background:linear-gradient(90deg, var(--ink-0) 0 25%, transparent 75%), linear-gradient(0deg, var(--ink-0) 0, transparent 30%);opacity:.55;position:absolute;inset:0}.nw .hero-static{width:100%;height:100%;transition:opacity .9s var(--ease-out-quart);position:absolute;inset:0}.nw .hero-field:has(.hero-canvas.is-ready) .hero-static{opacity:0}.nw .hero-static path{fill:none;stroke:var(--accent-line);stroke-width:1px;vector-effect:non-scaling-stroke}.nw .hero-canvas{opacity:0;width:100%;height:100%;transition:opacity .9s var(--ease-out-quart);position:absolute;inset:0}.nw .hero-canvas.is-ready{opacity:1}.nw .hero-copy{max-width:62rem}.nw .hero-title{font-size:var(--fs-hero);letter-spacing:-.035em;-webkit-hyphens:manual;hyphens:manual;max-width:9.5em;font-weight:600;line-height:.95}.nw .em{color:var(--accent-text)}.nw .hero-lead{margin-top:clamp(1.25rem,1rem + 1vw,2rem)}.nw .cta-row{flex-wrap:wrap;align-items:center;gap:1rem 2rem;margin-top:clamp(1.75rem,1.5rem + 1.5vw,2.75rem);display:flex}.nw .hero-rule{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(3rem,2rem + 6vw,6rem);padding-top:1rem;display:flex}.nw .scroll-cue{align-items:center;gap:.75rem;display:inline-flex}.nw .scroll-cue:after{content:"";background:var(--line-strong);width:48px;height:1px;position:relative;overflow:hidden}.nw .chip{align-items:center;gap:.6rem;display:inline-flex}.nw .chip-dot{background:var(--accent-fill);width:6px;height:6px;animation:pulse 2.4s var(--ease-in-out) infinite;border-radius:50%}.nw .sec{border-top:1px solid var(--line);content-visibility:auto;contain-intrinsic-size:auto 800px;padding-block:clamp(5rem,3rem + 9vw,10rem);scroll-margin-top:5rem;position:relative}.nw .sec-head{grid-template-columns:1fr;row-gap:1.25rem;margin-bottom:clamp(2.5rem,2rem + 3vw,5rem);display:grid}.nw .sec-index{font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text)}.nw .sec-title{font-size:var(--fs-h2);letter-spacing:-.03em;max-width:18ch;font-weight:600;line-height:1.02}.nw .sec-lead{margin-top:1.25rem}.nw .split .w{vertical-align:top;margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.nw .split .w>span{display:inline-block}@media (prefers-reduced-motion:no-preference){.nw.js .split:not(.is-in) .w>span{transform:translateY(110%)}.nw.js .split .w>span{transition:transform 1s var(--ease-out-expo);transition-delay:calc(var(--i,0) * 28ms)}.nw.js .split.is-in .w>span{transform:none}.nw.js [data-reveal]:not(.is-in){opacity:0;transform:translateY(24px)}.nw [data-reveal]{transition:opacity 1s var(--ease-out-expo), transform 1s var(--ease-out-expo);transition-delay:calc(var(--i,0) * 70ms)}.nw [data-reveal].is-in{opacity:1;transform:none}.nw.js .hero-rise{animation:rise .9s var(--ease-out-expo) both;animation-delay:var(--d,0s)}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@keyframes marquee{to{transform:translate(-50%)}}.nw .svc-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.nw .svc-row{border-bottom:1px solid var(--line);isolation:isolate;transition:background-color .3s var(--ease-out-quart);grid-template-columns:2.5rem minmax(0,1fr);gap:.5rem 1rem;padding-block:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid;position:relative;overflow:hidden}.nw .svc-row:before{content:"";background:var(--accent-fill);transform-origin:50%;width:2px;transition:transform .4s var(--ease-out-expo);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.nw .svc-row:after{content:"";z-index:-1;background:radial-gradient(420px circle at var(--sx,50%) var(--sy,50%), var(--accent-glow), transparent 60%);opacity:0;transition:opacity .4s var(--ease-out-quart);pointer-events:none;position:absolute;inset:0}.nw .svc-index{font-family:var(--font-mono), monospace;font-size:var(--fs-small);color:var(--fg-2);padding-top:.35rem}.nw .svc-title{font-size:var(--fs-h3);letter-spacing:-.02em;transition:transform .4s var(--ease-out-expo);align-items:center;gap:.75rem;font-weight:500;line-height:1.15;display:flex}.nw .svc-title svg{color:var(--accent-text);flex:none}.nw .svc-desc{max-width:60ch;color:var(--fg-1);grid-column:2}.nw .svc-arrow{display:none}.nw .svc-few .svc-row{padding-block:clamp(2.5rem,2rem + 3vw,4.5rem)}@media (hover:hover) and (pointer:fine){.nw .svc-row:hover{background:var(--ink-1)}.nw .svc-row:hover:before{transform:scaleY(1)}.nw .svc-row:hover:after{opacity:1}.nw .svc-row:hover .svc-title{transform:translate(8px)}.nw .svc-row:hover .svc-arrow{transform:rotate(0)}}@media (min-width:768px){.nw .svc-row{grid-template-columns:4rem minmax(0,4fr) minmax(0,6fr) 2.5rem;align-items:baseline}.nw .svc-desc{grid-area:1/3}.nw .svc-arrow{color:var(--fg-2);transition:transform .4s var(--ease-out-expo);justify-self:end;display:inline-flex;transform:rotate(-45deg)}.nw .svc-title{grid-column:2}}.nw .about-grid{grid-template-columns:1fr;row-gap:3rem;display:grid}.nw .about-body{font-size:var(--fs-lead);letter-spacing:-.01em;color:var(--fg-1);max-width:46ch;line-height:1.45}.nw .about-body p+p{margin-top:1.25em}.nw .about-body .lead-first{color:var(--fg-0)}.nw .about-long{columns:1;column-gap:3rem}@media (min-width:1100px){.nw .about-long.is-wide{columns:2;max-width:none}}.nw .spec{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.nw .spec li{text-wrap:balance;border-bottom:1px solid var(--line);color:var(--fg-0);padding-block:1rem}@media (min-width:900px){.nw .about-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:1.5rem}.nw .about-main{grid-column:1/span 8}.nw .about-spec{grid-column:10/span 3;align-self:end}}.nw .case-list{gap:clamp(5rem,4rem + 6vw,9rem);display:grid}.nw .case{gap:2rem;display:grid}.nw .case-text{align-content:start;gap:1.1rem;display:grid}.nw .case-name{letter-spacing:-.025em;font-size:clamp(1.75rem,1.2rem + 2vw,2.6rem);font-weight:600;line-height:1.05}.nw .case-meta{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.nw .chip-tag{border-radius:var(--r-sm);background:var(--ink-2);min-height:32px;color:var(--fg-1);font-size:var(--fs-small);align-items:center;padding:.3rem .75rem;display:inline-flex}.nw .case-media{min-width:0;position:relative}.nw [data-parallax]{translate:0 calc((var(--p,.5) - .5) * -12%)}.nw .case-name--small{font-size:var(--fs-h3)}.nw .mini-case{align-content:start;gap:1rem;display:grid}.nw .social-links{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.nw .ts-slot{min-height:65px}.nw .text-body{max-width:62ch;font-size:var(--fs-body);color:var(--fg-1);gap:1.1em;display:grid}@media (min-width:900px){.nw .text-body{margin-left:25%}}.nw .frame{border-radius:var(--r-lg);background:var(--ink-1);box-shadow:0 1px 0 0 var(--line-strong) inset, 0 30px 80px -30px #000c, 0 0 0 1px var(--line);transform:perspective(1600px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease-out-expo);transform-style:preserve-3d;overflow:hidden}.nw .frame.is-tilting{transition:none}.nw .frame-bar{border-bottom:1px solid var(--line);align-items:center;gap:.5rem;height:36px;padding-inline:.9rem;display:flex}.nw .frame-bar i{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.nw .frame-url{border-radius:var(--r-pill);background:var(--ink-2);font-family:var(--font-mono), monospace;font-size:var(--fs-label);color:var(--fg-2);letter-spacing:.02em;text-transform:none;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:.75rem;padding:.2rem .75rem;overflow:hidden}.nw .frame-shot{aspect-ratio:16/10;background:var(--ink-2);position:relative;overflow:hidden}.nw .frame-img{position:absolute;inset:0}.nw .frame-img img{object-fit:contain;object-position:top}.nw .frame-empty{background-color:var(--ink-2);font-family:var(--font-mono), monospace;color:var(--fg-2);text-align:center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cpath d='M0 40 C40 20 60 60 100 40 S160 40 160 40 M0 90 C40 70 60 110 100 90 S160 90 160 90 M0 140 C40 120 60 160 100 140 S160 140 160 140' fill='none' stroke='%23ffffff' stroke-opacity='.08'/%3E%3C/svg%3E");place-content:center;gap:.5rem;padding:2rem;display:grid;position:absolute;inset:0}.nw .frame-empty strong{font-family:var(--font-display), sans-serif;font-size:var(--fs-h3);color:var(--fg-0);font-weight:600}.nw .link-external{min-height:44px;color:var(--accent-text);text-underline-offset:.25em;align-items:center;gap:.4rem;display:inline-flex}.nw .more-grid{grid-template-columns:1fr;gap:2.5rem 1.5rem;display:grid}.nw .marquee{border-block:1px solid var(--line);margin-top:clamp(4rem,3rem + 4vw,7rem);padding-block:1.1rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.nw .marquee-track{white-space:nowrap;width:max-content;display:flex}.nw .marquee-group{font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);display:flex}.nw .marquee-group span{padding-inline:1rem}.nw .marquee-group span:before{content:"/";color:var(--accent-text);margin-right:1rem}@media (prefers-reduced-motion:no-preference){.nw .marquee-track{animation:40s linear infinite marquee}.nw .marquee:hover .marquee-track,.nw .marquee.is-paused .marquee-track{animation-play-state:paused}}@media (min-width:1024px){.nw .case{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;column-gap:1.5rem}.nw .case .case-text{grid-column:1/span 4;position:sticky;top:7rem}.nw .case .case-media{grid-column:5/span 8}.nw .case.is-flip .case-text{grid-area:1/9/auto/span 4}.nw .case.is-flip .case-media{grid-area:1/1/auto/span 8}.nw .more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.nw .process{grid-template-columns:1fr;row-gap:2rem;display:grid}.nw .steps{gap:clamp(2.5rem,2rem + 3vw,4.5rem);margin:0;padding:0 0 0 1.5rem;list-style:none;display:grid;position:relative}.nw .steps:before,.nw .steps .rail-fill{content:"";width:1px;position:absolute;top:0;bottom:0;left:0}.nw .steps:before{background:var(--line)}.nw .steps .rail-fill{background:var(--accent-fill);transform:scaleY(var(--p,0));transform-origin:top;pointer-events:none;width:2px;margin-left:-.5px}.nw .step{transition:opacity .4s var(--ease-out-quart);grid-template-columns:1fr;row-gap:.5rem;display:grid}.nw .step[data-active=false]{opacity:.72}.nw .step-num{font-family:var(--font-display), sans-serif;font-size:var(--fs-h3);color:var(--fg-2);transition:color .4s var(--ease-out-quart);font-weight:600;line-height:1}.nw .step[data-active=true] .step-num{color:var(--accent-text)}.nw .step h3{font-size:var(--fs-h3);letter-spacing:-.02em;font-weight:500;line-height:1.15}.nw .step p{max-width:56ch;color:var(--fg-1)}.nw .steps.few{row-gap:4rem}@media (min-width:900px){.nw .steps{padding-left:2.5rem}.nw .step{grid-template-columns:6rem minmax(0,1fr);align-items:start;column-gap:1.5rem}.nw .step h3,.nw .step p{grid-column:2}.nw .step .step-num{grid-row:span 2}.nw .process-layout{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;column-gap:1.5rem;display:grid}.nw .process-layout>.sec-head{grid-column:1/span 4;margin-bottom:0;position:sticky;top:7rem}.nw .process-layout>.process{grid-column:6/span 7}}.nw .stats{background:var(--line);border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.nw .stat{background:var(--ink-0);align-content:start;gap:.75rem;min-width:0;padding:clamp(2rem,1.5rem + 2vw,3.5rem) clamp(1rem,.5rem + 1.5vw,2rem);display:grid}.nw .stat-num{font-family:var(--font-display), sans-serif;font-size:var(--fs-stat);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--fg-0);overflow-wrap:anywhere;order:1;font-weight:600;line-height:.9}.nw .stat-suffix{color:var(--accent-text);vertical-align:top;margin-left:.08em;font-size:.4em}.nw .stat-label{font-size:var(--fs-small);color:var(--fg-2);order:2;max-width:28ch;margin:0}.nw .stats.is-single{grid-template-columns:1fr}@media (min-width:900px){.nw .stats{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}}.nw .cta-panel{isolation:isolate;border-radius:var(--r-lg);background:var(--accent-soft);border:1px solid var(--accent-line);gap:2rem;padding:clamp(2rem,1rem + 4vw,5rem);display:grid;position:relative;overflow:hidden}.nw .cta-panel:before{content:"";z-index:-1;background:radial-gradient(420px circle at var(--sx,50%) var(--sy,50%), var(--accent-glow), transparent 60%);opacity:0;transition:opacity .4s var(--ease-out-quart);position:absolute;inset:0}.nw .cta-title{font-size:var(--fs-h2);letter-spacing:-.03em;color:var(--fg-0);max-width:18ch;font-weight:600;line-height:1.02}.nw .cta-body{color:var(--fg-1);max-width:46ch}.nw .cta-actions{justify-items:start;gap:1rem;display:grid}.nw .cta-email{font-family:var(--font-mono), monospace;font-size:var(--fs-small);color:var(--fg-1);overflow-wrap:anywhere}@media (min-width:900px){.nw .cta-panel{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media (hover:hover) and (pointer:fine){.nw .cta-panel:hover:before{opacity:1}}.nw .contact-grid{grid-template-columns:1fr;row-gap:2.5rem;display:grid}.nw .contact-aside{align-content:start;gap:2rem;display:grid}.nw .detail-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.nw .detail-list li{border-top:1px solid var(--line);gap:.25rem;padding-block:.9rem;display:grid}.nw .detail-list li:last-child{border-bottom:1px solid var(--line)}.nw .detail-list .label{color:var(--fg-2)}.nw .detail-list a{color:var(--fg-0);overflow-wrap:anywhere;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nw .detail-list a:hover{color:var(--accent-text)}.nw .copy-email{min-height:44px;color:var(--fg-2);font:var(--fs-small) var(--font-mono), monospace;cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:0;display:inline-flex}.nw .copy-email:hover{color:var(--fg-0)}.nw .contact-include-title{font-family:var(--font-body), sans-serif;color:var(--fg-0);margin-bottom:.75rem;font-size:1rem;font-weight:600}.nw .contact-include ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.nw .contact-include li{color:var(--fg-1);font-size:var(--fs-small);padding-left:1.4rem;position:relative}.nw .contact-include li:before{content:"";background:var(--accent-text);width:8px;height:1px;position:absolute;top:.55em;left:0}.nw .form-card{border-radius:var(--r-md);background:var(--ink-1);border:1px solid var(--line-strong);box-shadow:0 1px 0 0 var(--line-strong) inset, 0 30px 80px -40px #000c;min-width:0;padding:clamp(1.5rem,1.1rem + 1.6vw,2.5rem);position:relative}.nw .form{align-content:start;gap:1.25rem;display:grid}.nw .field{gap:.45rem;display:grid;position:relative}.nw .field-label{font-family:var(--font-body), sans-serif;color:var(--fg-1);font-size:.9375rem;font-weight:500;transition:color .2s}.nw .field:focus-within .field-label{color:var(--fg-0)}.nw .field input,.nw .field textarea{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--ink-0);width:100%;min-height:52px;color:var(--fg-0);font:400 1rem/1.4 var(--font-body), sans-serif;transition:border-color .2s var(--ease-out-quart), box-shadow .2s var(--ease-out-quart);outline:none;padding:0 1rem}.nw .field textarea{resize:vertical;min-height:9rem;padding:.9rem 1rem;line-height:1.55}.nw .field input::placeholder,.nw .field textarea::placeholder{color:var(--fg-2);opacity:.85}.nw .field input:hover,.nw .field textarea:hover{border-color:#ffffff47;border-color:lab(100% -.0000298023 .0000119209/.28)}.nw .field input:focus-visible,.nw .field textarea:focus-visible{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-line);outline:none}.nw .field[data-invalid=true] input,.nw .field[data-invalid=true] textarea{border-color:var(--danger);background:color-mix(in oklab, var(--danger) 6%, var(--ink-0))}.nw .field[data-invalid=true] input:focus-visible,.nw .field[data-invalid=true] textarea:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--danger) 35%, transparent)}.nw .field-error{font-size:var(--fs-small);color:var(--danger)}.nw .consent{color:var(--fg-1);font-size:var(--fs-small);align-items:flex-start;gap:.75rem;display:flex}.nw .consent input{width:20px;height:20px;accent-color:var(--accent-fill);cursor:pointer;flex:none;margin:.15rem 0 0}.nw .consent label{cursor:pointer;line-height:1.5}.nw .consent [data-invalid=true],.nw .consent .field-error{margin-top:.35rem}.nw .form-error{border:1px solid var(--danger);border-radius:var(--r-md);background:color-mix(in oklab, var(--danger) 12%, var(--ink-0));color:var(--fg-0);font-size:var(--fs-small);align-items:flex-start;gap:.6rem;padding:.9rem 1.1rem;line-height:1.5;display:flex}.nw .btn.form-submit{width:100%;min-height:56px}.nw .hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.nw .form-success{outline:none;align-content:start;gap:1.25rem;padding-block:1rem;display:grid}.nw .check-ring{width:40px;height:40px;color:var(--accent-text)}.nw .check-ring circle{fill:none;stroke:currentColor;stroke-width:1.5px}.nw .check-ring path{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px}@media (prefers-reduced-motion:no-preference){.nw .form-success .check-ring path{stroke-dashoffset:24px;animation:draw-check .6s var(--ease-out-expo) .15s both}}@keyframes draw-check{to{stroke-dashoffset:0}}.nw .form-wrap-inner{align-content:start;display:grid}.nw .ghost-btn{color:var(--fg-0);box-shadow:inset 0 0 0 1px var(--line-strong);background:0 0;justify-self:start}@media (min-width:900px){.nw .contact-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;column-gap:1.5rem}.nw .contact-aside{grid-column:1/span 4;padding-top:.5rem}.nw .form-card{grid-column:6/span 7}}.nw .site-footer{border-top:1px solid var(--line);padding-block:clamp(3.5rem,2.5rem + 4vw,6rem) 2rem}.nw .footer-top{grid-template-columns:1fr;gap:2.5rem;display:grid}.nw .footer-name{font-family:var(--font-display), sans-serif;letter-spacing:-.01em;color:var(--fg-0);align-items:center;gap:.6rem;font-size:1.375rem;font-weight:700;display:inline-flex}.nw .footer-name .brand-mark{width:8px;height:8px}.nw .footer-tagline{max-width:30ch;color:var(--fg-2);font-size:var(--fs-small);margin-top:.75rem}.nw .footer-col h2{font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);margin-bottom:.75rem;font-weight:500}.nw .footer-col ul{gap:.1rem;margin:0;padding:0;list-style:none;display:grid}.nw .footer-col a{min-height:40px;color:var(--fg-1);overflow-wrap:anywhere;align-items:center;text-decoration:none;display:inline-flex}.nw .footer-col a:hover{color:var(--accent-text)}.nw .footer-col p{color:var(--fg-1);font-size:var(--fs-small);overflow-wrap:anywhere}.nw .footer-col .copy-email{min-height:40px;font-size:var(--fs-small)}.nw .footer-bottom{border-top:1px solid var(--line);font-size:var(--fs-small);color:var(--fg-2);place-items:center;gap:1rem 1.5rem;margin-top:clamp(2.5rem,2rem + 3vw,4rem);padding-top:1.25rem;display:grid}.nw .footer-bottom p{color:var(--fg-2);margin:0}.nw .footer-bottom .to-top{min-height:44px;color:var(--fg-1);align-items:center;text-decoration:none;display:inline-flex}.nw .footer-bottom .to-top:hover{color:var(--accent-text)}@media (min-width:900px){.nw .footer-bottom{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.nw .footer-bottom p{justify-self:start}.nw .footer-bottom .to-top{justify-self:end}}@media (min-width:640px){.nw .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 2rem}.nw .footer-brand{grid-column:1/-1}}@media (min-width:900px){.nw .footer-top{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:2rem}.nw .footer-brand{grid-column:auto}}.preview-badge{z-index:90;color:#f5f6f8;font-family:var(--font-mono), monospace;letter-spacing:.04em;background:#16181d;border:1px solid #ffffff2e;border-radius:6px;padding:.45rem .8rem;font-size:.75rem;position:fixed;bottom:1rem;left:1rem}@media (prefers-reduced-motion:reduce){.nw *,.nw :before,.nw :after{transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}.nw .frame{transform:none}.nw [data-parallax]{translate:none}.nw .magnet{transform:none!important}.nw .marquee{-webkit-mask-image:none;mask-image:none}.nw .marquee-track{white-space:normal;flex-wrap:wrap;width:auto}.nw .marquee-group[aria-hidden=true]{display:none}}@media (max-width:767px){.nw .hero{padding-top:7rem}.nw .hero-title{max-width:100%}.nw .cta-row .btn,.nw .cta-row{width:100%}}@supports not (color:oklch(from red l c h)){.nw .stats{background:#2b2e35}}.nw .footer-company{border-top:1px solid var(--line);margin-top:1rem;padding-top:.75rem}.nw .footer-company p{color:var(--fg-2)}.nw .footer-button{min-height:40px;color:var(--fg-1);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.nw .footer-button:hover{color:var(--accent-text)}.nw .sal-badge{border-radius:6px;width:202px;max-width:100%;line-height:0;text-decoration:none;transition:opacity .16s,transform .16s;display:inline-flex}.nw .sal-badge img{object-fit:contain;width:202px;max-width:100%;height:50px;display:block}.nw .sal-badge:hover{opacity:.85;transform:translateY(-1px)}.nw .sal-badge-text{width:202px;max-width:100%;height:50px;color:var(--fg-1);font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;text-align:center;flex-direction:column;justify-content:center;line-height:1.2;display:flex}.nw .sal-badge-name{font-size:1rem;font-weight:700}.nw .sal-badge-sub{font-size:.6875rem}@media (prefers-reduced-motion:reduce){.nw .sal-badge{transition:none}.nw .sal-badge:hover{transform:none}}.nw .cookie-bar{z-index:70;padding:.875rem 1rem calc(.875rem + env(safe-area-inset-bottom));background:color-mix(in oklab, var(--ink-1) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line-strong);color:var(--fg-1);font-size:var(--fs-small);animation:cookie-in .5s var(--ease-out-expo) both;position:fixed;inset:auto 0 0}.nw .cookie-bar-inner{gap:.875rem;max-width:1320px;margin-inline:auto;display:grid}.nw .cookie-copy{align-items:flex-start;gap:.75rem;display:flex}.nw .cookie-icon{border-radius:var(--r-md);background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);flex:none;place-items:center;display:grid}.nw .cookie-title{color:var(--fg-0);font-family:var(--font-display), sans-serif;font-size:1rem;font-weight:600}.nw .cookie-text{max-width:70ch;color:var(--fg-2);margin-top:.2rem}.nw .cookie-text a{color:var(--accent-text);text-underline-offset:3px}.nw .cookie-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.nw .cookie-btn{min-height:44px;padding:.6rem 1rem;font-size:.9375rem}.nw .cookie-manage{min-height:44px;color:var(--fg-1);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;grid-column:1/-1;padding:0;text-decoration:underline}.nw .cookie-manage:hover{color:var(--accent-text)}.nw .cookie-dialog{border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--ink-1);width:min(560px,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--fg-1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:auto;padding:0;overflow:auto;box-shadow:0 30px 80px -20px #0009}.nw .cookie-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050608b3}.nw .cookie-form{gap:1.25rem;padding:clamp(1.25rem,1rem + 1vw,1.75rem);display:grid}.nw .cookie-dialog-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.nw .cookie-dialog-head h2{font-size:1.375rem}.nw .cookie-close{border-radius:var(--r-pill);width:44px;height:44px;color:var(--fg-1);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;margin:-.5rem -.5rem 0 0;display:grid}.nw .cookie-close:hover{background:var(--ink-2);color:var(--fg-0)}.nw .cookie-dialog-intro{font-size:var(--fs-small);color:var(--fg-2)}.nw .cookie-dialog-intro a{color:var(--accent-text)}.nw .cookie-categories{border-top:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.nw .cookie-category{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.nw .cookie-category-title{color:var(--fg-0);font-weight:600}.nw .cookie-category-desc{font-size:var(--fs-small);color:var(--fg-2);margin-top:.25rem}.nw .cookie-switch{cursor:pointer;background:0 0;border:0;flex:none;width:52px;height:44px;padding:0;position:relative}.nw .cookie-switch:disabled{cursor:not-allowed;opacity:.6}.nw .cookie-switch:before{content:"";border-radius:var(--r-pill);background:var(--ink-2);width:52px;height:30px;box-shadow:inset 0 0 0 1px var(--line-strong);transition:background-color .2s var(--ease-out-quart);position:absolute;top:50%;left:0;transform:translateY(-50%)}.nw .cookie-switch-knob{background:var(--fg-2);width:22px;height:22px;transition:transform .3s var(--ease-out-expo), background-color .2s var(--ease-out-quart);border-radius:50%;margin-top:-11px;position:absolute;top:50%;left:4px}.nw .cookie-switch[aria-checked=true]:before{background:var(--accent-fill);box-shadow:none}.nw .cookie-switch[aria-checked=true] .cookie-switch-knob{background:var(--on-accent);transform:translate(22px)}.nw .cookie-dialog-actions{justify-content:flex-end;display:flex}@media (max-width:639px){.nw .cookie-dialog-actions .btn{width:100%}}@media (min-width:900px){.nw .cookie-bar-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem}.nw .cookie-actions{grid-template-columns:auto auto auto;align-items:center}.nw .cookie-btn{padding-inline:1.4rem}.nw .cookie-manage{grid-column:auto}}@keyframes cookie-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@keyframes cookie-dialog-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.nw .cookie-dialog[open]{animation:cookie-dialog-in .26s var(--ease-out-expo) both}}@media (prefers-reduced-motion:reduce){.nw .cookie-bar,.nw .cookie-switch:before,.nw .cookie-switch-knob{transition:none;animation:none}}.nw .legal{padding-block:clamp(7.5rem,6rem + 4vw,9rem) clamp(4rem,3rem + 4vw,7rem)}.nw .legal-head{border-bottom:1px solid var(--line);gap:.75rem;max-width:70ch;margin-bottom:clamp(2rem,1.5rem + 2vw,3rem);padding-bottom:clamp(2rem,1.5rem + 2vw,3rem);display:grid}.nw .legal-head h1{letter-spacing:-.02em;font-size:clamp(2.25rem,1.4rem + 3.6vw,4rem);line-height:1.05}.nw .legal-updated{font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.04em;color:var(--fg-2)}.nw .legal-layout{gap:2.5rem;display:grid}.nw .legal-toc{font-size:var(--fs-small)}.nw .legal-toc-title{font-family:var(--font-mono), monospace;font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);margin-bottom:.5rem}.nw .legal-toc ol{gap:.1rem;margin:0;padding:0;list-style:none;display:grid}.nw .legal-toc a{min-height:36px;color:var(--fg-1);align-items:center;text-decoration:none;display:inline-flex}.nw .legal-toc a:hover{color:var(--accent-text)}.nw .legal-body{max-width:70ch}.nw .legal-body>*+*{margin-top:1em}.nw .legal-body h2{font-size:var(--fs-h3);margin-top:2.5em;scroll-margin-top:6rem}.nw .legal-body h3{margin-top:1.75em;scroll-margin-top:6rem;font-size:1.25rem}.nw .legal-body ul{gap:.4rem;padding-left:1.25rem;display:grid}.nw .legal-body li::marker{color:var(--accent-text)}.nw .legal-body strong{color:var(--fg-0);font-weight:600}.nw .legal-body a{color:var(--accent-text);text-underline-offset:3px;overflow-wrap:anywhere;text-decoration-thickness:1px}@media (min-width:960px){.nw .legal-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:4rem}.nw .legal-toc{position:sticky;top:7rem}}
