@font-face{font-family:Syne;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ab624315db63c58d-s.028be875.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:Syne;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e94b8ab81811a983-s.399ca42d.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:Syne;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0c795a286deabae8-s.p.b6c48e4e.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:Syne;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ab624315db63c58d-s.028be875.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:Syne;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e94b8ab81811a983-s.399ca42d.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:Syne;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0c795a286deabae8-s.p.b6c48e4e.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:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ab624315db63c58d-s.028be875.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:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e94b8ab81811a983-s.399ca42d.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:Syne;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0c795a286deabae8-s.p.b6c48e4e.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:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ab624315db63c58d-s.028be875.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:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e94b8ab81811a983-s.399ca42d.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:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c795a286deabae8-s.p.b6c48e4e.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:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/ab624315db63c58d-s.028be875.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:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e94b8ab81811a983-s.399ca42d.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:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0c795a286deabae8-s.p.b6c48e4e.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:Syne Fallback;src:local(Arial);ascent-override:93.93%;descent-override:27.93%;line-gap-override:0.0%;size-adjust:98.47%}.syne_6768500c-module__8iBHXW__className{font-family:Syne,Syne Fallback;font-style:normal}.syne_6768500c-module__8iBHXW__variable{--font-display:"Syne","Syne Fallback"}
@font-face{font-family:Archivo;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.5f161693.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:Archivo;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.7b2da7da.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:Archivo;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.51cde8ff.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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.5f161693.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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.7b2da7da.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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.51cde8ff.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.5f161693.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.7b2da7da.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.51cde8ff.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.5f161693.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.7b2da7da.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.51cde8ff.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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.5f161693.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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.7b2da7da.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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.51cde8ff.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:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_2f25a401-module__wj01da__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_2f25a401-module__wj01da__variable{--font-body:"Archivo","Archivo Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.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:300;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.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:300;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.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:300;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.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:300;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.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:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.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:400;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.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/cc545e633e20c56d-s.f6f1950f.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/71b036adf157cdcf-s.bd5f4d11.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/89b21bb081cb7469-s.51c18f09.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/3fe682a82f50d426-s.23358719.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.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:500;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.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:500;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.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:500;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.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:500;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.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:500;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.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/13bf9871fe164e7f-s.f2220059.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/cc545e633e20c56d-s.f6f1950f.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/71b036adf157cdcf-s.bd5f4d11.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/89b21bb081cb7469-s.51c18f09.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/3fe682a82f50d426-s.23358719.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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.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:700;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.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:700;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.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:700;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.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:700;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.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:700;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.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_5c394102-module__Ee0s5W__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_5c394102-module__Ee0s5W__variable{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}
@font-face{font-family:Russo One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/803974e4127973f0-s.32654a7e.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Russo One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4c6c4e3ac6c6a74a-s.d4527ff7.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:Russo One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3601f32897df77ee-s.p.2ad5c29d.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:Russo One Fallback;src:local(Arial);ascent-override:80.0%;descent-override:24.1%;line-gap-override:0.0%;size-adjust:115.75%}.russo_one_6565b193-module__NZDUIq__className{font-family:Russo One,Russo One Fallback;font-style:normal;font-weight:400}.russo_one_6565b193-module__NZDUIq__variable{--font-hero:"Russo One","Russo One Fallback"}
@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26e9340776e0c8e8-s.e651c8cc.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:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(../media/37f34e4fcce0f2d4-s.p.8b8a2c36.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:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9a82a02b3825653d-s.afe74196.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:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8ec783ae88469012-s.p.8e801336.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:Silkscreen Fallback;src:local(Arial);ascent-override:68.84%;descent-override:16.71%;line-gap-override:0.0%;size-adjust:149.62%}.silkscreen_da0a303-module__8JxK0a__className{font-family:Silkscreen,Silkscreen Fallback;font-style:normal}.silkscreen_da0a303-module__8JxK0a__variable{--font-hero-pixel:"Silkscreen","Silkscreen Fallback"}
:root{--color-void:#000;--color-surface:#0a0a0a;--color-surface-raised:#141414;--color-surface-hover:#1a1a1a;--color-border:#222;--color-border-bright:#333;--color-text-primary:#fff;--color-text-secondary:#999;--color-text-tertiary:#666;--color-text-muted:#333;--color-accent:#d45d3e;--color-accent-dim:#ccc;--color-accent-glow:#ffffff14;--color-accent-subtle:#ffffff08;--color-primary:#1a1a1a;--color-background:#f4f4f2;--color-paper:#fff;--color-ink:#111;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-900:#0f172a;--color-grid:#0000000d;--color-grid-accent:#d45d3e14;--color-black-5:#0000000d;--color-black-3:#00000008;--color-black-10:#0000001a;--color-accent-40:#d45d3e66;--color-accent-20:#d45d3e33;--security-trust-blue:#3b82f6;--security-trust-blue-dark:#60a5fa;--security-crypto-indigo:#6366f1;--security-crypto-indigo-dark:#818cf8;--security-verify-teal:#14b8a6;--security-verify-teal-dark:#2dd4bf;--security-neutral-slate:#64748b;--security-neutral-slate-dark:#94a3b8;--security-bg-opacity-light:.1;--security-bg-opacity-dark:.15;--font-display:"Syne",sans-serif;--font-body:"Archivo",sans-serif;--font-mono:"JetBrains Mono",monospace;--font-tech:"JetBrains Mono",monospace;--font-serif:"Lora",serif;--font-hero-pixel:"Silkscreen",monospace;--color-hero-pixel:#7dd3c0;--glass-bg:#18181b66;--glass-border:#ffffff1a;--glass-blur:10px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-20:5rem}html.dark{--color-primary:#e8e8e6;--color-accent:#e87558;--color-background:#1a1a1a;--color-paper:#242424;--color-ink:#f0f0ee;--color-slate-50:#0f1115;--color-slate-100:#1a1d23;--color-slate-200:#2a2f38;--color-slate-300:#3d444f;--color-slate-400:#6b7280;--color-slate-500:#9ca3af;--color-slate-600:#d1d5db;--color-slate-700:#e5e7eb;--color-slate-900:#f9fafb;--color-grid:#ffffff0d;--color-grid-accent:#e875581a;--color-black-5:#ffffff0d;--color-black-3:#ffffff08;--color-black-10:#ffffff1a;--color-accent-40:#e8755866;--color-accent-20:#e8755840;--security-trust-blue:#60a5fa;--security-trust-blue-dark:#60a5fa;--security-crypto-indigo:#818cf8;--security-crypto-indigo-dark:#818cf8;--security-verify-teal:#2dd4bf;--security-verify-teal-dark:#2dd4bf;--security-neutral-slate:#94a3b8;--security-neutral-slate-dark:#94a3b8;--security-bg-opacity-light:.15;--security-bg-opacity-dark:.15;--glass-bg:#18181b99;--glass-border:#ffffff26;--glass-blur:12px;--color-hero-pixel:#7dd3c0}html.light{--color-void:#fff;--color-surface:#fafafa;--color-surface-raised:#fff;--color-surface-hover:#f0f0f0;--color-border:#e0e0e0;--color-border-bright:#ccc;--color-text-primary:#000;--color-text-secondary:#555;--color-text-tertiary:#888;--color-text-muted:#ccc;--color-accent:#000;--color-accent-dim:#333;--color-accent-glow:#0000000f;--color-accent-subtle:#00000005;--color-hero-pixel:#0d9488}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{font-family:var(--font-body);color:var(--color-text-primary);background-color:var(--color-surface);min-height:100vh;line-height:1.5;overflow-x:hidden}.home-main{background-color:var(--color-surface);flex-direction:column;display:flex}::selection{background-color:var(--color-accent);color:var(--color-surface)}
.text-accent{color:var(--color-accent)}
.bg-grid-precise{pointer-events:none;z-index:0;background-size:40px 40px;background-image:linear-gradient(to right,var(--color-grid)1px,transparent 1px),linear-gradient(to bottom,var(--color-grid)1px,transparent 1px);position:fixed;inset:0}.bg-grid-overlay{pointer-events:none;z-index:0;background-size:200px 200px;background-image:linear-gradient(to right,var(--color-grid-accent)1px,transparent 1px),linear-gradient(to bottom,var(--color-grid-accent)1px,transparent 1px);position:fixed;inset:0}.noise-texture{pointer-events:none;z-index:50;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.5'/%3E%3C/svg%3E");position:fixed;inset:0}.vignette{pointer-events:none;z-index:40;position:fixed;inset:0;box-shadow:inset 0 0 150px #0000001a}html.dark .vignette{box-shadow:inset 0 0 150px #0000004d}html.dark .noise-texture{opacity:.04}.decorative-lines{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.decorative-lines__vertical{background-color:var(--color-black-5);width:1px;height:100%;position:absolute;top:0}.decorative-lines__vertical--left{left:15%}.decorative-lines__vertical--right{right:15%}.decorative-lines__horizontal{background-color:var(--color-black-5);width:100%;height:1px;position:absolute;top:10%;left:0}.crosshair{width:16px;height:16px;position:absolute;transform:translate(-50%,-50%)}.crosshair:before,.crosshair:after{content:"";background-color:var(--color-accent-40);position:absolute}.crosshair:before{width:100%;height:1px;top:50%}.crosshair:after{width:1px;height:100%;left:50%}.crosshair--top-left{top:10%;left:15%}.crosshair--top-right{top:10%;right:15%;transform:translate(50%,-50%)}.bg-number{font-family:var(--font-mono);color:var(--color-black-3);-webkit-user-select:none;user-select:none;letter-spacing:-.05em;font-size:120px;font-weight:700;line-height:1;position:absolute;top:18%;right:8%}.sys-config{font-family:var(--font-mono);color:#0000004d;letter-spacing:.2em;transform-origin:0;font-size:.875rem;position:absolute;bottom:50%;left:5%;transform:rotate(90deg)}html.dark .sys-config{color:#ffffff4d}.main{min-height:100vh;padding:var(--space-12)var(--space-4);z-index:10;flex-direction:column;justify-content:center;align-items:center;max-width:80rem;margin:0 auto;display:flex;position:relative}.content-wrapper{justify-content:center;align-items:center;gap:var(--space-14);z-index:20;flex-direction:column;width:100%;display:flex;position:relative}
.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400;direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}
.interactive-hover-button{font-family:var(--font-mono);color:var(--color-text-primary);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:.375rem;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;line-height:1;text-decoration:none;transition:border-color .3s;display:inline-flex;position:relative;overflow:hidden}.interactive-hover-button:hover{border-color:var(--color-accent)}.interactive-hover-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.interactive-hover-button__bg{background:var(--color-accent);transform-origin:0;z-index:0;position:absolute;inset:0}.interactive-hover-button__content{z-index:1;color:inherit;transition:color .2s;position:relative}.interactive-hover-button:hover .interactive-hover-button__content{color:var(--color-void)}.interactive-hover-button__icon{z-index:1;color:inherit;justify-content:center;align-items:center;transition:color .2s;display:inline-flex;position:relative}.interactive-hover-button:hover .interactive-hover-button__icon{color:var(--color-void)}.interactive-hover-button--telegram{color:#fff;background:#2aabee;border-color:#2aabee;gap:.625rem}.interactive-hover-button--telegram .interactive-hover-button__bg{background:#229ed9}.interactive-hover-button--telegram:hover{border-color:#229ed9}.interactive-hover-button--telegram:hover .interactive-hover-button__content,.interactive-hover-button--telegram:hover .interactive-hover-button__icon{color:#fff}.interactive-hover-button--telegram:focus-visible{outline-offset:2px;outline:2px solid #2aabee}@media (prefers-color-scheme:light){.interactive-hover-button--telegram{color:#fff;background:#2aabee;border-color:#2aabee}.interactive-hover-button--telegram .interactive-hover-button__bg{background:#229ed9}.interactive-hover-button--telegram:hover{border-color:#229ed9}}@media (max-width:640px){.interactive-hover-button{padding:.5rem 1rem;font-size:.8125rem}}
.home-main{background-color:var(--color-surface);flex-direction:column;width:100%;min-width:0;display:flex;overflow-x:hidden}.home-main>section{background-color:var(--color-surface);flex-direction:column;width:100%;min-width:0;display:flex}.home-container{flex-direction:column;width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem;display:flex}html{scroll-padding-top:4rem}@media (max-width:640px){html{scroll-padding-top:4rem}}
.keyboard-badge{font-family:var(--font-mono);letter-spacing:.02em;color:var(--color-text-secondary);border:1px solid var(--color-border);background-color:var(--color-surface-raised);border-radius:.25rem;align-items:center;gap:.25rem;padding:.375rem .5rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.keyboard-badge:hover{background-color:var(--color-surface-hover);border-color:var(--color-border-bright);color:var(--color-text-primary)}.keyboard-badge__separator{opacity:.5}.keyboard-badge__key{text-transform:uppercase}.section-header{min-width:0;margin-bottom:3rem}.section-header__content{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text-tertiary);text-transform:uppercase;overflow-wrap:break-word;margin:0;font-size:.875rem;font-weight:500;line-height:1.6}.section-header__figure{color:var(--color-text-primary);font-weight:600}.section-header__separator{opacity:.4;margin:0 .5rem}.section-header__title{color:var(--color-text-primary);font-weight:600}.section-header__subtitle{color:var(--color-text-secondary);font-weight:400}@media (max-width:640px){.section-header{margin-bottom:1.25rem}}.generative-grid{width:100%;height:auto;color:var(--color-accent);filter:drop-shadow(0 0 24px var(--color-accent-glow))}.generative-grid__dot{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-dot}@keyframes pulse-dot{0%,to{r:3px;opacity:1}50%{r:4px;opacity:.6}}@media (prefers-reduced-motion:reduce){.generative-grid__dot{r:3px;opacity:1;animation:none}}
.nav-bar{z-index:1000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background-color:#0000;border-bottom:1px solid #0000;height:4rem;transition:all .3s;position:fixed;top:0;left:0;right:0}.nav-bar--scrolled{border-bottom-color:var(--color-border);background-color:#0a0a0acc}html.light .nav-bar--scrolled{border-bottom-color:var(--color-border);background-color:#fafafacc}.nav-bar__container{justify-content:space-between;align-items:center;max-width:100%;height:100%;padding:0 1.5rem;display:flex}.nav-bar__brand{align-items:center;gap:.5rem;text-decoration:none;transition:opacity .2s;display:flex}.nav-bar__brand:hover{opacity:.8}.nav-bar__brand-text{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text-primary);font-size:1rem;font-weight:700}.nav-bar__brand-dot{background-color:var(--color-accent);border-radius:50%;width:.375rem;height:.375rem;display:inline-block}.nav-bar__center{align-items:center;gap:2rem;display:none}@media (min-width:768px){.nav-bar__center{display:flex}}.nav-bar__link{cursor:pointer;font-family:var(--font-body);color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-size:.875rem;font-weight:500;transition:color .2s;display:flex;position:relative}.nav-bar__link:after{content:"";background-color:var(--color-accent);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.nav-bar__link:hover{color:var(--color-text-primary)}.nav-bar__link:hover:after{transform:scaleX(1)}.nav-bar__link--active{color:var(--color-text-primary)}.nav-bar__link--active:after{transform:scaleX(1)}.nav-bar__link-label{text-transform:capitalize}.nav-bar__right{align-items:center;display:flex}@media (max-width:767px){.nav-bar__center{display:none}}
.hero{background-color:var(--color-surface);justify-content:center;align-items:center;min-height:100vh;padding:4rem 1.5rem 2rem;display:flex;position:relative}.hero__container{z-index:1;flex-direction:column;align-items:flex-start;gap:0;width:100%;min-width:0;max-width:1280px;display:flex;position:relative}.hero__left{flex-direction:column;gap:2rem;min-width:0;display:flex}.hero__label{width:fit-content;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-tertiary);border:1px solid var(--color-border);border-radius:.25rem;padding:.5rem 1rem;font-size:.75rem;font-weight:500;display:inline-flex}.hero__title{font-family:var(--font-hero),var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:clamp(3rem,9.6vw,6.6rem);font-weight:400;line-height:1.05}.hero__title-line{display:block}.hero__title-line--brand{font-size:1.05em}.hero__title-word{display:inline}.hero__title-pixel{font-family:var(--font-hero-pixel),var(--font-mono);color:var(--color-hero-pixel);vertical-align:baseline;font-size:1em;display:inline}.hero__title-pixel--typing{white-space:nowrap}.hero__title-pixel-char{vertical-align:baseline}.hero__cursor{vertical-align:baseline;background-color:var(--color-hero-pixel);pointer-events:none;width:.08em;height:1.05em;margin-left:.04em;animation:.6s step-end infinite cursor-blink;display:inline-block}.hero__cursor--idle{animation-duration:1s}@keyframes cursor-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.hero__subheadline{font-family:var(--font-body);color:var(--color-text-secondary);max-width:36ch;margin:0;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6}.hero__metrics{gap:3rem;padding-top:1rem;display:flex}.hero__metric{flex-direction:column;gap:.5rem;display:flex}.hero__metric-value{font-family:var(--font-mono);color:var(--color-text-primary);font-size:2rem;font-weight:700;line-height:1}.hero__metric-label{font-family:var(--font-mono);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:500}@media (max-width:1023px){.hero__container{gap:2rem}}@media (max-width:640px){.hero{min-height:100svh;padding:5rem 1rem 4rem}.hero__title{font-size:clamp(2.25rem,7.2vw,3.6rem)}.hero__title-pixel--typing{margin-top:.1em;display:block}.hero__title-pixel{font-size:.92em}.hero__metrics{gap:1.5rem}.hero__metric-value{font-size:1.5rem}.scroll-indicator{bottom:1.5rem}}.scroll-indicator{cursor:pointer;color:var(--color-text-tertiary);z-index:2;background:0 0;border:none;flex-direction:column;align-items:center;gap:.375rem;transition:color .2s;display:flex;position:absolute;bottom:2rem;left:50%;translate:-50%}.scroll-indicator:hover{color:var(--color-text-secondary)}.scroll-indicator__label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.625rem;font-weight:500}.scroll-indicator__icon{animation:2s ease-in-out infinite scroll-bounce}@keyframes scroll-bounce{0%,to{translate:0}50%{translate:0 4px}}@media (prefers-reduced-motion:reduce){.hero__title-word,.hero__cursor,.scroll-indicator__icon{animation:none}}
.pixel-swarm{pointer-events:none;z-index:10;will-change:opacity,filter,transform;transform-origin:50%;width:100%;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.pixel-swarm__pixel{background-color:var(--color-accent);will-change:transform,opacity;box-shadow:0 0 12px var(--color-accent-glow),0 0 24px #ffffff0a;filter:drop-shadow(0 0 8px var(--color-accent-glow))drop-shadow(0 0 16px #ffffff08);transform-origin:50%;backface-visibility:hidden;-webkit-font-smoothing:subpixel-antialiased;border-radius:1px;position:fixed}@keyframes pixel-pulse{0%,to{opacity:.8;filter:drop-shadow(0 0 8px var(--color-accent-glow))drop-shadow(0 0 16px #ffffff08)}50%{opacity:1;filter:drop-shadow(0 0 12px var(--color-accent-glow))drop-shadow(0 0 20px #ffffff0d)}}@keyframes pixel-genesis{0%{box-shadow:0 0 0px var(--color-accent-glow),0 0 0px #fff0;filter:drop-shadow(0 0 0px var(--color-accent-glow))drop-shadow(0 0 0px #fff0)}40%{box-shadow:0 0 32px var(--color-accent-glow),0 0 64px #ffffff4d;filter:drop-shadow(0 0 24px var(--color-accent-glow))drop-shadow(0 0 48px #fff3)}to{box-shadow:0 0 12px var(--color-accent-glow),0 0 24px #ffffff0a;filter:drop-shadow(0 0 8px var(--color-accent-glow))drop-shadow(0 0 16px #ffffff08)}}@media (max-width:767px){.pixel-swarm__pixel{box-shadow:0 0 8px var(--color-accent-glow),0 0 16px #ffffff05;filter:drop-shadow(0 0 6px var(--color-accent-glow))drop-shadow(0 0 12px #ffffff05)}@keyframes pixel-genesis{0%{box-shadow:0 0 0px var(--color-accent-glow),0 0 0px #fff0;filter:drop-shadow(0 0 0px var(--color-accent-glow))drop-shadow(0 0 0px #fff0)}40%{box-shadow:0 0 24px var(--color-accent-glow),0 0 48px #fff3;filter:drop-shadow(0 0 16px var(--color-accent-glow))drop-shadow(0 0 32px #ffffff26)}to{box-shadow:0 0 8px var(--color-accent-glow),0 0 16px #ffffff05;filter:drop-shadow(0 0 6px var(--color-accent-glow))drop-shadow(0 0 12px #ffffff05)}}}html.light .pixel-swarm__pixel{background-color:var(--color-accent);box-shadow:0 0 12px var(--color-accent-glow),0 0 24px #0000000a;filter:drop-shadow(0 0 8px var(--color-accent-glow))drop-shadow(0 0 16px #00000008)}@media (prefers-reduced-motion:reduce){.pixel-swarm__pixel{opacity:.8;animation:none}}
.work-section{background-color:var(--color-surface);flex-direction:column;gap:3rem;min-width:0;padding:6rem 1.5rem 4rem;display:flex}.work-section__grid{flex-direction:column;gap:2rem;min-width:0;display:flex}.work-card{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;gap:1.5rem;min-width:0;padding:0;transition:all .3s;display:flex}.work-card__label{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text-tertiary);text-transform:uppercase;font-size:.75rem;font-weight:500}.work-card__image{aspect-ratio:16/9;background-color:var(--color-surface-raised);border-radius:.5rem;width:100%;position:relative;overflow:hidden}.work-card__image img{object-fit:cover;filter:grayscale()brightness(.92);width:100%;height:100%;transition:filter .35s,transform .3s}.work-card:hover .work-card__image img{filter:grayscale(0%)brightness();transform:scale(1.02)}.work-card__content{flex-direction:column;gap:1rem;min-width:0;display:flex}.work-card__title{font-family:var(--font-display);color:var(--color-text-primary);align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;font-size:1.5rem;font-weight:700;display:inline-flex}.work-card__kbd{font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.02em;background:var(--color-surface-raised);color:var(--color-text-secondary);border:1px solid var(--color-border);box-shadow:0 1px 0 var(--color-border);border-radius:.25rem;padding:.15em .4em;font-size:.65rem;font-weight:500}.work-card__title:not(:has(.work-card__kbd)){overflow-wrap:break-word;display:block}.work-card__description{font-family:var(--font-body);color:var(--color-text-secondary);overflow-wrap:break-word;margin:0;font-size:1rem;line-height:1.6}.work-card__techs{flex-wrap:wrap;gap:.75rem;display:flex}.work-card__tech-badge{font-family:var(--font-mono);color:var(--color-text-secondary);border:1px solid var(--color-border);background-color:var(--color-surface-raised);border-radius:.25rem;padding:.375rem .75rem;font-size:.75rem;font-weight:500;display:inline-flex}@media (max-width:640px){.work-section{gap:2.5rem;padding:4rem 1rem 2.5rem}.work-section__grid{gap:1.5rem}.work-card__title{font-size:1.25rem}.work-card__description{font-size:.95rem}}
.capabilities-section{background-color:var(--color-surface);flex-direction:column;gap:3rem;min-width:0;padding:4rem 1.5rem;display:flex}.capabilities-section__grid{background-color:var(--color-border);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;padding:1px;display:grid}.capabilities-section__grid>*{min-height:0;display:flex}.capability-card{background-color:var(--color-surface);border:1px solid #0000;flex-direction:column;flex:1;gap:1.5rem;min-height:0;padding:1.5rem;transition:border-color .3s;display:flex;position:relative;overflow:hidden}.capability-card__glow{background:radial-gradient(circle at center,var(--color-accent-glow)0%,transparent 70%);pointer-events:none;position:absolute;inset:-50%}.capability-card__border{border:1px solid var(--color-accent);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.capability-card__content{flex-direction:column;flex:1;gap:1.5rem;min-height:0;display:flex;position:relative}.capability-card__header{align-items:flex-start;gap:1rem;display:flex}.capability-card__icon{width:24px;height:24px;color:var(--color-accent);flex-shrink:0}.capability-card__title{font-family:var(--font-display);color:var(--color-text-primary);margin:0;font-size:1.25rem;font-weight:700}.capability-card__techs{flex-direction:column;flex:1;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.capability-card__tech{font-family:var(--font-body);color:var(--color-text-secondary);font-size:.95rem;line-height:1.5}.capability-card__tech:before{content:"→ ";opacity:.5;margin-right:.5rem}@media (max-width:1200px){.capabilities-section__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.capabilities-section__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.capabilities-section{gap:2rem;padding:3rem 1rem}.capabilities-section__grid{grid-template-columns:1fr}}
.open-source-section{background-color:var(--color-surface);flex-direction:column;gap:3rem;min-width:0;padding:4rem 1.5rem;display:flex}.open-source-section__filters{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.open-source-section__filter-tag{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;background-color:#0000;border-radius:.25rem;padding:.5rem 1rem;font-size:.75rem;font-weight:600;transition:all .2s}.open-source-section__filter-tag:hover{border-color:var(--color-border-bright);color:var(--color-text-primary)}.open-source-section__filter-tag--active{background-color:var(--color-accent);color:var(--color-surface);border-color:var(--color-accent)}html.light .open-source-section__filter-tag--active{background-color:var(--color-accent);color:var(--color-surface)}.open-source-section__grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.repo-card{background-color:var(--color-surface-raised);border:1px solid var(--color-border);text-align:left;cursor:pointer;border-radius:.5rem;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .3s;display:flex}.repo-card:hover{background-color:var(--color-surface-hover);border-color:var(--color-border-bright);box-shadow:0 0 24px var(--color-accent-glow)}.repo-card__header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.repo-card__title{font-family:var(--font-display);color:var(--color-text-primary);flex:1;margin:0;font-size:1.125rem;font-weight:700}.repo-card__stars{font-family:var(--font-mono);color:var(--color-accent);white-space:nowrap;font-size:.75rem}.repo-card__description{font-family:var(--font-body);color:var(--color-text-secondary);flex:1;margin:0;font-size:.95rem;line-height:1.5}.repo-card__footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}.repo-card__language{font-family:var(--font-mono);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.repo-card__category{font-family:var(--font-mono);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}@media (max-width:768px){.open-source-section__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:640px){.open-source-section{gap:2rem;padding:3rem 1rem}.open-source-section__grid{grid-template-columns:1fr}.open-source-section__filters{-webkit-overflow-scrolling:touch;min-width:0;padding-bottom:.5rem;overflow-x:auto}.open-source-section__filter-tag{white-space:nowrap;flex-shrink:0}}
.contact-section{background-color:var(--color-surface);justify-content:center;align-items:center;min-width:0;min-height:60vh;padding:4rem 1.5rem;display:flex}.contact-section__container{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:600px;display:flex;position:relative}.contact-section__glow{background:radial-gradient(circle,var(--color-accent-glow)0%,transparent 70%);filter:blur(40px);pointer-events:none;z-index:-1;border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.contact-section__label{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text-tertiary);text-transform:uppercase;font-size:.875rem;font-weight:500}.contact-section__headline{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:clamp(2rem,6vw,3.5rem);font-weight:700;line-height:1.2}.contact-section__buttons{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;display:flex}.contact-section__button{font-family:var(--font-body);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.contact-section__button--primary{background-color:var(--color-accent);color:var(--color-surface);border:1px solid var(--color-accent)}.contact-section__button--primary:hover{transform:translateY(-2px);box-shadow:0 8px 16px #ffffff1a}html.light .contact-section__button--primary:hover{box-shadow:0 8px 16px #0000001a}.contact-section__button--secondary{color:var(--color-text-primary);border:1px solid var(--color-border-bright);background-color:#0000}.contact-section__button--secondary:hover{border-color:var(--color-text-primary);transform:translateY(-2px)}@media (max-width:640px){.contact-section{min-height:50vh;padding:3rem 1rem}.contact-section__headline{font-size:clamp(1.5rem,5vw,2rem)}.contact-section__buttons{flex-direction:column;width:100%}.contact-section__button{width:100%}.contact-section__glow{width:400px;height:400px}}@media (prefers-reduced-motion:reduce){.contact-section__button:hover{transform:none}.contact-section__glow{filter:none}}
.site-footer{border-top:1px solid var(--color-border);background-color:var(--color-surface);padding:2rem 1.5rem}.site-footer__container{justify-content:space-between;align-items:center;width:100%;min-width:0;max-width:1280px;margin:0 auto;display:flex}.site-footer__left,.site-footer__right{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text-tertiary);text-transform:uppercase;align-items:center;gap:.75rem;min-width:0;font-size:.75rem;font-weight:500;display:flex}.site-footer__copyright{color:var(--color-text-primary)}.site-footer__role{color:var(--color-text-secondary)}.site-footer__separator{opacity:.4}.site-footer__link{color:var(--color-text-secondary);text-decoration:none;transition:color .2s}.site-footer__link:hover{color:var(--color-text-primary);text-decoration:underline}@media (max-width:640px){.site-footer__container{text-align:center;flex-direction:column;gap:1rem}.site-footer__left,.site-footer__right{justify-content:center}}
.pacman-overlay{z-index:900;background:0 0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.pacman-crt{pointer-events:none;z-index:100;opacity:.04;background:repeating-linear-gradient(0deg,#0000,#0000 2px,currentColor 2px 4px);position:absolute;inset:0}.pacman-hud{z-index:110;pointer-events:none;justify-content:center;align-items:center;gap:1.5rem;display:flex;position:absolute;top:5rem;left:0;right:0}.pacman-hud__score{font-family:var(--font-mono);letter-spacing:.15em;color:#7dd3c0;text-shadow:0 0 8px #7dd3c066;font-size:1rem;font-weight:700}.pacman-hud__controls{pointer-events:auto;gap:.5rem;display:flex}.pacman-hud__btn{font-family:var(--font-mono);color:#7dd3c0;cursor:pointer;background:#7dd3c01a;border:1px solid #7dd3c04d;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;transition:background .15s}.pacman-hud__btn:hover{background:#7dd3c033}.pacman-entity{z-index:60;clip-path:polygon(50% 50%,100% 15%,100% 0%,0% 0%,0% 100%,100% 100%,100% 85%);will-change:transform;background-color:#7dd3c0;border-radius:50%;width:40px;height:40px;animation:.25s steps(2,end) infinite pacman-chomp;position:absolute;top:0;left:0;box-shadow:0 0 12px #7dd3c066}@keyframes pacman-chomp{0%{clip-path:polygon(50% 50%,100% 15%,100% 0%,0% 0%,0% 100%,100% 100%,100% 85%)}50%{clip-path:polygon(50% 50%,100% 40%,100% 0%,0% 0%,0% 100%,100% 100%,100% 60%)}to{clip-path:polygon(50% 50%,100% 15%,100% 0%,0% 0%,0% 100%,100% 100%,100% 85%)}}.pacman-ghost{z-index:55;clip-path:polygon(0% 0%,0% 75%,10% 100%,25% 75%,40% 100%,55% 75%,70% 100%,85% 75%,100% 100%,100% 0%,85% 0%,50% 0%,15% 0%);will-change:transform;border-radius:50% 50% 0 0;width:36px;height:36px;transition:background-color .2s,opacity .3s;position:absolute;top:0;left:0}.pacman-ghost:before,.pacman-ghost:after{content:"";background:var(--color-surface,#0a0a0a);border-radius:50%;width:8px;height:8px;position:absolute;top:30%}.pacman-ghost:before{left:25%}.pacman-ghost:after{right:25%}.pacman-ghost[style*="rgb(255, 255, 255)"],.pacman-ghost[style*=\#ffffff]{box-shadow:0 0 8px #ffffff4d}.pacman-ghost[style*="rgb(153, 153, 153)"],.pacman-ghost[style*=\#999999]{box-shadow:0 0 8px #9999994d}.pacman-ghost[style*="rgb(102, 102, 102)"],.pacman-ghost[style*=\#666666]{box-shadow:0 0 8px #6666664d}.ghost--frightened{box-shadow:0 0 10px #1a1a6b80!important}.ghost--blinking{animation:.3s step-end infinite ghost-blink}@keyframes ghost-blink{0%,to{opacity:1}50%{opacity:.3}}.pacman-power-pellet{pointer-events:none;z-index:52;background:0 0;border-radius:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px;animation:1.2s ease-in-out infinite power-pulse;position:absolute;box-shadow:0 0 12px #7dd3c080,0 0 24px #7dd3c033}@keyframes power-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.pacman-state-overlay{z-index:120;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;flex-direction:column;justify-content:center;align-items:center;gap:1rem;animation:.3s ease-out overlay-in;display:flex;position:absolute;inset:0}html.light .pacman-state-overlay{background:#fff9}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.pacman-state-overlay--won{background:#000000b3}.pacman-state-text{font-family:var(--font-mono);letter-spacing:.2em;color:#7dd3c0;text-shadow:0 0 20px #7dd3c080;font-size:clamp(1.5rem,5vw,3rem);font-weight:700}.pacman-state-text--ready{animation:.5s ease-in-out infinite alternate ready-pulse}@keyframes ready-pulse{0%{opacity:.6;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}.pacman-state-text--won{animation:1s ease-in-out infinite alternate won-glow}@keyframes won-glow{0%{text-shadow:0 0 20px #7dd3c080}to{text-shadow:0 0 40px #7dd3c0cc,0 0 80px #7dd3c04d}}.pacman-state-score{font-family:var(--font-mono);color:var(--color-text-secondary);letter-spacing:.1em;font-size:1.25rem}.pacman-state-hint{font-family:var(--font-mono);color:var(--color-text-tertiary);letter-spacing:.05em;margin-top:.5rem;font-size:.75rem}.nav-bar__ghost-hint{cursor:pointer;color:#7dd3c0;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:opacity .2s;display:flex;position:relative}.nav-bar__ghost-hint:hover{opacity:.8}.nav-bar__ghost-icon{filter:drop-shadow(0 0 4px #7dd3c066);width:16px;height:16px;animation:2s ease-in-out infinite ghost-hint-glow,2.4s ease-in-out infinite ghost-hint-drift}@keyframes ghost-hint-glow{0%,to{filter:drop-shadow(0 0 4px #7dd3c04d)}50%{filter:drop-shadow(0 0 8px #7dd3c099)}}@keyframes ghost-hint-drift{0%,to{transform:translate(-4px)}50%{transform:translate(4px)}}.nav-bar__ghost-tooltip{font-family:var(--font-mono);letter-spacing:.05em;color:#7dd3c0;white-space:nowrap;opacity:0;pointer-events:none;background:#0a0a0ae6;border:1px solid #7dd3c033;border-radius:4px;margin-top:.5rem;padding:.25rem .5rem;font-size:.625rem;transition:opacity .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)}html.light .nav-bar__ghost-tooltip{background:#fafafae6}.nav-bar__ghost-hint:hover .nav-bar__ghost-tooltip{opacity:1}.hero--game-active .pixel-swarm__pixel{box-shadow:none!important;filter:none!important;animation:none!important}.hero--game-active .hero__left{visibility:hidden;pointer-events:none;transition:opacity .4s,visibility .4s;opacity:0!important}.hero--game-active .scroll-indicator{visibility:hidden;pointer-events:none;opacity:0!important}@media (prefers-reduced-motion:reduce){.pacman-entity,.pacman-ghost,.pacman-power-pellet,.ghost--blinking,.pacman-state-text--ready,.pacman-state-text--won,.nav-bar__ghost-icon{animation:none!important}}
.site-header{z-index:90;pointer-events:none;-webkit-backdrop-filter:blur(8px);transition:background-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .3s cubic-bezier(.4,0,.2,1),backdrop-filter .3s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;right:0}@media (max-width:640px){.site-header{position:fixed}}.site-header__inner{max-width:80rem;padding:var(--space-4)var(--space-4);align-items:center;gap:var(--space-6);pointer-events:auto;grid-template-columns:auto 1fr auto;margin:0 auto;display:grid}@media (max-width:640px){.site-header__inner{padding:var(--space-3)var(--space-4);gap:var(--space-4);position:relative}.site-header__slot--center{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}}.site-header--initial{background:linear-gradient(#0000000f,#0000 85%)}html.dark .site-header--initial{background:linear-gradient(#00000080,#0000 85%)}.site-header--scrolled{background-color:var(--color-background);box-shadow:0 12px 30px #00000026,0 0 0 1px var(--color-black-5);-webkit-backdrop-filter:blur(16px)}.site-header__slot{min-width:0}.site-header__slot--center{text-align:center;justify-self:center}.site-header__slot--right{justify-self:end}html.dark .site-header--scrolled{box-shadow:0 16px 40px #0000008c,0 0 0 1px #ffffff0a}.site-header__brand{pointer-events:auto}.site-header__brand-name{font-family:var(--font-tech);letter-spacing:.32em;text-transform:uppercase;color:var(--color-slate-600);align-items:center;gap:.25rem;font-size:.75rem;display:inline-flex}.site-header__brand-word--accent,.site-header__brand-dot{color:var(--color-accent)}.site-header__brand-suffix{font-family:var(--font-mono)}@media (max-width:640px){.site-header__brand-dot,.site-header__brand-suffix{display:none}}
.btn-primary{border:1px solid var(--color-ink);color:var(--color-ink);cursor:pointer;background:0 0;padding:.75rem 2rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000001a}.btn-primary:hover{background-color:var(--color-ink);color:#fff}.btn-primary__text{z-index:10;font-family:var(--font-tech);text-transform:uppercase;letter-spacing:.15em;align-items:center;gap:.75rem;font-size:.75rem;font-weight:700;display:flex;position:relative}.btn-primary__arrow{font-size:16px;transition:transform .3s}.btn-primary:hover .btn-primary__arrow{transform:translate(4px)}
.lightbox-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background-color:#000000d9;justify-content:center;align-items:center;animation:.25s ease-out lightbox-fade-in;display:flex;position:fixed;inset:0}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-close{top:var(--space-6);right:var(--space-6);color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;position:absolute}.lightbox-close:hover{border-color:var(--color-accent);color:var(--color-accent);background:#fff3}.lightbox-content{align-items:center;gap:var(--space-4);cursor:default;flex-direction:column;max-width:90vw;max-height:85vh;animation:.3s cubic-bezier(.4,0,.2,1) lightbox-zoom-in;display:flex}@keyframes lightbox-zoom-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lightbox-image{object-fit:contain;border:1px solid #ffffff1a;max-width:100%;max-height:80vh;box-shadow:0 25px 50px -12px #00000080}.lightbox-caption{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;color:#fff9;font-size:11px}
.image-preview-container{display:inline-block;position:relative}.image-preview-popup{z-index:100;background:var(--color-paper);border:1px solid var(--color-slate-200);pointer-events:none;border-radius:4px;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 20px 25px -5px #00000026,0 8px 10px -6px #0000001a,0 0 0 1px #0000000d}.image-preview-popup__image{object-fit:cover;object-position:top left;width:100%;height:100%}.image-preview-popup__caption{padding:var(--space-2)var(--space-3);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:#ffffffe6;background:linear-gradient(#0000 0%,#000000b3 100%);font-size:9px;position:absolute;bottom:0;left:0;right:0}.image-preview-popup--left:after{content:"";background:var(--color-paper);border-right:1px solid var(--color-slate-200);border-top:1px solid var(--color-slate-200);width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%)rotate(45deg)}.image-preview-popup--right:after{content:"";background:var(--color-paper);border-left:1px solid var(--color-slate-200);border-bottom:1px solid var(--color-slate-200);width:12px;height:12px;position:absolute;top:50%;left:-6px;transform:translateY(-50%)rotate(45deg)}[data-theme=dark] .image-preview-popup,[data-theme=dark] .image-preview-popup--left:after,[data-theme=dark] .image-preview-popup--right:after{background:var(--color-paper);border-color:var(--color-slate-700)}
.project-modal-backdrop{z-index:1000;background:#000000e0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}@media (min-width:641px) and (hover:hover){.project-modal-backdrop{-webkit-backdrop-filter:blur(6px);will-change:opacity}}@media (max-width:640px){.project-modal-backdrop{-webkit-backdrop-filter:none;align-items:flex-end}}.project-modal{background:var(--color-paper);border:1px solid var(--color-slate-200);will-change:transform;touch-action:pan-y;border-radius:4px;max-width:90vw;max-height:95vh;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.project-modal__body{flex-direction:column;height:100%;min-height:0;display:flex}.project-modal__scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex:1;min-height:0;overflow-y:auto}@media (max-width:640px){.project-modal{width:100%;max-width:100%;max-height:94dvh;padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));border-bottom:none;border-left:none;border-right:none;border-radius:16px 16px 0 0;flex-direction:column;display:flex;overflow:hidden}.project-modal__body{flex:1;min-height:0}.project-modal__pagination{flex-shrink:0}}.project-modal__close{top:var(--space-4);right:var(--space-4);z-index:10;color:#fff;cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:flex;position:absolute}@media (max-width:640px){.project-modal__close{top:var(--space-6);right:var(--space-6)}}.project-modal__handle-wrapper{z-index:1;cursor:grab;touch-action:none;justify-content:center;align-items:center;height:32px;display:flex;position:absolute;top:0;left:0;right:0}.project-modal__handle-wrapper:active{cursor:grabbing}.project-modal__handle{opacity:0;background-color:#ffffff80;border-radius:999px;width:40px;height:4px}@media (max-width:640px){.project-modal__handle-wrapper{height:48px}.project-modal__handle{opacity:1;background-color:#fff9;border-radius:999px;width:64px;height:5px}}.project-modal__close:hover{background:#000000b3}.project-modal__content{align-items:stretch;gap:var(--space-8);padding:var(--space-8);display:flex}.project-modal__content-wrapper{gap:var(--space-4);flex-direction:column;display:flex}.project-modal--video .project-modal__content{padding:var(--space-6);padding-top:var(--space-8);align-items:center;gap:var(--space-6)}@media (min-width:1024px){.project-modal--video .project-modal__content{padding-left:var(--space-6);padding-right:var(--space-6);gap:var(--space-4)}}.project-modal__video{border-radius:4px;width:640px;height:360px;overflow:hidden}.project-modal__video--portrait{width:360px;height:640px}.project-modal__video iframe{border:none;width:100%;height:100%}@media (max-width:640px){.project-modal__video{width:100%;max-width:calc(100% - var(--space-12));aspect-ratio:16/9;height:auto}.project-modal__video--portrait{aspect-ratio:9/16;width:100%;max-width:280px;height:auto;max-height:45vh;margin:0 auto}}.project-modal__preview{flex-shrink:0;justify-content:center;align-items:center;max-width:50vw;max-height:70vh;display:flex}.project-modal__image{object-fit:contain;border-radius:4px;max-width:100%;max-height:100%;box-shadow:0 4px 12px #00000026}.project-modal__info{justify-content:center;gap:var(--space-4);max-width:380px;padding-right:var(--space-4);flex-direction:column;display:flex}.project-modal__pagination{justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--space-8)var(--space-6);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;color:var(--color-slate-500);font-size:10px;display:flex}.project-modal__pagination-label{font-variant-numeric:tabular-nums;flex-shrink:0;min-width:15ch}.project-modal__nav{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.project-modal__nav-button{padding:var(--space-3)var(--space-6);border:1px solid var(--color-slate-300);background:var(--color-paper);min-width:80px;min-height:44px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:11px;transition:all .2s;display:flex}.project-modal__nav-button:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.project-modal__nav-button:disabled{opacity:.4;cursor:default}@media (max-width:640px){.project-modal__content{padding:var(--space-4);padding-top:var(--space-8);flex-direction:column}.project-modal__preview{border-radius:4px;max-width:100%;max-height:40vh;overflow:hidden}.project-modal__info{max-width:100%;padding-right:0}.project-modal__pagination{padding:0 var(--space-4)var(--space-8);padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom))}}.project-modal__header{align-items:baseline;gap:var(--space-3);display:flex}.project-modal__title{font-family:var(--font-display);color:var(--color-ink);align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;font-size:1.5rem;font-weight:500;display:inline-flex}.project-modal__kbd{font-family:var(--font-mono);text-transform:lowercase;letter-spacing:.02em;background:var(--color-surface-raised);color:var(--color-text-secondary);border:1px solid var(--color-border);box-shadow:0 1px 0 var(--color-border);border-radius:.25rem;padding:.15em .4em;font-size:.65rem;font-weight:500}.project-modal__year{font-family:var(--font-mono);color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.project-modal__year-struck{text-decoration:line-through}.project-modal__year-redesigned{text-decoration:none}.project-modal__description{font-family:var(--font-body);color:var(--color-slate-600);margin:0;font-size:.9rem;line-height:1.6}.project-modal__tech{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-modal__tech-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-1)var(--space-2);background:var(--color-slate-100);border:1px solid var(--color-slate-200);color:var(--color-slate-600);border-radius:2px;font-size:10px}.project-modal__visit{align-self:flex-start;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--color-accent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:#fff;border-radius:2px;font-size:11px;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.project-modal__visit:hover{background:var(--color-primary);transform:translateY(-1px)}[data-theme=dark] .project-modal{background:var(--color-paper);border-color:var(--color-slate-700)}[data-theme=dark] .project-modal__title{color:var(--color-slate-100)}[data-theme=dark] .project-modal__description{color:var(--color-slate-400)}[data-theme=dark] .project-modal__tech-tag{background:var(--color-slate-800);border-color:var(--color-slate-700);color:var(--color-slate-400)}
.repo-modal{width:100%;max-width:640px}.repo-modal__content{padding:var(--space-8);flex-direction:column}.repo-modal__banner{border:1px solid var(--color-slate-200);width:100%;height:auto;margin-bottom:var(--space-4);border-radius:4px;display:block}.repo-modal__banner-image{filter:grayscale();width:100%;height:auto;transition:filter .4s cubic-bezier(.4,0,.2,1);display:block}.repo-modal__banner:hover .repo-modal__banner-image{filter:grayscale(0%)}html.dark .repo-modal__banner{border-color:var(--color-slate-700)}.repo-modal__language{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;padding:var(--space-1)var(--space-2);background:var(--color-slate-100);border:1px solid var(--color-slate-200);color:var(--color-slate-600);font-size:10px}.repo-modal__stats{gap:var(--space-4);display:flex}.repo-modal__stars{font-family:var(--font-mono);color:var(--color-accent);font-size:11px}.repo-modal__visit{gap:var(--space-2)}html.dark .repo-modal__language{background:var(--color-slate-200);border-color:var(--color-slate-300);color:var(--color-slate-500)}
button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:none;position:relative}button:focus-visible:after,a:focus-visible:after,[tabindex="0"]:focus-visible:after{content:"";border-radius:inherit;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-accent),0 0 12px 4px var(--color-accent-glow);pointer-events:none;animation:1.5s infinite focus-pulse;position:absolute;inset:-4px}button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{border-radius:2px}@keyframes focus-pulse{0%,to{opacity:1}50%{opacity:.7}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
