@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/001f750b538f7a9e-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/80841ae24d03ed90-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/5eae37b69937655e-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/4f48fe9100901594-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/970d71e7dcbc144d-s.woff2) format("woff2");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-209f,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3f718d64f9a6dea-s.woff2) format("woff2");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ae,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f700-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f8d0-1f8d8,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fac6,u+1fac8,u+1facc-1fadd,u+1fadf-1faeb,u+1faef-1fafa,u+1fb??}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/4120b0a488381b31-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a634e73dfeff02c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1e41be92c43b3255-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/001f750b538f7a9e-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/80841ae24d03ed90-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/5eae37b69937655e-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/4f48fe9100901594-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/970d71e7dcbc144d-s.woff2) format("woff2");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-209f,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3f718d64f9a6dea-s.woff2) format("woff2");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ae,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f700-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f8d0-1f8d8,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fac6,u+1fac8,u+1facc-1fadd,u+1fadf-1faeb,u+1faef-1fafa,u+1fb??}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/4120b0a488381b31-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a634e73dfeff02c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1e41be92c43b3255-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Roboto Fallback;src:local("Arial");ascent-override:92.98%;descent-override:24.47%;line-gap-override:0.00%;size-adjust:99.78%}.__className_29dbe3{font-family:Roboto,Roboto Fallback;font-style:normal}.__variable_29dbe3{--font-roboto:"Roboto","Roboto Fallback"}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:root{--color-sky-500:oklch(68.5% .169 237.323);--color-gray-800:oklch(27.8% .033 256.848);--color-neutral-950:oklch(14.5% 0 none);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-bold:700;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--ui-sans);--default-mono-font-family:var(--ui-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.static{position:static}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-20{left:calc(var(--spacing) * 20)}.m-5{margin:calc(var(--spacing) * 5)}.my-30{margin-block:calc(var(--spacing) * 30)}.block{display:block}.flex{display:flex}.inline-block{display:inline-block}.h-3\/4{height:75%}.h-7{height:calc(var(--spacing) * 7)}.h-10{height:calc(var(--spacing) * 10)}.h-full{height:100%}.w-1\/4{width:25%}.w-3\/6{width:50%}.w-7{width:calc(var(--spacing) * 7)}.w-full{width:100%}.flex-1{flex:1}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.translate-x-0{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:0px}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.bg-black{background-color:var(--color-black)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-neutral-950{background-color:var(--color-neutral-950)}.object-cover{object-fit:cover}.p-2{padding:calc(var(--spacing) * 2)}.p-5{padding:calc(var(--spacing) * 5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.align-middle{vertical-align:middle}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-\[1\.0625rem\]{font-size:1.0625rem}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-balance{text-wrap:balance}.text-sky-500{color:var(--color-sky-500)}.text-white{color:var(--color-white)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media not all and (min-width:40rem){.max-sm\:px-4{padding-inline:calc(var(--spacing) * 4)}}}@font-face{font-family:Jixellation;src:url(/fonts/jixellation.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root,:root[data-ui-color=white]{--ui-accent:#e9ebe5}:root[data-ui-color=green]{--ui-accent:#44e06e}:root[data-ui-color=orange]{--ui-accent:#ff9719}:root,:root[data-ui-color=white]{--tech-icon-filter:url(#tech-icon-accent-white)}:root[data-ui-color=green]{--tech-icon-filter:url(#tech-icon-accent-green)}:root[data-ui-color=orange]{--tech-icon-filter:url(#tech-icon-accent-orange)}:root{--ui-bg:#080a0a;--ui-header-bg:#f9fcfc00;--ui-header-height:94px;--font-size-title:1rem;--font-size-text-1:.85rem;--font-size-text-2:.8rem;--font-size-text-3:.7rem;--font-size-index:.56rem;--font-size-icon:.85rem;--ui-panel:#0c1010;--ui-ink:#080a0a;--ui-text:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-text:color-mix(in srgb,var(--ui-accent) 86%,#fff)}}:root{--ui-muted:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-muted:color-mix(in srgb,var(--ui-accent) 66%,var(--ui-bg))}}:root{--ui-line:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-line:color-mix(in srgb,var(--ui-accent) 28%,transparent)}}:root{--ui-line-soft:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-line-soft:color-mix(in srgb,var(--ui-accent) 13%,transparent)}}:root{--ui-line-strong:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-line-strong:color-mix(in srgb,var(--ui-accent) 65%,transparent)}}:root{--ui-wash:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-wash:color-mix(in srgb,var(--ui-accent) 5%,transparent)}}:root{--ui-glow:var(--ui-accent)}@supports (color:color-mix(in lab,red,red)){:root{--ui-glow:color-mix(in srgb,var(--ui-accent) 4%,transparent)}}:root{--ui-surface:var(--ui-panel)}@supports (color:color-mix(in lab,red,red)){:root{--ui-surface:color-mix(in srgb,var(--ui-panel) 94%,transparent)}}:root{--ui-radius:1px;--ui-shell:1180px;--ui-gap:clamp(1.5rem,4vw,4rem);--ui-primary-font:var(--font-geist-mono),monospace;--ui-secondary-font:var(--font-geist-mono),monospace;--ui-mono:var(--ui-secondary-font);--ui-sans:var(--ui-secondary-font);--ui-motion:.14s;--ui-scanline-opacity:.025;--background:var(--ui-bg);--foreground:var(--ui-text);--space-bg:var(--ui-bg);--space-border:var(--ui-line);--space-text:var(--ui-text)}:root[data-ui-font-primary=jixellation]{--ui-primary-font:"Jixellation",var(--font-geist-mono),monospace}:root[data-ui-font-secondary=jixellation]{--ui-secondary-font:"Jixellation",var(--font-geist-mono),monospace}.tech-icon-filter-definitions{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}body{background:var(--ui-bg);min-height:100vh;color:var(--ui-text);font-family:var(--ui-secondary-font);margin:0}.ui-font-primary,h1,h2,h3,h4,h5,h6{font-family:var(--ui-primary-font)}.ui-font-secondary{font-family:var(--ui-secondary-font)}:root[data-ui-font-primary=jixellation] :where(h1,h2,h3,h4,h5,h6,.ui-font-primary),:root[data-ui-font-secondary=jixellation] :where(body,body *){letter-spacing:0!important}*{box-sizing:border-box}::selection{background:var(--ui-accent);color:var(--ui-ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--ui-accent);outline-offset:4px}.skip-link{z-index:100;background:var(--ui-accent);color:var(--ui-ink);padding:1rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:1rem}.header{z-index:20;background:var(--ui-header-bg);border-bottom:1px solid var(--ui-line);position:relative}.header-inner{max-width:var(--ui-shell);justify-content:space-between;gap:2rem;min-height:94px;margin:auto;padding:1rem 0}.header-inner,.header-tools{align-items:center;display:flex}.header-tools{gap:.7rem}.identity{font-family:var(--ui-mono);font-size:var(--font-size-title);text-transform:uppercase;letter-spacing:.035em;align-items:center;gap:.9rem;display:flex}.identity-mark{border:1px solid var(--ui-line-strong);place-items:center;width:38px;height:38px;font-weight:700;display:grid}.identity-copy{display:block}.identity-name{font:var(--font-size-text-);display:block}.identity-subtitle{color:var(--ui-muted);font-size:var(--font-size-text-3);letter-spacing:.12em;margin-top:.28rem;display:block}.main-nav{gap:.4rem;display:flex}.nav-link{min-height:44px;font:var(--font-size-text-1) var(--ui-mono);text-transform:uppercase;border:1px solid #0000;align-items:center;gap:.65rem;padding:.65rem 1rem;display:flex}.nav-index{font-size:var(--font-size-index);opacity:.65}.nav-label{font-size:inherit}.nav-link:hover{border-color:var(--ui-line-strong);background:var(--ui-wash)}.nav-link[aria-current=page]{color:var(--ui-ink);background:var(--ui-accent);border-color:var(--ui-accent)}.appearance-menu{font-family:var(--ui-secondary-font);position:relative}.appearance-summary{border:1px solid var(--ui-line);min-height:44px;color:var(--ui-muted);cursor:pointer;font:var(--font-size-text-2) var(--ui-secondary-font);text-transform:uppercase;align-items:center;gap:.55rem;padding:.65rem .8rem;list-style:none;display:flex}.appearance-summary::-webkit-details-marker{display:none}.appearance-summary:after{content:"+";color:var(--ui-accent);font-size:var(--font-size-icon)}.appearance-menu[open] .appearance-summary{border-color:var(--ui-line-strong);color:var(--ui-text)}.appearance-menu[open] .appearance-summary:after{content:"×"}.appearance-panel{z-index:30;border:1px solid var(--ui-line-strong);background:var(--ui-panel);gap:.9rem;width:min(260px,100vw - 2rem);padding:1rem;display:grid;position:absolute;top:calc(100% + .6rem);right:0;box-shadow:0 12px 30px #00000059}.appearance-legend{color:var(--ui-accent);font:.65rem var(--ui-primary-font);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.2rem}.appearance-field{border:0;gap:.35rem;min-width:0;margin:0;padding:0;display:grid}.appearance-field label{color:var(--ui-muted);font:.58rem var(--ui-secondary-font);text-transform:uppercase;letter-spacing:.08em}.appearance-select{border:1px solid var(--ui-line);background:var(--ui-bg);width:100%;min-height:34px;color:var(--ui-text);font:.65rem var(--ui-secondary-font);text-transform:uppercase;border-radius:0;padding:.45rem .55rem}.appearance-select:focus,.appearance-select:hover{border-color:var(--ui-accent)}.archive-page,.project-detail-page,.projects-page{isolation:isolate;min-height:calc(100vh - 94px);position:relative}.archive-starfield{z-index:-3;opacity:.55}.archive-starfield,.mouse-glow{pointer-events:none;position:fixed;inset:0}.mouse-glow{z-index:-2;background:radial-gradient(circle 450px at var(--mouse-x,50vw) var(--mouse-y,35vh),var(--ui-glow),transparent)}.archive-atmosphere{inset:calc(-1 * var(--ui-header-height)) 0 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 40% 10%,var(--ui-wash),transparent 55%);position:absolute}.archive-atmosphere:after{content:"";opacity:var(--ui-scanline-opacity);background:repeating-linear-gradient(0deg,transparent 0 3px,var(--ui-accent) 3px 4px);position:absolute;inset:0}.archive-shell,.project-detail-shell,.projects-shell{width:min(calc(100% - 4rem),var(--ui-shell));margin:auto;padding:2.5rem 0 1.5rem;position:relative}.page-register{border-bottom:1px solid var(--ui-line);font:.65rem var(--ui-mono);letter-spacing:.12em;justify-content:space-between;gap:1rem;margin-bottom:3.5rem;padding-bottom:1rem;display:flex}.eyebrow,.page-register,.projects-eyebrow{text-transform:uppercase;color:var(--ui-muted)}.eyebrow,.projects-eyebrow{font:1rem/1.6 var(--ui-mono);letter-spacing:.15em;margin:0 0 1rem}.home-grid{gap:var(--ui-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;position:relative}.home-grid:before{content:"";background:var(--ui-line);pointer-events:none;width:1px;position:absolute;top:0;bottom:0;left:50%}.home-introduction{padding:1rem 0}.home-introduction h1{letter-spacing:-.065em;color:var(--ui-accent);margin:2rem 0;font-size:clamp(3.6rem,6.5vw,6.2rem);font-weight:500;line-height:.98}:root[data-ui-font-primary=jixellation] .home-introduction h1{letter-spacing:0;font-size:clamp(3rem,5.2vw,5.2rem);font-weight:400}.title-stop{color:var(--ui-accent);font-weight:300;animation:terminal-cursor 2.5s step-end infinite;display:inline-block}@keyframes terminal-cursor{0%,49%{opacity:1}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.title-stop{animation:none}}.intro-description{max-width:340px;color:var(--ui-muted);margin:0 0 1rem;font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.4}.intro-copy{max-width:350px;color:var(--ui-muted);margin-bottom:2rem;font-size:.95rem;line-height:1.8}.home-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.archive-button{border:1px solid var(--ui-accent);min-height:48px;color:var(--ui-accent);font:.9rem var(--ui-mono);text-transform:uppercase;justify-content:space-between;align-items:center;gap:3rem;padding:.9rem 1.15rem;display:inline-flex}.archive-button.primary{color:var(--ui-accent);background:0 0}.archive-button:hover{background:var(--ui-accent);color:var(--ui-ink)}.social-links{font:.9em var(--ui-mono);text-transform:uppercase;gap:1.7rem;margin-top:1.3rem;display:flex}.social-links a{border-bottom:1px solid var(--ui-line);padding:.5rem 0}.social-links a:hover{border-color:var(--ui-accent)}.arrow-icon{width:.9em;height:.9em;flex:0 0 .9em;-webkit-mask:url(/icons/arrow.svg) 50%/contain no-repeat;mask:url(/icons/arrow.svg) 50%/contain no-repeat}.arrow-icon,.download-icon{vertical-align:-.08em;color:inherit;background-color:currentColor;display:inline-block}.download-icon{width:.95em;height:.95em;flex:0 0 .95em;-webkit-mask:url(/icons/download.svg) 50%/contain no-repeat;mask:url(/icons/download.svg) 50%/contain no-repeat}.orbital-diagram{max-width:390px;color:var(--ui-muted);margin:3rem 0 2rem}.orbital-diagram svg{stroke:currentColor;stroke-width:.7px;width:100%}.orbital-diagram .diagram-grid{opacity:.25}.orbital-diagram span{font:.56rem var(--ui-mono);text-transform:uppercase;letter-spacing:.15em;text-align:center;margin-top:.7rem;display:block}.personal-note{border-left:2px solid var(--ui-line);color:var(--ui-muted);padding-left:1rem;font-size:.8rem}.personal-note p{margin-top:.3rem}.home-records{padding-left:var(--ui-gap)}.section-bar{background:var(--ui-accent);color:var(--ui-ink);font:.9rem var(--ui-primary-font);text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem;display:flex}.home-records .section-bar{width:calc(100% + 1rem);margin-inline:-.5rem}.section-bar h2{font:inherit;margin:0}.section-bar>span{opacity:.65}.section-bar a{text-underline-offset:3px;text-decoration:underline}.section-hint{color:var(--ui-muted);margin:1rem 0 .3rem;font-size:.75rem;line-height:1.6}.skill-group{border-bottom:1px solid var(--ui-line-soft);padding:1rem 0 1.15rem}.skill-group h3{font:.64rem var(--ui-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ui-muted);margin:0 0 .7rem}.project-badges,.project-filter-list,.skill-group-badges{flex-wrap:wrap;gap:.5rem;display:flex}.project-filter,.tech-badge-link{border-radius:var(--ui-radius);display:inline-flex}.tech-badge{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-radius);min-height:36px;color:var(--ui-text);align-items:center;gap:.55rem;padding:.5rem .7rem;display:inline-flex}.tech-badge-icon{object-fit:contain;width:15px;height:15px;filter:var(--tech-icon-filter);flex-shrink:0}.tech-badge-label{font:.85rem/1.2 var(--ui-mono);white-space:nowrap}.tech-badge-icon-only{justify-content:center;width:36px}.project-filter.is-active .tech-badge,.project-filter:hover .tech-badge,.tech-badge-link:hover .tech-badge{background:var(--ui-accent);color:var(--ui-ink);border-color:var(--ui-accent)}.project-filter.is-active .tech-badge-icon,.project-filter:hover .tech-badge-icon,.tech-badge-link:hover .tech-badge-icon{filter:invert(1) var(--tech-icon-filter)}.education-record{margin-top:2rem}.education-record .eyebrow{margin:1.2rem 0 .5rem}.education-record h3{margin-bottom:.5rem;font-size:1rem}.education-record>p:last-child{color:var(--ui-muted);font-size:.85rem;line-height:1.7}.recent-projects{margin-top:0}.projects-scroll-hint{width:fit-content;max-width:100%;color:var(--ui-muted);text-align:center;font:var(--font-size-text-1)/1.6 var(--ui-mono);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;align-items:center;gap:.25rem;margin:2rem auto 1.5rem;padding:.5rem 1rem;display:flex}.projects-scroll-hint:focus-visible,.projects-scroll-hint:hover{color:var(--ui-accent)}.projects-scroll-hint-arrow{color:var(--ui-accent);flex-shrink:0}#highlighted-projects{scroll-margin-top:2rem}.project-highlights-list{flex-wrap:wrap;justify-content:center;gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.project-highlights-list>li{flex:0 0 calc(25% - .75rem);min-width:0}.project-tile{aspect-ratio:1;background:var(--ui-surface);min-width:0}.project-tile-link{border:1px solid var(--ui-line-strong);flex-direction:column;height:100%;display:flex}.project-tile-tab{box-sizing:border-box;height:2.75rem;color:var(--ui-ink);background:var(--ui-accent);font:var(--font-size-text-1)/1.3 var(--ui-mono);text-transform:uppercase;flex:0 0 2.75rem;align-items:center;gap:.65rem;padding:.2rem 1.2rem .2rem .75rem;display:flex;overflow:hidden}.project-tile-number{opacity:.6;flex-shrink:0}.project-tile-title{-webkit-line-clamp:2;min-width:0;font:inherit;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.project-tile-image{flex:1;min-height:0;position:relative;overflow:hidden}.project-tile-image img{opacity:.85}.project-tile-open{color:var(--ui-accent);font:var(--font-size-text-2)/1.4 var(--ui-mono);text-transform:uppercase;justify-content:space-between;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:.75rem;left:.75rem;right:.75rem}.project-tile-link:focus-visible,.project-tile-link:hover{border-color:var(--ui-accent)}.project-tile-link:focus-visible img,.project-tile-link:hover img{opacity:1}.archive-row{border-bottom:1px solid var(--ui-line);background:var(--ui-surface);align-items:center;gap:1.5rem;min-height:90px;padding:1.2rem;display:flex}.archive-row:hover{background:var(--ui-wash)}.archive-row>span:nth-child(2){flex:1}.archive-row small{color:var(--ui-muted);margin-top:.35rem;font-size:.8rem;line-height:1.7;display:block}.archive-row time,.row-number{font:.65rem var(--ui-mono);color:var(--ui-muted)}.archive-footer{border-top:1px solid var(--ui-line);color:var(--ui-muted);font:.6rem var(--ui-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.25rem;display:flex}.page-title,.projects-intro h1{letter-spacing:-.06em;color:var(--ui-accent);font-size:clamp(3rem,6vw,5.5rem);font-weight:500;line-height:1.05}.projects-intro{margin-bottom:2.5rem}.projects-lede{max-width:580px;color:var(--ui-muted);margin-top:1.3rem;font-size:1rem;line-height:1.8}.project-filters{border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);margin-bottom:1.5rem;padding:1.2rem 0}.project-filters-heading{color:var(--ui-muted);font:.65rem var(--ui-mono);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;gap:1rem;margin-bottom:1rem;display:flex}.project-filters-heading a{text-underline-offset:3px;text-decoration:underline}.result-count{font:.6rem var(--ui-mono);text-transform:uppercase;color:var(--ui-muted);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.project-controls{align-items:center;gap:.8rem;display:flex}.project-toggle-group{align-items:center;gap:.25rem;display:inline-flex}.project-toggle-label{color:var(--ui-muted);margin-right:.2rem}.project-toggle{border:1px solid var(--ui-line);color:var(--ui-muted);padding:.45rem .6rem}.project-toggle.is-active,.project-toggle:hover{border-color:var(--ui-accent);color:var(--ui-ink);background:var(--ui-accent)}.projects-collection{border-inline:1px solid var(--ui-line)}.project-chronology{margin:0;padding:1.5rem;list-style:none}.project-chronology-entry{grid-template-columns:6rem minmax(0,1fr);gap:1.5rem;padding-bottom:1.5rem;display:grid;position:relative}.project-chronology-entry:before{content:"";background:var(--ui-line-strong);width:1px;position:absolute;top:1rem;bottom:-1rem;left:6rem}.project-chronology-entry:after{content:"";border:1px solid var(--ui-accent);background:var(--ui-bg);width:7px;height:7px;position:absolute;top:1rem;left:calc(6rem - 3px)}.project-chronology-entry:has(.project-card:hover,.project-card:focus-within):after{background:var(--ui-accent)}.project-chronology-entry:last-child{padding-bottom:0}.project-chronology-entry:last-child:before{bottom:0}.project-chronology-date{font:.65rem/1.5 var(--ui-mono);text-transform:uppercase;color:var(--ui-muted);flex-direction:column;align-items:flex-start;gap:.45rem;padding:.5rem 1rem 0 0;display:flex}.project-chronology-rank,.project-chronology-year{color:var(--ui-accent);font:1.35rem/1.2 var(--ui-primary-font)}.project-chronology.is-featured-order .project-chronology-date{justify-content:center}.project-chronology-entry .project-card{border-top:1px solid var(--ui-line)}.project-card{border-bottom:1px solid var(--ui-line);background:var(--ui-surface);padding:1.5rem}.project-card:focus-within,.project-card:hover{background:var(--ui-wash)}.project-card-main{grid-template-columns:minmax(180px,31%) minmax(0,1fr);gap:2rem;display:grid}.project-card-image{border:1px solid var(--ui-line);min-height:220px;display:block;position:relative;overflow:hidden}.project-card.is-compact .project-card-main{grid-template-columns:minmax(130px,22%) minmax(0,1fr);gap:1.25rem}.project-card.is-compact .project-card-image{min-height:150px}.project-card.is-compact .project-card-content{padding-block:0}.project-card.is-compact .project-card-copy h2{margin-top:.45rem;margin-bottom:.4rem}.project-card-image img{opacity:.8}.project-card-image-shade{background:linear-gradient(0deg,var(--ui-bg),transparent 55%);position:absolute;inset:0}.project-card-open{font:.6rem var(--ui-mono);text-transform:uppercase;color:var(--ui-accent);border:1px solid var(--ui-accent);background:0 0;padding:.55rem .7rem;position:absolute;bottom:1rem;left:1rem}.project-card-image:focus-visible .project-card-open,.project-card-image:hover .project-card-open{color:var(--ui-ink);background:var(--ui-accent)}.project-card-content{flex-direction:column;justify-content:center;min-width:0;padding:.5rem 0;display:flex}.project-card-meta{font:.9rem var(--ui-mono);text-transform:uppercase;color:var(--ui-muted);justify-content:space-between;gap:1rem;display:flex}.project-card-copy h2{letter-spacing:-.04em;margin:.9rem -.4rem .65rem;padding:.25rem .4rem;font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.2}.project-card:focus-within h2,.project-card:hover h2{background:var(--ui-accent);color:var(--ui-ink)}.project-card-copy p{color:var(--ui-muted);font-size:.9rem;line-height:1.7}.project-badges{margin-top:1.2rem}.projects-empty{border:1px solid var(--ui-line);background:var(--ui-surface);padding:3rem}.project-back-link,.projects-empty a{text-underline-offset:4px;text-decoration:underline}.project-back-link{font:.65rem var(--ui-mono);text-transform:uppercase;color:var(--ui-muted);margin-bottom:2rem;padding:.8rem 0;display:inline-block}.viewer-grid{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:3rem;display:grid}.project-index{border-top:1px solid var(--ui-line-strong);position:sticky;top:2rem}.index-heading{font:.7rem var(--ui-mono);text-transform:uppercase;justify-content:space-between;padding:1rem .6rem;display:flex}.index-links{border-bottom:1px solid var(--ui-line);padding:0 0 1rem}.index-links a{font:.7rem/1.5 var(--ui-mono);text-transform:uppercase;align-items:baseline;gap:.8rem;padding:.85rem .6rem;display:flex}.index-links a>span:first-child{opacity:.6;font-size:.6rem}.index-links a:hover{background:var(--ui-wash)}.index-links a[aria-current=page]{background:var(--ui-accent);color:var(--ui-ink)}.mobile-project-index{display:none}.project-document{background:var(--ui-surface);border-top:1px solid var(--ui-line-strong);min-width:0;padding:1.5rem 2rem 2rem}.document-register{font:.6rem var(--ui-mono);color:var(--ui-muted);text-transform:uppercase;border-bottom:1px solid var(--ui-line);justify-content:space-between;gap:1rem;margin-bottom:2rem;padding-bottom:1.2rem;display:flex}.project-detail-header h1{letter-spacing:-.05em;color:var(--ui-accent);font-size:clamp(2rem,4vw,3.8rem);font-weight:500;line-height:1.05}.project-detail-summary{color:var(--ui-muted);margin-top:1.4rem;font-size:1rem;line-height:1.8}.project-detail-meta{margin:1.5rem 0 2rem}.project-detail-meta time{font:.65rem var(--ui-mono);color:var(--ui-muted)}.project-detail-image{aspect-ratio:16/9;border:1px solid var(--ui-line);background:var(--ui-bg);margin:2rem 0 0;position:relative;overflow:hidden}.project-detail-image img{opacity:.85}.project-detail-divider{background:var(--ui-line);height:1px;margin:2rem 0}.project-video-frame{border:1px solid var(--ui-line);margin:0 0 2.5rem}.media-label{font:.6rem var(--ui-mono);color:var(--ui-muted);text-transform:uppercase;border-bottom:1px solid var(--ui-line);justify-content:space-between;padding:.6rem .8rem;display:flex}.project-video-player{aspect-ratio:16/9;object-fit:contain;background:var(--ui-bg);width:100%;max-height:70vh;display:block}.project-mdx-content{color:var(--ui-text);overflow-wrap:anywhere;font-size:.98rem;line-height:1.9}.project-mdx-content h2{font:500 1.4rem var(--ui-primary-font);letter-spacing:-.025em;border-top:1px solid var(--ui-line);color:var(--ui-accent);margin:2.5rem 0 1rem;padding-top:1.3rem}.project-mdx-content h2:first-child{margin-top:0}.project-mdx-content h3{margin:1.5rem 0 .75rem;font-size:1.12rem}.project-mdx-content p{margin:1rem 0}.project-mdx-content ol,.project-mdx-content ul{margin:1rem 0;padding-left:1.5rem}.project-mdx-content ul{list-style:square}.project-mdx-content ol{list-style:decimal}.project-mdx-content li{margin:.4rem 0;padding-left:.35rem}.project-mdx-content li::marker{color:var(--ui-muted)}.project-mdx-content a{text-underline-offset:4px;text-decoration:underline}.project-mdx-content code{border:1px solid var(--ui-line);background:var(--ui-wash);padding:.1rem .3rem;font-size:.85em}.project-mdx-content pre{border:1px solid var(--ui-line);background:var(--ui-bg);margin:1.5rem 0;padding:1rem;overflow-x:auto}.project-mdx-content pre code{background:0 0;border:0;padding:0}.project-mdx-content img{border:1px solid var(--ui-line);width:100%;height:auto;margin:1.5rem 0}.project-mdx-content blockquote{border-left:3px solid var(--ui-accent);color:var(--ui-muted);padding-left:1.3rem}.project-mdx-content table{border-collapse:collapse;margin:1.5rem 0;display:block;overflow-x:auto}.project-mdx-content td,.project-mdx-content th{border:1px solid var(--ui-line);text-align:left;padding:.6rem .9rem}.project-detail-footer{border-top:1px solid var(--ui-line);margin-top:3rem}.project-detail-footer .project-back-link{margin:1rem 0 0}.contact-shell{min-height:calc(100vh - 94px)}.contact-links{border-top:1px solid var(--ui-line);max-width:760px;margin:3rem 0 6rem}@media (max-width:1250px){.header-inner{padding-inline:2rem}}@media (max-width:950px){.project-highlights-list>li{flex-basis:calc(33.3333% - .666667rem)}.viewer-grid{grid-template-columns:210px minmax(0,1fr);gap:1.5rem}.project-document{padding:1.25rem}.home-grid{grid-template-columns:1fr 1fr;gap:2rem}.home-records{padding-left:2rem}.nav-link{padding-inline:.7rem}.nav-index{display:none}}@media (max-width:700px){.project-highlights-list{gap:.75rem}.project-highlights-list>li{flex-basis:calc(50% - .375rem)}:root{--ui-header-height:130px;--font-size-title:.8rem;--font-size-text-1:.65rem}.header-inner{flex-wrap:wrap;gap:1rem;padding:1rem}.header-tools{width:100%}.main-nav{flex:1;gap:.3rem;width:auto}.nav-link{border-color:var(--ui-line);flex:1;justify-content:center;padding:.7rem .3rem}.archive-shell,.project-detail-shell,.projects-shell{width:calc(100% - 2rem);padding-top:1.5rem}.page-register{margin-bottom:2rem;font-size:.55rem}.page-register>span:last-child{text-align:right;max-width:45%}.home-grid{grid-template-columns:1fr}.home-introduction h1{margin-block:1.5rem;font-size:clamp(3.8rem,16vw,5.5rem)}.home-grid:before{display:none}.home-records{padding:0}.orbital-diagram{max-width:320px;margin-top:2rem}.skill-group{padding-block:1.2rem}.tech-badge{min-height:44px}.recent-projects{margin-top:1rem}.archive-row{gap:.8rem;padding:1rem .4rem}.archive-row time{display:none}.archive-footer{margin-top:3rem;font-size:.5rem}.project-card{padding:1rem}.project-controls{flex-wrap:wrap;justify-content:flex-end}.result-count{align-items:flex-start}.project-chronology{padding:1rem}.project-chronology-entry{grid-template-columns:minmax(0,1fr);gap:.75rem;padding-left:1.25rem}.project-chronology-entry:before{left:0}.project-chronology-entry:after{left:-3px}.project-chronology-date{flex-direction:row;align-items:baseline;gap:.75rem;padding-right:0}.project-card-main,.project-card.is-compact .project-card-main{grid-template-columns:1fr;gap:1rem}.project-card-image{min-height:175px}.project-card-content{padding:.25rem 0}.project-card-meta{font-size:.52rem}.viewer-grid{display:block}.project-index{display:none}.mobile-project-index{border:1px solid var(--ui-line);background:var(--ui-surface);margin-bottom:1.5rem;display:block}.mobile-project-index summary{cursor:pointer;font:.7rem var(--ui-mono);text-transform:uppercase;padding:1rem}.mobile-project-index .index-links{padding-inline:.5rem}.project-document{padding:1.25rem 1rem}.project-back-link{margin-bottom:1rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (max-width:440px){.project-highlights-list>li{flex-basis:100%}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}