@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf.2e4y-bhazgt_v.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.3o0_l_yqebdng.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.2mglm451ism6l.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.3bjsqkuy1d2v8.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.0xluf1kzv7x5w.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-20C0,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.p.45487z7p3r8wm.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.2e4y-bhazgt_v.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.3o0_l_yqebdng.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.2mglm451ism6l.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.3bjsqkuy1d2v8.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.0xluf1kzv7x5w.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-20C0,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.p.45487z7p3r8wm.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.2e4y-bhazgt_v.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.3o0_l_yqebdng.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.2mglm451ism6l.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.3bjsqkuy1d2v8.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.0xluf1kzv7x5w.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-20C0,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.p.45487z7p3r8wm.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:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf.2e4y-bhazgt_v.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:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c.3o0_l_yqebdng.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:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8.2mglm451ism6l.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:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8.3bjsqkuy1d2v8.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:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c.0xluf1kzv7x5w.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e.p.45487z7p3r8wm.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}.ibm_plex_sans_57a83433-module__OeyeCq__className{font-family:IBM Plex Sans,system-ui,-apple-system,Segoe UI,sans-serif;font-style:normal}.ibm_plex_sans_57a83433-module__OeyeCq__variable{--font-plex-sans:"IBM Plex Sans", system-ui, -apple-system, Segoe UI, sans-serif}
@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7f49c72243bdcede.0vt-60hmi2vin.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 Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a2797aaeec05c026.0bz2k07bwtjf0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b3baf9375001c1f5.2bx28matv0ceh.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 Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9096fd5f49bfad97.3kexm475qli9u.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ef7be03ed7e60a63.p.2s_2xm20rpc3j.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 Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/be04ef6d3831928d.3_dnekshegu4n.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 Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/690c9e92a92dc3ad.32eehml_6_jun.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/bd1c8a16898c933f.09fc21sln-uz7.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 Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c63a115de3206da5.1vuxzv5k7j1re.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/713e82fa9fe87496.p.2dsuev1r8izqr.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}.ibm_plex_serif_dc414284-module___LawJG__className{font-family:IBM Plex Serif,Georgia,Times New Roman,serif;font-style:normal}.ibm_plex_serif_dc414284-module___LawJG__variable{--font-plex-serif:"IBM Plex Serif", Georgia, Times New Roman, serif}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5.3zhtymus0wdqb.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5.3nkuoiize4urq.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd.1da667lu-u79a.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4.1i05ju5aeyhye.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d.p.1dgcou5jor5q_.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e.31-2bzhq1gx_9.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18.3xauquyg2sixn.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4.2taws-qdxmzlf.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913.0htwiiqufp3l9.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64.p.28xcb7557rbh2.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}.ibm_plex_mono_d48d1007-module__Dnme9W__className{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal}.ibm_plex_mono_d48d1007-module__Dnme9W__variable{--font-plex-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fbfcfb;--paper-2:#f4f7f5;--ink:#0f1a17;--ink-soft:#24322d;--slate:#4f5f5a;--slate-light:#68726f;--rule:#dfe6e2;--rule-strong:#c6d2cd;--mint:#0e7a57;--mint-bright:#12a06e;--mint-wash:#e9f3ee;--mint-wash-2:#d6ebe1;--amber:#ffd704;--amber-deep:#ffd704;--font-display:var(--font-plex-serif), Georgia, "Times New Roman", serif;--font-body:var(--font-plex-sans), system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--font-plex-mono), ui-monospace, "SF Mono", Menlo, monospace;--fs-hero:clamp(2.375rem, 5.4vw, 4.25rem);--fs-h2:clamp(1.625rem, 3vw, 2.375rem);--fs-h3:clamp(1.125rem, 1.4vw, 1.3125rem);--fs-lead:clamp(1.0625rem, 1.5vw, 1.25rem);--fs-body:1.0625rem;--fs-sm:.9375rem;--fs-data:.8125rem;--fs-label:.75rem;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:128px;--wrap:1340px;--gutter:clamp(14px, 2.2vw, 22px);--band-y:clamp(48px, 7.5vw, 96px);--radius:4px;--radius-lg:8px;--header-h:68px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.62}img,svg{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--fs-hero);letter-spacing:-.022em;line-height:1.04}h2{font-size:var(--fs-h2);letter-spacing:-.015em;line-height:1.14}h3{font-size:var(--fs-h3);letter-spacing:-.008em;line-height:1.28}p{margin:0}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:2px}::selection{background:var(--mint-wash-2);color:var(--ink)}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.band{padding-block:var(--band-y)}.band-tight{padding-block:clamp(34px,4.5vw,60px)}.band-ruled{border-top:1px solid var(--rule)}.band-sunken{background:var(--paper-2);border-block:1px solid var(--rule)}.band-dark{background:var(--ink);color:#e6ece9}.block-gap{margin-top:clamp(26px,3.5vw,44px)}.skip{z-index:100;background:var(--ink);color:var(--paper);padding:var(--s3) var(--s5);font-family:var(--font-mono);font-size:var(--fs-label);position:absolute;top:0;left:-9999px}.skip:focus{left:var(--s4);top:var(--s4)}.eyebrow{align-items:center;gap:var(--s3);font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:var(--slate-light);margin-bottom:var(--s4);font-weight:500;display:flex}.eyebrow:after{content:"";background:var(--rule);flex:1;height:1px}.eyebrow-index{color:var(--mint)}.band-dark .eyebrow{color:#7f9189}.band-dark .eyebrow:after{background:#2c3a35}.band-dark .eyebrow-index{color:var(--mint-bright)}.lead{font-size:var(--fs-lead);color:var(--slate);max-width:62ch;line-height:1.55}h1+.lead,h2+.lead,h2+.prose-p,h3+.lead{margin-top:var(--s4)}h2+.steps{margin-top:clamp(26px,3.5vw,44px)}.prose-p+.prose-p{margin-top:var(--s4)}.prose-p{color:var(--slate)}.hdr{z-index:50;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);background:#fbfcfbdb;position:sticky;top:0}.hdr-row{height:var(--header-h);align-items:stretch;gap:var(--s4);display:flex}.brand{align-items:center;margin-right:auto;display:flex}.brand-logo{flex:none;width:auto;height:58px;margin-top:-4px;display:block}.nav{align-items:stretch;gap:0;display:flex}.nav-link{padding:0 var(--s3);letter-spacing:-.005em;color:var(--ink);white-space:nowrap;align-items:center;gap:7px;font-size:1rem;font-weight:600;transition:color .18s,background-color .18s;display:inline-flex}.nav-link:hover{background:var(--mint-wash)}.nav-link[aria-current=page],.sub-trigger[data-active=true]{background:var(--mint-wash);color:var(--mint)}.has-sub{align-items:stretch;display:flex;position:relative}.sub-trigger{letter-spacing:inherit;cursor:pointer;background:0 0;border:0;font-family:inherit}.caret{border-top:5px solid;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;transition:transform .18s}.sub-trigger[aria-expanded=true] .caret{transform:rotate(180deg)}.subnav{z-index:5;min-width:252px;padding:var(--s2);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);flex-direction:column;display:none;position:absolute;top:100%;left:0;box-shadow:0 18px 40px #0f1a171f}.subnav-open{display:flex}.sub-link{padding:10px var(--s3);font-size:var(--fs-sm);color:var(--slate);border-radius:var(--radius);white-space:nowrap;transition:color .18s,background-color .18s}.sub-link:hover,.sub-link[aria-current=page]{background:var(--mint-wash);color:var(--mint)}.nav-cta{align-items:center;gap:var(--s2);margin-left:var(--s4);background:var(--amber);color:var(--ink);white-space:nowrap;padding:0 18px;font-size:1rem;font-weight:600;transition:background-color .18s;display:inline-flex}.nav-cta:hover{background:var(--amber-deep)}.nav-cta:hover .arrow{transform:translate(3px)}.nav-toggle{align-self:center;align-items:center;gap:var(--s2);padding:8px var(--s3);border:1px solid var(--rule-strong);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;display:none}.btn{align-items:center;gap:var(--s2);padding:12px var(--s5);border-radius:var(--radius);font-size:var(--fs-sm);cursor:pointer;border:1px solid #0000;font-weight:500;transition:background-color .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover{background:var(--mint)}.btn-outline{color:var(--ink);border-color:var(--rule-strong);background:0 0}.btn-outline:hover{border-color:var(--mint);color:var(--mint);background:var(--mint-wash)}.btn-ghost{color:var(--mint);padding-inline:0}.btn-ghost:hover{color:var(--ink)}.btn-row{gap:var(--s3);flex-wrap:wrap;display:flex}.arrow{font-family:var(--font-mono);transition:transform .18s}.btn:hover .arrow,.card-link:hover .arrow{transform:translate(3px)}.hero-full{border-bottom:1px solid var(--rule);text-align:center;background:linear-gradient(#f8faf9 0%,#fbfcfb 100%);padding-block:clamp(80px,12vw,140px);position:relative;overflow:hidden}.hero-full:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#0e7a5708 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.hero-full-content{z-index:1;max-width:80ch;margin-inline:auto;position:relative}.hero-full-eyebrow{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.15em;text-transform:uppercase;color:var(--slate-light);margin-bottom:var(--s6);font-weight:500}.rotating-text{justify-content:center;align-items:center;min-height:200px;display:flex;position:relative}.rotating-text-content{text-align:center;width:100%;transition:opacity .5s ease-in-out,transform .5s ease-in-out}.rotating-text-content.fade-in{opacity:1;transform:translateY(0)}.rotating-text-content.fade-out{opacity:0;transform:translateY(20px)}.rotating-text-content h1{font-family:var(--font-display);font-size:var(--fs-hero);letter-spacing:-.022em;color:var(--ink);margin:0;line-height:1.08}.rotating-text-content p{font-size:var(--fs-lead);color:var(--slate);max-width:60ch;margin-inline:auto;margin-top:var(--s4);line-height:1.6}.btn-hero-full{margin-top:var(--s7);background:var(--ink);color:var(--paper);font-family:var(--font-body);font-size:var(--fs-body);border-radius:var(--radius);cursor:pointer;letter-spacing:.02em;border:none;padding:16px 56px;font-weight:600;text-decoration:none;transition:background-color .2s;display:inline-block}.btn-hero-full:hover{background:var(--mint)}.services-section{background:var(--paper);border-bottom:1px solid var(--rule);padding-block:clamp(48px,7vw,80px)}.services-header{text-align:center;margin-bottom:clamp(32px,4vw,48px)}.services-header .eyebrow{justify-content:center}.services-header .eyebrow:after{display:none}.services-header h2{font-size:var(--fs-h2);color:var(--ink);margin-top:var(--s2);margin-bottom:var(--s4)}.services-header .lead{max-width:55ch;color:var(--slate);margin-inline:auto}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.5vw,32px);display:grid}.service-card{background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-lg);text-align:center;padding:clamp(24px,2.8vw,36px);transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{border-color:var(--mint);transform:translateY(-6px);box-shadow:0 12px 40px #0f1a1714}.service-icon-wrapper{background:var(--mint-wash);width:64px;height:64px;margin-bottom:var(--s4);color:var(--mint);border-radius:50%;justify-content:center;align-items:center;transition:background .25s,transform .25s;display:inline-flex}.service-card:hover .service-icon-wrapper{background:var(--mint);transform:scale(1.05)}.service-card:hover .service-icon-wrapper .service-icon{color:#fff}.service-icon{color:var(--mint);font-size:28px;transition:color .25s}.service-card h3{font-size:var(--fs-h3);margin-bottom:var(--s3);color:var(--ink)}.service-card p{font-size:var(--fs-sm);color:var(--slate);max-width:30ch;margin-inline:auto;line-height:1.65}.about-section{background:var(--paper);border-bottom:1px solid var(--rule);padding-block:clamp(48px,7vw,80px)}.about-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start;gap:clamp(40px,5vw,64px);display:grid}.about-left h2{font-size:var(--fs-h2);margin-top:var(--s2);margin-bottom:var(--s4)}.about-lead{font-size:var(--fs-lead);color:var(--slate);max-width:52ch;line-height:1.6}.about-vision-mission{margin-top:var(--s6);gap:var(--s5);display:grid}.about-vision,.about-mission,.about-recognition,.about-success,.about-info-system{padding-left:var(--s7);position:relative}.about-icon-wrapper{background:var(--mint-wash);border-radius:var(--radius);width:36px;height:36px;color:var(--mint);justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.about-icon{font-size:18px}.about-vision h3,.about-mission h3,.about-recognition h3,.about-success h3,.about-info-system h3{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:var(--mint);margin-bottom:var(--s2);font-weight:500}.about-vision p,.about-mission p{font-size:var(--fs-sm);color:var(--slate);line-height:1.7}.about-right{gap:var(--s6);padding-top:var(--s7);display:grid}.about-recognition p,.about-success p,.about-info-system p{font-size:var(--fs-sm);color:var(--slate);line-height:1.7}.about-success-logos{gap:var(--s3);margin-top:var(--s4);flex-wrap:wrap;display:flex}.success-badge{align-items:center;gap:var(--s2);background:var(--mint-wash);color:var(--mint);font-size:var(--fs-data);font-weight:500;font-family:var(--font-mono);border-radius:999px;padding:6px 16px;display:inline-flex}.success-badge .badge-icon{font-size:14px}.about-info-list{gap:var(--s3);margin-top:var(--s4);display:grid}.about-info-list li{align-items:center;gap:var(--s3);font-size:var(--fs-sm);color:var(--slate);padding:var(--s2) var(--s3);background:var(--paper-2);border-radius:var(--radius);border-left:3px solid var(--mint);display:flex}.about-info-list li.free-item{background:#fffbeb;border-left-color:#f59e0b}.about-info-list .info-icon-wrapper{width:24px;height:24px;color:var(--mint);flex:none;justify-content:center;align-items:center;display:flex}.about-info-list li.free-item .info-icon-wrapper{color:#f59e0b}.about-info-list .info-icon{font-size:16px}.about-info-list .info-text{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.free-badge{color:#fff;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#f59e0b;border-radius:999px;align-items:center;padding:1px 10px;font-size:9px;font-weight:600;display:inline-flex}#projects .eyebrow{margin-bottom:var(--s3)}.projects-title{font-size:var(--fs-h2);text-align:center;margin-bottom:var(--s4)}.projects-description{font-size:var(--fs-lead);color:var(--slate);max-width:70ch;margin:0 auto var(--s7) auto;text-align:center;line-height:1.7}.products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,2.5vw,32px);display:grid}.product-card{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-lg);flex-direction:column;padding:clamp(20px,2.5vw,28px);transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.product-card:hover{border-color:var(--mint);transform:translateY(-4px);box-shadow:0 12px 40px #0f1a1714}.product-card-header{margin-bottom:var(--s3);justify-content:space-between;align-items:center;display:flex}.product-code{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:var(--slate-light)}.product-card-title{letter-spacing:-.015em;margin-bottom:var(--s4);min-height:3.2rem;font-size:clamp(1.1rem,1.4vw,1.4rem);line-height:1.2}.product-card-image{border-radius:var(--radius);background:var(--paper-2);border:1px solid var(--rule);margin-bottom:var(--s4);overflow:hidden}.product-card-image img{width:100%;height:auto;display:block}.product-card-actions{gap:var(--s2);flex-direction:column;margin-top:auto;display:flex}.product-card-btn,.product-card-link{justify-content:center;width:100%}.products-view-all{text-align:center;margin-top:clamp(32px,4vw,48px)}.prod{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);align-items:start;gap:clamp(26px,3.5vw,52px);padding-block:clamp(34px,4.5vw,60px);display:grid}.prod:first-of-type{border-top:0;padding-top:0}.prod-kicker{align-items:center;gap:var(--s3);margin-bottom:var(--s4);flex-wrap:wrap;display:flex}.prod-code{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:var(--slate-light)}.prod h3{letter-spacing:-.015em;font-size:clamp(1.5rem,2.4vw,2rem)}.prod-sub{margin-top:var(--s3);color:var(--slate)}.prod-actions{margin-top:var(--s5)}.shot{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--paper-2);overflow:hidden}.shot img{width:100%;height:auto}.shot-cap{border-top:1px solid var(--rule);padding:var(--s3) var(--s4);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--slate-light);background:#fff}.reg{border:1px solid var(--rule);border-radius:var(--radius-lg);background:#fff;overflow:hidden}.reg-head,.reg-row{gap:var(--s4);padding:var(--s3) var(--s4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.reg-head{background:var(--paper-2);border-bottom:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:var(--slate-light)}.reg-row{border-top:1px solid var(--rule);padding-block:var(--s4);transition:background-color .18s}.reg-row:first-of-type{border-top:0}.reg-row:hover{background:var(--mint-wash)}.reg-name{font-family:var(--font-display);font-size:1.0625rem;font-weight:600}.reg-desc{font-size:var(--fs-data);color:var(--slate);margin-top:2px}.reg-foot{border-top:1px solid var(--rule);background:var(--paper-2);padding:var(--s3) var(--s4);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--slate-light);letter-spacing:.04em}.status{align-items:center;gap:var(--s2);border:1px solid var(--rule-strong);font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.06em;text-transform:uppercase;color:var(--slate);white-space:nowrap;background:#fff;border-radius:999px;padding:3px 10px 3px 8px;display:inline-flex}.status-dot{background:var(--rule-strong);border-radius:50%;flex:none;width:7px;height:7px}.status-live{border-color:var(--mint);color:var(--mint)}.status-live .status-dot{background:var(--mint)}.head-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(22px,3.2vw,52px);margin-bottom:clamp(26px,3.5vw,44px);display:grid}.split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(26px,3.5vw,60px);display:grid}.steps{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--paper);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.step{box-shadow:1px 0 0 var(--rule), 0 1px 0 var(--rule);padding:clamp(21px,2.8vw,34px)}.step-n{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;color:var(--mint);font-weight:500;display:block}.step h3{margin-top:var(--s4)}.step p{margin-top:var(--s3);color:var(--slate);font-size:var(--fs-sm)}.spec{border-top:1px solid var(--rule)}.spec-row{gap:var(--s5);padding-block:var(--s4);border-bottom:1px solid var(--rule);grid-template-columns:minmax(120px,22%) minmax(0,1fr);align-items:baseline;display:grid}.spec-k{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.09em;text-transform:uppercase;color:var(--slate-light)}.spec-v{font-size:var(--fs-sm)}.spec-v-mono{font-family:var(--font-mono);font-size:var(--fs-data)}.roles{border:1px solid var(--rule);border-radius:var(--radius-lg);background:#fff;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid;overflow:hidden}.role{box-shadow:1px 0 0 var(--rule), 0 1px 0 var(--rule);padding:clamp(19px,2.3vw,27px)}.role-name{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--mint);padding-bottom:var(--s3);border-bottom:1px solid var(--rule);font-weight:500}.role-list{margin-top:var(--s4);gap:var(--s3);display:grid}.role-item{gap:var(--s3);font-size:var(--fs-sm);color:var(--slate);grid-template-columns:14px minmax(0,1fr);line-height:1.5;display:grid}.role-item:before{content:"";background:var(--mint-wash-2);border-radius:1px;width:6px;height:6px;margin-top:9px}.caps{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--paper);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid;overflow:hidden}.cap{box-shadow:1px 0 0 var(--rule), 0 1px 0 var(--rule);padding:clamp(19px,2.3vw,27px)}.cap h3{font-size:1.0625rem}.cap p{margin-top:var(--s3);font-size:var(--fs-sm);color:var(--slate)}.matrix{border:1px solid var(--rule);border-radius:var(--radius-lg);background:#fff;padding:clamp(17px,2.3vw,23px);overflow-x:auto}.matrix table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--fs-data);width:100%;min-width:340px}.matrix caption{caption-side:top;text-align:left;font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--slate-light);padding-bottom:var(--s4)}.matrix th{color:var(--slate-light);text-align:center;padding:var(--s2);letter-spacing:.06em;font-weight:500}.matrix th[scope=row]{text-align:left;padding-right:var(--s4);color:var(--slate)}.matrix td{padding:3px}.cell{aspect-ratio:1;background:var(--paper-2);color:#0000;border-radius:3px;place-items:center;width:100%;min-width:26px;font-size:11px;transition:transform .2s;display:grid}.cell-0{background:var(--paper-2)}.cell-1{background:var(--mint-wash)}.cell-2{background:var(--mint-wash-2)}.cell-3{color:var(--ink);background:#9fd3bd}.cell-4{background:var(--mint);color:#fff}.matrix-corner{font-size:var(--fs-label);letter-spacing:.06em;white-space:nowrap}.matrix-note{margin-top:var(--s4);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--slate)}.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(30px,4.5vw,60px);display:grid}.field{gap:var(--s2);margin-bottom:var(--s5);display:grid}.field-row{gap:var(--s5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.label{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.09em;text-transform:uppercase;color:var(--slate)}.input{width:100%;padding:11px var(--s4);border:1px solid var(--rule-strong);border-radius:var(--radius);font-family:inherit;font-size:var(--fs-sm);color:var(--ink);background:#fff;transition:border-color .18s,box-shadow .18s}.input:focus{border-color:var(--mint);box-shadow:0 0 0 3px var(--mint-wash-2);outline:none}textarea.input{resize:vertical;min-height:144px}select.input{appearance:none;padding-right:calc(var(--s4) + 22px);cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%235B6B66' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--s4) center;background-size:11px 8px}.btn:disabled{opacity:.62;cursor:progress}.btn:disabled:hover{background:var(--ink)}.form-note{font-family:var(--font-mono);font-size:var(--fs-data);color:var(--slate-light);margin-top:var(--s4)}.form-msg{margin-top:var(--s4);font-size:var(--fs-sm);padding:var(--s3) var(--s4);border-radius:var(--radius);border:1px solid var(--rule-strong)}.form-ok{border-color:var(--mint);background:var(--mint-wash);color:var(--mint)}.form-bad{color:#9c4a2c;background:#fdf1ec;border-color:#c86a4a}.ftr{color:#f1f2fb;background:#1a1d31}.ftr-grid{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:clamp(26px,3.5vw,44px);padding-block:clamp(42px,5.5vw,68px);display:grid}.ftr h4{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.11em;text-transform:uppercase;color:#f1f2fb;margin-bottom:var(--s4);font-weight:500}.ftr-blurb{margin-top:var(--s4);font-size:var(--fs-sm);color:#f1f2fb;max-width:34ch}.addr-line{display:block}.ftr-list{gap:var(--s3);font-size:var(--fs-sm);display:grid}.ftr-list a{color:#f1f2fb;transition:color .18s}.ftr-list a:hover{color:#62f0e0}.ftr-bar{padding-block:var(--s5);gap:var(--s4);font-family:var(--font-mono);font-size:var(--fs-label);color:#768881;letter-spacing:.05em;border-top:1px solid #24322d;flex-wrap:wrap;justify-content:space-between;display:flex}.ftr-social{gap:var(--s4);margin-top:var(--s4);display:flex}.ftr-social a{color:#f1f2fb;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:inline-flex}.ftr-social a:hover{color:#62f0e0;background:#ffffff2e}.ftr-social svg{font-size:18px}.ftr-list li{align-items:flex-start;gap:var(--s2);display:flex}.ftr-icon{color:#768881;flex:none;width:18px;margin-top:2px}.ftr-list li .addr-line{display:block}.cta-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(22px,3.5vw,44px);display:grid}.band-dark h2{color:#fff}.band-dark .lead{color:#a7b5b0}.band-dark .btn-solid{background:var(--mint-bright);color:#06120e}.band-dark .btn-solid:hover{background:#17b87e}.band-dark .btn-outline{color:#e6ece9;border-color:#34443e}.band-dark .btn-outline:hover{color:#fff;border-color:var(--mint-bright);background:0 0}.reveal{opacity:0;transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1);transform:translateY(14px)}.reveal-in{opacity:1;transform:none}.reg-row-anim{animation:.5s cubic-bezier(.2,.7,.3,1) backwards rowIn}@keyframes rowIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.demo-cta{text-align:center;background:radial-gradient(circle,#b4c3d226 1px,#0000 1px) 0 0/24px 24px;border-top:1px solid #dce2e8;border-bottom:1px solid #dce2e8;padding-block:clamp(48px,7.5vw,80px);position:relative;overflow:hidden}.demo-cta:before{content:"";opacity:.6;pointer-events:none;background:#fff;border-radius:50% 50% 0 0/100% 100% 0 0;width:120%;height:40px;position:absolute;top:-2px;left:-10%}.demo-cta:after{content:"";pointer-events:none;background:radial-gradient(circle,#0e7a570f 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;bottom:-150px;right:-100px}.demo-cta-content{z-index:1;max-width:72ch;margin-inline:auto;position:relative}.demo-cta-content h2{font-size:var(--fs-h2);color:#1a1a1a}.demo-cta-content .lead{max-width:60ch;margin-inline:auto;margin-top:var(--s4);color:#2a2a2a}.demo-cta-content .btn-row{margin-top:var(--s6);justify-content:center}.demo-cta .btn-solid{color:#000;background:#ffd41e;border-color:#ffd41e}.demo-cta .btn-solid:hover{background:#e6c000;border-color:#e6c000}.demo-cta .btn-solid .arrow{color:#000}.tech-stack-section{background:#f8f9fa;border-top:1px solid #e8eaed;border-bottom:1px solid #e8eaed;padding-block:clamp(48px,7.5vw,80px)}.tech-stack-header{text-align:center;margin-bottom:clamp(32px,4vw,48px)}.tech-stack-header .eyebrow{justify-content:center}.tech-stack-header .eyebrow:after{display:none}.tech-stack-header h2{font-size:var(--fs-h2);color:#1a1a1a;margin-top:var(--s2)}.tech-stack-header .lead{max-width:50ch;margin-inline:auto;margin-top:var(--s3);color:#4a4a4a}.tech-stack-grid{flex-wrap:wrap;justify-content:center;gap:clamp(10px,1.5vw,16px);display:flex}.tech-badge{border-radius:var(--radius);background:#fff;border:1px solid #e0e4e8;flex-direction:column;align-items:center;min-width:80px;padding:16px 20px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.tech-badge:hover{border-color:var(--mint);transform:translateY(-3px);box-shadow:0 8px 24px #0000000f}.tech-icon{color:#4a4a4a;margin-bottom:var(--s2);font-size:28px;transition:color .2s}.tech-badge:hover .tech-icon{color:var(--mint)}.tech-icon-placeholder{margin-bottom:var(--s2);font-size:28px}.tech-name{font-weight:600;font-size:var(--fs-sm);color:#1a1a1a;letter-spacing:-.01em}.tech-category{font-size:var(--fs-label);color:var(--slate-light);letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-weight:500}.testimonials-section{background:#fff;padding-block:clamp(48px,7.5vw,80px)}.testimonials-header{text-align:center;margin-bottom:clamp(32px,4vw,48px)}.testimonials-header h2{font-size:var(--fs-h2);color:#1a1a1a}.testimonials-header .lead{max-width:50ch;margin-inline:auto;margin-top:var(--s3);color:#4a4a4a}.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.5vw,32px);display:grid}.testimonial-card{border-radius:var(--radius-lg);background:#f8f9fa;border:1px solid #e8eaed;flex-direction:column;padding:clamp(24px,2.8vw,36px);transition:transform .2s,box-shadow .2s;display:flex}.testimonial-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000000f}.quote-icon{font-size:2.5rem;font-family:var(--font-display);color:var(--mint);margin-bottom:var(--s2);opacity:.6;line-height:1}.testimonial-quote{font-size:var(--fs-sm);color:#2a2a2a;margin-bottom:var(--s4);flex:1;font-style:italic;line-height:1.7}.testimonial-footer{padding-top:var(--s4);border-top:1px solid #e8eaed;justify-content:space-between;align-items:flex-end;display:flex}.testimonial-user{flex-direction:column;display:flex}.testimonial-name{font-weight:600;font-size:var(--fs-sm);color:#1a1a1a}.testimonial-role{font-size:var(--fs-data);color:var(--slate);margin-top:2px}.testimonial-rating{flex-direction:column;align-items:flex-end;display:flex}.stars{color:#f5a623;font-size:var(--fs-sm);letter-spacing:1px}.rating-number{font-size:var(--fs-label);color:var(--slate-light);margin-top:2px;font-weight:500}@media (max-width:1080px){.nav{display:none}.nav-open{display:flex}.nav-toggle{display:inline-flex}.nav-open{left:0;right:0;top:var(--header-h);padding:var(--s3) var(--gutter) var(--s5);background:var(--paper);border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:0;position:absolute}.nav-open .nav-link{padding:var(--s3);border-bottom:1px solid var(--rule);justify-content:space-between}.nav-open .has-sub{display:block}.nav-open .sub-trigger{width:100%}.nav-open .subnav{min-width:0;padding:var(--s2) 0 var(--s3) var(--s5);border:0;border-bottom:1px solid var(--rule);box-shadow:none;background:0 0;border-radius:0;position:static}.nav-open .nav-cta{height:48px;margin-left:0;margin-top:var(--s4);justify-content:center}}@media (max-width:980px){.hero-grid,.head-split,.split,.contact-grid,.cta-row{grid-template-columns:minmax(0,1fr)}.head-split{align-items:start}.steps{grid-template-columns:minmax(0,1fr)}.ftr-grid,.testimonials-grid,.services-grid,.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prod{gap:var(--s5);grid-template-columns:minmax(0,1fr);padding-block:clamp(32px,4vw,48px)}.hero-full{padding-block:clamp(50px,6vw,80px)}.rotating-text{min-height:140px}.rotating-text-content h1{font-size:clamp(2.2rem,4.5vw,3rem)}.rotating-text-content p{font-size:var(--fs-body)}.btn-hero-full{font-size:var(--fs-sm);padding:14px 40px}.about-grid{gap:var(--s6);grid-template-columns:minmax(0,1fr)}.about-right{border-top:1px solid var(--rule);padding-top:0;padding-top:var(--s6)}.projects-description{font-size:var(--fs-body);margin-bottom:var(--s5)}}@media (max-width:760px){:root{--header-h:60px;--gutter:16px}.brand-logo{height:40px;margin-top:-3px}.field-row{grid-template-columns:minmax(0,1fr);gap:0}.spec-row{gap:var(--s2);grid-template-columns:minmax(0,1fr)}.reg-head{display:none}.reg-row{gap:var(--s3);grid-template-columns:minmax(0,1fr)}.btn{justify-content:center;width:100%}.btn-ghost{justify-content:flex-start;width:auto}.demo-cta:before{height:20px}.demo-cta-content .btn-row{flex-direction:column;align-items:center}.demo-cta-content .btn{width:auto;min-width:200px}.tech-badge{min-width:60px;padding:10px 12px}.tech-icon,.tech-icon-placeholder{font-size:20px}.tech-name{font-size:var(--fs-data)}.tech-category{font-size:8px}.testimonials-grid{grid-template-columns:minmax(0,1fr);max-width:500px;margin-inline:auto}.testimonial-footer{align-items:flex-start;gap:var(--s2);flex-direction:column}.testimonial-rating{align-items:flex-start}.products-grid{gap:var(--s4);grid-template-columns:repeat(2,minmax(0,1fr))}.product-card-title{min-height:2.6rem;font-size:clamp(1rem,2vw,1.2rem)}.projects-title{font-size:var(--fs-h3)}.projects-description{font-size:var(--fs-sm);margin-bottom:var(--s4)}.prod{gap:var(--s4);grid-template-columns:minmax(0,1fr);padding-block:clamp(24px,3vw,36px)}.prod h3{font-size:clamp(1.3rem,3vw,1.6rem)}.hero-full{padding-block:clamp(35px,5vw,50px)}.hero-full-eyebrow{letter-spacing:.12em;margin-bottom:var(--s4);font-size:9px}.rotating-text{min-height:110px}.rotating-text-content h1{font-size:clamp(1.6rem,4.5vw,2.2rem)}.rotating-text-content p{font-size:var(--fs-sm);margin-top:var(--s2)}.btn-hero-full{font-size:var(--fs-sm);margin-top:var(--s5);padding:10px 30px}.about-section{padding-block:clamp(28px,4vw,40px)}.about-lead{font-size:var(--fs-body)}.about-vision,.about-mission,.about-recognition,.about-success,.about-info-system{padding-left:0}.about-icon-wrapper{margin-bottom:var(--s2);position:relative}.about-vision-mission{margin-top:var(--s4);gap:var(--s4)}.about-right{gap:var(--s4)}.about-success-logos{flex-direction:column;align-items:flex-start}.about-info-list li{font-size:var(--fs-data);padding:var(--s2)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){:root{--gutter:12px;--band-y:clamp(32px, 5vw, 48px)}.hero-full{padding-block:clamp(25px,4vw,35px)}.rotating-text{min-height:90px}.rotating-text-content h1{font-size:clamp(1.2rem,4vw,1.6rem)}.rotating-text-content p{font-size:var(--fs-data);margin-top:var(--s1)}.btn-hero-full{font-size:var(--fs-data);margin-top:var(--s4);padding:8px 22px}.hero-full-eyebrow{margin-bottom:var(--s3);font-size:8px}.services-grid{grid-template-columns:minmax(0,1fr);max-width:400px;margin-inline:auto}.services-section{padding-block:clamp(32px,4vw,48px)}.service-card{padding:var(--s4)}.service-card p{max-width:100%}.service-icon-wrapper{width:52px;height:52px}.service-icon{font-size:22px}.about-section{padding-block:clamp(20px,3vw,32px)}.about-left h2{font-size:var(--fs-h3)}.about-vision h3,.about-mission h3,.about-recognition h3,.about-success h3,.about-info-system h3{font-size:10px}.about-vision p,.about-mission p,.about-recognition p,.about-success p,.about-info-system p{font-size:var(--fs-data)}.success-badge{padding:4px 12px;font-size:10px}.free-badge{padding:1px 6px;font-size:7px}.products-grid{gap:var(--s4);grid-template-columns:minmax(0,1fr);max-width:420px;margin-inline:auto}.product-card{padding:var(--s4)}.product-card-title{min-height:auto;margin-bottom:var(--s3);font-size:clamp(1.1rem,3vw,1.3rem)}.product-card-image{margin-bottom:var(--s3)}.product-code{font-size:10px}.status{padding:2px 8px;font-size:9px}.projects-title{font-size:var(--fs-h3)}.projects-description{font-size:var(--fs-sm);margin-bottom:var(--s4)}.prod{gap:var(--s3);grid-template-columns:minmax(0,1fr);padding-block:clamp(20px,3vw,28px)}.prod h3{font-size:clamp(1.1rem,3vw,1.3rem)}.prod-kicker{gap:var(--s2)}.prod-code{font-size:10px}.shot-cap{padding:var(--s2) var(--s3);font-size:10px}.reg-row{padding:var(--s2) var(--s3)}.reg-name{font-size:var(--fs-sm)}.reg-desc{font-size:10px}.ftr-grid{gap:var(--s5);grid-template-columns:minmax(0,1fr);padding-block:clamp(28px,4vw,40px)}.ftr-bar{text-align:center;align-items:center;gap:var(--s2);padding-block:var(--s4);flex-direction:column;font-size:10px}.ftr-blurb,.ftr-list{font-size:var(--fs-data)}.tech-stack-section{padding-block:clamp(24px,4vw,40px)}.tech-badge{min-width:50px;padding:8px 10px}.tech-icon{font-size:16px}.tech-name{font-size:9px}.tech-category{font-size:7px}.demo-cta{padding-block:clamp(28px,5vw,40px)}.demo-cta-content h2{font-size:var(--fs-h3)}.demo-cta-content .lead{font-size:var(--fs-sm)}.demo-cta-content .btn{min-width:160px;font-size:var(--fs-data);padding:10px 20px}.contact-grid{gap:var(--s5)}.field{margin-bottom:var(--s4)}.label{font-size:10px}.input{padding:8px var(--s3);font-size:var(--fs-data)}.form-note{font-size:10px}}@media (max-width:360px){.hero-full{padding-block:clamp(20px,3vw,28px)}.rotating-text-content h1{font-size:clamp(1rem,3.5vw,1.3rem)}.rotating-text{min-height:70px}.btn-hero-full{padding:6px 16px;font-size:10px}.product-card-title,.prod h3{font-size:1rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}@media print{.hdr,.nav-toggle,.band-dark{display:none}body{background:#fff}.hero-full{background:#fff;border-bottom:1px solid #ddd;padding-block:20px}.hero-full:before{display:none}.rotating-text{min-height:auto}.rotating-text-content.fade-out{opacity:1!important;transform:none!important}.btn-hero-full{color:#fff;background:#000}.services-grid{grid-template-columns:repeat(3,1fr)}.service-card{box-shadow:none!important;border:1px solid #ddd!important}.service-card:hover{transform:none!important}.service-icon-wrapper{background:#f0f0f0!important}.products-grid{grid-template-columns:repeat(3,1fr)!important;gap:20px!important}.product-card{box-shadow:none!important;border:1px solid #ddd!important}.product-card:hover{transform:none!important}.prod{page-break-inside:avoid;grid-template-columns:1fr 1fr!important;gap:20px!important}.shot,.tech-badge,.testimonial-card{border:1px solid #ddd!important}.testimonials-grid{grid-template-columns:repeat(3,1fr)}.demo-cta{background:#f5f5f5!important;border:1px solid #ddd!important}.demo-cta:before,.demo-cta:after{display:none!important}.ftr-grid{grid-template-columns:repeat(4,1fr)!important}}
