@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.g30qAdWV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.Dsrv2Tcn.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-400-normal.DZqxrq2p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-400-normal.BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-greek-400-normal._efipK4i.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-400-normal.D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-vietnamese-400-normal.DG4YqDda.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-400-normal.fK1oJ5dG.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.Cs5J6C77.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.DB5PtV2g.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-500-normal.CocWQlwt.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-500-normal.ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-greek-500-normal.JMMifIXV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-500-normal.CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-vietnamese-500-normal.e4dixQRQ.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-500-normal.BEb3_waV.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-ext-500-normal.DakdToA3.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-500-normal.D0aIdm-b.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.DUMzJB7m.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.Bz0x94Yp.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-600-normal.71GNu3SW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-600-normal.BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-greek-600-normal.DzTrcv_p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-600-normal.D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-vietnamese-600-normal.DpPYBSTl.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-600-normal.DgdngZtN.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-ext-600-normal.DOrvGEcy.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-600-normal.DIrixKbi.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.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: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{color-scheme:dark;--color-bg:#0a0d12;--color-bg-raised:#0e1218;--color-surface:#121820;--color-surface-2:#172029;--color-surface-3:#1d2833;--color-border:#222c37;--color-border-strong:#33414f;--color-text:#e8ecf1;--color-text-muted:#a6b0bd;--color-text-subtle:#8a95a3;--color-text-inverse:#061310;--color-accent:#5ccbb2;--color-accent-strong:#84ddc8;--color-accent-soft:#5ccbb21f;--color-accent-line:#5ccbb259;--color-signal:#8ea7ff;--color-signal-soft:#8ea7ff1f;--color-success:#6fd3a0;--color-success-soft:#6fd3a01f;--color-warning:#e7c46b;--color-warning-soft:#e7c46b1f;--color-danger:#f29086;--color-danger-soft:#f290861f;--color-signal-line:#8ea7ff59;--color-success-line:#6fd3a066;--color-warning-line:#e7c46b66;--color-danger-line:#f2908666;--color-focus:#9fe8d6;--color-header-bg:#0a0d12d1;--color-grid-line:#ffffff09;--color-accent-glow:#5ccbb212;--color-viz-node:#5d6b7a;--color-viz-link-strong:#5ccbb273;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:clamp(1.2rem, 1.1rem + .4vw, 1.375rem);--text-xl:clamp(1.4rem, 1.2rem + .8vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.4rem + 1.4vw, 2.375rem);--text-3xl:clamp(2.1rem, 1.6rem + 2.2vw, 3.25rem);--text-4xl:clamp(2.5rem, 1.8rem + 3.2vw, 4.25rem);--weight-regular:400;--weight-medium:500;--weight-semibold:600;--leading-tight:1.12;--leading-snug:1.3;--leading-normal:1.6;--tracking-tight:-.02em;--tracking-wide:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-section:clamp(4rem, 3rem + 4vw, 7rem);--container-max:1240px;--container-narrow:760px;--gutter:clamp(1rem, .5rem + 2.5vw, 2rem);--header-height:68px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -8px #0000008c;--shadow-lg:0 24px 48px -16px #000000a6;--ease-out:cubic-bezier(.22, 1, .36, 1);--duration-fast:.12s;--duration-base:.2s;--duration-slow:.42s;--z-header:50;--z-menu:60;--z-consent:70;--z-skip:100}:root[data-theme=light]{color-scheme:light;--color-bg:#f7f9fb;--color-bg-raised:#fff;--color-surface:#fff;--color-surface-2:#f1f4f7;--color-surface-3:#e7ecf1;--color-border:#dfe5eb;--color-border-strong:#c3ccd6;--color-text:#0f1720;--color-text-muted:#46525f;--color-text-subtle:#5f6b78;--color-text-inverse:#fff;--color-accent:#0f7f6a;--color-accent-strong:#0b6656;--color-accent-soft:#0f7f6a14;--color-accent-line:#0f7f6a4d;--color-signal:#3451c7;--color-signal-soft:#3451c714;--color-success:#17784a;--color-success-soft:#17784a14;--color-warning:#8a5a00;--color-warning-soft:#8a5a0014;--color-danger:#b42318;--color-danger-soft:#b4231812;--color-signal-line:#3451c74d;--color-success-line:#17784a59;--color-warning-line:#8a5a0059;--color-danger-line:#b4231859;--color-focus:#0b6656;--color-header-bg:#f7f9fbd9;--color-grid-line:#0f17200d;--color-accent-glow:#0f7f6a0d;--color-viz-node:#9aa6b2;--color-viz-link-strong:#0f7f6a66;--shadow-sm:0 1px 2px #0f17200f;--shadow-md:0 8px 24px -8px #0f17201f;--shadow-lg:0 24px 48px -16px #0f17202e}*,:before,:after{box-sizing:border-box}*{margin:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-height) + var(--space-4))}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--color-accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--color-accent-strong)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background:var(--color-accent);color:var(--color-text-inverse)}h1,h2,h3,h4{font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);text-wrap:balance}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-xl);line-height:var(--leading-snug)}h4{font-size:var(--text-md);line-height:var(--leading-snug)}p{text-wrap:pretty}.eyebrow{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-accent);display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:18px;height:1px}.lead{font-size:var(--text-lg);color:var(--color-text-muted);line-height:var(--leading-normal);max-width:62ch}.muted{color:var(--color-text-muted)}.mono{font-family:var(--font-mono)}.container{width:100%;max-width:var(--container-max);padding-inline:var(--gutter);margin-inline:auto}.container--narrow{max-width:calc(var(--container-narrow) + 2 * var(--gutter))}.section{padding-block:var(--space-section)}.section--raised{background:var(--color-bg-raised);border-block:1px solid var(--color-border)}.section--tight{padding-block:var(--space-16)}.stack>*+*{margin-top:var(--space-4)}.grid{gap:var(--space-6);display:grid}@media (width>=768px){.grid--2,.grid--3,.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}}.split{gap:var(--space-10);display:grid}@media (width>=1024px){.split{gap:var(--space-16);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}.split--even{grid-template-columns:repeat(2,minmax(0,1fr))}.split--reverse{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.sticky{top:calc(var(--header-height) + var(--space-8));position:sticky}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.btn{--btn-bg:transparent;--btn-fg:var(--color-text);--btn-border:var(--color-border-strong);justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-5);border:1px solid var(--btn-border);border-radius:var(--radius-md);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;transition:background-color var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out), transform var(--duration-fast) var(--ease-out);line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{color:var(--btn-fg);border-color:var(--color-text-subtle)}.btn:active{transform:translateY(1px)}.btn--primary{--btn-bg:var(--color-accent);--btn-fg:var(--color-text-inverse);--btn-border:var(--color-accent)}.btn--primary:hover{--btn-bg:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn--ghost{--btn-border:transparent;padding-inline:var(--space-2)}.btn--ghost:hover{color:var(--color-accent);border-color:#0000}.btn--lg{min-height:52px;padding:var(--space-4) var(--space-6);font-size:var(--text-base)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn .icon{width:16px;height:16px}.actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.card{gap:var(--space-3);height:100%;padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);flex-direction:column;display:flex;position:relative}.card--interactive:hover,.card--interactive:focus-within{border-color:var(--color-accent-line);background:var(--color-surface-2)}@media (prefers-reduced-motion:no-preference){.card--interactive:hover{transform:translateY(-2px)}}.card h3{font-size:var(--text-md);font-weight:var(--weight-semibold)}.card p{color:var(--color-text-muted);font-size:var(--text-sm)}.card__link{color:var(--color-text);text-decoration:none}.card__link:after{content:"";border-radius:inherit;position:absolute;inset:0}.card__link:hover{color:var(--color-text)}.card__link:focus-visible{outline:none}.card__link:focus-visible:after{outline:2px solid var(--color-focus);outline-offset:2px}.card__icon{border-radius:var(--radius-md);background:var(--color-accent-soft);width:40px;height:40px;color:var(--color-accent);border:1px solid var(--color-accent-line);place-items:center;display:grid}.card__icon .icon{width:20px;height:20px}.card__more{padding-top:var(--space-2);align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-accent);margin-top:auto;display:inline-flex}.badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;display:inline-flex}.badge--accent{border-color:var(--color-accent-line);background:var(--color-accent-soft);color:var(--color-accent)}.badge--signal{border-color:var(--color-signal-line);background:var(--color-signal-soft);color:var(--color-signal)}.badge--warning{border-color:var(--color-warning-line);background:var(--color-warning-soft);color:var(--color-warning)}.tag-list{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.alert{gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-sm);display:flex}.alert--success{border-color:var(--color-success-line);background:var(--color-success-soft)}.alert--danger{border-color:var(--color-danger-line);background:var(--color-danger-soft)}.alert--warning{border-color:var(--color-warning-line);background:var(--color-warning-soft)}.field{gap:var(--space-2);flex-direction:column;display:flex}.field label,.field legend{font-size:var(--text-sm);font-weight:var(--weight-medium)}.field .required{color:var(--color-accent)}.field .hint{font-size:var(--text-xs);color:var(--color-text-subtle)}.input,.select,.textarea{width:100%;min-height:46px;padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-base);transition:border-color var(--duration-base) var(--ease-out)}.textarea{resize:vertical;min-height:160px}.input:hover,.select:hover,.textarea:hover{border-color:var(--color-text-subtle)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--color-accent);outline:2px solid var(--color-accent-line);outline-offset:0}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-danger)}.field-error{font-size:var(--text-xs);color:var(--color-danger)}.field-error:empty{display:none}.checkbox{gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);align-items:flex-start;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--color-accent);flex:none;margin-top:3px}.check-list{gap:var(--space-3);padding:0;list-style:none;display:grid}.check-list li{padding-left:var(--space-8);color:var(--color-text-muted);position:relative}.check-list li:before{content:"";border-left:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent);width:14px;height:8px;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.dash-list{gap:var(--space-3);padding:0;list-style:none;display:grid}.dash-list li{padding-left:var(--space-6);color:var(--color-text-muted);position:relative}.dash-list li:before{content:"";background:var(--color-accent);width:10px;height:1px;position:absolute;top:.8em;left:0}.divider{border:0;border-top:1px solid var(--color-border)}.section-header{gap:var(--space-4);max-width:760px;margin-bottom:var(--space-12);display:grid}.section-header--center{text-align:center;justify-items:center;margin-inline:auto}.section-header h2{font-size:var(--text-2xl)}.section-header>.btn{justify-self:start}.grid-texture{isolation:isolate;position:relative}.grid-texture:before{content:"";z-index:-1;background-image:linear-gradient(to right, var(--color-grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--color-grid-line) 1px, transparent 1px);pointer-events:none;background-size:56px 56px;position:absolute;inset:0;mask-image:radial-gradient(at 50% 0,#000 0%,#0000 72%)}@media (prefers-reduced-motion:no-preference){.reveal{animation:reveal var(--duration-slow) var(--ease-out) both}.reveal--delay-1{animation-delay:80ms}.reveal--delay-2{animation-delay:.16s}.reveal--delay-3{animation-delay:.24s}}@keyframes reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.logo[data-astro-cid-eiri45ts]{align-items:center;gap:var(--space-3);color:var(--color-text);display:inline-flex}.logo__mark[data-astro-cid-eiri45ts]{width:30px;height:30px;color:var(--color-accent)}.logo__text[data-astro-cid-eiri45ts]{font-size:var(--text-md);font-weight:var(--weight-semibold);letter-spacing:-.01em}.theme-toggle[data-astro-cid-epbcfrs4]{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-text-muted);background:0 0;place-items:center;display:inline-grid}.theme-toggle[data-astro-cid-epbcfrs4]:hover{border-color:var(--color-border-strong);color:var(--color-text)}.theme-toggle[data-astro-cid-epbcfrs4] .icon{width:18px;height:18px}:root[data-theme=light] .theme-toggle[data-astro-cid-epbcfrs4] .theme-toggle__sun,:root:not([data-theme=light]) .theme-toggle[data-astro-cid-epbcfrs4] .theme-toggle__moon{display:none}.site-header[data-astro-cid-6stfpryv]{z-index:var(--z-header);background:var(--color-header-bg);-webkit-backdrop-filter:saturate(140%)blur(14px);transition:border-color var(--duration-base) var(--ease-out);border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-astro-cid-6stfpryv].is-scrolled,.site-header[data-astro-cid-6stfpryv]:has([aria-expanded=true]){border-bottom-color:var(--color-border)}.site-header__inner[data-astro-cid-6stfpryv]{align-items:center;gap:var(--space-6);height:var(--header-height);display:flex}.site-header__brand[data-astro-cid-6stfpryv]{flex:none;text-decoration:none}.primary-nav[data-astro-cid-6stfpryv]{flex:1;display:none}.primary-nav__list[data-astro-cid-6stfpryv]{align-items:center;gap:var(--space-1);padding:0;list-style:none;display:flex}.primary-nav__item--utility[data-astro-cid-6stfpryv]:first-of-type{margin-left:auto}.primary-nav__trigger[data-astro-cid-6stfpryv],.primary-nav__link[data-astro-cid-6stfpryv]{align-items:center;gap:var(--space-1);min-height:40px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);background:0 0;border:0;text-decoration:none;display:inline-flex}.primary-nav__trigger[data-astro-cid-6stfpryv]:hover,.primary-nav__link[data-astro-cid-6stfpryv]:hover,.primary-nav__trigger[data-astro-cid-6stfpryv][aria-expanded=true]{color:var(--color-text);background:var(--color-surface)}.primary-nav__trigger[data-astro-cid-6stfpryv].is-active,.primary-nav__link[data-astro-cid-6stfpryv].is-active{color:var(--color-text)}.primary-nav__trigger[data-astro-cid-6stfpryv] .icon{width:14px;height:14px;transition:transform var(--duration-base) var(--ease-out)}.primary-nav__trigger[data-astro-cid-6stfpryv][aria-expanded=true] .icon{transform:rotate(180deg)}.mega[data-astro-cid-6stfpryv]{background:var(--color-bg-raised);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-lg);position:absolute;top:100%;left:0;right:0}@media (prefers-reduced-motion:no-preference){.mega[data-astro-cid-6stfpryv]:not([hidden]){animation:mega-in var(--duration-base) var(--ease-out)}}@keyframes mega-in{0%{opacity:0;transform:translateY(-6px)}}.mega__inner[data-astro-cid-6stfpryv]{gap:var(--space-12);padding-block:var(--space-10);grid-template-columns:minmax(220px,1fr) 3fr;display:grid}.mega__intro[data-astro-cid-6stfpryv]{align-content:start;gap:var(--space-4);padding-right:var(--space-8);border-right:1px solid var(--color-border);display:grid}.mega__intro-text[data-astro-cid-6stfpryv]{color:var(--color-text-muted);font-size:var(--text-sm)}.mega__intro[data-astro-cid-6stfpryv] .btn[data-astro-cid-6stfpryv]{justify-self:start}.mega__columns[data-astro-cid-6stfpryv]{gap:var(--space-8);display:grid}.mega__columns--2[data-astro-cid-6stfpryv]{grid-template-columns:repeat(2,minmax(0,1fr))}.mega__columns--3[data-astro-cid-6stfpryv]{grid-template-columns:repeat(3,minmax(0,1fr))}.mega__columns--4[data-astro-cid-6stfpryv]{grid-template-columns:repeat(4,minmax(0,1fr))}.mega__heading[data-astro-cid-6stfpryv]{margin-bottom:var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-subtle)}.mega__links[data-astro-cid-6stfpryv]{gap:var(--space-1);padding:0;list-style:none;display:grid}.mega__links[data-astro-cid-6stfpryv] a[data-astro-cid-6stfpryv]{padding:var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-sm);text-decoration:none;display:block}.mega__links[data-astro-cid-6stfpryv] a[data-astro-cid-6stfpryv]:hover,.mega__links[data-astro-cid-6stfpryv] a[data-astro-cid-6stfpryv][aria-current=page]{color:var(--color-accent)}.site-header__actions[data-astro-cid-6stfpryv]{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.site-header__cta[data-astro-cid-6stfpryv]{display:none}.menu-toggle[data-astro-cid-6stfpryv]{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:0 0;place-items:center;width:44px;height:44px;display:grid}.menu-toggle[data-astro-cid-6stfpryv] .icon{width:20px;height:20px}.menu-toggle[data-astro-cid-6stfpryv] .menu-toggle__close,.menu-toggle[data-astro-cid-6stfpryv][aria-expanded=true] .menu-toggle__open{display:none}.menu-toggle[data-astro-cid-6stfpryv][aria-expanded=true] .menu-toggle__close{display:block}.mobile-menu[data-astro-cid-6stfpryv]{height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));z-index:var(--z-menu);background:var(--color-bg);padding-block:var(--space-6) var(--space-12);position:absolute;top:100%;left:0;right:0;overflow-y:auto}.mobile-menu__list[data-astro-cid-6stfpryv]{padding:0;list-style:none}.mobile-menu__list[data-astro-cid-6stfpryv]>li[data-astro-cid-6stfpryv]{border-bottom:1px solid var(--color-border)}.mobile-menu__group[data-astro-cid-6stfpryv] summary[data-astro-cid-6stfpryv],.mobile-menu__link[data-astro-cid-6stfpryv]{min-height:56px;color:var(--color-text);font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;justify-content:space-between;align-items:center;text-decoration:none;list-style:none;display:flex}.mobile-menu__group[data-astro-cid-6stfpryv] summary[data-astro-cid-6stfpryv]::-webkit-details-marker{display:none}.mobile-menu__group[data-astro-cid-6stfpryv] summary[data-astro-cid-6stfpryv] .icon{width:18px;height:18px;transition:transform var(--duration-base) var(--ease-out)}.mobile-menu__group[data-astro-cid-6stfpryv][open] summary[data-astro-cid-6stfpryv] .icon{transform:rotate(180deg)}.mobile-menu__group[data-astro-cid-6stfpryv] ul[data-astro-cid-6stfpryv]{gap:var(--space-1);padding:0 0 var(--space-4);list-style:none;display:grid}.mobile-menu__group[data-astro-cid-6stfpryv] ul[data-astro-cid-6stfpryv] a[data-astro-cid-6stfpryv]{padding:var(--space-2) 0;color:var(--color-text-muted);text-decoration:none;display:block}.mobile-menu__group[data-astro-cid-6stfpryv] ul[data-astro-cid-6stfpryv] a[data-astro-cid-6stfpryv].mobile-menu__overview{color:var(--color-accent)}.mobile-menu__cta[data-astro-cid-6stfpryv]{width:100%;margin-top:var(--space-8)}html.menu-open{overflow:hidden}@media (width>=640px){.site-header__cta[data-astro-cid-6stfpryv]{display:inline-flex}}@media (width>=1100px){.primary-nav[data-astro-cid-6stfpryv]{display:block}.menu-toggle[data-astro-cid-6stfpryv],.mobile-menu[data-astro-cid-6stfpryv]{display:none}}.site-footer[data-astro-cid-63k7wqxu]{border-top:1px solid var(--color-border);background:var(--color-bg-raised);padding-block:var(--space-16) var(--space-8);font-size:var(--text-sm);margin-top:auto}.site-footer__top[data-astro-cid-63k7wqxu]{gap:var(--space-12);display:grid}.site-footer__brand[data-astro-cid-63k7wqxu]{align-content:start;gap:var(--space-5);display:grid}.site-footer__tagline[data-astro-cid-63k7wqxu]{max-width:34ch;color:var(--color-text-muted)}.site-footer__contact[data-astro-cid-63k7wqxu]{gap:var(--space-3);color:var(--color-text-muted);padding:0;list-style:none;display:grid}.site-footer__contact[data-astro-cid-63k7wqxu] li[data-astro-cid-63k7wqxu]{gap:var(--space-3);align-items:flex-start;display:flex}.site-footer__contact[data-astro-cid-63k7wqxu] .icon{width:16px;height:16px;color:var(--color-accent);flex:none;margin-top:3px}.site-footer__contact[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu]{color:var(--color-text);word-break:break-word;text-decoration:none}.site-footer__contact[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu]:hover{color:var(--color-accent)}.site-footer__nav[data-astro-cid-63k7wqxu]{gap:var(--space-8) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.site-footer__heading[data-astro-cid-63k7wqxu]{margin-bottom:var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-subtle)}.site-footer__nav[data-astro-cid-63k7wqxu] ul[data-astro-cid-63k7wqxu]{gap:var(--space-2);padding:0;list-style:none;display:grid}.site-footer__nav[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu],.site-footer__legal[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu]{color:var(--color-text-muted);text-decoration:none}.site-footer__nav[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu]:hover,.site-footer__legal[data-astro-cid-63k7wqxu] a[data-astro-cid-63k7wqxu]:hover,.site-footer__button[data-astro-cid-63k7wqxu]:hover{color:var(--color-text)}.site-footer__button[data-astro-cid-63k7wqxu]{color:var(--color-text-muted);font:inherit;background:0 0;border:0;padding:0}.site-footer__bottom[data-astro-cid-63k7wqxu]{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-16);padding-top:var(--space-6);border-top:1px solid var(--color-border);color:var(--color-text-subtle);flex-wrap:wrap;display:flex}.site-footer__legal[data-astro-cid-63k7wqxu]{gap:var(--space-5);flex-wrap:wrap;padding:0;list-style:none;display:flex}@media (width>=768px){.site-footer__nav[data-astro-cid-63k7wqxu]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1100px){.site-footer__top[data-astro-cid-63k7wqxu]{grid-template-columns:minmax(260px,1.2fr) 3fr}.site-footer__nav[data-astro-cid-63k7wqxu]{grid-template-columns:repeat(5,minmax(0,1fr))}}.consent[data-astro-cid-fv23tnoy]{z-index:var(--z-consent);border-top:1px solid var(--color-border-strong);background:var(--color-bg-raised);box-shadow:var(--shadow-lg);padding-block:var(--space-5);font-size:var(--text-sm);position:fixed;inset:auto 0 0}.consent__inner[data-astro-cid-fv23tnoy]{gap:var(--space-4);align-items:center;display:grid}.consent__text[data-astro-cid-fv23tnoy]{gap:var(--space-2);display:grid}.consent__title[data-astro-cid-fv23tnoy]{font-size:var(--text-base)}.consent__text[data-astro-cid-fv23tnoy] p[data-astro-cid-fv23tnoy]{max-width:80ch;color:var(--color-text-muted)}.consent__actions[data-astro-cid-fv23tnoy]{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=900px){.consent__inner[data-astro-cid-fv23tnoy]{gap:var(--space-8);grid-template-columns:1fr auto}.consent__actions[data-astro-cid-fv23tnoy]{grid-template-columns:repeat(2,auto)}}body{flex-direction:column;display:flex}main[data-astro-cid-z4jru4n3]{flex:1}main[data-astro-cid-z4jru4n3]:focus{outline:none}.skip-link[data-astro-cid-z4jru4n3]{top:var(--space-2);left:var(--space-2);z-index:var(--z-skip);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-text-inverse);font-weight:var(--weight-semibold);text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link[data-astro-cid-z4jru4n3]:focus{transform:none}
