@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b6a3ba25a63ffdc2-s.e629b2be.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:italic;font-weight:400;font-display:swap;src:url(../media/c46d9efd5b21dbaa-s.2f9e3f9f.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:italic;font-weight:400;font-display:swap;src:url(../media/6308822089fd3411-s.97f8028e.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:italic;font-weight:400;font-display:swap;src:url(../media/ff4d9f8b7294524b-s.156d6bf8.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 Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/0e64cfb82a47c250-s.p.4178c239.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:italic;font-weight:500;font-display:swap;src:url(../media/79d9db89a59a83fa-s.d7c076d7.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:italic;font-weight:500;font-display:swap;src:url(../media/11705a6cc6a37f59-s.c96d8aed.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:italic;font-weight:500;font-display:swap;src:url(../media/221a7ef2b9efbaad-s.ed32522d.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:italic;font-weight:500;font-display:swap;src:url(../media/730055c84ed23e9d-s.4e302347.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 Serif;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b02a479d288d97d4-s.p.83cf7b42.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:italic;font-weight:600;font-display:swap;src:url(../media/15c09482df909879-s.3ee0b2e8.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:italic;font-weight:600;font-display:swap;src:url(../media/60bfa20ba60b1b5d-s.cffb7d1b.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:italic;font-weight:600;font-display:swap;src:url(../media/6cf6eaf2cf9795dc-s.b39eaec3.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:italic;font-weight:600;font-display:swap;src:url(../media/3a7d6c5ab4b67497-s.6c5dbdaa.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 Serif;font-style:italic;font-weight:600;font-display:swap;src:url(../media/374bfedbce52fcde-s.p.b24a1787.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:400;font-display:swap;src:url(../media/7f49c72243bdcede-s.d482622f.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-s.901efc6f.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-s.7897a175.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-s.20ec22c2.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 Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ef7be03ed7e60a63-s.p.bb832c79.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:500;font-display:swap;src:url(../media/4bd7aa058bc96e4f-s.940752b4.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:500;font-display:swap;src:url(../media/0bd78c1bd4dfd4c7-s.cfc45236.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:500;font-display:swap;src:url(../media/197b82234d448be7-s.ac81b455.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:500;font-display:swap;src:url(../media/79050e547acec5d8-s.515542c4.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 Serif;font-style:normal;font-weight:500;font-display:swap;src:url(../media/522cd826f2dc0be6-s.p.177abc12.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-s.eeea8291.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-s.5072461a.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-s.d7e45335.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-s.f59cae2b.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 Serif;font-style:normal;font-weight:600;font-display:swap;src:url(../media/713e82fa9fe87496-s.p.dc05021a.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 Fallback;src:local(Times New Roman);ascent-override:88.04%;descent-override:23.62%;line-gap-override:0.0%;size-adjust:116.43%}.ibm_plex_serif_3db23420-module__hzJG2W__className{font-family:IBM Plex Serif,IBM Plex Serif Fallback}.ibm_plex_serif_3db23420-module__hzJG2W__variable{--font-heading:"IBM Plex Serif","IBM Plex Serif 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.c949a514.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.a3ed597e.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.319fa961.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.323431dc.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.0f2c7ba8.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.af4fcd24.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.c949a514.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.a3ed597e.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.319fa961.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.323431dc.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.0f2c7ba8.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.af4fcd24.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.c949a514.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.a3ed597e.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.319fa961.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.323431dc.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.0f2c7ba8.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.af4fcd24.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-s.c949a514.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-s.a3ed597e.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-s.319fa961.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-s.323431dc.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-s.0f2c7ba8.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:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.af4fcd24.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_853c0118-module__dbHeuG__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_853c0118-module__dbHeuG__variable{--font-body:"IBM Plex Sans","IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.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-s.afa48be3.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-s.764b43eb.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-s.cb53f04b.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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.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-s.6b5ea6af.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-s.1dcddae6.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-s.8da66e7f.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-s.e6cd1753.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.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 Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_8c0c17a2-module__o6rYRa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_8c0c17a2-module__o6rYRa__variable{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
:root{--page-w:1160px;--bg:#eceae3;--bg-2:#e2dfd5;--ink:#201a14;--muted:#5b5449;--line:#cfc9bc;--accent:#256b5c;--accent-soft:#256b5c1f;--stratum-clay:#b97a46;--stratum-oxide:#9b3b22;--stratum-slate:#46505c;--stratum-bedrock:#14100d;--radius:8px;--shadow:0 12px 32px #14100d1a;--btn-bg:#201a14;--btn-fg:#eceae3;--surface:color-mix(in srgb,var(--bg)92%,#fff 8%);--surface-card:color-mix(in srgb,var(--bg)80%,#fff 20%)}:root[data-theme=dark]{--bg:#14100d;--bg-2:#1d1712;--ink:#ece7dc;--muted:#9c9484;--line:#35291f;--accent:#4fb39c;--accent-soft:#4fb39c29;--stratum-clay:#d9985f;--stratum-oxide:#c1573a;--stratum-slate:#6b7684;--stratum-bedrock:#ece7dc;--shadow:0 12px 32px #00000080;--btn-bg:#ece7dc;--btn-fg:#14100d;--surface:color-mix(in srgb,var(--bg)60%,var(--bg-2)40%);--surface-card:#1d1712}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:var(--bg);font-family:var(--font-body),"Segoe UI",sans-serif;margin:0;padding:0}body{overflow-x:clip}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;display:block}.page{width:min(var(--page-w),100%);max-width:var(--page-w);margin:0 auto;padding:40px 24px 96px}.logo{font-family:var(--font-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:4px;font-size:.75rem;font-weight:500;display:flex}.logo strong{font-family:var(--font-heading),"Georgia",serif;letter-spacing:.01em;text-transform:none;color:var(--ink);font-size:clamp(1rem,1.4vw,1.25rem)}.skip-link{z-index:100;background:var(--btn-bg);color:var(--btn-fg);border-radius:var(--radius);padding:10px 18px;font-weight:600;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.btn{border:1px solid var(--btn-bg);font-family:var(--font-mono),monospace;letter-spacing:.02em;background:var(--btn-bg);color:var(--btn-fg);text-align:center;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:.85rem;font-weight:600;transition:transform .18s,box-shadow .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.btn.secondary{color:color-mix(in srgb,var(--ink)92%,transparent);border-color:color-mix(in srgb,var(--ink)45%,transparent);background:0 0}.btn.secondary:hover{background:color-mix(in srgb,var(--ink)8%,transparent);color:var(--ink);border-color:var(--ink);box-shadow:var(--shadow);transform:translateY(-2px)}.btn:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.section-subtitle{color:var(--muted);max-width:65ch;margin:8px 0 0}.tag{font-family:var(--font-mono),monospace;letter-spacing:.04em;border:1px solid var(--line);border-radius:3px;padding:3px 8px}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;display:grid}.list{color:var(--muted);overflow-wrap:anywhere;align-content:start;gap:12px;margin:0;padding:0;list-style:none;display:grid}.chips{flex-wrap:wrap;align-items:flex-start;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);font-family:var(--font-mono),monospace;letter-spacing:.01em;border-radius:3px;padding:5px 9px}.skills-group{gap:20px;display:grid}.skills-row{grid-template-columns:minmax(120px,160px) 1fr;align-items:baseline;gap:16px;display:grid}.skills-row-label{font-family:var(--font-mono),monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.78rem}.skills-row .chips{gap:8px}.footer{border-top:1px solid var(--line);font-family:var(--font-mono),monospace;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:40px;padding-top:24px;font-size:.78rem;display:flex}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--btn-fg)}html{scrollbar-color:var(--stratum-slate)var(--bg);scrollbar-width:thin}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--stratum-slate);border:3px solid var(--bg);border-radius:6px}.category-filter{flex-wrap:wrap;gap:8px;padding-bottom:8px;display:flex}.category-filter button{border:1px solid var(--line);color:var(--muted);font-family:var(--font-mono),monospace;cursor:pointer;background:0 0;border-radius:4px;padding:6px 14px;font-size:.8rem;transition:background .15s,color .15s,border-color .15s}.category-filter button.active,.category-filter button:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.blog-index-title{font-family:var(--font-heading),"Georgia",serif;margin:0;font-size:clamp(1.9rem,4vw,3rem)}.post-list{gap:16px;padding-bottom:40px;display:grid}.post-card{border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:4px;gap:16px;padding:24px;transition:transform .2s,box-shadow .2s;display:grid}.post-card:hover{box-shadow:var(--shadow);color:inherit;transform:translateY(-2px)}.post-card h2,.post-card h3{font-family:var(--font-heading),"Georgia",serif;margin:6px 0 8px;font-size:1.3rem}.post-card p{color:var(--muted);margin:0;line-height:1.6}.post-meta-row{color:var(--muted);font-family:var(--font-mono),monospace;gap:16px;font-size:.78rem;display:flex}.post-article{padding-bottom:40px}.post-header{border-bottom:1px solid var(--line);gap:12px;padding:40px 0 32px;display:grid}.post-header h1{font-family:var(--font-heading),"Georgia",serif;margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.1}.post-desc{color:var(--muted);max-width:70ch;margin:0;font-size:1.05rem;line-height:1.6}.prose{max-width:72ch;padding:32px 0;line-height:1.75}.prose h2{font-family:var(--font-heading),"Georgia",serif;color:var(--ink);margin:2em 0 .5em;font-size:1.6rem}.prose h3{color:var(--ink);margin:1.5em 0 .4em;font-size:1.1rem;font-weight:600}.prose p{color:var(--muted);margin:0 0 1.2em}.prose strong{color:var(--ink);font-weight:600}.prose ul,.prose ol{color:var(--muted);margin:0 0 1.2em;padding-left:1.4em}.prose li{margin-bottom:.4em;line-height:1.7}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose code{font-family:var(--font-mono),"Menlo","Monaco","Consolas",monospace;background:var(--accent-soft);color:var(--accent);border-radius:3px;padding:2px 6px;font-size:.88em}.prose pre{background:var(--bg-2);border:1px solid var(--line);border-radius:6px;margin:0 0 1.5em;padding:20px 22px;overflow-x:auto}.prose pre code{color:var(--ink);background:0 0;border-radius:0;padding:0;font-size:.9em}.prose blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 6px 6px 0;margin:0 0 1.2em;padding:12px 16px}.prose blockquote p{color:var(--ink);margin:0}.prose hr{border:none;border-top:1px solid var(--line);margin:2em 0}.callout{border-radius:4px;gap:6px;margin:0 0 1.5em;padding:14px 18px;display:grid}.callout-label{font-family:var(--font-mono),monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:500}.callout-body{font-size:.95rem;line-height:1.65}.callout-body p{color:inherit;margin:0}.callout-body code{background:#00000014}.callout-tip{color:color-mix(in srgb,#15803d 90%,var(--ink));background:#22c55e1a;border:1px solid #22c55e4d}.callout-info{background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent)30%,transparent);color:var(--accent)}.callout-warning{color:color-mix(in srgb,#92400e 90%,var(--ink));background:#f59e0b1a;border:1px solid #f59e0b59}:root[data-theme=dark] .callout-tip{color:#86efac}:root[data-theme=dark] .callout-warning{color:#fcd34d}.prose table{border-collapse:collapse;width:100%;margin:0 0 1.5em;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);text-align:left;padding:10px 14px}.prose th{background:var(--bg-2);color:var(--ink);font-weight:600}.prose td{color:var(--muted)}@media (max-width:1200px){.page{padding-inline:20px}}@media (max-width:900px){.page{padding-bottom:80px}.skills-row{grid-template-columns:1fr;gap:6px}}@media (max-width:520px){.page{padding:32px 18px 72px}.prose table{display:block;overflow-x:auto}}@media (max-width:380px){.page{padding-inline:14px}}html{scroll-padding-top:88px}.site-header{z-index:20;background:color-mix(in srgb,var(--bg)90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header-inner{width:min(var(--page-w),100%);align-items:center;gap:24px;margin:0 auto;padding:8px 24px;display:flex}.site-nav{font-family:var(--font-mono),monospace;gap:22px;margin-left:auto;font-size:.82rem;display:flex}.site-nav a,.mobile-menu nav a{color:var(--ink);padding:12px 0}.site-nav a:hover,.mobile-menu nav a:hover{color:var(--accent)}.site-controls{align-items:center;gap:8px;display:flex}.lang-switch{border:1px solid var(--line);border-radius:6px;display:flex;overflow:hidden}.lang-switch a{min-width:44px;min-height:44px;font-family:var(--font-mono),monospace;color:var(--ink);place-items:center;font-size:.78rem;display:grid}.lang-switch a[aria-current=page]{background:var(--btn-bg);color:var(--btn-fg)}.lang-switch a:focus-visible{outline-offset:-3px}.lang-switch a[aria-current=page]:focus-visible{outline-color:var(--btn-fg)}.icon-btn{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;place-items:center;display:grid}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.mobile-menu{display:none;position:relative}.mobile-menu summary{border:1px solid var(--line);min-height:44px;font-family:var(--font-mono),monospace;cursor:pointer;border-radius:6px;place-items:center;padding:0 14px;font-size:.78rem;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{background:var(--surface-card);border:1px solid var(--line);min-width:200px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:8px 18px;display:flex;position:absolute;top:calc(100% + 8px);right:0}@media (max-width:860px){.site-nav{display:none}.mobile-menu{display:block}.site-controls{margin-left:auto}}@media (max-width:520px){.site-header-inner{gap:12px;padding:8px 16px}.logo span{display:none}}.page{padding-top:24px}.page.home{padding-top:0;padding-bottom:0}#projetos .section-subtitle{margin:-12px 0 28px}main+.footer{width:min(var(--page-w),100%);margin:0 auto;padding:24px 24px 32px}.split .prose{padding:0}@media (min-width:901px){.split.about{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(40px,5vw,80px)}}.about .prose p:first-child{color:var(--ink);font-size:clamp(1.125rem,1.8vw,1.35rem);line-height:1.6}.about-blog{align-content:start;gap:12px;display:grid}.about-blog-label{font-family:var(--font-mono),monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:.75rem;font-weight:500}.about-blog .post-card{gap:0;padding:20px}.about-blog .post-card .tag{justify-self:start}.about-blog .post-card h3{font-size:1.125rem}.about-blog .post-card p{font-size:.92rem}.about-blog-all{min-height:44px;font-family:var(--font-mono),monospace;justify-self:start;align-items:center;font-size:.82rem;display:inline-flex}.hero{isolation:isolate;grid-template-rows:1fr auto;align-items:center;row-gap:48px;min-height:calc(100svh - 64px);margin:0 calc(50% - 50vw);padding:clamp(40px,7vh,88px) calc(50vw - 50%) clamp(28px,4vh,44px);display:grid;position:relative;overflow:hidden}.hero-content{justify-items:start;max-width:720px;display:grid}.hero h1{font-family:var(--font-heading),Georgia,serif;letter-spacing:-.025em;text-wrap:balance;color:var(--ink);margin:24px 0;font-size:clamp(2.4rem,6.1vw,5.5rem);font-weight:500;line-height:1}.hero h1:lang(en){font-size:clamp(2.4rem,5.2vw,4.6rem)}.hero h1 em{-webkit-text-decoration:underline .05em var(--accent);text-decoration:underline .05em var(--accent);text-underline-offset:.16em;font-style:italic}.hero-body{max-width:52ch;color:var(--muted);margin:0 0 36px;font-size:clamp(1rem,1.6vw,1.12rem);line-height:1.7}.status-badge{border:1px solid var(--accent);background:var(--accent-soft);font-family:var(--font-mono),monospace;color:var(--ink);border-radius:4px;align-items:center;gap:10px;margin:0;padding:6px 12px 6px 10px;font-size:.78rem;font-weight:500;display:inline-flex}.status-badge:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.metrics{z-index:1;border-top:1px solid var(--line);grid-template-columns:repeat(4,max-content);gap:20px 72px;margin:0;padding-top:20px;display:grid;position:relative}.metrics div{gap:6px;display:grid}.metrics dt{font-family:var(--font-mono),monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:500}.metrics dd{font-family:var(--font-heading),Georgia,serif;color:var(--ink);margin:0;font-size:1.125rem;font-weight:500}.hero-bg{background:url(/photohero.png) 70% 30%/cover no-repeat;position:absolute;inset:0}.hero-overlay{background:linear-gradient(0deg,var(--bg)0%,color-mix(in srgb,var(--bg)85%,transparent)12%,transparent 32%),linear-gradient(90deg,var(--bg)0%,var(--bg)calc(50% - 80px),color-mix(in srgb,var(--bg)82%,transparent)calc(50% + 100px),color-mix(in srgb,var(--bg)25%,transparent)calc(50% + 300px),transparent calc(50% + 470px));position:absolute;inset:0}.hero-content{z-index:1;position:relative}@media (prefers-reduced-motion:no-preference){.hero-bg{animation:1.6s cubic-bezier(.16,1,.3,1) .1s both hero-surface}.status-badge:before{animation:2.4s ease-out infinite badge-ping}}@keyframes hero-surface{0%{opacity:0;scale:1.06}to{opacity:1;scale:1}}@keyframes badge-ping{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent)55%,transparent)}70%,to{box-shadow:0 0 0 7px #0000}}@media (max-width:900px){.hero{min-height:0;padding-block:48px 40px}.metrics{grid-template-columns:repeat(2,max-content)}.hero-bg{background-position:85% 30%}.hero-overlay{background:linear-gradient(180deg,color-mix(in srgb,var(--bg)90%,transparent)0%,color-mix(in srgb,var(--bg)82%,transparent)60%,color-mix(in srgb,var(--bg)60%,transparent)100%)}}@media (max-width:520px){.hero{padding-block:32px}.metrics{grid-template-columns:1fr}.hero h1{margin:20px 0 18px}.hero-body{margin-bottom:28px}}.section{border-top:1px solid var(--line);padding:72px 0}.section.alt{background:var(--bg-2);box-shadow:0 0 0 100vmax var(--bg-2);clip-path:inset(0 -100vmax)}.section-head{align-items:baseline;gap:14px;margin-bottom:28px;display:flex}.section-head h2{font-family:var(--font-heading),Georgia,serif;margin:0;font-size:clamp(1.7rem,3.6vw,2.5rem);font-weight:500}.section-num{font-family:var(--font-mono),monospace;color:var(--accent);font-size:.85rem}.prose p{max-width:68ch;margin:0 0 16px;line-height:1.75}.list li{border-left:2px solid var(--line);padding-left:16px}.case-list{gap:32px;display:grid}.case-row{border:1px solid var(--line);background:var(--surface-card);border-radius:8px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;padding:24px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid}.case-row:nth-child(2n) .case-row-media{order:2}.case-row:hover,.case-row:focus-within{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.case-row-media{border:1px solid var(--line);background:var(--bg);border-radius:6px;align-self:center;place-items:center;padding:8px;display:grid}.case-row-body{flex-direction:column;gap:14px;min-width:0;display:flex}.case-row-body h3{font-family:var(--font-heading),Georgia,serif;margin:0;font-size:1.45rem;font-weight:500}.case-row-body>p{color:var(--muted);margin:0;line-height:1.65}.case-row-tags{flex-wrap:wrap;gap:6px;display:flex}.case-row-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;padding-top:8px;display:flex}.repo-note{font-family:var(--font-mono),monospace;color:var(--muted);font-size:.78rem}.chip,.tag{color:var(--muted);font-size:.75rem}.chip-primary{color:var(--ink);border-color:var(--accent);padding:7px 12px;font-size:.85rem}.project-highlights{counter-reset:sample-note;gap:8px;margin:0;padding:0;list-style:none;display:grid}.project-highlights li{counter-increment:sample-note;gap:10px;line-height:1.5;display:flex}.project-highlights li:before{content:counter(sample-note);border:1px solid var(--accent);width:20px;height:20px;font-family:var(--font-mono),monospace;color:var(--accent);border-radius:2px;flex:none;place-items:center;margin-top:2px;font-size:.75rem;display:grid}.timeline{gap:32px;margin:0;padding:0 0 0 28px;list-style:none;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(var(--stratum-clay),var(--stratum-oxide),var(--stratum-slate),var(--stratum-bedrock));width:3px;position:absolute;top:6px;bottom:6px;left:0}.timeline>li{grid-template-columns:8.5rem minmax(0,1fr);column-gap:24px;display:grid;position:relative}.timeline>li:before{content:"";background:var(--accent);width:16px;height:2px;position:absolute;top:12px;left:-28px}.timeline-period{font-family:var(--font-mono),monospace;color:var(--muted);margin:0;padding-top:5px;font-size:.78rem}.timeline h3{font-family:var(--font-heading),Georgia,serif;margin:0;font-size:1.2rem;font-weight:500}.timeline-meta{font-family:var(--font-mono),monospace;color:var(--muted);margin:4px 0 10px;font-size:.78rem}.timeline ul{max-width:72ch;color:var(--muted);margin:0;padding-left:18px;line-height:1.6}.timeline ul li+li{margin-top:4px}.timeline>li:first-child h3{font-size:1.45rem}.timeline>li:first-child .timeline-period,.timeline>li:first-child>div>ul{color:var(--ink)}.timeline-ai{border:1px solid var(--line);border-left:2px solid var(--accent);background:var(--surface);border-radius:4px;max-width:76ch;margin-top:20px;padding:18px 20px}.timeline-ai-title{font-family:var(--font-mono),monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:.75rem;font-weight:500}@media (min-width:1100px){.timeline>li:first-child>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:32px;display:grid}.timeline>li:first-child>div>:not(ul,.timeline-ai){grid-column:1/-1}.timeline>li:first-child .timeline-ai{margin-top:0}}@media (max-width:520px){.timeline>li{grid-template-columns:1fr}.timeline-period{padding:0 0 4px}.timeline-ai{padding:14px 16px}}.section.contact{--bg:#14100d;--bg-2:#1d1712;--ink:#ece7dc;--muted:#b3ab9b;--line:#35291f;--accent:#4fb39c;--btn-bg:#ece7dc;--btn-fg:#14100d;background:var(--bg);color:var(--ink);box-shadow:0 0 0 100vmax var(--bg);clip-path:polygon(-100vmax 18px,6% 4px,14% 20px,25% 6px,38% 22px,51% 2px,63% 16px,74% 4px,86% 20px,95% 8px,calc(100% + 100vmax) 16px,calc(100% + 100vmax) 100%,-100vmax 100%);border-top:0;padding-top:96px}.section.contact a:not(.btn){color:var(--ink);text-underline-offset:3px;text-decoration:underline}.contact-cta{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.cta{flex-wrap:wrap;gap:12px;display:flex}.section.contact .split p{margin-top:0}.section.contact{margin-top:-24px}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.case-row,.timeline>li{animation:linear both rise;animation-timeline:view();animation-range:entry entry 40%}}}@keyframes rise{0%{opacity:0;translate:0 16px}to{opacity:1;translate:none}}@media (max-width:900px){.case-row{grid-template-columns:1fr}.case-row:nth-child(2n) .case-row-media{order:0}.split{grid-template-columns:1fr}}@media (max-width:520px){.metrics{grid-template-columns:1fr;gap:14px}.case-row{padding:16px}.contact-cta .btn,.cta .btn{justify-content:center;width:100%}.section{padding:56px 0}main+.footer{padding-inline:18px}.case-row-media{justify-items:start;display:block;overflow-x:auto}.case-row-media svg{min-width:440px}.case-row-media,.case-figure{--cue-bg:var(--bg);--cue-shadow:color-mix(in srgb,var(--ink)28%,transparent);background:linear-gradient(to right,var(--cue-bg)40%,transparent)left/36px 100% no-repeat local,linear-gradient(to left,var(--cue-bg)40%,transparent)right/36px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,var(--cue-shadow),transparent)left/16px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,var(--cue-shadow),transparent)right/16px 100% no-repeat scroll,var(--cue-bg)}.case-figure{--cue-bg:var(--surface-card)}}@media (min-width:1600px){:root{--page-w:1420px}}@media (min-width:2200px){:root{--page-w:1680px}}.contact-steps{gap:10px;margin:20px 0 0;padding-left:30px;line-height:1.6;display:grid}.contact-steps li::marker{font-family:var(--font-mono),monospace;color:var(--accent)}.chat{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:40px;display:grid}.chat-intro{color:var(--muted);max-width:60ch;margin:0 0 28px;line-height:1.7}.chat-label,.chat-role{font-family:var(--font-mono),monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.78rem}.chat-suggestions{gap:8px;margin:0 0 28px;padding:0;list-style:none;display:grid}.chat-suggestions button{width:100%;min-height:44px;font:inherit;text-align:left;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:4px;padding:11px 14px;font-size:.95rem;line-height:1.45;transition:border-color .18s,color .18s}.chat-suggestions button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.chat-suggestions button:disabled,.chat-form .btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.chat-note{color:var(--muted);max-width:60ch;margin:0 0 8px;font-size:.85rem;line-height:1.6}.chat-repo{min-height:44px;font-family:var(--font-mono),monospace;text-underline-offset:3px;align-items:center;gap:8px;font-size:.78rem;text-decoration:underline;display:inline-flex}.chat-panel{border:1px solid var(--line);background:var(--surface-card);border-radius:8px}.chat-log{border-bottom:1px solid var(--line);gap:22px;max-height:min(60vh,520px);padding:20px;display:grid;overflow-y:auto}.chat-log:empty{border-bottom:0;padding:0}.chat-msg{gap:6px;display:grid}.chat-msg .chat-role{margin:0}.chat-msg-user .chat-role{color:var(--accent)}.chat-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.7}.chat-error{color:var(--muted)}.chat-thinking{color:var(--muted);margin:0}.chat-sources summary{font-family:var(--font-mono),monospace;color:var(--muted);cursor:pointer;padding:4px 0;font-size:.78rem;display:inline-block}.chat-sources summary:hover{color:var(--accent)}.chat-sources ol{color:var(--muted);gap:4px;margin:6px 0 0;padding-left:24px;font-size:.85rem;display:grid}.chat-form{padding:16px 20px 20px}.chat-form .chat-label{display:block}.chat-input-row{align-items:flex-end;gap:12px;display:flex}.chat-input-row textarea{resize:vertical;min-width:0;min-height:52px;max-height:200px;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:4px;flex:1;padding:12px 14px;font-size:1rem;line-height:1.5}.chat-input-row textarea::placeholder{color:var(--muted)}.chat-input-row textarea:focus-visible{outline-offset:0;border-color:var(--accent)}@media (prefers-reduced-motion:no-preference){.chat-thinking{animation:1.4s ease-in-out infinite chat-pulse}}@keyframes chat-pulse{50%{opacity:.45}}@media (max-width:900px){.chat{grid-template-columns:1fr;gap:24px}}@media (max-width:520px){.chat-log,.chat-form{padding-inline:16px}.chat-input-row{flex-direction:column;align-items:stretch}}
