@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-cyrillic-ext-wght-normal.okcGN4Nq.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-cyrillic-wght-normal.BS41q_Tv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-greek-ext-wght-normal.DQgQPNk4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-greek-wght-normal.sS1B39LI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-vietnamese-wght-normal.TKKdAiBA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-latin-ext-wght-normal.B4u9PlvR.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-tight-latin-wght-normal.DX-nOvPD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-900:#161616;--ink-800:#1d1d1d;--ink-700:#222;--ink-600:#2b2b2b;--ink-550:#2e2e2e;--ink-500:#3a3a3a;--ink-400:#8f8f8f;--bone-300:#c4c4c4;--bone-200:#e2e2e2;--white:#fff;--accent:#1aa0fe;--accent-ink:#161616;--accent-press:#4db4fe;--accent-rgb:26 160 254;--accent-glint-rgb:214 240 255;--signal-agentaus:#2af2b0;--signal-echo:var(--accent);--signal-mobile:#ff6b2c;--signal-resource:#ff6d2f;--bg:var(--ink-700);--bg-raised:var(--ink-600);--bg-sunken:var(--ink-800);--fg:var(--white);--fg-body:var(--bone-200);--fg-muted:var(--ink-400);--line:var(--ink-500);--line-subtle:var(--ink-550);--focus:var(--accent);--danger:#ff8a65;--danger-fg:#ffb199;--glass:#1d1d1dc7;--glass-deep:#161616b8;--hairline:#ffffff0f;--hairline-strong:#ffffff29;--hover-tint:#ffffff14;--scrim:#0000008c;--font-sans:"Inter Tight Variable", "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--step--1:clamp(.78rem, .76rem + .1vw, .84rem);--step-0:clamp(1rem, .97rem + .15vw, 1.09rem);--step-1:clamp(1.2rem, 1.12rem + .4vw, 1.45rem);--step-2:clamp(1.5rem, 1.32rem + .9vw, 2.1rem);--step-3:clamp(2rem, 1.6rem + 2vw, 3.2rem);--step-4:clamp(2.6rem, 1.9rem + 3.6vw, 5.2rem);--step-5:clamp(3.2rem, 2rem + 6vw, 7.6rem);--lh-tight:1.02;--lh-snug:1.15;--lh-body:1.55;--tracking-display:-.035em;--tracking-mono:.06em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--section-y:clamp(4.5rem, 3rem + 7vw, 9rem);--gutter:clamp(1rem, .5rem + 2.4vw, 2.5rem);--max-w:1320px;--measure:62ch;--radius-s:6px;--radius-m:12px;--radius-l:20px;--radius-pill:999px;--shadow-2:0 1px 0 #ffffff0f inset, 0 18px 40px -18px #000000a6;--shadow-ink:#00000073;--header-h:72px;--dur-instant:90ms;--dur-fast:.16s;--dur-base:.32s;--dur-slow:.45s;--dur-signature:1.4s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-expressive:cubic-bezier(.16, 1, .3, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--ease-elastic:linear(0, .18, .363, .535, .688, .818, .921, 1, 1.056, 1.091, 1.11, 1.116, 1.113, 1.102, 1.088, 1.072, 1.056, 1.041, 1.028, 1.016, 1.007, 1, .995, .992, .99, .99, .99, .991, .992, .994, .995, .996, .998, .999, .999, 1, 1, 1.001, 1.001, 1.001, 1);--stagger:40ms;--rise:16px;--drop:8px;--lift:4px;--nudge:4px;--press:.97;--zoom:1.04}@media (prefers-reduced-motion:reduce){:root{--dur-instant:0s;--dur-fast:0s;--dur-base:0s;--dur-slow:0s;--dur-signature:0s;--stagger:0s;--rise:0px;--drop:0px;--lift:0px;--nudge:0px;--press:1;--zoom:1}}:root{--tm-ink:var(--ink-700);--tm-ink-2:var(--ink-600);--tm-paper:var(--bone-300);--tm-paper-dim:var(--ink-400);--tm-white:var(--white);--tm-alert:#ff5a4e;--tm-accent:var(--accent);--tm-mono:var(--font-mono);--tm-short:.32s;--tm-base:.64s;--tm-long:1s;--tm-ambient:6s;--tm-marquee:60s;--tm-ease-enter:var(--ease-expressive);--tm-ease-exit:var(--ease-exit);--tm-ease-ambient:cubic-bezier(.45, 0, .55, 1);--tm-rise:12px;--tm-float:10px;--dh-ground:var(--bg);--dh-signal:#1aa0fe;--dh-glow-strength:.22;--dh-glow-radius:.8;--dh-spot:#e0f0ff;--dh-spot-strength:.09;--dh-spot-radius:1.5;--dh-spot-lift:.18;--dh-line:.32;--dh-corner:.3;--dh-edge-weight:.6;--dh-weight-jitter:.24;--dh-join:.6;--dh-strip-min:.5;--dh-strip-max:5;--dh-strip-skew:1.8;--dh-grain:.16;--dh-face-fade:1.5;--dh-side:.5;--dh-bloom:.55;--dh-bloom-width:2.5;--dh-logo-size:.46;--dh-logo-phone:1.05;--dh-logo-x:.27;--dh-hex-width:.8;--dh-side-fill:.55;--dh-rows:52;--dh-rows-touch:32;--dh-turn:10s;--dh-stop:4.5s;--dh-float:.06;--dh-float-period:9.5s;--dh-bob:6;--dh-shimmer:3.5s;--dh-delay:.1s;--dh-assemble:2.2s;--dh-appear:.2;--dh-appear-scale:.5;--dh-hold:.1s;--dh-slide:1.2s;--dh-copy-delay:.5s;--dh-decode-stagger:90ms;--dh-decode-jitter:.26s;--dh-decode-lead:.45s;--dh-decode-tick:.17s;--dh-decode-span:1.5s;--dh-decode-gap:0;--dh-breathe:8s;--dh-ease:var(--ease-expressive);--dh-drag:.008;--dh-inertia:.9s;--dh-burst-out:.65s;--dh-burst-hold:.2s;--dh-burst-in:2s;--dh-burst-spread:.9;--dh-dpr-max:2;--bc-mint:#2af3bb;--bc-mint-rgb:42 243 187;--bc-charcoal:#1b1e1d;--bc-stage:#060807;--bc-glow:.3;--bc-floor:.16;--bc-shade:.42;--bc-size:clamp(260px, min(30vw, 48svh), 480px);--bc-size-sm:min(54vw, 280px);--bc-stage-scale:1.75;--bc-perspective:4.5;--bc-dpr-max:2;--bc-rows:56;--bc-rows-touch:40;--bc-mark-min:.55;--bc-mark-max:6;--bc-mark-weight:.56;--bc-density:1;--bc-auto-hold:5.2s;--bc-auto-turn:2.6s;--bc-turn-ease:cubic-bezier(.65, 0, .35, 1);--bc-sway:7;--bc-sway-period:15s;--bc-shimmer:.14;--bc-shimmer-period:4.2s;--bc-shimmer-fps:20;--bc-drag:.45;--bc-inertia:1;--bc-damping:.65s;--bc-settle-speed:45;--bc-settle:.9s;--bc-settle-ease:var(--ease-standard);--bc-key-turn:.7s;--bc-jump-turn:1.1s;--bc-resume:4s;--bc-decode:1s;--bc-decode-ease:var(--ease-expressive);--bc-decode-spread:.6;--bc-decode-stagger:.3;--bc-hover-radius:.14;--bc-hover-push:.6;--bc-hover-return:.38s;--ss-rows:64;--ss-rows-touch:44;--ss-appear-from:.95;--ss-appear-to:.5;--ss-appear:.25;--ss-stagger:.35;--ss-gather-at:.7;--ss-rain-from:.85;--ss-stage:.55;--ss-smooth:.14s;--ss-drift:.04;--ss-reach:30vh;--ss-tilt:30;--ss-spin:12s;--ss-depth:.07;--ss-lift:.12;--ss-ground:.22;--ss-drop-every:.42s;--ss-drop-fall:1.1s;--ss-lit-fade:1.4s;--ss-title-from:.7;--ss-title-to:.3;--cl-lead:140svh;--cl-scatter:.2;--cl-border:.3;--cl-fill:.4;--cl-travel:.4;--cl-hand:.2;--cl-face:.65;--cl-dwell:.45;--cl-tail:.5;--cl-pad:.45;--cl-smooth:.14s;--hp-grid:72px;--hp-grid-line:#ffffff12;--hp-beam:6s;--hp-beam-length:120px;--hp-beam-purple:#8b5cf6;--hp-beam-blue:#1aa0ff;--hp-beam-green:#01e995;--hp-rise:.8s;--hp-rise-stagger:40ms;--hp-rise-blur:12px;--hp-fade:.6s;--hp-fade-delay:.15s;--hp-fade-stagger:60ms;--hp-show:.8s;--hp-show-delay:.2s;--hp-tilt:32;--hp-scale:.88;--hp-tilt-from:.9;--hp-tilt-to:.25;--hp-scrub:.6s;--cx-bg:var(--bg);--cx-cipher:var(--ink-500);--cx-lens:var(--accent);--cx-lens-ink:var(--ink-900);--gm-dash:var(--bone-300);--gm-speck:var(--ink-500);--gm-row:30ms;--gm-intro:1.4s;--gm-ambient:4.8s;--gm-packet:5.6s;--gm-reach:110;--gm-scan:var(--accent);--gm-off:var(--danger);--gm-trail:.9s;--ig-bg:var(--bg-sunken);--ig-threat-rgb:255 59 59;--pp-dwell:4s}@keyframes tr-fade-out{to{opacity:0}}@keyframes tr-rise-in{0%{opacity:0;transform:translateY(var(--rise))}to{opacity:1;transform:none}}::view-transition-old(root),::view-transition-new(root){animation:none}.site-header{view-transition-name:site-header}::view-transition-group(site-header){z-index:100;animation:none}::view-transition-old(site-header){display:none}::view-transition-new(site-header){animation:none}.site-header__bg{opacity:0;transition:opacity var(--dur-base) var(--ease-standard)}.site-header[data-solid=true] .site-header__bg{opacity:1}.dropdown__panel{opacity:0;transform:translateY(calc(var(--drop) * -1));visibility:hidden;transition:opacity var(--dur-fast) var(--ease-exit), transform var(--dur-fast) var(--ease-exit), visibility 0s linear var(--dur-fast)}.dropdown[data-open=true] .dropdown__panel{opacity:1;visibility:visible;transition:opacity var(--dur-base) var(--ease-expressive), transform var(--dur-base) var(--ease-expressive), visibility 0s;transform:none}.dropdown__item{opacity:0;transform:translateY(calc(var(--drop) * -.5));transition:opacity var(--dur-fast) var(--ease-exit), transform var(--dur-fast) var(--ease-exit)}.dropdown[data-open=true] .dropdown__item{opacity:1;transition:opacity var(--dur-base) var(--ease-expressive) calc(var(--i,0) * var(--stagger) * .6), transform var(--dur-base) var(--ease-expressive) calc(var(--i,0) * var(--stagger) * .6);transform:none}.dropdown__chevron{transition:transform var(--dur-fast) var(--ease-standard)}.dropdown[data-open=true] .dropdown__chevron{transform:rotate(180deg)}html.js [data-reveal]:not(.is-in),html.js [data-reveal-group]:not(.is-in)>*{opacity:0;transform:translateY(var(--rise))}html.js [data-reveal].is-in,html.js [data-reveal-group].is-in>*{opacity:1;transition:opacity var(--dur-slow) var(--ease-expressive) calc(var(--i,0) * var(--stagger)), transform var(--dur-slow) var(--ease-expressive) calc(var(--i,0) * var(--stagger));transform:none}html.js [data-reveal-group=scatter]:not(.is-in)>*{transform:translate(var(--sx), var(--sy)) rotate(var(--sr))}[data-reveal-group=scatter]>:nth-child(4n+1){--sx:-80px;--sy:60px;--sr:-8deg}[data-reveal-group=scatter]>:nth-child(4n+2){--sx:40px;--sy:120px;--sr:6deg}[data-reveal-group=scatter]>:nth-child(4n+3){--sx:-40px;--sy:90px;--sr:-4deg}[data-reveal-group=scatter]>:nth-child(4n+4){--sx:80px;--sy:40px;--sr:10deg}html.js [data-reveal-group=scatter].is-in>*{transition:opacity var(--dur-slow) var(--ease-expressive) calc(var(--i,0) * 80ms), transform 1s var(--ease-elastic) calc(var(--i,0) * 80ms)}.btn,.link-arrow,.icon-btn{transition:transform var(--dur-instant) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard)}.btn:active,.icon-btn:active{transform:scale(var(--press))}.arrow{transition:transform var(--dur-fast) var(--ease-expressive);display:inline-block}.btn:hover .arrow,.link-arrow:hover .arrow,a:hover>.arrow,.card:hover .arrow,.btn:focus-visible .arrow,.link-arrow:focus-visible .arrow{transform:translateX(var(--nudge))}.btn--primary{isolation:isolate;position:relative}.btn--primary:after{content:"";z-index:-1;border-radius:inherit;box-shadow:0 8px 28px -6px rgb(var(--accent-rgb) / .65), 0 0 0 4px rgb(var(--accent-rgb) / .14);opacity:0;transition:opacity var(--dur-base) var(--ease-standard);position:absolute;inset:0}.btn--primary:hover:after,.btn--primary:focus-visible:after{opacity:1}.u-draw{text-decoration:none;position:relative}.u-draw:after{content:"";background:linear-gradient(90deg, rgb(var(--trace-rgb,var(--accent-rgb))) 0 14px, transparent 14px 17px, rgb(var(--trace-rgb,var(--accent-rgb)) / .5) 17px 21px, transparent 21px 25px, rgb(var(--trace-rgb,var(--accent-rgb))) 25px 47px, transparent 47px 50px, rgb(var(--trace-rgb,var(--accent-rgb)) / .7) 50px 56px, transparent 56px 61px, rgb(var(--trace-rgb,var(--accent-rgb))) 61px 70px, transparent 70px 72px, rgb(var(--trace-rgb,var(--accent-rgb)) / .4) 72px 75px, transparent 75px 81px, rgb(var(--trace-rgb,var(--accent-rgb))) 81px 99px, transparent 99px 103px, rgb(var(--trace-rgb,var(--accent-rgb)) / .6) 103px 108px, transparent 108px 111px, rgb(var(--trace-rgb,var(--accent-rgb)) / .9) 111px 122px, transparent 122px 127px, rgb(var(--trace-rgb,var(--accent-rgb)) / .5) 127px 129px, transparent 129px 132px, rgb(var(--trace-rgb,var(--accent-rgb))) 132px 148px, transparent 148px 152px, rgb(var(--trace-rgb,var(--accent-rgb)) / .55) 152px 159px, transparent 159px 162px) 0 0 / 162px 100% repeat-x;height:2px;filter:drop-shadow(0 0 3px rgb(var(--trace-rgb,var(--accent-rgb)) / .85));transform-origin:100%;transition:transform var(--dur-base) var(--ease-expressive);position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.u-draw:hover:after,.u-draw:focus-visible:after,.u-draw[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.u-draw:before{content:"";z-index:1;background:linear-gradient(90deg, transparent 0, rgb(var(--trace-glint-rgb,var(--accent-glint-rgb)) / .95) 10%, transparent 20%, transparent);height:2px;filter:drop-shadow(0 0 4px rgb(var(--trace-rgb,var(--accent-rgb))));opacity:0;pointer-events:none;position:absolute;bottom:-3px;left:0;right:0}.u-draw:hover:before,.u-draw:focus-visible:before{animation:u-glint .9s var(--ease-standard) calc(var(--dur-base) * .5) 1 both}@keyframes u-glint{0%{opacity:0;transform:translate(0)}20%,75%{opacity:1}to{opacity:0;transform:translate(80%)}}.card{transition:transform var(--dur-base) var(--ease-expressive);position:relative}.card:after{content:"";border-radius:inherit;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-expressive);position:absolute;inset:0}.card__media img,.card__media .tm-frame{transition:transform var(--dur-slow) var(--ease-expressive)}@media (hover:hover){.card:hover,.card:focus-within{transform:perspective(1000px) translateY(calc(var(--lift) * -1)) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.card:hover:after,.card:focus-within:after{opacity:1}.card:hover .card__media img,.card:focus-within .card__media img,.card:hover .card__media .tm-frame,.card:focus-within .card__media .tm-frame{transform:scale(var(--zoom))}}.card:before{content:"";z-index:2;border-radius:inherit;background:radial-gradient(320px circle at var(--mx,50%) var(--my,0%), rgb(var(--accent-rgb) / .85), transparent 70%);-webkit-mask-composite:xor;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-standard);padding:1px;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)}.has-pointer :hover>.card:before{opacity:.55}.has-pointer .card:hover:before{opacity:1}.mobile-menu{visibility:hidden;transition:visibility 0s linear var(--dur-base)}.mobile-menu__scrim{opacity:0;transition:opacity var(--dur-base) var(--ease-standard)}.mobile-menu__panel{transition:transform var(--dur-base) var(--ease-exit);transform:translate(100%)}.mobile-menu__item{opacity:0;transform:translateX(calc(var(--rise) * 1.5));transition:opacity var(--dur-fast) var(--ease-exit), transform var(--dur-fast) var(--ease-exit)}.mobile-menu[data-open=true]{visibility:visible;transition:visibility}.mobile-menu[data-open=true] .mobile-menu__scrim{opacity:1}.mobile-menu[data-open=true] .mobile-menu__panel{transition:transform var(--dur-slow) var(--ease-expressive);transform:none}.mobile-menu[data-open=true] .mobile-menu__item{opacity:1;transition:opacity var(--dur-slow) var(--ease-expressive) calc(.12s + var(--i,0) * var(--stagger)), transform var(--dur-slow) var(--ease-expressive) calc(.12s + var(--i,0) * var(--stagger));transform:none}.ambient{inset:var(--header-h) 0 0;pointer-events:none;position:absolute;overflow:hidden}.ambient__layer{position:absolute;inset:0}.stat__value{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.u-draw:before{display:none}html.js [data-reveal],html.js [data-reveal-group]>*{opacity:1!important;transform:none!important}.card:before{display:none}}.lit-edge{position:relative}.lit-edge:before{content:"";z-index:2;background:var(--accent);height:2px;box-shadow:0 0 12px rgb(var(--accent-rgb) / .6);pointer-events:none;transform-origin:0;opacity:.55;transition:transform var(--dur-slow) var(--ease-expressive) calc(var(--i,0) * var(--lit-stagger,60ms) + var(--lit-delay,.2s)), opacity var(--dur-signature) var(--ease-standard) calc(var(--i,0) * var(--lit-stagger,60ms) + var(--lit-delay,.2s) + .6s);position:absolute;inset:0 0 auto}html.js [data-reveal-group]:not(.is-in)>.lit-edge:before,html.js .lit-edge[data-reveal]:not(.is-in):before,html.js [data-lit-wait]:not([data-lit]) .lit-edge:before{opacity:1;transition:none;transform:scaleX(0)}.packet:after{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px 2px rgb(var(--accent-rgb) / .6);border-radius:50%;position:absolute}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem);color-scheme:dark;overflow-x:clip}body{background:var(--bg);min-height:100vh;color:var(--fg-body);font-family:var(--font-sans);font-size:var(--step-0);line-height:var(--lh-body);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-x:clip}img,svg,video,picture{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}p,li{text-wrap:pretty}h1,h2,h3,h4{color:var(--fg);text-wrap:balance;font-weight:500}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.skip-link{left:var(--gutter);z-index:100;background:var(--accent);color:var(--accent-ink);padding:var(--space-3) var(--space-4);border-radius:var(--radius-s);font-weight:600;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--space-3)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.container{width:min(100% - 2 * var(--gutter), var(--max-w));margin-inline:auto}.display{font-size:var(--step-5);line-height:var(--lh-tight);letter-spacing:var(--tracking-display)}.h1{font-size:var(--step-4);line-height:var(--lh-tight);letter-spacing:var(--tracking-display)}.h2{font-size:var(--step-3);line-height:var(--lh-snug);letter-spacing:-.025em}.h3{font-size:var(--step-2);line-height:var(--lh-snug);letter-spacing:-.015em}.lead{font-size:var(--step-1);color:var(--fg-body);max-width:var(--measure);line-height:1.45}.body{color:var(--fg-body)}.icon-tile{aspect-ratio:1;border:1px solid var(--accent);border-radius:var(--radius-s);width:2.5rem;color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);flex:none;place-items:center;display:grid}.icon-tile--lg{border-radius:var(--radius-m);width:2.75rem}.icon-tile--soft{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:#0000}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--fg-muted)}.muted{color:var(--fg-muted)}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1em}.prose h2{font-size:var(--step-2);margin-top:2em}.prose h3{font-size:var(--step-1);margin-top:1.6em}.prose a{color:var(--fg);text-underline-offset:3px}.prose ul,.prose ol{padding-left:1.2em}.btn{--_bg:transparent;--_fg:var(--fg);--_bd:var(--line);justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-pill);border:1px solid var(--_bd);background:var(--_bg);color:var(--_fg);letter-spacing:-.005em;white-space:nowrap;font-size:.98rem;font-weight:600;text-decoration:none;display:inline-flex}.btn--primary{--_bg:var(--accent);--_fg:var(--accent-ink);--_bd:var(--accent)}.btn--primary:hover{--_bg:var(--accent-press);--_bd:var(--accent-press)}.btn--ghost{position:relative}.btn--ghost>.strip-trace{width:calc(100% + 2px);height:calc(100% + 2px);inset:-1px}.btn--ghost:hover,.btn--ghost:focus-visible{background:rgb(var(--accent-rgb) / .07)}.btn--sm{min-height:40px;padding:0 var(--space-4);font-size:.92rem}.btn-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.link-arrow{align-items:center;gap:var(--space-2);color:var(--fg);font-weight:600;text-decoration:none;display:inline-flex}.field{gap:var(--space-2);align-content:start;display:grid}.field label{color:var(--fg);font-size:.92rem;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);background:var(--bg-raised);color:var(--fg);border-radius:var(--radius-s);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);border:1px solid #6b6b6b;font-size:1rem}.field input::placeholder,.field textarea::placeholder{color:var(--fg-muted);opacity:1}.field textarea{resize:vertical;min-height:120px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--fg-muted)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .3);outline:none}.field [aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger-fg);font-size:.88rem}.form-status:empty{display:none}.form-status{color:var(--fg);margin:0}form.is-sent>:not(.form-done,[data-keep]){display:none}.form-done{gap:var(--space-2);padding:var(--space-5);border:1px solid var(--accent);border-radius:var(--radius-m);background:rgb(var(--accent-rgb) / .08);display:grid}.form-done[hidden]{display:none}.form-done p{margin:0}.form-done__title{font-size:var(--step-1);color:var(--fg);font-weight:600}form .btn[aria-busy=true]{opacity:.7;cursor:progress}.form-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.field .req{color:var(--accent);margin-left:.15em}.logo[data-astro-cid-f7espo7c]{min-height:44px;color:var(--logo-fill,#f1f1f1);align-items:center;text-decoration:none;display:inline-flex}.logo__svg[data-astro-cid-f7espo7c]{max-width:100%;height:auto;display:block}.strip-trace,.strip-trace__head{--st-dur:calc(var(--dur-slow) * 2.4)}.strip-trace{pointer-events:none;opacity:0;width:100%;height:100%;filter:drop-shadow(0 0 2px rgb(var(--trace-rgb,var(--accent-rgb)) / .9)) drop-shadow(0 0 7px rgb(var(--trace-rgb,var(--accent-rgb)) / .55));transition:opacity var(--dur-base) var(--ease-standard);position:absolute;inset:0;overflow:visible}.strip-trace rect{fill:none;stroke-width:1.5px}.strip-trace__bright{stroke:rgb(var(--trace-rgb,var(--accent-rgb)));stroke-dasharray:14 11 22 14 9 11 18 12 11 10 16 14}.strip-trace__dim{stroke:rgb(var(--trace-rgb,var(--accent-rgb)) / .5);stroke-dasharray:0 17 4 29 6 16 3 28 5 19 2 23 7 3}.strip-trace .strip-trace__reveal{stroke:var(--white);stroke-width:6px;stroke-dasharray:1 2;stroke-dashoffset:1px;transition:stroke-dashoffset 0s linear var(--dur-base)}:hover>.strip-trace,:focus-visible>.strip-trace,[aria-current=page]>.strip-trace{opacity:1}:hover>.strip-trace .strip-trace__reveal,:focus-visible>.strip-trace .strip-trace__reveal,[aria-current=page]>.strip-trace .strip-trace__reveal{stroke-dashoffset:0;transition:stroke-dashoffset var(--st-dur) var(--ease-standard)}.strip-trace__head{pointer-events:none;background:color-mix(in srgb, var(--white) 75%, rgb(var(--trace-rgb,var(--accent-rgb))));width:6px;height:6px;box-shadow:0 0 4px 1px rgb(var(--trace-rgb,var(--accent-rgb)) / .95), 0 0 14px 4px rgb(var(--trace-rgb,var(--accent-rgb)) / .55);offset-path:inset(0 round var(--st-r));offset-rotate:0deg;offset-anchor:center;offset-distance:0%;opacity:0;border-radius:50%;position:absolute;top:0;left:0}:hover>.strip-trace__head,:focus-visible>.strip-trace__head{animation:strip-trace-head var(--st-dur) var(--ease-standard) both}@keyframes strip-trace-head{0%{offset-distance:0%;opacity:0}8%{opacity:1}82%{opacity:1}to{offset-distance:100%;opacity:0}}@media (prefers-reduced-motion:reduce){.strip-trace__head{display:none}}.dropdown[data-astro-cid-i5v37hkz]{position:relative}.dropdown__trigger[data-astro-cid-i5v37hkz]{align-items:center;gap:6px;display:inline-flex}.dropdown__panel[data-astro-cid-i5v37hkz]{min-width:300px;max-width:min(560px,92vw);padding:var(--space-3);background:var(--ink-800);border:1px solid var(--ink-500);border-radius:var(--radius-m);box-shadow:var(--shadow-2);gap:var(--space-2);display:grid;position:absolute;top:calc(100% + 10px);left:50%;translate:-50%}.dropdown__panel[data-astro-cid-i5v37hkz]:before{content:"";height:12px;position:absolute;inset:-12px 0 auto}.dropdown__featured[data-astro-cid-i5v37hkz]{gap:var(--space-2);padding:0 0 var(--space-2);border-bottom:1px solid var(--ink-500);grid-template-columns:repeat(3,minmax(150px,1fr));list-style:none;display:grid}.dropdown__list[data-astro-cid-i5v37hkz]{gap:var(--space-2);grid-template-columns:1fr 1fr;padding:0;list-style:none;display:grid}.dropdown__featured[data-astro-cid-i5v37hkz]:empty+.dropdown__list[data-astro-cid-i5v37hkz],.dropdown__panel[data-astro-cid-i5v37hkz]:not(:has(.dropdown__featured)) .dropdown__list[data-astro-cid-i5v37hkz]{grid-template-columns:1fr}.dropdown__link[data-astro-cid-i5v37hkz]{padding:var(--space-3);border-radius:var(--radius-s);color:var(--white);transition:background-color var(--dur-fast) var(--ease-standard);gap:2px;text-decoration:none;display:grid;position:relative}.dropdown__link[data-astro-cid-i5v37hkz]:hover,.dropdown__link[data-astro-cid-i5v37hkz]:focus-visible,.dropdown__link[data-astro-cid-i5v37hkz][aria-current=page]{background:rgb(var(--accent-rgb) / .07)}.dropdown__link[data-astro-cid-i5v37hkz]:hover .arrow[data-astro-cid-i5v37hkz],.dropdown__link[data-astro-cid-i5v37hkz]:focus-visible .arrow[data-astro-cid-i5v37hkz]{transform:translateX(var(--nudge))}.dropdown__link[data-astro-cid-i5v37hkz]:hover .dropdown__note[data-astro-cid-i5v37hkz],.dropdown__link[data-astro-cid-i5v37hkz]:focus-visible .dropdown__note[data-astro-cid-i5v37hkz]{color:var(--fg-body)}.dropdown__link--featured[data-astro-cid-i5v37hkz]{padding:var(--space-4) var(--space-3)}.dropdown__link--featured[data-astro-cid-i5v37hkz] .dropdown__label[data-astro-cid-i5v37hkz]{font-size:1.05rem}.dropdown__label[data-astro-cid-i5v37hkz]{align-items:center;gap:6px;font-weight:600;display:inline-flex}.dropdown__note[data-astro-cid-i5v37hkz]{color:var(--ink-400);transition:color var(--dur-fast) var(--ease-standard);font-size:.85rem;line-height:1.35}.site-header[data-astro-cid-nen7h5rs]{z-index:50;height:var(--header-h);color:var(--white);position:fixed;inset:0 0 auto}.site-header__bg[data-astro-cid-nen7h5rs]{background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--hairline);position:absolute;inset:0}.site-header__inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--space-5);height:100%;display:flex;position:relative}.site-nav[data-astro-cid-nen7h5rs]{display:none}.site-nav__list[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-1);padding:0;list-style:none;display:flex}.nav-link{min-height:44px;padding:0 var(--space-3);color:var(--bone-200);transition:color var(--dur-fast) var(--ease-standard);align-items:center;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-link[aria-current=page],.nav-link.is-active,.dropdown[data-open=true] .nav-link{color:var(--white)}.site-nav .u-draw:after,.site-nav .u-draw:before{left:var(--space-3);right:var(--space-3);bottom:10px}@media (width<=479px){.site-header__inner[data-astro-cid-nen7h5rs]{gap:var(--space-3)}.site-header__actions[data-astro-cid-nen7h5rs]{gap:0}.site-header__inner[data-astro-cid-nen7h5rs]>.logo{min-width:0}.site-header__cta{padding:0 var(--space-3)}.site-header__cta .arrow{display:none}}.site-header__actions[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-2);display:flex}.site-header__cta{display:none}.icon-btn[data-astro-cid-nen7h5rs]{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--white);place-items:center;display:inline-grid}.icon-btn[data-astro-cid-nen7h5rs]:hover{background:var(--hover-tint)}@media (width>=1080px){.site-nav[data-astro-cid-nen7h5rs]{display:block}.menu-btn[data-astro-cid-nen7h5rs]{display:none}}@media (width>=360px){.site-header__cta{display:inline-flex}}.mobile-menu[data-astro-cid-nen7h5rs]{z-index:60;position:fixed;inset:0}.mobile-menu__scrim[data-astro-cid-nen7h5rs]{background:var(--scrim);position:absolute;inset:0}.mobile-menu__panel[data-astro-cid-nen7h5rs]{background:var(--ink-800);border-left:1px solid var(--ink-500);width:min(420px,100%);padding:var(--space-3) var(--gutter) var(--space-7);gap:var(--space-5);flex-direction:column;display:flex;position:absolute;inset:0 0 0 auto;overflow-y:auto}.mobile-menu__top[data-astro-cid-nen7h5rs]{height:calc(var(--header-h) - var(--space-3));justify-content:space-between;align-items:center;display:flex}.mobile-menu__list[data-astro-cid-nen7h5rs]{padding:0;list-style:none;display:grid}.mobile-menu__link[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--ink-500);width:100%;min-height:56px;color:var(--white);text-align:left;justify-content:space-between;align-items:center;font-size:1.35rem;font-weight:500;text-decoration:none;display:flex}.mobile-menu__link[data-astro-cid-nen7h5rs][aria-expanded=true] svg[data-astro-cid-nen7h5rs]{transform:rotate(180deg)}.mobile-menu__sub[data-astro-cid-nen7h5rs]{padding:var(--space-2) 0 var(--space-3);list-style:none;display:grid}.mobile-menu__sub[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{min-height:44px;color:var(--bone-200);align-items:center;text-decoration:none;display:flex}.mobile-menu__sub[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.mobile-menu__sub[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--white)}.mobile-menu__cta[data-astro-cid-nen7h5rs] .btn{width:100%}.site-footer[data-astro-cid-jo6i4kqk]{background:var(--bg);color:var(--bone-200);padding-block:var(--space-9) var(--space-6)}.site-footer__grid[data-astro-cid-jo6i4kqk]{gap:var(--space-7);grid-template-columns:1fr;display:grid}@media (width>=760px){.site-footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:2fr 1fr 1fr 1fr}}.site-footer__brand[data-astro-cid-jo6i4kqk]{gap:var(--space-4);align-content:start;display:grid}.site-footer[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{margin-bottom:var(--space-4);font-weight:500}.site-footer[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--space-1);padding:0;list-style:none;display:grid}.site-footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{align-items:center;min-height:32px;text-decoration:none;display:inline-flex}.site-footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--white)}address[data-astro-cid-jo6i4kqk]{font-style:normal;line-height:1.7}.iso[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--space-3);color:var(--white);margin-top:var(--space-4);font-size:.9rem;display:flex}.site-footer__base[data-astro-cid-jo6i4kqk]{margin-top:var(--space-9);padding-top:var(--space-5);border-top:1px solid var(--ink-500);justify-content:space-between;gap:var(--space-4);color:var(--ink-400);flex-wrap:wrap;font-size:.88rem;display:flex}.site-footer__base[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--space-5);display:flex}.main--offset[data-astro-cid-z4jru4n3]{padding-top:var(--header-h)}main[data-astro-cid-z4jru4n3]:focus{outline:none}
