/*! ns-frame · Apache-2.0 © 2026 Francesco Sierchio (Kodec Agency) · https://github.com/kodecagency/ns-frame */
.ns-u,.ns-u-top,.ns-aura,.ns-aura-top{isolation:isolate;position:relative}.ns-u,.ns-u-top{background-color:var(--ns-u-bg,#0a1119)}.ns-aura,.ns-aura-top{overflow:clip}:is(.ns-u,.ns-u-top,.ns-u-left,.ns-u-right,.ns-aura,.ns-aura-top):after{content:"";z-index:-1;pointer-events:none;border-radius:inherit;--a:color-mix(in srgb, var(--ns-u,#3de0ff) 38%, transparent);--b:color-mix(in srgb, var(--ns-u,#3de0ff) 20%, transparent);--h:var(--ns-u-h,1);--r:calc(var(--ns-u-rise,42%) * var(--h));--s:calc(var(--ns-u-side,22%) * (.4 + var(--h) * .6));--k:calc(var(--ns-u-corner,62%) * (.5 + var(--h) * .5));--p1:0% 100%;--p2:100% 100%;--d:to top;--x:to right;--kx:var(--k);--ky:calc(var(--k) * .75);background:radial-gradient(var(--kx) var(--ky) at var(--p1),var(--a),transparent),radial-gradient(var(--kx) var(--ky) at var(--p2),var(--a),transparent),linear-gradient(var(--d),var(--a),var(--b) calc(var(--r) * .4),transparent var(--r)),linear-gradient(var(--x),var(--b),transparent var(--s) calc(100% - var(--s)),var(--b));-webkit-mask:linear-gradient(var(--d),#000 12%,transparent var(--ns-u-fade,88%));mask:linear-gradient(var(--d),#000 12%,transparent var(--ns-u-fade,88%));opacity:calc(var(--ns-u-glow,.6) * var(--ns-u-k,1));position:absolute;inset:0}:is(.ns-u-top,.ns-aura-top):after{scale:1 -1}:is(.ns-u-left,.ns-u-right):after{--p1:0% 0%;--p2:0% 100%;--d:to right;--x:to bottom;--kx:calc(var(--k) * .75);--ky:var(--k)}.ns-u-right:after{scale:-1 1}.ns-u-left,.ns-u-right{isolation:isolate;background-color:var(--ns-u-bg,#0a1119);position:relative}.ns-u-left{--ns-border:linear-gradient(to right, var(--ns-u,#3de0ff), color-mix(in srgb, var(--ns-u,#3de0ff) 35%, transparent) 45%, color-mix(in srgb, var(--ns-u,#3de0ff) 6%, transparent))}.ns-u-right{--ns-border:linear-gradient(to left, var(--ns-u,#3de0ff), color-mix(in srgb, var(--ns-u,#3de0ff) 35%, transparent) 45%, color-mix(in srgb, var(--ns-u,#3de0ff) 6%, transparent))}@property --ns-u{syntax:"<color>";inherits:true;initial-value:#3de0ff}@property --ns-u-rise{syntax:"<percentage>";inherits:true;initial-value:42%}@property --ns-u-glow{syntax:"<number>";inherits:true;initial-value:.6}.ns-u-hover{transition:--ns-u-rise .6s cubic-bezier(.2,.8,.2,1),--ns-u-glow .6s}.ns-u-hover:is(:hover,:focus-within){--ns-u-rise:78%;--ns-u-glow:.95}.ns-u-breathe:after{animation:ns-breathe var(--ns-u-time,4s) ease-in-out infinite}@keyframes ns-breathe{50%{opacity:calc(var(--ns-u-glow,.6) * .45)}}.ns-u-hue{animation:ns-hue var(--ns-u-time,9s) linear infinite}@keyframes ns-hue{0%,to{--ns-u:#3de0ff}33%{--ns-u:#8b7bff}66%{--ns-u:#ff6bd6}}.ns-u{--ns-border:linear-gradient(to top, var(--ns-u,#3de0ff), color-mix(in srgb, var(--ns-u,#3de0ff) 35%, transparent) 45%, color-mix(in srgb, var(--ns-u,#3de0ff) 6%, transparent))}.ns-u-top{--ns-border:linear-gradient(to bottom, var(--ns-u,#3de0ff), color-mix(in srgb, var(--ns-u,#3de0ff) 35%, transparent) 45%, color-mix(in srgb, var(--ns-u,#3de0ff) 6%, transparent))}@property --ns-u-h{syntax:"<number>";inherits:true;initial-value:1}@property --ns-u-k{syntax:"<number>";inherits:true;initial-value:1}.ns-u-top{--ns-u-dir:to bottom}.ns-u-left{--ns-u-dir:to right}.ns-u-right{--ns-u-dir:to left}.ns-u-live{animation:ns-u-live var(--ns-u-time,7s) cubic-bezier(.45,0,.55,1) infinite}@keyframes ns-u-live{0%,to{--ns-u-h:1;--ns-u-k:1}40%{--ns-u-h:.86;--ns-u-k:.7}72%{--ns-u-h:1.12;--ns-u-k:1.1}}.ns-u-tide{animation:ns-u-tide var(--ns-u-time,10s) cubic-bezier(.45,0,.55,1) infinite}@keyframes ns-u-tide{0%,to{--ns-u-h:.72;--ns-u-k:.85}50%{--ns-u-h:1.6;--ns-u-k:1.05}}.ns-u-surge{animation:ns-u-surge var(--ns-u-time,6s) cubic-bezier(.33,0,.2,1) infinite}@keyframes ns-u-surge{0%,to{--ns-u-h:.9;--ns-u-k:.8}32%{--ns-u-h:1.95;--ns-u-k:1.1}62%{--ns-u-h:1.35;--ns-u-k:.72}}:is(.ns-u-live,.ns-u-tide,.ns-u-surge)>:not(.ns-svg){--ns-u-h:1;--ns-u-k:1}:is(.ns-u-live,.ns-u-tide,.ns-u-surge){--ns-border:linear-gradient(var(--ns-u-dir,to top), var(--ns-u,#3de0ff), color-mix(in srgb, var(--ns-u,#3de0ff) 60%, transparent) 55%, color-mix(in srgb, var(--ns-u,#3de0ff) 22%, transparent))}:is(.ns-u-live,.ns-u-tide,.ns-u-surge)>.ns-svg{--m:calc(var(--ns-u-rise,42%) * var(--ns-u-h,1));-webkit-mask:linear-gradient(var(--ns-u-dir,to top),#000 calc(var(--m) * .75),#0000004d calc(var(--m) * 1.7),#0000001f);mask:linear-gradient(var(--ns-u-dir,to top),#000 calc(var(--m) * .75),#0000004d calc(var(--m) * 1.7),#0000001f);opacity:calc(.5 + var(--ns-u-k,1) * .5)}.ns-idle.ns-idle,.ns-idle.ns-idle:before,.ns-idle.ns-idle:after,.ns-idle.ns-idle>.ns-svg{animation-play-state:paused}.ns-aura,.ns-aura-top{--ns-u:var(--ns-aura-1,#3de0ff);--ns-u-glow:var(--ns-aura-o,.55);--ns-u-rise:38%;--ns-u-side:16%;--ns-u-corner:45%}:is(.ns-aura,.ns-aura-top):before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(70% 45% at 50% 100%,color-mix(in srgb,var(--ns-aura-2,#8b7bff) 40%,transparent),transparent);opacity:0;will-change:opacity;animation:8s ease-in-out infinite alternate ns-fade;position:absolute;inset:0}.ns-aura-top:before{scale:1 -1}@keyframes ns-fade{to{opacity:var(--ns-aura-o,.55)}}:is(.ns-tone,.ns-tone-green,.ns-tone-cyan,.ns-tone-violet,.ns-tone-pink,.ns-tone-amber,.ns-tone-coral,.ns-tone-lime,.ns-tone-silver,.ns-tone-white){--ns-u:var(--ns-tone);--ns-accent:var(--ns-tone);--ns-motion:var(--ns-tone);--ns-ui-accent:var(--ns-tone);--ns-check:var(--ns-tone);--ns-toast-c:var(--ns-tone);--ns-car:var(--ns-tone);--ns-link:var(--ns-tone);--ns-mosaic-light:var(--ns-tone);--ns-halo:color-mix(in srgb, var(--ns-tone) 35%, transparent);--ns-wash:color-mix(in srgb, var(--ns-tone) 10%, transparent)}.ns-tone-green{--ns-tone:#00e676}.ns-tone-cyan{--ns-tone:#3de0ff}.ns-tone-violet{--ns-tone:#8b7bff}.ns-tone-pink{--ns-tone:#ff6bd6}.ns-tone-amber{--ns-tone:#ffb547}.ns-tone-coral{--ns-tone:#ff7a59}.ns-tone-lime{--ns-tone:#b8f36b}.ns-tone-silver{--ns-tone:#d4d4d8}.ns-tone-white{--ns-tone:#fff}.ns-wash{background-image:radial-gradient(var(--ns-wash-size,80% 70%) at var(--ns-wash-at,0% 0%),var(--ns-wash,#ffffff14),transparent var(--ns-wash-fade,60%))}.ns-aurora{--ns-border:linear-gradient(90deg, var(--ns-aurora-1,#3de0ff), var(--ns-aurora-2,#8b7bff), var(--ns-aurora-3,#ff6bd6), var(--ns-aurora-4,#ffb547), var(--ns-aurora-1,#3de0ff))}.ns-halo{filter:drop-shadow(0 0 var(--ns-halo-size,16px) var(--ns-halo,#3de0ff59))}.ns-pulse>.ns-svg{animation:ns-pulse var(--ns-pulse-time,2.6s) ease-in-out infinite}@keyframes ns-pulse{50%{filter:drop-shadow(0 0 6px var(--ns-accent,#3de0ff))}}:is(.ns-dots,.ns-grid,.ns-lines,.ns-stripes,.ns-scan,.ns-scales){isolation:isolate;position:relative}:is(.ns-dots,.ns-grid,.ns-lines,.ns-stripes,.ns-scan,.ns-scales):before{content:"";z-index:-1;pointer-events:none;border-radius:inherit;--c:var(--ns-pat,#3de0ff47);--z:var(--ns-pat-size,14px);-webkit-mask:var(--ns-pat-mask,linear-gradient(#000, transparent 85%));mask:var(--ns-pat-mask,linear-gradient(#000, transparent 85%));position:absolute;inset:0}.ns-dots:before{background:radial-gradient(circle,var(--c) 1px,transparent 1.6px) 0 0 / var(--z) var(--z)}.ns-grid:before{background:linear-gradient(var(--c) 1px,transparent 1px) 0 0 / var(--z) var(--z),linear-gradient(90deg,var(--c) 1px,transparent 1px) 0 0 / var(--z) var(--z)}.ns-lines:before{background:repeating-linear-gradient(90deg,var(--c) 0 1px,transparent 1px var(--z))}.ns-stripes:before{background:repeating-linear-gradient(-45deg,var(--c) 0 2px,transparent 2px calc(var(--z) * .6))}.ns-scales:before{--h:calc(var(--z) * 1.732);background:radial-gradient(circle at 50% 0,transparent calc(var(--z) * .45),var(--c) calc(var(--z) * .45 + .5px),transparent calc(var(--z) * .45 + 1.5px)) 0 0 / var(--z) var(--h),radial-gradient(circle at 50% 0,transparent calc(var(--z) * .45),var(--c) calc(var(--z) * .45 + .5px),transparent calc(var(--z) * .45 + 1.5px)) calc(var(--z) / 2) calc(var(--h) / 2) / var(--z) var(--h)}.ns-scan:before{background:repeating-linear-gradient(transparent 0 3px,var(--c) 3px 4px);opacity:.5;animation:8s linear infinite ns-scan;-webkit-mask:none;mask:none}@keyframes ns-scan{to{background-position:0 64px}}.ns-shimmer{position:relative;overflow:hidden}.ns-shimmer:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(105deg,transparent 38%,var(--ns-shine,#ffffff21) 50%,transparent 62%) no-repeat;width:300%;animation:ns-shine var(--ns-shine-time,3.6s) ease-in-out infinite;position:absolute;top:0;bottom:0;left:0}@keyframes ns-shine{0%{transform:translate(-66.6667%)}60%,to{transform:none}}.ns-text-shimmer,.ns-text-aurora{color:#0000;animation:ns-text var(--ns-text-time,2.8s) linear infinite;-webkit-background-clip:text;background-clip:text}.ns-text-shimmer{background-image:linear-gradient(90deg,var(--ns-text,#93a7b8) 0 42%,var(--ns-text-hi,#fff) 50%,var(--ns-text,#93a7b8) 58% 100%);background-size:300% 100%}.ns-text-aurora{background-image:linear-gradient(90deg,var(--ns-aurora-1,#3de0ff),var(--ns-aurora-2,#8b7bff),var(--ns-aurora-3,#ff6bd6),var(--ns-aurora-4,#ffb547),var(--ns-aurora-1,#3de0ff),var(--ns-aurora-2,#8b7bff));background-size:200% 100%}@keyframes ns-text{0%{background-position:100% 0}to{background-position:0 0}}[data-ns-glass]:is(.ns-u,.ns-u-top,.ns-u-left,.ns-u-right,.ns-aura,.ns-aura-top,.ns-dots,.ns-grid,.ns-lines,.ns-stripes,.ns-scan,.ns-scales){background-color:#0000}[data-ns-glass]:is(.ns-u,.ns-u-top,.ns-u-left,.ns-u-right,.ns-aura,.ns-aura-top):after{mix-blend-mode:screen;clip-path:var(--ns-glass-path,none)}[data-ns-glass]:is(.ns-aura,.ns-aura-top,.ns-dots,.ns-grid,.ns-lines,.ns-stripes,.ns-scan,.ns-scales):before{clip-path:var(--ns-glass-path,none)}[data-ns-glass].ns-halo{filter:none;--ns-glass-glow:var(--ns-halo,#3de0ff59);--ns-glass-glow-size:var(--ns-halo-size,16px)}@media (hover:none) and (pointer:coarse){.ns-u-live,.ns-u-tide,.ns-u-surge,.ns-u-hue,.ns-scan:before{animation:none}.ns-pulse>.ns-svg{animation-name:ns-pulse-o}}@keyframes ns-pulse-o{50%{opacity:.55}}@media (forced-colors:active){:is(.ns-u,.ns-u-top,.ns-u-left,.ns-u-right,.ns-aura,.ns-aura-top):after,:is(.ns-aura,.ns-aura-top):before,:is(.ns-dots,.ns-grid,.ns-lines,.ns-stripes,.ns-scan,.ns-scales):before,.ns-shimmer:after{display:none}:is(.ns-u-live,.ns-u-tide,.ns-u-surge)>.ns-svg{opacity:1;-webkit-mask:none;mask:none}.ns-halo,.ns-pulse>.ns-svg{filter:none;animation:none}.ns-text-shimmer,.ns-text-aurora{color:canvastext;background:0 0;animation:none}}:is(.ns-scrolling,.ns-resting) :is(.ns-aura,.ns-aura-top):before,:is(.ns-scrolling,.ns-resting) .ns-u-breathe:after,:is(.ns-scrolling,.ns-resting) :is(.ns-u-hue,.ns-u-live,.ns-u-tide,.ns-u-surge,.ns-text-shimmer,.ns-text-aurora),:is(.ns-scrolling,.ns-resting) .ns-scan:before,:is(.ns-scrolling,.ns-resting) .ns-shimmer:after,:is(.ns-scrolling,.ns-resting) .ns-pulse>.ns-svg{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.ns-u-hover{transition:none}:is(.ns-aura,.ns-aura-top):before,.ns-u-breathe:after,.ns-u-hue,.ns-u-live,.ns-u-tide,.ns-u-surge,.ns-scan:before,.ns-shimmer:after,.ns-text-shimmer,.ns-text-aurora,.ns-pulse>.ns-svg{animation:none}}:root{--bg:#0b0b0c;--bg-2:#111113;--surface:#141416;--surface-2:#1b1b1e;--surface-3:#232327;--line:#ffffff14;--line-2:#ffffff24;--text:#f4f4f5;--text-2:#a1a1aa;--text-3:#8b8b94;--signal:#00e676;--signal-ink:#006635;--lime:#b8f36b;--amber:#ffb547;--coral:#ff7a59;--silver:#d4d4d8;--display:var(--font-mona);--body:var(--font-mona);--mono:var(--font-mono);--ns-ui-surface:var(--surface);--ns-ui-line:var(--line-2);--ns-ui-ink:var(--text);--ns-ui-muted:var(--text-2);--ns-ui-accent:var(--signal);--ns-ui-mono:var(--mono);--ns-ui-gap:#0e0e10;--graphite:#0a0a0a;--ink-go:#04210f;--ink-2:#52525b;--ash:#a1a1aa;--silver-2:#bdbdbd;--coral-ink:#c2703d;--surface-signal:#1f2a22;--veil-1:#00000059;--veil-2:#0000008c;--veil-3:#000000b3;--t-micro:11px;--t-label:11.5px;--t-caption:12.5px;--t-small:13.5px;--t-ui:14.5px;--t-control:15px;--t-body:16px;--t-title:17.5px;--t-title-lg:20px;--t-heading:26px;--t-lede:clamp(16px, 1.3vw, 18px);--t-lede-lg:clamp(16px, 1.5vw, 20px);--t-lede-hero:var(--t-lede-lg);--t-title-fluid:clamp(17.5px, 1.6vw, 20px);--t-heading-fluid:clamp(20px, 3vw, 34px);--t-number:clamp(40px, 5vw, 64px);--t-h2:clamp(30px, 3.6vw, 46px);--t-h1:clamp(40px, 5.6vw, 72px);--r-2xs:4px;--r-xs:6px;--r-sm:8px;--r-md:10px;--r-lg:14px;--ease:cubic-bezier(.22, 1, .36, 1);--ns-focus:#00e676}*{box-sizing:border-box}html{color-scheme:dark;-webkit-text-size-adjust:100%;scrollbar-color:#3a3a3f var(--bg);scroll-padding-top:72px}@media (width<=900px){html{scroll-padding-bottom:96px}}body{background:var(--bg);color:var(--text);font:400 16px/1.55 var(--body);-webkit-font-smoothing:antialiased;caret-color:var(--signal);isolation:isolate;margin:0;position:relative;overflow-x:hidden}body:before,body:after{content:"";z-index:-1;pointer-events:none;position:fixed;inset:0}body:before{background:radial-gradient(70% 55% at 50% -12%,#00e6761c,#0000 70%),radial-gradient(45% 45% at 104% 38%,#ffb5470e,#0000 70%),radial-gradient(45% 50% at -6% 78%,#d4d4d80b,#0000 70%),radial-gradient(120% 100% at 50% 40%,#0000 55%,#00000073)}body:after{opacity:.07;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%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}::selection{background:var(--signal);color:#0a0a0a}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;color:inherit}code,pre,kbd{font-family:var(--mono)}:focus-visible{outline:2px solid var(--signal);outline-offset:3px}.wrap{max-width:1200px;margin:0 auto;padding:0 24px}.skip{z-index:100;background:var(--text);color:#0a0a0a;border-radius:10px;padding:10px 16px;font-weight:500;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}h1{letter-spacing:-.04em;font-size:clamp(40px,5.6vw,72px);font-weight:700;font-stretch:112%;line-height:1}h2{letter-spacing:-.03em;font-size:clamp(30px,3.6vw,46px);font-weight:700;font-stretch:108%;line-height:1.05}h3{letter-spacing:-.01em;font-size:18px;font-weight:600;font-stretch:104%;line-height:1.25}.lede{color:var(--text-2);text-wrap:pretty;max-width:54ch;margin:16px 0 0;font-size:clamp(16px,1.3vw,18px);line-height:1.55}.lede b{color:var(--text);font-weight:500}.num{font-variant-numeric:tabular-nums}.dim{color:var(--text-2)}.cta{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px;display:flex}.btn{background:var(--text);color:#0a0a0a;min-height:44px;font:500 15px/1 var(--body);cursor:pointer;transition:background-color .2s, transform .25s var(--ease);border:0;justify-content:center;align-items:center;gap:8px;padding:0 22px;display:inline-flex}.btn:hover{background:#fff}.btn:active{transform:translateY(1px)scale(.98)}.btn.ghost{color:var(--text);--ns-border:var(--line-2);background:0 0}.btn.ghost:hover{background:#ffffff0f}.btn.go{background:var(--signal);color:#04210f}.more{color:var(--text);min-height:44px;text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:5px;align-items:center;gap:6px;font-size:15px;transition:text-decoration-color .2s;display:inline-flex}.more:hover{text-decoration-color:currentColor}.more svg{width:14px;height:14px;transition:transform .25s var(--ease)}.more:hover svg{transform:translate(3px)}.after{margin:24px 0 0}.sec{padding:clamp(64px,8vw,112px) 0;position:relative}.sec+.sec{border-top:1px solid var(--line)}html{overflow-x:hidden}@supports (overflow-x:clip){html{overflow-x:clip}}@media (hover:none) and (pointer:coarse){:where(*):not(.ns-liquid-glass,.ns-liquid-rim,.ns-glass-shared){backdrop-filter:none!important}.top{background:#0b0b0cf7!important}}main>.sec:not(.hero){content-visibility:auto;contain-intrinsic-size:auto 1100px}@supports (font:-apple-system-body) and (appearance:none){main>.sec:not(.hero){content-visibility:visible}}.head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:16px 48px;margin-bottom:36px;display:grid}.head .lede{justify-self:end;margin:0}.head.center{text-align:center;grid-template-columns:1fr;justify-items:center}.head.center .lede{justify-self:center}@media (width<=860px){.head{grid-template-columns:1fr;margin-bottom:28px}.head .lede{justify-self:start}}.tile{background:var(--surface);--ns-border:var(--line-2);flex-direction:column;gap:6px;min-width:0;padding:20px;display:flex;position:relative}.tile h3{font-size:16px}.tile p{color:var(--text-2);margin:0;font-size:14px;line-height:1.5}.tag{font:500 11.5px/1.4 var(--mono);color:var(--text-3);word-break:break-word}.tag b{color:var(--signal);font-weight:500}.chip-row{flex-wrap:wrap;gap:6px;display:flex}footer[data-astro-cid-ocqibz2a]{color:var(--text-3);font-size:var(--t-small);border-top:1px solid var(--line);background:#080809d9}.wrap[data-astro-cid-ocqibz2a]{flex-wrap:wrap;align-items:center;gap:12px 32px;padding-top:28px;padding-bottom:32px;display:flex}.by[data-astro-cid-ocqibz2a]{color:var(--text-3);align-items:center;gap:12px;display:inline-flex}.by[data-astro-cid-ocqibz2a] img[data-astro-cid-ocqibz2a]{width:auto;height:28px}nav[data-astro-cid-ocqibz2a]{gap:22px;display:flex}nav[data-astro-cid-ocqibz2a] a[data-astro-cid-ocqibz2a]{color:var(--text-2);padding:12px 0;transition:color .2s}nav[data-astro-cid-ocqibz2a] a[data-astro-cid-ocqibz2a]:hover{color:var(--text)}p[data-astro-cid-ocqibz2a]{text-align:right;max-width:62ch;margin:0 0 0 auto;line-height:1.5}@media (width<=700px){p[data-astro-cid-ocqibz2a]{text-align:left;margin:0}}@media (width<=900px){footer[data-astro-cid-ocqibz2a]{padding-bottom:88px}}
