@font-face{font-family:"NP Inter";src:url("/fonts/inter-var.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--void:#05060a;--basalt:#0a0c12;--slate:#121620;--slate-2:#1a1f2c;--line:rgba(226,231,255,0.08);--line-strong:rgba(226,231,255,0.16);--paper:#eef0f6;--text:#c7cbd6;--fog:#959cae;--dim:#5e6476;--ion:#4f63ff;--ion-hover:#6072ff;--ion-hi:#8e9cff;--violet:#8a5cff;--danger:#ff8a9b;--font:"NP Inter","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-display:"NP Inter","Inter Display","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--display-ff:"cv11" 1,"ss07" 1,"cv12" 1,"cv13" 1;--step--1:0.8125rem;--step-0:1.0625rem;--step-1:clamp(1.125rem,1.05rem + 0.3vw,1.3125rem);--step-2:clamp(1.3125rem,1.15rem + 0.7vw,1.75rem);--step-3:clamp(1.625rem,1.2rem + 1.7vw,2.625rem);--step-4:clamp(2.5rem,1.35rem + 4.4vw,5.5rem);--gutter:clamp(20px,4.2vw,64px);--max:1440px;--nav-h:72px;--radius-m:18px;--radius-l:28px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-io:cubic-bezier(0.65,0,0.35,1)}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--void);color:var(--text);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 8px);overflow-x:clip}
body{margin:0;min-height:100vh;font:400 var(--step-0) / 1.6 var(--font);letter-spacing:-0.006em;background:var(--void);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
body.menu-open{overflow:hidden}
body::after{content:"";position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%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")}
img,svg,canvas{display:block;max-width:100%}p{margin:0 0 1em}a{color:inherit}h1,h2,h3{margin:0;font-weight:700}main:focus{outline:none}::selection{background:rgba(79,99,255,0.45);color:#fff}
:focus-visible{outline:2px solid var(--ion-hi);outline-offset:3px}.sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-64px;z-index:100;padding:10px 16px;border-radius:10px;background:var(--paper);color:var(--void);font-weight:600;text-decoration:none;transition:top 0.2s}.skip:focus{top:12px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.section{position:relative;padding:clamp(96px,13vw,196px) 0}
.section-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-bottom:clamp(48px,7vw,104px)}.section-head .h2{grid-column:1 / span 8}
.section-head .lede{grid-column:9 / span 4;align-self:end;margin:0}
.h2{font:800 var(--step-4) / 0.96 var(--font-display);letter-spacing:-0.045em;color:var(--paper);font-feature-settings:var(--display-ff);text-wrap:balance}
.lede{font-size:var(--step-1);line-height:1.55;color:var(--text);max-width:40ch}.kicker{margin:0 0 28px;font:600 0.9375rem / 1.2 var(--font);letter-spacing:0;color:var(--ion-hi)}
@media (max-width:960px){.section-head{display:block}.section-head .lede{margin-top:24px}}
.btn{--h:52px;position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--h);padding:0 26px;border:1px solid transparent;border-radius:999px;font:600 1rem / 1 var(--font);letter-spacing:-0.01em;text-decoration:none;white-space:nowrap;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform 0.35s var(--ease-out),background-color 0.3s,box-shadow 0.4s var(--ease-out),border-color 0.3s,color 0.3s}
.btn-primary{background:var(--ion);color:#fff;box-shadow:0 0 0 0 rgba(79,99,255,0),0 12px 32px -14px rgba(79,99,255,0.85)}
.btn-primary::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,0.3) 50%,transparent 70%);transform:translateX(-130%);transition:transform 0.9s var(--ease-out)}
.btn-primary:hover{background:var(--ion-hover);transform:translateY(-1px);box-shadow:0 0 0 6px rgba(79,99,255,0.16),0 16px 40px -14px rgba(79,99,255,0.9)}.btn-primary:hover::after{transform:translateX(130%)}
.btn:active{transform:translateY(0) scale(0.98)}.btn-ghost{color:var(--paper);border-color:var(--line-strong);background:rgba(255,255,255,0.02)}
.btn-ghost:hover{border-color:rgba(226,231,255,0.36);background:rgba(255,255,255,0.06)}.btn-sm{--h:42px;padding:0 18px;font-size:0.9375rem}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;font:750 1.3125rem / 1 var(--font-display);letter-spacing:-0.04em;font-feature-settings:var(--display-ff)}
.mark{width:26px;height:26px;flex:none;color:var(--paper)}.mark-dot{fill:var(--ion)}.brand:hover .mark-dot{fill:var(--ion-hi)}
.nav{position:fixed;inset:0 0 auto;z-index:50;height:var(--nav-h);border-bottom:1px solid transparent;transition:background-color 0.4s,border-color 0.4s,backdrop-filter 0.4s}
.nav.is-scrolled{background:rgba(5,6,10,0.78);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border-bottom-color:var(--line)}
.menu-open .nav{background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.nav-inner{display:flex;align-items:center;gap:24px;height:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.nav-links{margin-left:auto}
.nav-links ul{display:flex;gap:2px;margin:0;padding:0;list-style:none}
.nav-links a{position:relative;display:block;padding:10px 14px;border-radius:999px;color:var(--fog);font-size:0.9375rem;font-weight:500;text-decoration:none;transition:color 0.25s}
.nav-links a::after{content:"";position:absolute;left:50%;bottom:3px;width:4px;height:4px;border-radius:50%;background:var(--ion);transform:translateX(-50%) scale(0);transition:transform 0.4s var(--ease-out)}
.nav-links a:hover,.nav-links a[aria-current="true"]{color:var(--paper)}.nav-links a[aria-current="true"]::after{transform:translateX(-50%) scale(1)}.nav-cta{margin-left:8px}
.menu-btn{display:none;align-items:center;justify-content:center;width:46px;height:46px;margin-left:auto;border:1px solid var(--line-strong);border-radius:50%;background:rgba(5,6,10,0.4);color:var(--paper);cursor:pointer}
.menu-btn-lines{position:relative;width:18px;height:10px}
.menu-btn-lines::before,.menu-btn-lines::after{content:"";position:absolute;left:0;right:0;height:1.5px;border-radius:2px;background:currentColor;transition:transform 0.4s var(--ease-out),top 0.4s var(--ease-out)}
.menu-btn-lines::before{top:0}.menu-btn-lines::after{top:8.5px}.menu-btn[aria-expanded="true"] .menu-btn-lines::before{top:4.25px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] .menu-btn-lines::after{top:4.25px;transform:rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:45;display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:calc(var(--nav-h) + 24px) var(--gutter) calc(32px + env(safe-area-inset-bottom));overflow-y:auto;background:radial-gradient(90% 60% at 100% 0%,rgba(79,99,255,0.14),transparent 60%),var(--void);opacity:0;transition:opacity 0.35s var(--ease-out)}
.menu[hidden]{display:none}.menu.is-open{opacity:1}.menu-links{margin:0;padding:0;list-style:none}.menu-links li{overflow:hidden}
.menu-links a{display:block;padding:12px 0;border-bottom:1px solid var(--line);color:var(--paper);font:750 clamp(2.25rem,9.5vw,3.5rem) / 1.05 var(--font-display);letter-spacing:-0.045em;font-feature-settings:var(--display-ff);text-decoration:none;transform:translateY(100%);transition:transform 0.6s var(--ease-out)}
.menu.is-open .menu-links a{transform:none}.menu.is-open .menu-links li:nth-child(2) a{transition-delay:0.04s}.menu.is-open .menu-links li:nth-child(3) a{transition-delay:0.08s}
.menu.is-open .menu-links li:nth-child(4) a{transition-delay:0.12s}.menu.is-open .menu-links li:nth-child(5) a{transition-delay:0.16s}.menu-foot{display:flex;flex-direction:column;gap:18px}.menu-foot .btn{width:100%}
.menu-mail{color:var(--fog);text-decoration:none;text-align:center}@media (max-width:960px){.nav-links,.nav-cta{display:none}.menu-btn{display:inline-flex}}@media (min-width:961px){.menu{display:none !important}}
.footer{position:relative;padding:clamp(64px,8vw,112px) 0 32px;border-top:1px solid var(--line);background:var(--void)}
.footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px 48px;padding-bottom:56px;border-bottom:1px solid var(--line)}.brand-lg{font-size:2rem;gap:12px}
.brand-lg .mark{width:36px;height:36px}.footer-desc{max-width:46ch;margin:0;color:var(--fog)}.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px 32px;padding:48px 0}
.footer-h{margin:0 0 18px;color:var(--paper);font:600 0.9375rem / 1.2 var(--font)}.footer-col ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.footer-col a{color:var(--fog);font-size:0.9375rem;text-decoration:none;transition:color 0.2s}.footer-col a:hover{color:var(--paper)}.footer-col address{color:var(--fog);font-size:0.9375rem;font-style:normal}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:10px 32px;padding-top:28px;border-top:1px solid var(--line);color:var(--fog);font-size:0.8125rem}.footer-legal p{margin:0}
.footer-legal ul{display:flex;gap:24px;margin:0 0 0 auto;padding:0;list-style:none}.footer-legal a{color:var(--fog);text-decoration:none}.footer-legal a:hover{color:var(--paper)}
@media (max-width:640px){.footer-legal{flex-direction:column;align-items:flex-start}.footer-legal ul{margin:6px 0 0}}
.hero{position:relative;display:flex;min-height:100vh;min-height:100svh;overflow:hidden;isolation:isolate}.hero-canvas{position:absolute;inset:0;z-index:-2;width:100%;height:100%}
.hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(55% 55% at 88% 14%,rgba(79,99,255,0.17),transparent 65%),radial-gradient(40% 40% at 70% 6%,rgba(138,92,255,0.1),transparent 70%),linear-gradient(to top,var(--void) 0%,rgba(5,6,10,0.6) 22%,rgba(5,6,10,0) 50%)}
.hero-inner{display:flex;flex-direction:column;justify-content:flex-end;padding-top:calc(var(--nav-h) + 140px);padding-bottom:clamp(32px,5vw,64px)}
.hero-title{margin:0;font:800 clamp(3.4rem,min(10.6vw,18.5vh),12rem) / 0.88 var(--font-display);letter-spacing:-0.046em;color:var(--paper);font-feature-settings:var(--display-ff)}
.hero-line{display:block;padding-bottom:0.02em}.hero-foot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end;margin-top:clamp(32px,4.5vw,64px)}
.hero-tag{grid-column:1 / span 4;display:flex;align-items:center;gap:14px;margin:0;color:var(--fog);font-size:0.9375rem}.hero-tag::before{content:"";width:32px;height:1px;background:var(--ion)}
.hero-side{grid-column:7 / span 6;display:flex;flex-direction:column;gap:28px}.hero-lede{max-width:46ch;margin:0;font-size:var(--step-1);line-height:1.5;color:var(--text)}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:960px){.hero-inner{padding-top:calc(var(--nav-h) + 200px)}.hero-foot{display:flex;flex-direction:column;align-items:stretch;gap:32px}.hero-tag{order:2}}
@media (max-width:600px){.hero-title{font-size:15.6vw;letter-spacing:-0.05em}}@media (max-width:520px){.hero-ctas .btn{flex:1 1 100%}}.js .hero-title{opacity:0;animation:np-failsafe 0s 2.6s forwards}
.js .hero-title.is-shown{opacity:1;animation:none}.hero-title .ch{display:inline-block}
.hero-title.is-split .ch{opacity:0;filter:blur(14px);transform:translate(var(--dx),var(--dy)) scale(1.08);transition:opacity 0.9s var(--ease-out) var(--d),filter 1.2s var(--ease-out) var(--d),transform 1.5s var(--ease-out) var(--d)}
.hero-title.is-assembled .ch{opacity:1;filter:blur(0);transform:none}
.js [data-hero-fade]{opacity:0;transform:translateY(18px);transition:opacity 1.1s var(--ease-out),transform 1.2s var(--ease-out);animation:np-failsafe-rise 0s 3.2s forwards}
.js .hero-loaded [data-hero-fade]{opacity:1;transform:none}.js .hero-loaded .hero-side{transition-delay:0.12s}@keyframes np-failsafe{to{opacity:1} }@keyframes np-failsafe-rise{to{opacity:1;transform:none} }
.services-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.viewer{grid-column:1 / span 5;position:sticky;top:calc(var(--nav-h) + 32px);display:flex;flex-direction:column;aspect-ratio:1 / 1.08;max-height:calc(100vh - var(--nav-h) - 64px);border:1px solid var(--line);border-radius:var(--radius-l);background:radial-gradient(80% 70% at 50% 42%,rgba(79,99,255,0.1),transparent 70%),var(--basalt);overflow:hidden}
.viewer-stage{position:relative;flex:1}.viz{position:absolute;inset:6%;width:88%;height:88%;opacity:0;transform:scale(0.96);transition:opacity 0.6s var(--ease-out),transform 0.9s var(--ease-out)}
.viz.is-active{opacity:1;transform:none}.viewer-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;border-top:1px solid var(--line);color:var(--fog);font-size:0.875rem}
.viewer-ticks{display:flex;gap:6px}.viewer-ticks i{width:14px;height:3px;border-radius:2px;background:var(--line-strong);transition:width 0.5s var(--ease-out),background-color 0.4s}
.viewer-ticks i.is-on{width:28px;background:var(--ion)}.svc-list{grid-column:7 / span 6;margin:0;padding:0;list-style:none}
.svc{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:22px;padding:38px 0;border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav-h) + 40px)}
.svc:last-child{border-bottom:1px solid var(--line)}
.svc::before{content:"";position:absolute;left:0;top:-1px;width:0;height:1px;background:linear-gradient(90deg,var(--ion),rgba(79,99,255,0));transition:width 0.9s var(--ease-out)}.svc.is-active::before{width:100%}
.svc-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line-strong);border-radius:14px;color:var(--fog);transition:background-color 0.4s,border-color 0.4s,color 0.4s}
.svc-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.svc-icon .i-knob{fill:var(--void);transition:fill 0.4s}
.svc.is-active .svc-icon{border-color:var(--ion);background:var(--ion);color:#fff}.svc.is-active .svc-icon .i-knob{fill:var(--ion)}
.svc-name{margin:6px 0 12px;font:700 var(--step-3) / 1.04 var(--font-display);letter-spacing:-0.035em;color:var(--fog);font-feature-settings:var(--display-ff);transition:color 0.4s}
.svc.is-active .svc-name{color:var(--paper)}.svc-desc{max-width:48ch;margin:0;color:var(--fog);transition:color 0.4s}.svc.is-active .svc-desc{color:var(--text)}@media (max-width:960px){.viewer{display:none}
.svc-list{grid-column:1 / -1}.svc{grid-template-columns:44px minmax(0,1fr);gap:18px;padding:30px 0}.svc-icon{width:44px;height:44px;border-radius:12px}.svc-name{margin-top:4px}}
.viz text{fill:var(--fog);font:500 13px var(--font);letter-spacing:0}.viz .v-frame{fill:rgba(255,255,255,0.015);stroke:var(--line-strong);stroke-width:1.5}
.viz .v-card{fill:var(--slate);stroke:var(--line);stroke-width:1}.viz .v-ad .v-card{stroke:var(--ion);stroke-width:1.5}.viz .v-media{fill:var(--slate-2)}.viz .v-ad .v-media{fill:rgba(79,99,255,0.28)}
.viz .v-line{fill:none;stroke:var(--line-strong);stroke-width:5;stroke-linecap:round}.viz .v-cta{fill:var(--ion)}.viz .v-fill-dim{fill:var(--slate-2)}.viz .v-fill-ion{fill:var(--ion)}.viz .v-soft{opacity:0.45}
.viz .v-grid{fill:none;stroke:var(--line);stroke-width:1.5}.viz .v-target{fill:none;stroke:var(--ion-hi);stroke-width:1.5;stroke-dasharray:4 7;opacity:0.7}
.viz .v-bars rect{fill:var(--slate-2);transform-box:fill-box;transform-origin:50% 100%}.viz .v-ion{fill:none;stroke:var(--ion);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.viz .v-draw{stroke-dasharray:1;stroke-dashoffset:0}.viz .v-pulse{fill:none;stroke:var(--ion);stroke-width:1.5;opacity:0;transform-box:fill-box;transform-origin:center}
.viz .v-swarm circle{fill:var(--ion-hi);transform-box:fill-box}.viz .v-drops circle{fill:var(--dim)}.viz .v-leads circle{fill:var(--fog)}.viz .v-variant{transform-box:fill-box;transform-origin:50% 100%}
.viz .v-crop{fill:none;stroke:var(--fog);stroke-width:1.5}.viz .v-scan{fill:var(--ion)}.viz .v-knob{fill:var(--void);stroke:var(--ion);stroke-width:3;transform:translateX(var(--a))}
.viz .v-noisy{fill:none;stroke:var(--dim);stroke-width:1.5;stroke-linejoin:round}.viz .v-node{fill:var(--slate-2);stroke:var(--line-strong);stroke-width:1.5}.viz .v-on{fill:var(--ion);stroke:var(--ion)}
.viz .v-goal{fill:var(--ion-hi)}.viz.is-active .v-feed{animation:np-feed 10s linear infinite}.viz.is-active .v-swarm circle{animation:np-swarm 3.6s var(--ease-io) infinite}
.viz.is-active .v-swarm circle:nth-child(2){animation-delay:0.45s}.viz.is-active .v-swarm circle:nth-child(3){animation-delay:0.9s}.viz.is-active .v-swarm circle:nth-child(4){animation-delay:1.35s}
.viz.is-active .v-swarm circle:nth-child(5){animation-delay:1.8s}.viz.is-active .v-swarm circle:nth-child(6){animation-delay:2.25s}.viz.is-active .v-swarm circle:nth-child(7){animation-delay:2.7s}
.viz.is-active .v-swarm circle:nth-child(8){animation-delay:3.15s}.viz.is-active .v-bars rect{animation:np-bar 1.1s var(--ease-out) both;animation-delay:calc(var(--i) * 90ms)}
.viz.is-active .v-draw{animation:np-draw 1.8s var(--ease-out) 0.4s both}.viz.is-active .v-pulse{animation:np-pulse 2.4s var(--ease-out) 1.4s infinite}
.viz.is-active .v-drops circle{animation:np-drop 4.8s var(--ease-io) var(--d) infinite both}.viz.is-active .v-leads circle{animation:np-lead 5.4s var(--ease-io) var(--d) infinite both}
.viz.is-active .v-variant{animation:np-variant 9s var(--ease-io) var(--d) infinite}.viz.is-active .v-variant .v-card{animation:np-variant-card 9s var(--ease-io) var(--d) infinite}
.viz.is-active .v-scan{animation:np-scan 9s var(--ease-io) infinite}.viz.is-active .v-knob{animation:np-knob 4.2s var(--ease-io) var(--d) infinite alternate}
.viz.is-active .v-noisy{animation:np-quiet 1.6s var(--ease-out) 0.3s both}.viz.is-active .v-on{animation:np-node 0.7s var(--ease-out) var(--d) both}.viewer.is-paused .viz *{animation-play-state:paused}
@keyframes np-feed{to{transform:translateY(-272px)} }@keyframes np-swarm{0%{transform:translate(0,0);opacity:0}15%{opacity:1}80%{transform:translate(var(--dx),var(--dy));opacity:0.9}
100%{transform:translate(var(--dx),var(--dy));opacity:0}}@keyframes np-bar{from{transform:scaleY(0)} }@keyframes np-draw{from{stroke-dashoffset:1} }@keyframes np-pulse{0%{transform:scale(0.6);opacity:0.8}
100%{transform:scale(2.6);opacity:0}}@keyframes np-drop{0%{transform:translate(0,0);opacity:0}10%{opacity:0.9}45%{transform:translate(calc(var(--dx) * 2),110px);opacity:0.7}
60%,100%{transform:translate(calc(var(--dx) * 2.4),130px);opacity:0}}@keyframes np-lead{0%{transform:translate(0,0);opacity:0;fill:var(--fog)}8%{opacity:1}55%{transform:translate(var(--dx),200px);fill:var(--fog)}
70%{fill:var(--ion-hi)}92%{transform:translate(var(--dx),300px);opacity:1;fill:var(--ion-hi)}100%{transform:translate(var(--dx),316px);opacity:0;fill:var(--ion-hi)}}
@keyframes np-variant{0%,30%{transform:translateY(-14px)}38%,92%{transform:none}100%{transform:translateY(-14px)}}@keyframes np-variant-card{0%,30%{stroke:var(--ion);fill:#161b2d}
38%,92%{stroke:var(--line);fill:var(--slate)}100%{stroke:var(--ion);fill:#161b2d}}@keyframes np-scan{0%,30%{transform:translateX(0)}38%,63%{transform:translateX(110px)}71%,96%{transform:translateX(220px)}
100%{transform:translateX(0)}}@keyframes np-knob{from{transform:translateX(var(--a))}to{transform:translateX(var(--b))}}@keyframes np-quiet{to{opacity:0.35} }
@keyframes np-node{from{fill:var(--slate-2);stroke:var(--line-strong)} }.why{background:linear-gradient(180deg,var(--void),var(--basalt) 30%,var(--basalt) 70%,var(--void))}
.why-statement{max-width:17ch;margin:0 0 clamp(56px,8vw,112px);font:750 clamp(2.4rem,0.9rem + 5.4vw,6.5rem) / 1 var(--font-display);letter-spacing:-0.048em;color:var(--paper);font-feature-settings:var(--display-ff);text-wrap:balance}
.why-statement .why-a{color:var(--fog)}.why-statement .w{transition:color 0.35s}.np-ready .why-statement .w{color:rgba(238,240,246,0.26)}.np-ready .why-statement .why-a .w.is-lit{color:var(--fog)}
.np-ready .why-statement .why-b .w.is-lit{color:var(--paper)}.why-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:center}
.why-visual{grid-column:1 / span 7;margin:0;padding:clamp(20px,3vw,36px);border:1px solid var(--line);border-radius:var(--radius-l);background:radial-gradient(60% 70% at 68% 50%,rgba(79,99,255,0.08),transparent 70%),var(--void)}
.why-visual canvas{width:100%;aspect-ratio:16 / 7}.why-legend{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:22px;color:var(--dim);font-size:0.875rem}
.why-legend span{display:inline-flex;align-items:center;gap:10px;transition:color 0.4s}
.why-legend span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dim);transition:background-color 0.4s,box-shadow 0.4s}.why-legend span.is-on{color:var(--paper)}
.why-legend span[data-legend="0"].is-on::before{background:var(--fog)}.why-legend span[data-legend="1"].is-on::before{background:var(--ion);box-shadow:0 0 12px rgba(79,99,255,0.9)}.why-copy{grid-column:9 / span 4}
.why-copy .lede{margin-bottom:20px}.why-copy p:last-child{margin:0;color:var(--fog)}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:clamp(72px,10vw,136px) 0 0;padding:0;list-style:none}.pillar{padding-top:28px;border-top:1px solid var(--line-strong)}
.pillar svg{width:28px;height:28px;margin-bottom:32px;fill:none;stroke:var(--ion-hi);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pillar h3{margin:0 0 12px;font:650 var(--step-2) / 1.15 var(--font-display);letter-spacing:-0.025em;color:var(--paper);font-feature-settings:var(--display-ff)}
.pillar p{margin:0;color:var(--fog);font-size:1rem;max-width:34ch}@media (max-width:1100px){.pillars{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:56px}}
@media (max-width:960px){.why-visual,.why-copy{grid-column:1 / -1}.why-copy{margin-top:24px}.why-visual canvas{aspect-ratio:4 / 3}}@media (max-width:640px){.pillars{grid-template-columns:1fr;row-gap:40px}}
.climb{position:relative}.climb-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.climb-track{fill:none;stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:2 9;stroke-linecap:round}
.climb-line{fill:none;stroke:var(--ion);stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(79,99,255,0.65))}
.steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;align-items:start;margin:0;padding:0;list-style:none}.step{position:relative;padding-top:52px}
.step:nth-child(1){margin-top:272px}.step:nth-child(2){margin-top:238px}.step:nth-child(3){margin-top:186px}.step:nth-child(4){margin-top:108px}
.step-node{position:absolute;top:0;left:0;width:18px;height:18px;border:1.5px solid var(--line-strong);border-radius:50%;background:var(--void);transition:background-color 0.5s,border-color 0.5s,box-shadow 0.6s var(--ease-out)}
.step:last-child .step-node{top:-4px;left:-4px;width:26px;height:26px}.step.is-reached .step-node{border-color:var(--ion);background:var(--ion);box-shadow:0 0 0 6px rgba(79,99,255,0.16),0 0 26px rgba(79,99,255,0.75)}
.step:last-child .step-node::after{content:"";position:absolute;inset:-1.5px;border:1.5px solid var(--ion-hi);border-radius:50%;opacity:0}
.step:last-child.is-reached .step-node::after{animation:np-ring 2.8s var(--ease-out) infinite}@keyframes np-ring{0%{transform:scale(1);opacity:0.8}100%{transform:scale(3.2);opacity:0}}
.step-num{display:block;margin-bottom:18px;font:800 var(--step-3) / 1 var(--font-display);letter-spacing:-0.04em;color:var(--dim);font-feature-settings:"ss01" 1,"tnum" 1;transition:color 0.5s}
.step.is-reached .step-num{color:var(--ion-hi)}.step-name{margin:0 0 10px;font:700 var(--step-2) / 1.1 var(--font-display);letter-spacing:-0.03em;color:var(--paper);font-feature-settings:var(--display-ff)}
.step p{max-width:26ch;margin:0;color:var(--fog);font-size:1rem}@media (max-width:960px){.steps{grid-template-columns:1fr;gap:0}.step,.step:nth-child(n){margin-top:0;padding:0 0 52px 56px}
.step:last-child{padding-bottom:0}.step-node{top:6px}.step:last-child .step-node{top:2px}.step-num{margin-bottom:12px}.step p{max-width:40ch}}.about{border-top:1px solid var(--line)}
.about-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}.about-main{grid-column:1 / span 7}.about-side{grid-column:9 / span 4;padding-top:12px}
.about-lead{max-width:30ch;margin:clamp(32px,4vw,48px) 0 36px;font:600 clamp(1.5rem,1.1rem + 1.35vw,2.375rem) / 1.2 var(--font-display);letter-spacing:-0.03em;color:var(--paper);font-feature-settings:var(--display-ff)}
.about-body p{max-width:58ch}.about-body p:last-child{margin:0}.focus{margin:0 0 40px;padding:0;list-style:none}.focus li{padding:20px 0;border-top:1px solid var(--line)}
.focus li:last-child{border-bottom:1px solid var(--line)}.focus h3{margin:0 0 4px;font:600 1.125rem / 1.3 var(--font);color:var(--paper);letter-spacing:-0.01em}.focus p{margin:0;color:var(--fog);font-size:0.9375rem}
.facts{margin:0;padding:6px 24px;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--basalt)}
.facts div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.facts div:last-child{border-bottom:0}.facts dt{color:var(--fog);font-size:0.875rem}
.facts dd{margin:0;color:var(--paper);font-size:0.9375rem;text-align:right}.facts a{color:var(--paper);text-decoration:none}.facts a:hover{color:var(--ion-hi)}
@media (max-width:960px){.about-main,.about-side{grid-column:1 / -1}.about-side{padding-top:32px}}@media (max-width:420px){.facts div{flex-direction:column;gap:4px}.facts dd{text-align:left}}
.contact{overflow:hidden;isolation:isolate;border-top:1px solid var(--line)}
.contact-glow{position:absolute;inset:-10% -10% 0;z-index:-1;pointer-events:none;background:radial-gradient(38% 42% at 24% 38%,rgba(79,99,255,0.2),transparent 70%),radial-gradient(30% 36% at 72% 64%,rgba(138,92,255,0.1),transparent 70%);animation:np-drift 24s var(--ease-io) infinite alternate}
@keyframes np-drift{to{transform:translate3d(7%,-5%,0) scale(1.1)} }.contact-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}.contact-main{grid-column:1 / span 6}
.contact-title{max-width:11ch;margin:0 0 32px;font:800 clamp(3rem,0.8rem + 6.6vw,7.75rem) / 0.92 var(--font-display);letter-spacing:-0.055em;color:var(--paper);font-feature-settings:var(--display-ff)}
.contact-direct{margin:40px 0 0;color:var(--fog)}.contact-direct a{color:var(--paper);text-decoration-color:var(--ion);text-underline-offset:5px;text-decoration-thickness:1.5px}
.contact-direct a:hover{color:var(--ion-hi)}
.form{grid-column:8 / span 5;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding:clamp(24px,3vw,36px);border:1px solid var(--line);border-radius:var(--radius-l);background:linear-gradient(180deg,rgba(20,24,35,0.9),rgba(10,12,18,0.9));box-shadow:0 40px 90px -40px rgba(0,0,0,0.9)}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field-wide{grid-column:1 / -1}.field label{color:var(--text);font-size:0.875rem;font-weight:500}
.field input,.field select,.field textarea{width:100%;min-height:52px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:12px;background:rgba(5,6,10,0.6);color:var(--paper);font:inherit;font-size:1rem;transition:border-color 0.25s,box-shadow 0.25s,background-color 0.25s}
.field textarea{min-height:148px;resize:vertical;line-height:1.5}.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(226,231,255,0.28)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ion);background:rgba(5,6,10,0.85);box-shadow:0 0 0 4px rgba(79,99,255,0.22)}
.field [aria-invalid="true"]{border-color:var(--danger)}.field ::placeholder{color:#7f8699}.field-error{color:var(--danger);font-size:0.8125rem}.field-error:empty{display:none}.select{position:relative}
.select select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer}.select select option{background:var(--slate);color:var(--paper)}
.select::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:1.5px solid var(--fog);border-bottom:1.5px solid var(--fog);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:4px}.form-how{flex:1 1 220px;margin:0;color:var(--fog);font-size:0.8125rem;line-height:1.5}
.form-status{margin:0;color:var(--ion-hi);font-size:0.9375rem}.form-status:empty{display:none}@media (max-width:1100px){.contact-main{grid-column:1 / span 5}.form{grid-column:6 / span 7}}
@media (max-width:960px){.contact-main,.form{grid-column:1 / -1}.form{margin-top:24px}}@media (max-width:560px){.form{grid-template-columns:1fr}.form-foot .btn{width:100%}}
.legal{padding:calc(var(--nav-h) + clamp(64px,10vw,140px)) 0 clamp(80px,10vw,140px)}.legal-wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.legal-head{grid-column:1 / span 5;align-self:start;position:sticky;top:calc(var(--nav-h) + 40px)}.legal-meta{margin:20px 0 28px;color:var(--fog);font-size:0.875rem}.legal-body{grid-column:7 / span 6}
.legal-body section{padding:30px 0;border-top:1px solid var(--line)}.legal-body section:first-child{padding-top:0;border-top:0}
.legal-body h2{margin:0 0 12px;font:650 var(--step-2) / 1.2 var(--font-display);letter-spacing:-0.02em;color:var(--paper);font-feature-settings:var(--display-ff)}
.legal-body p,.legal-body li{max-width:62ch;color:var(--text)}.legal-body p:last-child{margin-bottom:0}.legal-body ul{margin:0;padding-left:1.2em}.legal-body li{margin:0.35em 0}
.legal-body a{color:var(--paper);text-decoration-color:var(--ion);text-underline-offset:4px}@media (max-width:960px){.legal-head,.legal-body{grid-column:1 / -1;position:static}.legal-body{margin-top:32px}}
.notfound{display:flex;align-items:center;min-height:100vh;min-height:100svh;padding:calc(var(--nav-h) + 40px) 0 80px;background:radial-gradient(50% 50% at 80% 20%,rgba(79,99,255,0.14),transparent 70%)}
.notfound-code{margin:0 0 24px;font:800 clamp(7rem,26vw,20rem) / 0.8 var(--font-display);letter-spacing:-0.07em;color:transparent;-webkit-text-stroke:1.5px var(--line-strong)}.notfound .lede{margin:20px 0 36px}
.np-ready [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease-out),transform 1.2s var(--ease-out),clip-path 1.2s var(--ease-out)}
.np-ready .h2[data-reveal],.np-ready .contact-title[data-reveal]{clip-path:inset(0 0 100% 0);transform:translateY(40px)}.np-ready [data-reveal].is-in{opacity:1;transform:none;clip-path:inset(-10% -5% -20% -5%)}
.np-ready .lede[data-reveal].is-in{transition-delay:0.12s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;transition-delay:0s !important}
.js .hero-title,.js [data-hero-fade],.np-ready [data-reveal]{opacity:1 !important;transform:none !important;clip-path:none !important}
.hero-title.is-split .ch{opacity:1 !important;filter:none !important;transform:none !important}.viz *,.contact-glow{animation:none !important}}
