@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");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:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");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:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_9d4a0850-module__SpyvVa__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_9d4a0850-module__SpyvVa__variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2)format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2)format("woff2");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-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2)format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2)format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2)format("woff2");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-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2)format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2)format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2)format("woff2");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-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_51a00220-module__BMltbW__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_51a00220-module__BMltbW__variable{--font-body:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_10da2730-module__i1YWaa__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_10da2730-module__i1YWaa__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#f6f8fb;--surface:#fff;--sunk:#edf1f7;--line:#d9e0ea;--ink:#0f1d33;--muted:#52617a;--brand:#17489a;--brand-ink:#fff;--brand-soft:#e6eef9;--mark:#c9ecfb;--mark-ink:#0e3570;--accent:#24a9e3;--pass:#1c7c4a;--pass-soft:#ddf2e6;--fail:#b4302a;--fail-soft:#f8e1df;--warn:#9a6400;--warn-soft:#fbefd3;--f-display:var(--font-display), "Segoe UI", system-ui, sans-serif;--f-body:var(--font-body), "Segoe UI", system-ui, sans-serif;--f-mono:var(--font-mono), ui-monospace, "SFMono-Regular", Menlo, monospace;--r:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font:400 15px/1.6 var(--f-body);margin:0}img{max-width:100%;height:auto}a{color:var(--brand)}h1,h2,h3,h4{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3.4rem);font-weight:800}h2{letter-spacing:-.01em;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:700}h3{font-size:1.15rem;font-weight:700}p,ul{margin:0}:focus-visible{outline:3px solid var(--mark);outline-offset:2px}.mono{font-family:var(--f-mono);font-size:.82em}.eyebrow{font:600 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.wrap{max-width:1160px;margin:0 auto;padding-inline:20px}.muted{color:var(--muted)}mark{background:var(--mark);color:var(--mark-ink);border-radius:3px;padding:0 .2em}.skip{z-index:50;position:absolute;top:8px;left:-9999px}.skip:focus{left:8px}.top{z-index:20;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.top .wrap{flex-wrap:wrap;align-items:center;gap:16px;min-height:62px;display:flex}.logo{align-items:flex-end;gap:8px;padding-block:6px;text-decoration:none;display:flex}.logo img{flex:none;display:block}.logo .wordmark{margin-bottom:2px}nav.main{flex-wrap:wrap;flex:1;gap:0;display:flex}nav.main a{color:var(--muted);border-radius:8px;padding:8px 10px;font-weight:500;text-decoration:none}nav.main a:hover{color:var(--ink);background:var(--sunk)}nav.main a[aria-current=page]{color:var(--ink);background:var(--brand-soft)}.top-actions{align-items:center;gap:8px;display:flex}.btn.menu-btn{display:none}@media (max-width:1100px){.btn.menu-btn{margin-left:auto;display:inline-flex}nav.main{flex-direction:column;flex-basis:100%;padding-bottom:12px;display:none}nav.main.open{display:flex}.top-actions{display:none}}.btn{font:600 .92rem var(--f-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.primary:hover{filter:brightness(1.08)}.btn.small{padding:6px 10px;font-size:.82rem}.btn[disabled]{opacity:.6;cursor:wait}section.page{padding-block:40px 64px}.stack{flex-direction:column;gap:24px;display:flex}.stack.tight{gap:12px}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.sec-head>div{flex-direction:column;gap:8px;max-width:680px;display:flex}.grid{gap:16px;display:grid}.g2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;min-width:0;padding:20px;display:flex}a.card{color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}a.card:hover{border-color:var(--brand);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){a.card{transition:none}a.card:hover{transform:none}}.card.highlight{background:var(--brand-soft);border-color:var(--brand)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:600 .7rem/1 var(--f-mono);letter-spacing:.04em;background:var(--sunk);color:var(--muted);white-space:nowrap;border-radius:5px;padding:5px 8px}.chip.pass{background:var(--pass-soft);color:var(--pass)}.chip.fail{background:var(--fail-soft);color:var(--fail)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.brand{background:var(--brand-soft);color:var(--brand)}.tcid{font:600 .72rem var(--f-mono);color:var(--muted)}.price-offer{flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:6px;display:inline-flex}.price-offer s{font-size:.85em}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.mt-auto{margin-top:auto}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r);padding:40px}.back{font-family:var(--f-mono);font-size:.85rem}.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;padding-block:56px 24px;display:grid}@media (max-width:900px){.hero{grid-template-columns:1fr}}.hero-copy{flex-direction:column;gap:20px;display:flex}.lead{color:var(--muted);max-width:60ch;font-size:1.12rem}.ctas{flex-wrap:wrap;gap:10px;display:flex}.report{background:var(--surface);border:1px solid var(--line);font-family:var(--f-mono);border-radius:12px;min-width:0;font-size:.8rem;overflow:hidden}.report-head,.report-foot{background:var(--sunk);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 16px;display:flex}.report-head{border-bottom:1px solid var(--line)}.report-row{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 16px;animation:.45s both rowin;display:grid}.report-row span:nth-child(2){font-family:var(--f-body);color:var(--ink);min-width:0;font-size:.9rem}@keyframes rowin{0%{opacity:.0001;transform:translate(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.report-row{animation:none}}.pillar-num{font:700 .78rem var(--f-mono);color:var(--brand)}.domains{flex-wrap:wrap;gap:8px;display:flex}.domain{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-weight:500;display:flex}.domain i{background:var(--brand);border-radius:2px;width:8px;height:8px;display:block}.stats{background:var(--line);border:1px solid var(--line);border-radius:var(--r);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:1px;display:grid;overflow:hidden}.stat{background:var(--surface);flex-direction:column;gap:4px;padding:18px 20px;display:flex}.stat b{font:800 1.9rem var(--f-display);font-variant-numeric:tabular-nums}.band{background:var(--brand);color:var(--brand-ink);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:32px;display:flex}.band .btn{background:var(--brand-ink);color:var(--brand);border-color:var(--brand-ink)}.band p{opacity:.85;max-width:60ch}.band .eyebrow{color:var(--brand-ink);opacity:.75}.band.dark{background:var(--ink)}.band.dark .btn{color:var(--brand-ink);background:0 0;border-color:#ffffff73}.band.dark .btn:hover{background:var(--brand-ink);color:var(--ink);border-color:var(--brand-ink)}.table-wrap{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 14px}th{font:600 .7rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--sunk)}tr:last-child td{border-bottom:0}td.num{font-variant-numeric:tabular-nums;font-family:var(--f-mono);font-size:.82rem}.seats{align-items:center;gap:8px;display:flex}.seatbar{background:var(--sunk);border-radius:3px;width:70px;height:6px;overflow:hidden}.seatbar i{background:var(--pass);height:100%;display:block}.seatbar i.low{background:var(--fail)}.level{gap:3px;display:inline-flex}.level i{background:var(--line);border-radius:2px;width:14px;height:6px}.level i.on{background:var(--brand)}.filters{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:12px;padding:16px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-row .label{font:600 .7rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);min-width:72px}.fbtn{font:500 .84rem var(--f-body);border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:999px;padding:6px 12px;text-decoration:none}.fbtn[aria-pressed=true],.fbtn[aria-current=true]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}input[type=search],input[type=text],input[type=email],input[type=tel],input[type=url],select,textarea{font:400 .95rem var(--f-body);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;width:100%;padding:10px 12px}form.form{grid-template-columns:1fr 1fr;gap:14px;display:grid;position:relative}form.form .full{grid-column:1/-1}form.form.one{grid-template-columns:1fr}@media (max-width:640px){form.form{grid-template-columns:1fr}}label.f{flex-direction:column;gap:6px;font-size:.88rem;font-weight:500;display:flex}label.check{align-items:flex-start;gap:8px;font-size:.9rem;display:flex}.req{color:var(--fail)}.toast{background:var(--pass-soft);color:var(--pass);border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-weight:600;display:flex}.toast.error{background:var(--fail-soft);color:var(--fail)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.modules{flex-direction:column;gap:8px;display:flex}details.mod{border:1px solid var(--line);background:var(--surface);border-radius:8px}details.mod summary{cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-weight:600;list-style:none;display:flex}details.mod summary::-webkit-details-marker{display:none}details.mod summary .tcid{min-width:46px}details.mod summary .hrs{font:400 .78rem var(--f-mono);color:var(--muted);margin-left:auto}details.mod[open] summary{border-bottom:1px solid var(--line)}details.mod ul{color:var(--muted);padding:12px 16px 14px 40px}details.mod .answer{color:var(--muted);padding:12px 16px 14px}.path{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);display:flex;overflow-x:auto}.path .step{border-right:1px solid var(--line);flex-direction:column;flex:1 0 170px;gap:6px;padding:16px;display:flex}.path .step:last-child{border-right:0}.subnav{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.subnav a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:10px 14px;font-weight:600;text-decoration:none}.subnav a:hover{color:var(--ink);border-bottom-color:var(--line)}.course-head{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}@media (max-width:900px){.course-head{grid-template-columns:1fr}}.svc-card .deliver{color:var(--muted);font-size:.86rem}.card-foot{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;font-size:.85rem;display:flex}.steps{counter-reset:s;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin:0;padding:0;display:grid}.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:6px;padding:16px;list-style:none;display:flex}.steps li:before{content:"STEP " counter(s);font:600 .7rem var(--f-mono);letter-spacing:.1em;color:var(--brand)}.role-row{border-bottom:1px solid var(--line);grid-template-columns:1.4fr 1fr 1.2fr auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.role-row:last-child{border-bottom:0}.role-row.head{background:var(--sunk)}@media (max-width:700px){.role-row{grid-template-columns:1fr 1fr}}.jobs-layout{grid-template-columns:260px 1fr;align-items:start;gap:24px;display:grid}@media (max-width:900px){.jobs-layout{grid-template-columns:1fr}}.jobs-side{flex-direction:column;gap:14px;display:flex;position:sticky;top:80px}@media (max-width:900px){.jobs-side{position:static}}.region-switch{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.region-switch a{font:600 .9rem var(--f-body);border-right:1px solid var(--line);color:var(--muted);text-align:center;padding:12px 8px;text-decoration:none}.region-switch a:last-child{border-right:0}.region-switch a[aria-current=true]{background:var(--ink);color:var(--bg)}.region-switch small{font:400 .72rem var(--f-mono);opacity:.75;display:block}.job{grid-template-columns:44px 1fr auto;align-items:start;gap:14px;display:grid}@media (max-width:640px){.job{grid-template-columns:1fr}.job .co-mark{display:none}}.co-mark{width:44px;height:44px;font:800 .85rem var(--f-display);background:var(--brand-soft);color:var(--brand);border-radius:10px;place-items:center;display:grid}.co-mark.appsec{background:var(--fail-soft);color:var(--fail)}.co-mark.sdet{background:var(--warn-soft);color:var(--warn)}.job .side{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;display:flex}@media (max-width:640px){.job .side{text-align:left;flex-flow:wrap;align-items:flex-start}}.job h3 a{color:inherit;text-decoration:none}.job h3 a:hover{text-decoration:underline}.facts{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:.86rem;display:flex}.detail{grid-template-columns:1fr 300px;align-items:start;gap:24px;display:grid}@media (max-width:900px){.detail{grid-template-columns:1fr}}.detail ul{flex-direction:column;gap:6px;padding-left:20px;display:flex}.kv{grid-template-columns:auto 1fr;gap:8px 14px;margin:0;font-size:.9rem;display:grid}.kv dt{color:var(--muted);font:600 .7rem var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding-top:3px}.kv dd{margin:0}.av{width:56px;height:56px;font:800 1.05rem var(--f-display);background:var(--brand-soft);color:var(--brand);border-radius:14px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.av img{object-fit:cover;width:100%;height:100%}.av.xl{border-radius:22px;width:96px;height:96px;font-size:1.8rem}.av.sm{border-radius:9px;width:34px;height:34px;font-size:.75rem}.av[data-dept=Leadership]{background:var(--ink);color:var(--bg)}.av[data-dept=Security]{background:var(--fail-soft);color:var(--fail)}.av[data-dept=QA\ Engineering]{background:var(--pass-soft);color:var(--pass)}.av[data-dept=Operations]{background:var(--warn-soft);color:var(--warn)}.av[data-dept=Freelance]{background:var(--brand-soft);color:var(--brand)}.av[data-dept=Alumni]{background:var(--mark);color:var(--mark-ink)}.person{align-items:center;gap:14px;display:flex}.person>div{min-width:0}.person .role{color:var(--muted);font-size:.9rem}.person h3 a{color:inherit;text-decoration:none}.trainers-row{flex-wrap:wrap;gap:12px;display:flex}.trainer-pill{border:1px solid var(--line);color:inherit;background:var(--bg);border-radius:12px;align-items:center;gap:10px;padding:6px 12px 6px 6px;text-decoration:none;display:flex}.trainer-pill:hover{border-color:var(--brand)}.ba{background:var(--sunk);border-radius:8px;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px 12px;font-size:.86rem;display:grid}.ba .arrow{font:700 1rem var(--f-mono);color:var(--brand)}.ba .after{font-weight:600}.journey{border:1px solid var(--line);border-radius:var(--r);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}@media (max-width:700px){.journey{grid-template-columns:1fr 1fr}}.journey div{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;gap:4px;padding:14px;display:flex}.journey div:last-child{background:var(--pass-soft);border-right:0}.featured{grid-template-columns:auto 1fr;align-items:start;gap:24px;display:grid}@media (max-width:700px){.featured{grid-template-columns:1fr}}.bigquote{font:500 1.25rem/1.5 var(--f-display);text-wrap:balance}.post-feature{grid-template-columns:1fr 1fr;padding:0;display:grid;overflow:hidden}@media (max-width:800px){.post-feature{grid-template-columns:1fr}}.post-feature .body{flex-direction:column;gap:12px;padding:24px;display:flex}.cover{background:var(--brand-soft);border-radius:inherit;min-height:220px;position:relative;overflow:hidden}.cover canvas,.cover img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.activity-cover{aspect-ratio:16/9;border-radius:var(--r) var(--r) 0 0;min-height:0;margin:-20px -20px 0}.gallery-strip{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;display:grid}.gallery-strip a{border-radius:6px;display:block;overflow:hidden}.gallery-strip a:hover{outline:2px solid var(--brand);outline-offset:1px}.gallery-strip img{aspect-ratio:16/9;object-fit:cover;background:var(--sunk);width:100%;display:block}.meta{font:400 .78rem var(--f-mono);color:var(--muted);flex-wrap:wrap;gap:12px;display:flex}.layout-blog{grid-template-columns:1fr 280px;align-items:start;gap:24px;display:grid}@media (max-width:900px){.layout-blog{grid-template-columns:1fr}}article.post{flex-direction:column;gap:18px;max-width:720px;margin:0 auto;display:flex}.prose{flex-direction:column;gap:16px;display:flex}.prose p,.prose li{font-size:1.04rem;line-height:1.75}.prose h2{margin-top:12px}.prose pre{background:var(--sunk);border:1px solid var(--line);font:400 .84rem/1.6 var(--f-mono);border-radius:8px;margin:0;padding:14px;overflow-x:auto}.prose code{font-family:var(--f-mono);font-size:.9em}.prose blockquote{border-left:3px solid var(--brand);color:var(--muted);margin:0;padding-left:16px}footer.site{border-top:1px solid var(--line);background:var(--brand-soft);padding-block:32px}footer.site .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}footer.site a{color:var(--muted);padding:2px 0;text-decoration:none;display:block}footer.site a:hover{color:var(--ink)}.wa{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;border-radius:999px;position:fixed;box-shadow:0 6px 20px #0000002e}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}section.page.home-hero{padding-block:8px 40px}.hl{color:var(--brand);background:linear-gradient(transparent 62%, var(--mark) 62%);padding:0 .1em}.next-batch{border-color:var(--brand);gap:14px;box-shadow:0 10px 30px #17489a14}.next-batch h2{font-size:1.5rem}.next-batch .btn{align-self:flex-start}.band-section{padding-block:56px}.band-section.alt{background:var(--surface);border-block:1px solid var(--line)}.about{grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;display:grid}@media (max-width:900px){.about{grid-template-columns:1fr}}.sub-title{margin-top:8px;font-size:1.35rem}.expertise{border-left:3px solid var(--accent);background:var(--bg);border-radius:0 var(--r) var(--r) 0;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.expertise h4{font:700 1.02rem var(--f-display)}.expertise.training{border-left-color:var(--brand)}.expert{align-items:flex-start;gap:12px}.logo-wall{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px;display:grid}.org{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);min-height:84px;color:var(--ink);flex-direction:column;justify-content:center;gap:2px;padding:14px 18px;text-decoration:none;display:flex}a.org:hover{border-color:var(--brand)}.org b{font:700 1.05rem var(--f-display)}.org .muted{font-size:.82rem}.review{justify-content:space-between;margin:0}.review blockquote{margin:0;font-size:1rem;line-height:1.65}.stars{color:#f2a900;letter-spacing:2px;font-size:1.05rem}.stars .off{color:var(--line)}.about .stats{grid-template-columns:repeat(2,1fr)}.logo{flex-wrap:nowrap}.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.marquee-track{gap:16px;width:max-content;animation:70s linear infinite marquee;display:flex}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.marquee .review{flex:none;width:340px}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee.logos .marquee-track{gap:12px;animation-duration:45s}.marquee.logos .org{flex:none;width:210px}.marquee.reverse .marquee-track{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.marquee-track{animation:none}}
