@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_a04020eb-module__CNgZeW__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_a04020eb-module__CNgZeW__variable{--font-body:"Inter", "Inter Fallback"}
@font-face{font-family:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.0_v7qv~qdckr_.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:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.0jr2jo04zlceh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9eba4caf7edd2921-s.00t_.3.5..g_7.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f6752bd2263820da-s.10j9.xtie.pqv.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:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f285987c35230861-s.0l_qy7hq7zupz.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:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0g0e~i-as20lr.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:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ab57efd000576a30-s.p.0.xyi-bdzzdcz.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:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.0_v7qv~qdckr_.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:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.0jr2jo04zlceh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9eba4caf7edd2921-s.00t_.3.5..g_7.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/f6752bd2263820da-s.10j9.xtie.pqv.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:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/f285987c35230861-s.0l_qy7hq7zupz.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:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0g0e~i-as20lr.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:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ab57efd000576a30-s.p.0.xyi-bdzzdcz.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:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.0_v7qv~qdckr_.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:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.0jr2jo04zlceh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9eba4caf7edd2921-s.00t_.3.5..g_7.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f6752bd2263820da-s.10j9.xtie.pqv.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:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f285987c35230861-s.0l_qy7hq7zupz.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:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0g0e~i-as20lr.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:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ab57efd000576a30-s.p.0.xyi-bdzzdcz.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:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.0_v7qv~qdckr_.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:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.0jr2jo04zlceh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9eba4caf7edd2921-s.00t_.3.5..g_7.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f6752bd2263820da-s.10j9.xtie.pqv.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:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f285987c35230861-s.0l_qy7hq7zupz.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:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0g0e~i-as20lr.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:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ab57efd000576a30-s.p.0.xyi-bdzzdcz.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:Inter Tight Fallback;src:local(Arial);ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.0%;size-adjust:96.39%}.inter_tight_77d3f743-module__eHeOaW__className{font-family:Inter Tight,Inter Tight Fallback;font-style:normal}.inter_tight_77d3f743-module__eHeOaW__variable{--font-display:"Inter Tight", "Inter Tight Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--sky-1:#89c0f0;--sky-2:#a8d5f5;--sky-3:#c9e6ff;--sky-4:#e6f5ff}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.resize{resize:both}}@property --sky-1{syntax:"<color>";inherits:true;initial-value:#89c0f0}@property --sky-2{syntax:"<color>";inherits:true;initial-value:#a8d5f5}@property --sky-3{syntax:"<color>";inherits:true;initial-value:#c9e6ff}@property --sky-4{syntax:"<color>";inherits:true;initial-value:#e6f5ff}:root{--nav-h:72px;--blue:#89c0f0;--green:#90ee90;--ink:#0f2236;--ink-soft:#2f4c66;--sky-1:#78bffc;--sky-2:#a8d5f5;--sky-3:#bedefb;--sky-4:#cfe8f8;--glass:#c7e7ffad;--glass-strong:#d2eeffe0;--nav-glass:#c0e4fcd9;--surface-soft:#ffffff80;--surface-tint:#d2eeffb3;--surface-sheen:#ffffffc7;--surface-line:#ffffff61;--card-sheen-1:#ffffff47;--card-sheen-2:#ffffff29;--card-mix-base:white;--contact-panel-sheen:#ffffff6b;--contact-link-bg:#ffffff38;--contact-link-hover-bg:#ffffff57;--primary-link-subtext:#0f2236b8;--card-stroke:#3876aa40;--shadow-soft:0 26px 60px #0924442e;--shadow-tight:0 16px 32px #09244426;--radius-xl:26px;--radius-lg:20px;--radius-md:14px;--container:min(1100px, 90vw);--scroll-progress:0;--scroll-y:0px;--mx:0;--my:0;--stars-opacity:.06;--bloom:#fff3c899;--orb-y:22%;--orb-opacity:1;--orb-inner:#fff5bef2;--orb-outer:#ffce5a61;--layer-two:#89c0f059;--layer-three:#90ee9052}:root[data-theme=sunset]{--blue:#ffd06a;--green:#ff6f5a;--ink:#2b1416;--ink-soft:#611e23;--sky-1:#752e6d;--sky-2:#c85683;--sky-3:#ff7a4b;--sky-4:#f8a45b;--glass:#fff0e4a3;--glass-strong:#dcd6bcd6;--nav-glass:#fff0e4b8;--surface-soft:#fff0e47a;--surface-tint:#ffe8d8a3;--surface-sheen:#fff0e4ad;--surface-line:#fff0e457;--card-sheen-1:#fff0e43d;--card-sheen-2:#fff0e41f;--card-mix-base:#fff0e4;--contact-panel-sheen:#fff0e452;--contact-link-bg:#fff0e433;--contact-link-hover-bg:#fff0e452;--card-stroke:#ff7a4b59;--stars-opacity:.22;--bloom:#ffaa738c;--orb-y:100%;--orb-opacity:.98;--orb-inner:#ffd8a0f2;--orb-outer:#ff4b4638;--layer-two:#ff765c42;--layer-three:#ff5c9838}:root[data-theme=night]{--blue:#9aa7ff;--green:#caa3ff;--ink:#d0e0ff;--ink-soft:#c5d5f1;--sky-1:#190a52;--sky-2:#110a2d;--sky-3:#160b3e;--sky-4:#231465;--glass:#0c1628b5;--glass-strong:#0b203edb;--nav-glass:#091220bf;--surface-soft:#0e1d36ad;--surface-tint:#122442b8;--surface-sheen:#7a9ad214;--surface-line:#bed8ff24;--card-sheen-1:#d6e4ff1a;--card-sheen-2:#d6e4ff0a;--card-mix-base:#07172b;--contact-panel-sheen:#c6d7ff1a;--contact-link-bg:#0d1b34b8;--contact-link-hover-bg:#182b4cc7;--card-stroke:#91c9ff33;--stars-opacity:.62;--bloom:#a06eff14;--orb-y:120%;--orb-opacity:0;--orb-inner:#ffffffa6;--orb-outer:#ffffff14;--layer-two:#76b9ff2e;--layer-three:#9c86ff29}*{box-sizing:border-box}html{transition:--sky-1 1.4s,--sky-2 1.4s,--sky-3 1.4s,--sky-4 1.4s}body{background:radial-gradient(circle at 20% 20%, var(--bloom), transparent 55%), linear-gradient(160deg, var(--sky-1) 0%, var(--sky-2) 45%, var(--sky-3) 80%, var(--sky-4) 100%);min-height:100%;color:var(--ink);font-family:var(--font-body), "Segoe UI", ui-sans-serif, system-ui, sans-serif;margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;opacity:var(--stars-opacity);filter:blur(.2px);background:radial-gradient(circle at 16% 22%,#ffffffe6,#0000 10px),radial-gradient(circle at 82% 18%,#ffffffd9,#0000 12px),radial-gradient(circle at 68% 56%,#ffffffbf,#0000 10px),radial-gradient(circle at 28% 70%,#fffc,#0000 12px),radial-gradient(circle at 90% 72%,#ffffffa6,#0000 12px),radial-gradient(circle at 48% 34%,#fff9,#0000 9px);transition:opacity 1.4s;animation:9s ease-in-out infinite twinkle;position:fixed;inset:0}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-display), var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.03em;margin:0}p{margin:0}button{font-family:inherit}:focus-visible{outline-offset:3px;outline:3px solid #89c0f099}.page{z-index:1;position:relative;overflow-x:clip}.container{width:var(--container);margin:0 auto}.section{padding:120px 0;scroll-margin-top:120px;position:relative}.section-title{align-items:center;gap:12px;margin-bottom:16px;font-size:clamp(2.2rem,4vw,3.4rem);display:flex}.section-subtitle{max-width:650px;color:var(--ink-soft);margin-bottom:32px;font-size:1.05rem}.section-icon{background:var(--glass);border:1px solid var(--card-stroke);width:42px;height:42px;color:var(--blue);border-radius:14px;justify-content:center;align-items:center;display:inline-flex}.body-text{color:var(--ink-soft);font-size:1.1rem;line-height:1.7}.intro-overlay{z-index:90;opacity:1;pointer-events:none;background:0 0;place-items:center;transition:opacity .36s;display:grid;position:fixed;inset:0;overflow:hidden}.page[data-intro=done] .intro-overlay{opacity:0}.nav,main,.flight-progress{transition:opacity .36s}.page[data-intro=active] .nav,.page[data-intro=active] main,.page[data-intro=active] .flight-progress{opacity:0}.intro-clouds{filter:blur(10px);opacity:0;background:radial-gradient(circle at 30% 30%,#ffffffe6,#0000 55%),radial-gradient(circle at 70%,#fffc,#0000 60%),radial-gradient(circle at 50% 70%,#ffffffd9,#0000 55%);animation:2.2s forwards cloudFill;position:absolute;inset:-20%}.intro-trail{opacity:0;background:radial-gradient(circle,#ffffffbf,#0000 60%);animation:2.2s forwards trailBloom;position:absolute;inset:-20%}.intro-plane{offset-path:path("M -260 270 C 120 44 560 54 860 210 C 1100 334 1380 246 1660 150 C 1780 110 1900 90 2060 70");offset-rotate:auto;offset-anchor:50% 50%;will-change:offset-distance;place-items:center;width:220px;height:170px;animation:2.1s linear forwards introFlight;display:grid;position:absolute}.intro-plane-clouds{pointer-events:none;z-index:0;opacity:.9;width:190px;height:98px;position:absolute;top:52%;left:-98px;transform:translateY(-50%)}.intro-plane-clouds:before,.intro-plane-clouds:after{content:"";opacity:0;background:radial-gradient(circle at 40%,#ffffffeb,#d2eeff52 62%,#0000 72%);border-radius:999px;animation:1.8s ease-in-out infinite cloudPuff;position:absolute;inset:0}.intro-plane-clouds:after{animation-delay:.55s;transform:translate(30px)scale(1.12)}.intro-steam{pointer-events:none;z-index:0;filter:blur(1.1px);opacity:0;background-image:linear-gradient(90deg,#fff0 0%,#fffffff2 18%,#ffffff2e 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffeb 20%,#ffffff29 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffe6 22%,#ffffff24 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffdb 24%,#ffffff1f 70%,#fff0 100%);background-position:0 14px,0 34px,0 54px,0 74px;background-repeat:no-repeat;background-size:100% 10px;width:400px;height:92px;animation:1.2s ease-in-out infinite steamTrail;position:absolute;top:52%;left:-360px;transform:translateY(-50%)}.intro-brand{z-index:1;text-align:center;gap:8px;display:grid;position:relative}.intro-title{font-size:clamp(2.6rem,6vw,3.4rem)}.intro-subtitle{color:var(--ink-soft);font-size:1rem}.flight-progress{z-index:40;pointer-events:none;width:40px;height:56vh;position:fixed;top:22vh;left:2.5vw}.flight-line{background:#0f223626;border-radius:999px;width:2px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.flight-line:after{content:"";width:100%;height:calc(var(--scroll-progress) * 100%);background:linear-gradient(180deg, var(--blue), var(--green));border-radius:999px;position:absolute;top:0;left:0}.flight-plane{left:50%;top:calc(var(--scroll-progress) * 100%);width:28px;height:28px;color:var(--blue);position:absolute;transform:translate(-50%,-50%)}.nav{z-index:60;background:var(--nav-glass);border-bottom:1px solid var(--card-stroke);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.logo{font-size:1.05rem;font-weight:600;font-family:var(--font-display), var(--font-body), ui-sans-serif, system-ui, sans-serif;align-items:center;gap:10px;display:inline-flex}.logo-mark{background:var(--glass);border:1px solid var(--card-stroke);width:34px;height:34px;color:var(--blue);border-radius:12px;place-items:center;display:grid}.logo-sub{color:var(--ink-soft);margin-left:6px;font-size:.75rem}.nav-links{gap:18px;font-size:.95rem;display:flex}.nav-links a{padding-bottom:4px;position:relative}.nav-links a:after{content:"";background:linear-gradient(90deg, var(--blue), var(--green));transform-origin:0;width:100%;height:2px;transition:transform .3s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-links a:hover:after{transform:scaleX(1)}.nav-actions{align-items:center;gap:10px;display:inline-flex}.pill{border:1px solid var(--card-stroke);background:var(--glass);border-radius:999px;padding:8px 14px;transition:transform .3s,box-shadow .3s}@supports (color:color-mix(in lab, red, red)){.pill-primary{background:linear-gradient(120deg, color-mix(in oklab, var(--blue) 90%, white 10%), color-mix(in oklab, var(--green) 90%, white 10%))}}.pill-primary{color:#0f2236;font-weight:600}.hero-sky{pointer-events:none;position:absolute;inset:0;overflow:hidden}.train{pointer-events:none;opacity:1;will-change:transform;z-index:2;filter:drop-shadow(0 6px 10px #0000002e);width:clamp(120px,14vw,170px);height:auto;animation:12s linear infinite trainMove;position:absolute;top:81.5vh;left:0;transform:translate(110vw,-50%)}@keyframes trainMove{0%{transform:translate(110vw,-50%)}to{transform:translate(-220px,-50%)}}.parachuter-fall{pointer-events:none;z-index:2;will-change:transform, opacity;opacity:1;animation:9.5s linear infinite gliderFall;position:absolute;top:0;right:6%}.parachuter{pointer-events:none;transform-origin:50% 12%;opacity:1;filter:drop-shadow(0 10px 18px #0f22362e);width:clamp(72px,8vw,96px);height:auto;animation:1.45s ease-in-out infinite alternate gliderSwing}@keyframes gliderFall{0%{opacity:0;transform:translateY(-18vh)}10%{opacity:1}35%{transform:translate(-1.5vw,24vh)}70%{transform:translate(1vw,62vh)}to{opacity:.75;transform:translate(-.5vw,118vh)}}@keyframes gliderSwing{0%{transform:rotate(-7deg)}50%{transform:rotate(5deg)}to{transform:rotate(-7deg)}}.sky-layer{opacity:.8;transform:translate3d(calc(var(--mx) * 30px), calc(var(--my) * 24px), 0) translateY(calc(var(--scroll-y) * -.03));position:absolute;inset:-20%}.sky-layer,.sky-orb,.banana-moon,.night-stars{z-index:1}.layer-one{background:radial-gradient(circle at 20% 20%,#fffc,#0000 60%)}.layer-two{background:radial-gradient(circle at 70% 30%, var(--layer-two), transparent 60%);transform:translate3d(calc(var(--mx) * -20px), calc(var(--my) * -16px), 0) translateY(calc(var(--scroll-y) * -.05))}.layer-three{background:radial-gradient(circle at 40% 80%, var(--layer-three), transparent 65%);transform:translate3d(calc(var(--mx) * 18px), calc(var(--my) * 14px), 0) translateY(calc(var(--scroll-y) * -.08))}.sky-orb{right:12%;top:calc(var(--orb-y) - 70px);width:140px;height:140px;opacity:var(--orb-opacity);background:radial-gradient(circle, var(--orb-inner), var(--orb-outer));filter:blur(.5px);border-radius:50%;transition:top 1.6s cubic-bezier(.18,.86,.28,1),opacity 1.2s,background 1.6s;position:absolute}.banana-moon{opacity:0;filter:drop-shadow(0 0 12px #fff4ba9e)drop-shadow(0 0 34px #be91ff5c)drop-shadow(0 0 62px #74a9ff2e);transform-origin:54% 18%;will-change:transform, opacity;width:clamp(92px,12vw,168px);height:auto;position:absolute;top:clamp(58px,11vh,112px);right:clamp(16px,9vw,136px);transform:translateY(-42vh)rotate(-8deg)scale(1)}.night-stars{opacity:0;transition:opacity .9s,transform 1.2s cubic-bezier(.18,.86,.28,1);position:absolute;inset:0;transform:translateY(8px)}.night-star{opacity:.88;filter:drop-shadow(0 0 8px #f4edff52);width:clamp(12px,1.8vw,24px);height:auto;animation:5.8s ease-in-out infinite spriteTwinkle;position:absolute}.night-star.star-a{width:clamp(13px,1.9vw,26px);top:16%;left:8%}.night-star.star-b{animation-delay:-1.6s;top:10%;left:23%}.night-star.star-c{width:clamp(10px,1.4vw,19px);animation-delay:-3.1s;top:18%;left:42%}.night-star.star-d{width:clamp(11px,1.5vw,20px);animation-delay:-2.2s;top:8%;right:30%}.night-star.star-e{animation-delay:-4s;top:27%;right:18%}.night-star.star-f{width:clamp(12px,1.6vw,22px);animation-delay:-.8s;top:12%;right:7%}.night-star.star-g{width:clamp(9px,1.2vw,17px);animation-delay:-4.9s;top:34%;left:58%}.night-star.star-h{width:clamp(10px,1.3vw,18px);animation-delay:-2.8s;top:35%;left:14%}.night-star.star-i{width:clamp(12px,1.6vw,22px);animation-delay:-5.4s;top:30%;left:33%}.night-star.star-j{width:clamp(9px,1.2vw,17px);animation-delay:-3.7s;top:24%;right:40%}.night-star.star-k{width:clamp(10px,1.4vw,20px);animation-delay:-1.1s;top:40%;right:12%}:root[data-theme=night] .banana-moon{opacity:1;animation:5.8s ease-in-out infinite moonRock}:root[data-theme-transition=to-night] .banana-moon{opacity:1;animation:.95s cubic-bezier(.18,.86,.28,1) both moonDropIn}:root[data-theme-transition=from-night] .banana-moon{opacity:1;animation:.9s cubic-bezier(.54,0,.84,.28) both moonDropOut}:root[data-theme=night] .night-stars{opacity:1;transform:translateY(0)}.night-side-stars{z-index:1;pointer-events:none;opacity:0;transition:opacity .9s,transform 1.2s cubic-bezier(.18,.86,.28,1);position:fixed;inset:0;transform:translateY(8px)}:root[data-theme=night] .night-side-stars{opacity:1;transform:translateY(0)}.side-star{opacity:.72;filter:drop-shadow(0 0 8px #f4edff47);width:clamp(11px,1.5vw,22px);height:auto;animation:6.6s ease-in-out infinite spriteTwinkle;position:absolute}.side-star-a{animation-delay:-1.4s;top:34vh;left:3.5vw}.side-star-b{width:clamp(9px,1.2vw,18px);animation-delay:-3.8s;top:58vh;left:6vw}.side-star-c{animation-delay:-5.1s;top:82vh;left:2.4vw}.side-star-d{width:clamp(10px,1.3vw,19px);animation-delay:-2.7s;top:42vh;right:4.2vw}.side-star-e{animation-delay:-4.5s;top:66vh;right:6vw}.side-star-f{width:clamp(9px,1.2vw,18px);animation-delay:-.9s;top:88vh;right:2.8vw}.cloud-drop{pointer-events:none;opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.18,.86,.28,1);position:absolute;transform:translateY(-34px)}.page[data-intro=done] .cloud-drop{opacity:1;transform:translateY(0)}.cloud{opacity:.88;background:linear-gradient(140deg,#fffffff5,#d6eeffb8);border-radius:999px;width:220px;height:120px;animation:18s ease-in-out infinite cloudDrift;position:relative;box-shadow:0 22px 46px #0f22361a}.cloud:before,.cloud:after{content:"";background:inherit;border-radius:999px;width:120px;height:80px;position:absolute;top:-20px;left:20px}.cloud:after{width:140px;height:90px;top:-30px;left:80px}.cloud-drop.cloud-a{top:18%;left:8%}.cloud-drop.cloud-a .cloud{animation-delay:-2s}.cloud-drop.cloud-b .cloud{animation-delay:-6s}.cloud-drop.cloud-c{top:72%;left:14%}.cloud-drop.cloud-c .cloud{animation-delay:-10s}.hero-landing-clouds{opacity:0;filter:blur(14px);pointer-events:none;background:radial-gradient(circle at 45% 55%,#fffffff2,#0000 52%),radial-gradient(circle at 62%,#ffffffd9,#0000 58%),radial-gradient(circle at 50% 68%,#ffffffe6,#0000 56%);position:absolute;inset:-15%;transform:translateY(10px)scale(.98)}.hero-landing-clouds,.cloud-drop{z-index:3}.page[data-intro=done] .hero-landing-clouds{animation:1.6s both landingClouds}.plane-loop{width:220px;height:170px;color:var(--ink);cursor:pointer;pointer-events:auto;z-index:1;isolation:isolate;offset-path:path("M -120 92 C 160 18 560 52 860 116 C 1160 180 1540 128 1920 66 C 2080 40 2240 30 2400 24");offset-rotate:auto;background:0 0;border:none;place-items:center;animation:44s linear infinite planeLoop;display:grid;position:absolute;top:12px;left:0}.plane-image{object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 18px 28px #0f223640);z-index:1;width:220px;height:150px;position:relative}.plane-image--intro{width:200px;height:135px}.plane-smoke{pointer-events:none;z-index:0;filter:blur(1.1px);opacity:0;background-image:linear-gradient(90deg,#fff0 0%,#fffffff2 18%,#ffffff2e 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffeb 20%,#ffffff29 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffe6 22%,#ffffff24 70%,#fff0 100%),linear-gradient(90deg,#fff0 0%,#ffffffdb 24%,#ffffff1f 70%,#fff0 100%);background-position:0 16px,0 36px,0 56px,0 76px;background-repeat:no-repeat;background-size:100% 10px;width:440px;height:96px;animation:1.2s ease-in-out infinite steamTrail;position:absolute;top:50%;left:-390px;transform:translateY(-50%)}.plane-smoke:before,.plane-smoke:after,.plane-smoke:after{display:none}.plane-clouds{pointer-events:none;z-index:0;opacity:.9;width:210px;height:108px;position:absolute;top:52%;left:-118px;transform:translateY(-50%)}.plane-clouds:before,.plane-clouds:after{content:"";opacity:0;background:radial-gradient(circle at 40%,#ffffffeb,#d2eeff52 62%,#0000 72%);border-radius:999px;animation:1.8s ease-in-out infinite cloudPuff;position:absolute;inset:0}.plane-clouds:after{animation-delay:.55s;transform:translate(30px)scale(1.12)}.hero-grid{z-index:2;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center;gap:60px;padding-top:70px;display:grid;position:relative}.hero-text{text-align:center}.hero-intro{gap:16px;display:grid}.hero-kicker,.hero-meta,.hero-name{opacity:0;transform:translateY(10px)}.page[data-intro=done] .hero-kicker,.page[data-intro=done] .hero-name,.page[data-intro=done] .hero-meta{animation:.9s forwards heroFadeUp}.page[data-intro=done] .hero-kicker{animation-delay:80ms}.page[data-intro=done] .hero-name{animation-delay:.18s}.page[data-intro=done] .hero-meta{animation-delay:.3s}.hero-kicker{letter-spacing:.08em;text-transform:lowercase;color:var(--ink-soft);font-size:1.28rem}.hero-meta{color:var(--ink-soft);font-size:1.15rem}.eyebrow{text-transform:uppercase;letter-spacing:.32em;color:var(--ink-soft);margin-bottom:12px;font-size:.72rem}.hero-text h1{font-size:clamp(3.8rem,8.4vw,7.4rem);line-height:.96}.hero-slogan{text-wrap:balance;max-width:600px;color:var(--ink-soft);margin-top:24px;margin-left:auto;margin-right:auto;font-size:1.4rem;font-weight:500;line-height:1.6}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.button{background:var(--ink);color:#fff;border:none;border-radius:999px;padding:12px 22px;font-weight:600;transition:transform .3s,box-shadow .3s}.button-ghost{color:var(--ink);border:1px solid var(--card-stroke);background:0 0}.hero-chips{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.hero-chip{border:1px solid var(--card-stroke);background:var(--surface-tint);border-radius:999px;padding:6px 12px;font-size:.85rem}.hero-card{background:var(--glass-strong);border:1px solid var(--card-stroke);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);padding:28px;position:relative}.hero-card-title{margin-bottom:12px;font-weight:600}.hero-card ul{color:var(--ink-soft);gap:10px;margin:0;padding-left:18px;display:grid}.hero-card-footer{color:var(--ink);margin-top:18px;font-size:.95rem}.about-grid{grid-template-columns:2fr 1fr;align-items:start;gap:40px;display:grid}.about-copy{gap:18px;display:grid}.about-copy .section-title{margin-bottom:0}.about-photo{aspect-ratio:1;border-radius:var(--radius-xl);border:1px solid var(--card-stroke);width:100%;box-shadow:var(--shadow-tight);background:#ffffffeb;position:relative;overflow:hidden}.about-photo img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.project-card{--rx:0deg;--ry:0deg;--scale:1;--lift:0px;background:var(--glass-strong);border:1px solid var(--card-stroke);border-radius:var(--radius-xl);cursor:pointer;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(var(--lift)) scale(var(--scale));grid-template-rows:auto 1fr;gap:16px;padding:18px;transition:transform .2s,box-shadow .2s;display:grid}.project-card:hover{box-shadow:var(--shadow-soft);--scale:1.03;--lift:-6px}.project-card:focus-visible{outline-offset:4px;outline:3px solid #89c0f099}.project-detail{padding-top:100px}.project-detail-inner{width:min(890px,100vw - clamp(48px,24vw,360px));max-width:none}.project-detail-inner.project-detail-inner--list{width:var(--container);max-width:1100px}.project-detail-inner.project-detail-inner--media-heavy{width:min(1240px,100vw - clamp(40px,8vw,128px));padding:clamp(18px,2.4vw,30px)}.project-detail-title{font-size:clamp(2.6rem,5vw,4.2rem);line-height:1.02}.project-section-title{letter-spacing:-.02em;color:var(--ink);margin-bottom:8px;font-size:1.5rem;font-weight:700}.project-detail-subtitle{max-width:60ch;color:var(--ink-soft);margin-top:14px;font-size:1.08rem;line-height:1.7}.project-detail-tags{margin-top:18px}.project-main-image{gap:10px;width:100%;margin:22px 0 0;display:grid}.project-detail-flow{gap:28px;display:grid}.project-flow-text{gap:12px;display:grid}.project-flow-media{gap:12px;margin:0;display:grid}.project-media-box{border-radius:calc(var(--radius-xl) + 6px);border:1px solid var(--card-stroke);width:100%;box-shadow:var(--shadow-tight);background:linear-gradient(135deg,#89c0f08c,#90ee9059);gap:12px;padding:16px;display:grid}.project-media-box--side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.project-media-box--side.reverse .project-flow-side-image{order:2}.project-media-box--side.reverse .project-flow-side-caption{order:1}.project-media-frame{border-radius:var(--radius-lg);width:100%;box-shadow:none;background:0 0;place-items:start;display:grid;overflow:visible}.project-media-frame--hero,.project-media-frame--full{height:auto}.project-media-frame--full .project-media-img{width:min(50%,520px);margin-inline:auto}.project-media-frame--half{height:auto;box-shadow:none;background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid;overflow:visible}.project-flow-media--half .project-media-box{box-shadow:none;background:linear-gradient(135deg,#89c0f08c,#90ee9059);border:none}.project-media-frame--half .project-media-img{object-fit:contain;border-radius:var(--radius-lg);height:auto}.project-media-frame--half .project-media-img:first-child{align-self:start}.project-media-frame--half .project-media-img:last-child{align-self:center}.project-media-frame--side{height:auto}.project-media-img{object-fit:contain;border-radius:var(--radius-lg);background:0 0;align-self:start;width:100%;max-width:100%;height:auto;display:block}.project-main-image .project-media-img{object-fit:contain;height:auto}.project-flow-media--side{gap:18px;margin:18px 0;display:grid}.project-flow-side-caption{text-align:center;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:20px;min-height:100%;padding:12px 14px;display:flex}.project-flow-caption{color:var(--ink-soft);text-align:center;border-radius:var(--radius-lg);background:linear-gradient(135deg,#89c0f08c,#90ee9059);padding:12px 14px;font-size:.98rem}.project-detail-actions{justify-content:center;margin-top:34px;display:flex}.subproject-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:28px;display:grid}.subproject-grid--websites{grid-template-columns:repeat(2,minmax(0,1fr))}.subproject-grid--websites .subproject-visual{aspect-ratio:16/9;height:auto}.subproject-card{background:var(--glass-strong);border:1px solid var(--card-stroke);border-radius:var(--radius-xl);box-shadow:var(--shadow-tight);gap:12px;padding:16px;transition:transform .2s,box-shadow .2s;display:grid}.subproject-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-4px)}.subproject-visual{border-radius:var(--radius-lg);border:1px solid var(--card-stroke);background:linear-gradient(135deg,#89c0f08c,#90ee9059);place-items:center;width:100%;height:480px;padding:12px;display:grid;overflow:hidden}.subproject-visual img{object-fit:cover;object-position:center;border-radius:var(--radius-md);width:100%;height:100%}.subproject-body h3{font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;margin-bottom:6px;font-size:1.15rem}.subproject-body p{color:var(--ink-soft);line-height:1.6}.project-list-empty{margin-top:24px}.picture-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;margin-top:28px;display:grid}.picture-grid-item{min-width:0;min-height:0;display:grid}.picture-grid .project-media-box{background:0 0;justify-content:center;align-items:center;height:100%;padding:12px;display:flex;overflow:hidden}.picture-grid .project-media-frame{border-radius:var(--radius-lg);width:100%;min-height:320px;box-shadow:none;background:0 0;place-items:center;display:grid;overflow:hidden}.picture-grid .project-media-img{object-fit:contain;object-position:center;border-radius:inherit;align-self:center;width:auto;max-width:100%;height:auto;max-height:100%}.project-detail-inner--media-heavy .project-main-image,.project-detail-inner--media-heavy .picture-grid{margin-top:18px}.project-detail-inner--media-heavy .picture-grid{gap:14px}.project-detail-inner--media-heavy .project-media-box{padding:10px}.project-detail-inner--media-heavy .picture-grid .project-media-frame{min-height:clamp(260px,30vw,430px)}.project-visual{border-radius:calc(var(--radius-xl) + 6px);border:1px solid var(--card-stroke);width:100%;height:400px;box-shadow:var(--shadow-tight);background:linear-gradient(135deg,#89c0f08c,#90ee9059);place-items:center;padding:0;display:grid;overflow:hidden}.project-visual img{object-fit:cover;object-position:center;border-radius:inherit;width:100%;height:100%;display:block}.project-visual:after{content:none}.project-visual--nimbus,.project-visual--cartographer,.project-visual--rainsense,.project-visual--wingbeat{background:linear-gradient(135deg,#89c0f08c,#90ee9059)}.project-body h3{font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.02em;margin-bottom:8px;font-size:1.45rem}.project-body p{color:var(--ink-soft);line-height:1.6}.project-tags{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.project-tags span{background:var(--surface-tint);border:1px solid var(--card-stroke);border-radius:999px;padding:4px 10px;font-size:.78rem}.skill-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;display:grid}.skill-card{border-radius:var(--radius-lg);border:1px solid var(--card-stroke);background:var(--glass);animation:6s ease-in-out infinite float;animation-delay:var(--delay);gap:12px;padding:20px;display:grid}.skill-icon{width:42px;height:42px;color:var(--blue);background:#89c0f033;border-radius:14px;place-items:center;display:grid}.skill-card h3{font-size:1.05rem;font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.015em;margin-bottom:4px}.skill-card p{color:var(--ink-soft);font-size:.92rem}.timeline{gap:28px;margin-top:36px;padding-left:12px;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--blue), var(--green));border-radius:999px;width:2px;position:absolute;top:0;bottom:0;left:6px}.timeline-item{grid-template-columns:20px 1fr;align-items:start;gap:18px;display:grid}.timeline-dot{background:var(--green);border-radius:50%;width:12px;height:12px;margin-top:8px;box-shadow:0 0 0 6px #90ee9033}.timeline-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.timeline-header span{color:var(--ink-soft);font-size:.85rem}.timeline-header h3{font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.02em;font-size:1.2rem}.timeline-content p{color:var(--ink-soft);margin-top:8px}.experience-section{padding-top:96px}.experience-section .section-subtitle{max-width:880px}.experience-notebook{border:1px solid var(--card-stroke);font-family:"Trebuchet MS", var(--font-body), ui-sans-serif, system-ui, sans-serif;background:linear-gradient(90deg, #0f22360b 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(#0f22360a 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(135deg, var(--surface-sheen), var(--glass-strong));box-shadow:var(--shadow-soft);border-radius:18px;margin-top:34px;padding:clamp(18px,3vw,28px);position:relative}.experience-notebook:before{content:"";border:1px solid var(--surface-line);pointer-events:none;border-radius:12px;position:absolute;inset:14px}.experience-layout{z-index:1;grid-template-columns:minmax(0,1fr) minmax(290px,.38fr);gap:24px;display:grid;position:relative}.experience-pages{gap:18px;display:grid}.experience-card,.education-card{--card-accent:var(--blue);--card-accent-2:var(--green);--card-ink:var(--ink);border:1px solid var(--card-accent);position:relative}@supports (color:color-mix(in lab, red, red)){.experience-card,.education-card{border:1px solid color-mix(in oklab, var(--card-accent) 38%, var(--card-stroke))}}.experience-card,.education-card{background:linear-gradient(180deg, var(--card-sheen-1), var(--card-sheen-2)), linear-gradient(135deg, var(--card-accent), var(--card-accent-2));border-radius:14px}@supports (color:color-mix(in lab, red, red)){.experience-card,.education-card{background:linear-gradient(180deg, var(--card-sheen-1), var(--card-sheen-2)), linear-gradient(135deg, color-mix(in oklab, var(--card-accent) 38%, var(--card-mix-base)), color-mix(in oklab, var(--card-accent-2) 44%, var(--card-mix-base)))}}.experience-card,.education-card{box-shadow:var(--shadow-tight)}.experience-card--steam{--card-accent:#41b8df;--card-accent-2:#8cecff}.experience-card--prism{--card-accent:#7359db;--card-accent-2:#c590ff}.experience-card--midsun{--card-accent:#f5a31a;--card-accent-2:#ffd45f}.experience-card--mathnasium{--card-accent:#ef3e33;--card-accent-2:#ff9188}.education-card--waterloo{--card-accent:#ffd54f;--card-accent-2:#fff08a}.experience-card{grid-template-columns:72px minmax(0,1fr);gap:18px;min-height:150px;padding:18px 20px;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden}.experience-logo,.education-logo{border:1px solid var(--card-accent);place-items:center;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.experience-logo,.education-logo{border:1px solid color-mix(in oklab, var(--card-accent) 32%, var(--card-stroke))}}.experience-logo,.education-logo{background:#ffffffe0}.experience-logo{aspect-ratio:1;border-radius:14px;align-self:start;width:72px;padding:10px}.experience-logo img,.education-logo img{object-fit:contain;padding:9px}.experience-card-body{z-index:1;min-width:0;position:relative}.experience-meta{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.experience-meta span,.education-label{border:1px solid var(--card-accent);width:max-content;padding:5px 10px}@supports (color:color-mix(in lab, red, red)){.experience-meta span,.education-label{border:1px solid color-mix(in oklab, var(--card-accent) 34%, var(--card-stroke))}}.experience-meta span,.education-label{background:var(--card-accent);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.experience-meta span,.education-label{background:color-mix(in oklab, var(--card-accent) 14%, var(--surface-tint))}}.experience-meta span,.education-label{color:var(--card-ink)}@supports (color:color-mix(in lab, red, red)){.experience-meta span,.education-label{color:color-mix(in oklab, var(--card-ink) 78%, var(--card-accent))}}.experience-meta span,.education-label{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700}.experience-card h2,.education-card h2{font-family:"Trebuchet MS", var(--font-display), var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:0;color:var(--card-ink);font-size:clamp(1.15rem,2vw,1.38rem);line-height:1.18}.experience-org{color:var(--card-ink);margin-top:5px}@supports (color:color-mix(in lab, red, red)){.experience-org{color:color-mix(in oklab, var(--card-ink) 84%, var(--card-accent))}}.experience-org{font-weight:700}.experience-location{color:var(--ink-soft);margin-top:6px;line-height:1.5}.experience-note{border:1px solid var(--card-accent);margin-top:12px;padding:9px 11px}@supports (color:color-mix(in lab, red, red)){.experience-note{border:1px solid color-mix(in oklab, var(--card-accent) 44%, transparent)}}.experience-note{background:var(--card-accent);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.experience-note{background:color-mix(in oklab, var(--card-accent) 16%, var(--surface-tint))}}.experience-note{color:var(--ink);font-weight:650}.education-card{align-self:start;gap:18px;padding:22px;display:grid;overflow:hidden}.education-card:before{content:"";background:linear-gradient(90deg, var(--card-accent), var(--card-accent-2));pointer-events:none;height:5px;position:absolute;top:0;left:0;right:0}.education-school{z-index:1;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:14px;display:grid;position:relative}.education-school p{color:var(--ink-soft);margin-top:5px;line-height:1.45}.education-logo{aspect-ratio:1;border-radius:16px;width:70px}.education-chart{z-index:1;gap:10px;display:grid;position:relative}.education-chart div{border:1px solid var(--card-accent);grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;padding:11px 12px;display:grid}@supports (color:color-mix(in lab, red, red)){.education-chart div{border:1px solid color-mix(in oklab, var(--card-accent) 32%, var(--card-stroke))}}.education-chart div{background:var(--surface-soft);border-radius:12px}.education-chart span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.education-chart strong{color:var(--ink);font-size:1rem}.contact-console{border:1px solid var(--card-stroke);border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--contact-panel-sheen), transparent 38%), linear-gradient(120deg, var(--glass-strong), var(--green));grid-template-columns:minmax(210px,.8fr) minmax(250px,1fr) minmax(280px,1.05fr);align-items:center;gap:26px;padding:clamp(22px,4vw,36px);display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.contact-console{background:linear-gradient(135deg, var(--contact-panel-sheen), transparent 38%), linear-gradient(120deg, var(--glass-strong), color-mix(in oklab, var(--green) 16%, transparent))}}.contact-console{box-shadow:var(--shadow-tight);isolation:isolate}.contact-console:before{content:"";z-index:-1;border:1px solid var(--surface-line);border-radius:calc(var(--radius-xl) - 8px);pointer-events:none;position:absolute;inset:14px}.contact-console:after{content:"";z-index:-2;aspect-ratio:1;background:radial-gradient(circle, var(--blue), transparent 66%);border-radius:50%;width:48%;position:absolute;top:-35%;right:-12%}@supports (color:color-mix(in lab, red, red)){.contact-console:after{background:radial-gradient(circle, color-mix(in oklab, var(--blue) 50%, white), transparent 66%)}}.contact-console:after{opacity:.55}.contact-radar{aspect-ratio:1;border:1px solid var(--card-stroke);background:repeating-radial-gradient(circle, transparent 0 28px, #0f22361a 29px 30px), linear-gradient(90deg, transparent calc(50% - 1px), #0f22361c 50%, transparent calc(50% + 1px)), linear-gradient(0deg, transparent calc(50% - 1px), #0f22361c 50%, transparent calc(50% + 1px)), var(--glass);border-radius:50%;justify-self:center;width:min(100%,230px);position:relative}@supports (color:color-mix(in lab, red, red)){.contact-radar{background:repeating-radial-gradient(circle, transparent 0 28px, #0f22361a 29px 30px), linear-gradient(90deg, transparent calc(50% - 1px), #0f22361c 50%, transparent calc(50% + 1px)), linear-gradient(0deg, transparent calc(50% - 1px), #0f22361c 50%, transparent calc(50% + 1px)), color-mix(in oklab, var(--glass) 78%, transparent)}}.contact-radar{box-shadow:inset 0 0 34px #ffffff4d, var(--shadow-tight)}.contact-radar-sweep{background:conic-gradient(from 0deg, var(--green), transparent 34%);border-radius:50%;position:absolute;inset:8%}@supports (color:color-mix(in lab, red, red)){.contact-radar-sweep{background:conic-gradient(from 0deg, color-mix(in oklab, var(--green) 58%, transparent), transparent 34%)}}.contact-radar-sweep{mix-blend-mode:multiply;opacity:.7;animation:4.8s linear infinite radarSweep}.contact-radar-dot{background:var(--green);width:10px;height:10px;box-shadow:0 0 0 8px var(--green);border-radius:50%;position:absolute}@supports (color:color-mix(in lab, red, red)){.contact-radar-dot{box-shadow:0 0 0 8px color-mix(in oklab, var(--green) 22%, transparent)}}.contact-radar-dot.dot-one{top:28%;left:58%}.contact-radar-dot.dot-two{animation-delay:-1.2s;top:62%;left:32%}.contact-radar-dot.dot-three{animation-delay:-2.4s;top:68%;left:72%}.contact-copy{gap:12px;display:grid}.contact-label{border:1px solid var(--card-stroke);background:var(--contact-link-bg);width:max-content;color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:.72rem}.contact-copy h3{font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;letter-spacing:0;font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.05}.contact-links{gap:14px;display:grid}.contact-link{border:1px solid var(--card-stroke);border-radius:var(--radius-lg);background:var(--contact-link-bg);grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:82px;padding:15px;transition:transform .25s,box-shadow .25s,background .25s;display:grid}.contact-link:hover{background:var(--contact-link-hover-bg);box-shadow:var(--shadow-tight);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.contact-link-primary{background:linear-gradient(135deg, color-mix(in oklab, var(--blue) 55%, white), color-mix(in oklab, var(--green) 36%, white))}}.contact-link-primary{color:#0f2236}.contact-link-primary .contact-link-value{color:var(--primary-link-subtext)}.contact-link-icon{color:#fff;background:#0f2236e0;border-radius:15px;place-items:center;width:46px;height:46px;font-size:1.05rem;font-weight:800;line-height:1;display:grid}.contact-link-title,.contact-link-value{display:block}.contact-link-title{font-size:1.02rem;font-weight:700}.contact-link-value{overflow-wrap:anywhere;color:var(--ink-soft);margin-top:3px;font-size:.92rem}.contact-link-arrow{color:var(--ink);font-size:1.4rem;transition:transform .25s}.contact-link:hover .contact-link-arrow{transform:translate(4px)}.footer{color:var(--ink-soft);padding:40px 0 60px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:.9rem;display:flex}.plane-icon{width:28px;height:28px}.easter{animation:.9s wiggle}@keyframes introFlight{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes cloudFill{0%{opacity:0}45%{opacity:.85}to{opacity:0}}@keyframes landingClouds{0%{opacity:0;transform:translateY(14px)scale(.96)}35%{opacity:.85}to{opacity:0;transform:translateY(-6px)scale(1.03)}}@keyframes trailBloom{0%{opacity:0;transform:scale(.6)}50%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}@keyframes planeLoop{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes smokePuff{0%{opacity:0;transform:translate(40px)scale(.7)}30%{opacity:.65}to{opacity:0;transform:translate(-46px)scale(1.25)}}@keyframes steamTrail{0%{opacity:0;transform:scaleX(.7)}35%{opacity:.95}to{opacity:0;transform:scaleX(1.15)}}@keyframes twinkle{0%{opacity:.35;transform:translateY(0)}50%{opacity:.55;transform:translateY(-4px)}to{opacity:.35;transform:translateY(0)}}@keyframes spriteTwinkle{0%{opacity:.62;transform:translateY(0)scale(.96)}50%{opacity:1;transform:translateY(-3px)scale(1.05)}to{opacity:.62;transform:translateY(0)scale(.96)}}@keyframes moonRock{0%{transform:translateY(0)rotate(-11deg)scale(1)}50%{transform:translateY(2px)rotate(-5deg)scale(1)}to{transform:translateY(0)rotate(-11deg)scale(1)}}@keyframes moonDropIn{0%{opacity:1;transform:translateY(-44vh)rotate(-9deg)scale(1)}70%{opacity:1;transform:translateY(8px)rotate(-8deg)scale(1)}86%{opacity:1;transform:translateY(-2px)rotate(-10deg)scale(1)}to{opacity:1;transform:translateY(0)rotate(-11deg)scale(1)}}@keyframes moonDropOut{0%{opacity:1;transform:translateY(0)rotate(-8deg)scale(1)}55%{opacity:.34}92%{opacity:0}to{opacity:0;transform:translateY(118vh)rotate(18deg)scale(1)}}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cloudPuff{0%{opacity:0;transform:translate(14px)scale(.7)}30%{opacity:.65}to{opacity:0;transform:translate(-34px)scale(1.18)}}@keyframes cloudDrift{0%{transform:translate(0)}50%{transform:translate(18px)}to{transform:translate(0)}}@keyframes radarSweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}@keyframes wiggle{0%{transform:rotate(0)scale(1)}30%{transform:rotate(-6deg)scale(1.03)}60%{transform:rotate(6deg)scale(1.04)}to{transform:rotate(0)scale(1)}}@media (max-width:960px){.flight-progress{display:none}.nav-inner{flex-wrap:wrap}.nav-links{flex-wrap:wrap;order:3;gap:12px;width:100%}.nav-actions{order:2;margin-left:auto}.hero{padding-top:120px}.about-grid,.experience-layout{grid-template-columns:1fr}.experience-notebook:before{left:30px}.project-flow-media--half .project-flow-media-grid{grid-template-columns:1fr}.project-detail-visual{height:300px}.project-detail-gallery,.subproject-grid,.picture-grid{grid-template-columns:1fr}.contact-console{grid-template-columns:minmax(170px,.65fr) minmax(260px,1fr)}.contact-links{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.project-media-box--side{grid-template-columns:1fr}.project-media-box--side.reverse .project-flow-side-image,.project-media-box--side.reverse .project-flow-side-caption{order:0}}@media (max-width:640px){.project-detail-inner{width:calc(100vw - 36px)}.plane-loop{width:180px;height:140px}.plane-image{width:180px;height:125px}.nav-actions{justify-content:flex-start;width:100%}.section{padding:90px 0}.hero-card{padding:22px}.hero-slogan{font-size:1.05rem}.project-grid{grid-template-columns:1fr}.experience-notebook{padding:16px}.experience-card{grid-template-columns:1fr;gap:12px;padding:18px}.experience-logo{width:58px}.education-school{grid-template-columns:1fr}.education-logo{width:62px}.education-chart div{grid-template-columns:1fr;gap:4px}.contact-console{grid-template-columns:1fr;gap:20px}.contact-radar{width:min(76vw,210px)}.contact-links{grid-template-columns:1fr}.contact-link{grid-template-columns:42px minmax(0,1fr) auto;min-height:76px;padding:13px}.contact-link-icon{width:42px;height:42px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.train{transform:translate(12vw,-50%);animation:none!important}.parachuter-fall{opacity:1;transform:translate(-1vw,28vh);animation:none!important}.parachuter{transform:rotate(-5deg);animation:none!important}.night-star,.side-star{animation:none!important}:root[data-theme=night] .banana-moon{transform:translateY(0)rotate(-8deg)scale(1);animation:none!important}:root[data-theme-transition=to-night] .banana-moon,:root[data-theme-transition=from-night] .banana-moon{animation:none!important}}:root{--paper:#fff9eb;--paper-2:#f7f0dc;--ink:#101010;--ink-soft:#42403a;--blue:#35b7ff;--green:#70e35d;--orange:#ff6422;--pink:#ffb8ca;--yellow:#ffe457;--sky-1:#c7efff;--sky-2:#fff9eb;--sky-3:#d8ffd5;--sky-4:#fff2c9;--glass:#fff9ebdb;--glass-strong:#fff9ebf5;--nav-glass:#fff9ebe0;--surface-soft:#ffffff8f;--surface-tint:#fff9ebc7;--surface-sheen:#ffffffe6;--surface-line:#10101021;--card-stroke:#101010f2;--shadow-soft:10px 12px 0 #101010;--shadow-tight:5px 6px 0 #101010;--radius-xl:18px;--radius-lg:14px;--radius-md:10px;--stars-opacity:.12;--bloom:#ffe45740}:root[data-theme=sunset]{--paper:#fff2d9;--paper-2:#ffe2b7;--ink:#170c11;--ink-soft:#55343a;--blue:#42ddff;--green:#b8ff65;--orange:#ff4d20;--pink:#ff9ccf;--yellow:#ffe05c;--sky-1:#ffd27a;--sky-2:#ff9b6b;--sky-3:#fd6b72;--sky-4:#74348a;--nav-glass:#fff2d9db;--glass:#fff2d9d1;--glass-strong:#fff2d9f0}:root[data-theme=night]{--paper:#16142a;--paper-2:#211d3d;--ink:#fff8e7;--ink-soft:#d5cfbd;--blue:#62d8ff;--green:#9bff74;--orange:#ff8a4b;--pink:#ff9cd8;--yellow:#fff06c;--sky-1:#14112e;--sky-2:#23194c;--sky-3:#1a295a;--sky-4:#111827;--nav-glass:#16142ad1;--glass:#16142ad1;--glass-strong:#1b1934f5;--card-stroke:#fff8e7eb;--shadow-soft:10px 12px 0 #fff8e7e6;--shadow-tight:5px 6px 0 #fff8e7e6}html{scroll-padding-top:calc(var(--nav-h) + 28px)}body{background:linear-gradient(90deg, #1010100b 1px, transparent 1px) 0 0 / 44px 44px, linear-gradient(#1010100a 1px, transparent 1px) 0 0 / 44px 44px, radial-gradient(circle at calc(50% + var(--mx) * 36%) 14%, #ffe45752, transparent 34%), linear-gradient(155deg, var(--sky-1), var(--sky-2) 42%, var(--sky-3) 76%, var(--sky-4));color:var(--ink)}body:before{color:var(--ink);filter:none;background-image:radial-gradient(circle,currentColor 1.2px,#0000 1.8px),radial-gradient(circle,currentColor 1px,#0000 1.6px);background-position:30px 24px,120px 80px;background-size:160px 120px,220px 180px}h1,h2,h3{letter-spacing:0}.section{isolation:isolate}.section-title{width:max-content;max-width:100%;color:var(--ink);letter-spacing:0;text-transform:lowercase;text-shadow:3px 3px 0 var(--blue), 6px 6px 0 var(--yellow);font-weight:900;position:relative}.section-title:after{content:"";z-index:-1;background:var(--green);border:2px solid var(--ink);height:16px;position:absolute;bottom:4px;left:6px;right:-12px;transform:rotate(-1deg)}.section-subtitle,.body-text{color:var(--ink-soft)}.nav{border:2px solid var(--ink);background:var(--nav-glass);width:min(1120px,100vw - 28px);box-shadow:4px 5px 0 var(--ink);border-radius:999px;margin:0 auto;top:12px}.nav-inner{width:auto;padding:10px 14px}.logo{letter-spacing:0;font-weight:900}.logo-mark{border:2px solid var(--ink);background:var(--orange);color:#101010;width:38px;height:38px;box-shadow:3px 3px 0 var(--blue);text-transform:uppercase;border-radius:50%;font-size:.82rem;font-weight:900}.logo-sub{color:var(--ink-soft);font-family:var(--font-body), ui-sans-serif, system-ui, sans-serif;text-transform:uppercase;letter-spacing:.12em;margin:0;font-weight:800;display:block}.nav-links{align-items:center;gap:8px;font-weight:800}.nav-links a{border:1px solid #0000;border-radius:999px;padding:7px 10px;transition:background .18s,border-color .18s,transform .18s}.nav-links a:hover{border-color:var(--ink);background:var(--yellow);transform:translateY(-1px)rotate(-1deg)}.nav-links a:after{display:none}.pill{border:2px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:3px 3px 0 var(--ink);align-items:center;gap:7px;font-weight:900;display:inline-flex}.pill span{background:var(--blue);color:#101010;text-transform:uppercase;border-radius:999px;padding:2px 6px;font-size:.68rem}.pill-primary{background:var(--green);color:#101010}.pill:hover{box-shadow:5px 6px 0 var(--ink);transform:translate(-1px,-2px)rotate(1deg)}.hero{min-height:calc(100vh - var(--nav-h));padding-top:clamp(120px,15vh,172px);padding-bottom:118px}.hero:before{content:"";z-index:-1;border:2px dashed var(--ink);position:absolute;inset:82px max(18px,4vw) 34px}@supports (color:color-mix(in lab, red, red)){.hero:before{border:2px dashed color-mix(in oklab, var(--ink) 55%, transparent)}}.hero:before{pointer-events:none;border-radius:28px}.hero-grid{place-items:center;min-height:58vh;display:grid;position:relative}.hero-text{max-width:980px;margin:0 auto;padding:clamp(16px,3vw,30px);position:relative}.hero-lab-badges{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:18px;display:flex;position:relative}.lab-sticker,.lab-doodle,.project-number,.project-card-cta,.about-badges span,.contact-ticker{border:2px solid var(--ink);box-shadow:3px 4px 0 var(--ink);color:#101010;border-radius:999px;font-weight:900}.lab-sticker{text-transform:uppercase;letter-spacing:.08em;padding:7px 12px;font-size:.76rem;animation:4.5s ease-in-out infinite stickerBob}.lab-sticker--blue{background:var(--blue);transform:rotate(-2deg)}.lab-sticker--orange{background:var(--orange);animation-delay:-1.2s}.lab-sticker--green{background:var(--green);animation-delay:-2.3s;transform:rotate(2deg)}.hero-kicker{border:2px solid var(--ink);background:var(--pink);color:#101010;letter-spacing:.16em;text-transform:uppercase;width:max-content;box-shadow:4px 4px 0 var(--ink);border-radius:999px;margin:0 auto;padding:8px 12px;font-size:.85rem;font-weight:900}.hero-text h1{color:var(--ink);text-transform:lowercase;text-shadow:3px 3px 0 var(--paper), 6px 6px 0 var(--blue), 10px 10px 0 var(--orange);transform-origin:50%;font-size:clamp(4.2rem,12vw,10.5rem);font-weight:900;line-height:.78}.hero-name:after{content:"";border:2px solid var(--ink);background:radial-gradient(circle at 12px 50%, var(--ink) 0 4px, transparent 5px) 0 0 / 34px 100%, var(--yellow);width:min(520px,70vw);height:18px;box-shadow:5px 6px 0 var(--ink);border-radius:999px;margin:16px auto 0;display:block;transform:rotate(-1.5deg)}.hero-meta{border:2px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:4px 5px 0 var(--ink);border-radius:14px;margin:8px auto 0;padding:10px 16px;font-weight:900;display:inline-block}.hero-slogan{color:var(--ink);font-weight:800}.button{border:2px solid var(--ink);background:var(--ink);color:var(--paper);box-shadow:4px 5px 0 var(--orange);border-radius:999px;font-weight:900}.button:hover{box-shadow:7px 8px 0 var(--orange);transform:translate(-2px,-3px)rotate(-1deg)}.button-ghost{background:var(--paper);color:var(--ink);box-shadow:4px 5px 0 var(--blue)}.hero-console{border:2px solid var(--ink);box-shadow:4px 5px 0 var(--ink);color:var(--ink);text-transform:uppercase;background:#fff9ebc7;border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:9px 12px;font-size:.78rem;font-weight:900;display:inline-flex}.console-switch{border:2px solid var(--ink);background:var(--green);border-radius:999px;width:52px;height:26px;position:relative}.console-switch:after{content:"";border:2px solid var(--ink);background:var(--paper);border-radius:50%;width:16px;height:16px;animation:2s ease-in-out infinite switchPulse;position:absolute;top:3px;right:3px}.lab-doodle{z-index:4;background:var(--paper);text-transform:uppercase;opacity:.94;padding:7px 11px;font-size:.72rem;animation:7s ease-in-out infinite doodleDrift;position:absolute}.lab-doodle--one{background:var(--yellow);top:24%;left:8%;transform:rotate(-7deg)}.lab-doodle--two{background:var(--pink);animation-delay:-2s;top:36%;right:8%;transform:rotate(4deg)}.lab-doodle--three{background:var(--green);animation-delay:-4s;bottom:13%;left:50%;transform:translate(-50%)rotate(2deg)}.sky-layer{opacity:.5;mix-blend-mode:multiply}.cloud{border:2px solid #1010101f;box-shadow:8px 9px #1010101a}.train,.parachuter,.plane-image{filter:drop-shadow(4px 5px #1010106b)}.plane-loop:hover .plane-image{animation:.7s planeCheer}.flight-line{border:2px solid var(--ink);background:var(--paper);width:5px}.flight-line:after{background:linear-gradient(180deg, var(--orange), var(--green), var(--blue))}.flight-plane{color:var(--orange);filter:drop-shadow(2px 2px 0 var(--ink))}.project-grid{gap:clamp(22px,3vw,34px)}.project-card{--spot-x:50%;--spot-y:50%;border:2px solid var(--ink);background:radial-gradient(circle at var(--spot-x) var(--spot-y), #ffe4576b, transparent 34%), linear-gradient(135deg, var(--paper), var(--blue));border-radius:20px;position:relative;overflow:visible}@supports (color:color-mix(in lab, red, red)){.project-card{background:radial-gradient(circle at var(--spot-x) var(--spot-y), #ffe4576b, transparent 34%), linear-gradient(135deg, var(--paper), color-mix(in oklab, var(--blue) 12%, var(--paper)))}}.project-card{box-shadow:var(--shadow-tight);transition:transform .18s,box-shadow .18s,background .18s}.project-card:before{content:"";z-index:-1;border:2px solid var(--ink);border-radius:inherit;background:var(--orange);transition:transform .18s;position:absolute;inset:10px -10px -10px 10px}.project-card:hover:before{transform:translate(3px,3px)rotate(1deg)}.project-number{z-index:3;background:var(--yellow);border-radius:999px;place-items:center;width:54px;height:36px;display:grid;position:absolute;top:-16px;right:18px}.project-visual{border:2px solid var(--ink);background:linear-gradient(90deg, #10101014 1px, transparent 1px) 0 0 / 22px 22px, linear-gradient(#10101014 1px, transparent 1px) 0 0 / 22px 22px, var(--paper-2);border-radius:16px;height:clamp(270px,32vw,420px);box-shadow:inset 0 0 0 8px #ffffff57}.project-visual img{transition:transform .42s cubic-bezier(.18,.86,.28,1),filter .42s;transform:scale(1.01)}.project-card:hover .project-visual img{filter:saturate(1.12)contrast(1.05);transform:scale(1.07)rotate(-.5deg)}.project-body h3,.subproject-body h3{color:var(--ink);text-transform:lowercase;font-weight:900}.project-tags span,.project-card-cta,.project-detail-tags span{border:2px solid var(--ink);background:var(--green);color:#101010;box-shadow:2px 3px 0 var(--ink);font-weight:900}.project-card-cta{background:var(--paper);justify-self:start;margin-top:16px;padding:8px 12px;display:inline-flex}.about-grid{align-items:center;position:relative}.about-copy{border:2px solid var(--ink);background:linear-gradient(90deg, #1010100d 1px, transparent 1px) 0 0 / 26px 26px, linear-gradient(#1010100b 1px, transparent 1px) 0 0 / 26px 26px, var(--glass-strong);box-shadow:var(--shadow-soft);border-radius:22px;padding:clamp(22px,4vw,34px);position:relative}.about-copy:after{content:"approved for weird little builds";border:2px solid var(--ink);background:var(--orange);color:#101010;box-shadow:3px 4px 0 var(--ink);text-transform:uppercase;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:900;position:absolute;bottom:-18px;right:20px;transform:rotate(-2deg)}.about-badges{flex-wrap:wrap;gap:9px;margin-bottom:4px;display:flex}.about-badges span{background:var(--yellow);text-transform:uppercase;padding:7px 10px;font-size:.74rem}.about-badges span:nth-child(3){background:var(--green)}.about-photo{border:2px solid var(--ink);background:var(--pink);box-shadow:var(--shadow-soft);border-radius:22px;overflow:visible;transform:rotate(2deg)}.about-photo:before{content:"";border:2px solid var(--ink);background:var(--paper);height:28px;box-shadow:3px 4px 0 var(--ink);border-radius:999px;position:absolute;inset:-14px 28px auto}.about-photo img{border:10px solid var(--paper);filter:saturate(1.1)contrast(1.03);border-radius:18px}.about-photo-label{z-index:3;border:2px solid var(--ink);background:var(--green);color:#101010;box-shadow:3px 4px 0 var(--ink);text-transform:uppercase;border-radius:999px;padding:8px 12px;font-size:.76rem;font-weight:900;position:absolute;top:26px;left:-18px;transform:rotate(-8deg)}.project-detail-inner{border:2px solid var(--ink);background:linear-gradient(90deg, #1010100b 1px, transparent 1px) 0 0 / 30px 30px, linear-gradient(#1010100a 1px, transparent 1px) 0 0 / 30px 30px, var(--glass-strong);box-shadow:var(--shadow-soft);border-radius:24px;padding:clamp(20px,4vw,38px);position:relative}.project-detail-title{color:var(--ink);text-shadow:3px 3px 0 var(--blue), 6px 6px 0 var(--yellow);font-weight:900}.project-flow-text{border-left:8px solid var(--orange);background:#ffffff6b;border-radius:0 16px 16px 0;padding:18px}.project-media-box,.subproject-card{border:2px solid var(--ink);background:linear-gradient(90deg, #10101011 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(#1010100e 1px, transparent 1px) 0 0 / 24px 24px, var(--paper-2);box-shadow:var(--shadow-tight);border-radius:18px}.project-flow-caption,.project-flow-side-caption{border:2px solid var(--ink);background:var(--yellow);color:#101010;box-shadow:3px 4px 0 var(--ink);border-radius:14px;font-weight:800}.project-flow-side-caption{align-self:center;padding:18px}.subproject-card{background:var(--glass-strong);position:relative}.subproject-card:hover{transform:translate(-2px,-4px)rotate(-.5deg)}.subproject-visual{border:2px solid var(--ink);background:var(--paper-2);border-radius:14px}.experience-notebook{border:2px solid var(--ink);background:linear-gradient(90deg, #1010100e 1px, transparent 1px) 0 0 / 30px 30px, linear-gradient(#1010100d 1px, transparent 1px) 0 0 / 30px 30px, var(--paper);box-shadow:var(--shadow-soft);border-radius:24px}.experience-card,.education-card{border:2px solid var(--ink);box-shadow:5px 6px 0 var(--ink)}.experience-card:hover{box-shadow:8px 9px 0 var(--ink);transform:translate(-2px,-3px)rotate(-.4deg)}.experience-logo,.education-logo{border:2px solid var(--ink)}.experience-meta span,.education-label{border:2px solid var(--ink);background:var(--yellow);color:#101010;box-shadow:2px 3px 0 var(--ink)}.contact-console{border:2px solid var(--ink);background:radial-gradient(circle at 76% 20%, #ffe4576b, transparent 28%), linear-gradient(90deg, #1010100e 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(#1010100d 1px, transparent 1px) 0 0 / 28px 28px, var(--glass-strong);box-shadow:var(--shadow-soft);border-radius:24px;padding-top:clamp(42px,5vw,54px)}.contact-ticker{background:var(--ink);color:var(--paper);box-shadow:none;white-space:nowrap;text-transform:uppercase;border-radius:999px;padding:6px 12px;animation:2.8s ease-in-out infinite tickerPulse;position:absolute;top:16px;left:24px;right:24px;overflow:hidden}.contact-radar,.contact-link{border:2px solid var(--ink);box-shadow:4px 5px 0 var(--ink)}.contact-radar-sweep{mix-blend-mode:normal}.contact-label{border:2px solid var(--ink);background:var(--blue);color:#101010;box-shadow:2px 3px 0 var(--ink);font-weight:900}.contact-copy h3{font-weight:900}.contact-link{background:var(--paper)}.contact-link:hover{box-shadow:7px 8px 0 var(--ink);transform:translate(-2px,-3px)}.contact-link-icon{border:2px solid var(--ink);background:var(--orange);color:#101010}.footer{color:var(--ink)}.footer-inner{border-top:2px dashed var(--ink);padding-top:20px;font-weight:800}@keyframes stickerBob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-5px)rotate(1deg)}}@keyframes switchPulse{0%,to{transform:translate(0)}50%{transform:translate(-5px)}}@keyframes doodleDrift{0%,to{translate:0}50%{translate:0 -10px}}@keyframes planeCheer{0%,to{transform:rotate(0)scale(1)}45%{transform:rotate(-5deg)scale(1.06)}}@keyframes tickerPulse{0%,to{opacity:.88}50%{opacity:1}}@media (max-width:960px){.nav{border-radius:24px}.nav-inner{padding:12px}.hero:before{inset:78px 14px 30px}.lab-doodle{display:none}}@media (max-width:640px){.nav{width:calc(100vw - 18px);top:8px}.nav-links{gap:6px;font-size:.84rem}.nav-links a{padding:6px 8px}.pill{padding:7px 10px}.hero{padding-top:104px}.hero-text{padding-inline:0}.hero-text h1{text-shadow:2px 2px 0 var(--paper), 4px 4px 0 var(--blue), 7px 7px 0 var(--orange);font-size:clamp(3.65rem,21vw,6.2rem)}.hero-meta,.hero-console{max-width:100%}.hero-console{flex-wrap:wrap;justify-content:center;display:flex}.project-card,.about-copy,.project-detail-inner,.contact-console,.experience-notebook{box-shadow:5px 6px 0 var(--ink)}.about-copy:after{margin-top:8px;display:inline-block;position:static}.about-photo{transform:rotate(0)}.project-number{right:12px}.contact-ticker{font-size:.68rem;left:14px;right:14px}}@media (prefers-reduced-motion:reduce){.lab-sticker,.lab-doodle,.console-switch:after,.contact-ticker,.plane-loop,.plane-loop:hover .plane-image,.cloud,.contact-radar-sweep,.banana-moon,.night-star,.side-star{animation:none!important}:root[data-theme=night] .banana-moon{transform:translateY(0)rotate(-8deg)scale(1)}:root[data-theme-transition=to-night] .banana-moon,:root[data-theme-transition=from-night] .banana-moon{animation:none!important}.project-card,.project-visual img,.contact-link,.experience-card,.button,.pill,.nav-links a{transition:none!important}}:root{--paper:#fffaf0;--paper-2:#f7f2e6;--ink:#171615;--ink-soft:#5b5750;--blue:#a9d8f5;--green:#bfe9bf;--orange:#f5c7a5;--pink:#f3c9d8;--yellow:#f6e7a8;--sky-1:#d9f1fb;--sky-2:#fffaf0;--sky-3:#e8f7df;--sky-4:#fbefd4;--glass:#fffaf0d1;--glass-strong:#fffaf0f0;--nav-glass:#fffaf0e6;--shadow-soft:7px 8px 0 #171615e6;--shadow-tight:4px 5px 0 #171615e6;--bloom:#f6e7a82e}:root[data-theme=sunset]{--paper:#fff4e7;--paper-2:#f8e4d2;--blue:#bdddeb;--green:#d7e7b8;--orange:#efb99b;--pink:#eec3d3;--yellow:#f3dda2;--sky-1:#f5d4ae;--sky-2:#f5c7b3;--sky-3:#e9bdcc;--sky-4:#d8c8ed;--glass:#fff4e7d6;--glass-strong:#fff4e7f0;--nav-glass:#fff4e7e6}:root[data-theme=night]{--paper:#242238;--paper-2:#302d45;--ink:#fff7e7;--ink-soft:#d8d0bf;--blue:#9fcbe7;--green:#b9d9a8;--orange:#e6b18d;--pink:#e3b1c6;--yellow:#eadb98;--sky-1:#1b1a35;--sky-2:#272344;--sky-3:#293b59;--sky-4:#1b2130;--glass:#242238d6;--glass-strong:#28253df2;--nav-glass:#242238e0}.section-title:after{background:#bfe9bfb8;height:10px;bottom:6px;right:-6px}.logo-mark{background:var(--pink);box-shadow:2px 2px 0 var(--blue)}.nav-links a:hover{background:#f6e7a8b3;transform:translateY(-1px)}.pill-primary{background:var(--green)}.pill,.button,.button-ghost,.hero-kicker,.hero-meta,.about-badges span,.about-photo-label,.about-copy:after,.project-detail-inner:before,.experience-notebook:after,.experience-meta span,.education-label,.project-tags span,.project-detail-tags span{box-shadow:2px 3px #171615db}.hero:before{border-color:#1716152e}.hero-lab-badges,.lab-doodle,.hero-console,.contact-ticker,.contact-label,.project-card-cta,.project-number{display:none!important}.hero-kicker{background:#f3c9d8d1}.hero-text h1{text-shadow:2px 2px 0 var(--paper), 4px 4px 0 #a9d8f5c2, 7px 7px 0 #f5c7a5b8}.hero-name:after{background:radial-gradient(circle at 10px,#171615a6 0 3px,#0000 4px) 0 0/32px 100%,#f6e7a8d1;height:12px;box-shadow:3px 4px #171615e0}.button{box-shadow:3px 4px #f5c7a5f2}.button-ghost{box-shadow:3px 4px #a9d8f5f2}.cloud{opacity:.62;box-shadow:4px 5px #1716150e}.cloud-drop.cloud-c{opacity:.55}.project-card{background:radial-gradient(circle at var(--spot-x) var(--spot-y), #f6e7a842, transparent 38%), var(--glass-strong);box-shadow:var(--shadow-tight);border-color:#171615d1;overflow:hidden}.project-card:before,.project-card:hover:before{content:none;display:none}.project-card:hover{box-shadow:var(--shadow-soft)}.project-visual{background:linear-gradient(90deg, #17161509 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(#17161508 1px, transparent 1px) 0 0 / 28px 28px, var(--paper-2);border-color:#171615b8;box-shadow:inset 0 0 0 8px #ffffff3d}.project-tags span,.project-detail-tags span{background:#bfe9bfb3}.project-tags span:nth-child(2n),.project-detail-tags span:nth-child(2n){background:#a9d8f5ad}.project-tags span:nth-child(3n),.project-detail-tags span:nth-child(3n){background:#f6e7a8bf}.about-copy:after{background:#f5c7a5e0}.about-badges span{background:#f6e7a8b8}.about-badges span:nth-child(2){background:#a9d8f5ad}.about-badges span:nth-child(3),.about-photo-label{background:#bfe9bfb8}.about-photo{background:#f3c9d8b8}.project-detail-inner:before{background:#f5c7a5c7}.project-detail-title{text-shadow:2px 2px #a9d8f5b8}.project-flow-text{border-left-color:#f5c7a5db}.project-flow-caption,.project-flow-side-caption{background:#f6e7a8c7}.experience-notebook:after{background:#f3c9d8cc}.experience-meta span,.education-label{background:#f6e7a8c2}.contact-console{background:radial-gradient(circle at 76% 20%, #f6e7a838, transparent 30%), linear-gradient(90deg, #17161509 1px, transparent 1px) 0 0 / 34px 34px, linear-gradient(#17161508 1px, transparent 1px) 0 0 / 34px 34px, var(--glass-strong);padding-top:clamp(22px,4vw,36px)}.contact-radar{background:repeating-radial-gradient(circle,#0000 0 28px,#17161529 29px 31px),linear-gradient(90deg,#0000 calc(50% - 1px),#17161524 50%,#0000 calc(50% + 1px)),linear-gradient(0deg,#0000 calc(50% - 1px),#17161524 50%,#0000 calc(50% + 1px)),#bfe9bfad}.contact-link-primary{background:#f6e7a8c2}.contact-link-icon{background:#f5c7a5d6}@media (max-width:640px){.hero-text h1{text-shadow:2px 2px 0 var(--paper), 4px 4px 0 #a9d8f5c2, 6px 6px 0 #f5c7a5b8}}:root{--paper:#edf1ff;--paper-2:#e4eafa;--blue:#a9e8ff;--green:#d4c0ff;--orange:#f3c6ab;--pink:#e2bbff;--yellow:#f3e3a4;--sky-1:#b8edff;--sky-2:#c9dcff;--sky-3:#d8bdff;--sky-4:#edcaff;--glass:#edf1ffc2;--glass-strong:#edf1ffe6;--nav-glass:#edf1ffdb}:root[data-theme=sunset]{--paper:#f2e9ff;--paper-2:#eadcf7;--sky-1:#c8d7ff;--sky-2:#d9c4f1;--sky-3:#f0c8d8;--sky-4:#c8eadc;--glass:#f2e9ffc7;--glass-strong:#f2e9ffeb;--nav-glass:#f2e9ffe0}body{background:radial-gradient(circle at 84% 22%, #e2bbffa8, transparent 34%), radial-gradient(circle at 68% 58%, #cfb5ff75, transparent 42%), radial-gradient(circle at 12% 68%, #a7e8ff7a, transparent 38%), linear-gradient(110deg, var(--sky-1) 0%, var(--sky-2) 34%, var(--sky-3) 66%, var(--sky-4) 100%)}body:before{opacity:0}.section-title{text-shadow:1.5px 1.5px #b8dff5ad}.section-title:after{opacity:.7;border:0}.hero{min-height:calc(100vh - var(--nav-h))}.hero:before{display:none}.hero-text{padding-top:0}.hero-kicker{box-shadow:none;color:#2a374ed1;letter-spacing:.18em;text-transform:lowercase;background:0 0;border:0;border-radius:0;padding:0;font-size:clamp(1rem,2vw,1.2rem);font-weight:500}.hero-text h1{color:#15253f;text-shadow:none;font-size:clamp(5.55rem,11.7vw,9.55rem);font-weight:500;line-height:.92}.hero-name:after{display:none}.hero-meta{box-shadow:none;color:#2a374ed6;background:0 0;border:0;border-radius:0;margin-top:7px;padding:0;font-size:clamp(1.1rem,2.2vw,1.34rem);font-weight:500}.hero-slogan{color:#2a374ee0;max-width:760px;font-weight:700}.button{box-shadow:none;color:#fffaf0;background:#15253f;border-color:#15253feb}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #15253f29}.button-ghost{color:#15253f;background:#edf1ff47;border-color:#15253f29}.cloud-drop.cloud-b{top:35%;left:78%}.cloud-drop.cloud-b .cloud{opacity:.72;width:260px}.cloud{background:linear-gradient(140deg,#ffffffeb,#e0ecff8f);border:0;box-shadow:0 24px 56px #41597c1f}.sky-layer{opacity:.68}.layer-two{background:radial-gradient(circle at 62% 30%,#b5e1ff7a,#0000 58%),radial-gradient(circle at 86% 58%,#ddb8ff8f,#0000 46%)}.layer-three{background:radial-gradient(circle at 24% 78%,#aee7ff80,#0000 62%),radial-gradient(circle at 66% 86%,#d5bdff7a,#0000 42%)}.project-card,.about-copy,.project-detail-inner,.contact-console,.experience-notebook{background:radial-gradient(circle at 85% 8%,#efcce424,#0000 28%),#edf1ffb8}.project-visual,.project-media-box,.subproject-visual{background:#e4eafabd}:root[data-theme=sunset]{--paper:#fff0df;--paper-2:#f7ddcb;--blue:#ffd07a;--green:#8bd8c0;--orange:#ff986f;--pink:#ffb0c8;--yellow:#ffe191;--sky-1:#ffd28a;--sky-2:#ff9a78;--sky-3:#d76ba0;--sky-4:#6650b7;--glass:#ffefdbc7;--glass-strong:#ffefdbeb;--nav-glass:#ffe7d6e0;--card-stroke:#7437783d;--layer-two:#ff786257;--layer-three:#69d5bc38;--orb-y:74%;--orb-opacity:1;--orb-inner:#ffe297f5;--orb-outer:#ff715247}:root[data-theme=night]{--paper:#211b3c;--paper-2:#302650;--blue:#b4a7ff;--green:#b9e1d5;--orange:#f0b48c;--pink:#e1b6ff;--yellow:#f2da86;--sky-1:#17102f;--sky-2:#26184f;--sky-3:#38256c;--sky-4:#10091f;--glass:#221b3ec7;--glass-strong:#241d42eb;--nav-glass:#191230e0;--card-stroke:#cfb9ff3d;--layer-two:#9676ff3d;--layer-three:#e1b6ff2e;--orb-opacity:0}:root[data-theme=sunset] body{background:radial-gradient(circle at 84% 24%, #ffda898a, transparent 26%), radial-gradient(circle at 18% 76%, #8bd8c03d, transparent 34%), radial-gradient(circle at 48% 10%, #ffb0c857, transparent 31%), linear-gradient(150deg, var(--sky-1), var(--sky-2) 38%, var(--sky-3) 68%, var(--sky-4))}:root[data-theme=night] body{background:radial-gradient(circle at 82% 18%, #b2cdff33, transparent 25%), radial-gradient(circle at 16% 78%, #5a83da24, transparent 34%), radial-gradient(circle at 46% 8%, #be91ff3d, transparent 30%), linear-gradient(150deg, var(--sky-1), var(--sky-2) 40%, var(--sky-3) 72%, var(--sky-4))}:root[data-theme=sunset] .hero-kicker,:root[data-theme=sunset] .hero-meta,:root[data-theme=sunset] .hero-slogan{color:#4f2637db}:root[data-theme=sunset] .hero-text h1{color:#3b1730}:root[data-theme=sunset] .button{color:#fff0df;background:#3b1730;border-color:#3b1730e6}:root[data-theme=sunset] .button-ghost{color:#3b1730;background:#fff0df57;border-color:#3b173038}:root[data-theme=sunset] .section-title{text-shadow:1.5px 1.5px #ff986f6b}:root[data-theme=sunset] .layer-two{background:radial-gradient(circle at 70% 30%,#ff7e5e7a,#0000 58%),radial-gradient(circle at 84% 64%,#ffb0c857,#0000 42%)}:root[data-theme=sunset] .layer-three{background:radial-gradient(circle at 35% 82%,#8bd8c052,#0000 60%),radial-gradient(circle at 58% 88%,#ffe19152,#0000 38%)}:root[data-theme=night] .hero-kicker,:root[data-theme=night] .hero-meta,:root[data-theme=night] .hero-slogan{color:#e5edffd6}:root[data-theme=night] .hero-text h1{color:#f4edff}:root[data-theme=night] .button{color:#10172f;background:#f4edff;border-color:#f4edffe6}:root[data-theme=night] .button-ghost{color:#f4edff;background:#9fc7ff29;border-color:#e5edff38}:root[data-theme=night] .section-title{text-shadow:1.5px 1.5px #9fc7ff3d}:root[data-theme=night] .layer-two{background:radial-gradient(circle at 70% 30%,#9676ff52,#0000 58%),radial-gradient(circle at 84% 64%,#e1b6ff38,#0000 42%)}:root[data-theme=night] .layer-three{background:radial-gradient(circle at 35% 82%,#a989ff33,#0000 60%),radial-gradient(circle at 58% 88%,#f2da861a,#0000 38%)}:root[data-theme=night] .project-card,:root[data-theme=night] .about-copy,:root[data-theme=night] .project-detail-inner,:root[data-theme=night] .contact-console,:root[data-theme=night] .experience-notebook,:root[data-theme=night] .subproject-card{color:#f4edff;background:radial-gradient(circle at 85% 8%,#e1b6ff24,#0000 30%),linear-gradient(145deg,#302650f0,#1a1432eb);border-color:#e5d2ff42}:root[data-theme=night] .project-card{box-shadow:0 18px 44px #04081447}:root[data-theme=night] .project-card:hover{box-shadow:0 24px 58px #0408145c}:root[data-theme=night] .project-card h3,:root[data-theme=night] .project-body h3,:root[data-theme=night] .project-detail-title,:root[data-theme=night] .contact-copy h3,:root[data-theme=night] .experience-role,:root[data-theme=night] .education-title{color:#fff8e7}:root[data-theme=night] .project-card p,:root[data-theme=night] .project-body p,:root[data-theme=night] .project-detail-summary,:root[data-theme=night] .project-flow-text,:root[data-theme=night] .body-text,:root[data-theme=night] .experience-location,:root[data-theme=night] .experience-description,:root[data-theme=night] .education-skills{color:#e5edffd1}:root[data-theme=night] .project-visual,:root[data-theme=night] .project-media-box,:root[data-theme=night] .subproject-visual{background:linear-gradient(90deg,#e5edff0b 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#e5edff0a 1px,#0000 1px) 0 0/28px 28px,#221a3edb;border-color:#e5d2ff38;box-shadow:inset 0 0 0 8px #ffffff09}:root[data-theme=night] .project-tags span,:root[data-theme=night] .project-detail-tags span,:root[data-theme=night] .experience-meta span,:root[data-theme=night] .education-label{color:#f4edff;box-shadow:none;background:#9fc7ff2e;border-color:#e5edff3d}:root[data-theme=night] .project-tags span:nth-child(2n),:root[data-theme=night] .project-detail-tags span:nth-child(2n){background:#b9e1d529}:root[data-theme=night] .project-tags span:nth-child(3n),:root[data-theme=night] .project-detail-tags span:nth-child(3n){background:#d8b4ff29}:root[data-theme=night] .contact-link{color:#f4edff;background:#f4edff14;border-color:#e5edff33}:root[data-theme=night] .contact-link-primary{background:#9fc7ff33}:root[data-theme=night] .contact-link-value,:root[data-theme=night] .primary-link-subtext{color:#e5edffb8}@media (max-width:640px){.hero-text h1{text-shadow:none;font-size:clamp(4.45rem,21vw,6.7rem)}.hero-kicker{font-size:1rem}}.nav-toggle{color:#15253f;background:#edf1ffb8;border:2px solid #15253f33;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:52px;height:52px;padding:0;transition:transform .18s,background .18s,border-color .18s;display:none}.nav-toggle span{background:currentColor;border-radius:999px;width:18px;height:2px;transition:transform .18s,opacity .18s}.nav-toggle:hover{background:#f2e9fff0;border-color:#15253f52;transform:translateY(-1px)}.logo{margin-right:auto}.nav-links{flex:auto;order:2;justify-content:center;transform:translate(18px)}.nav-actions{order:3;margin-left:18px}@media (max-width:640px){.nav{border-radius:34px}.nav-inner{align-items:flex-start;gap:10px 12px}.logo{flex:auto;gap:8px;min-width:0}.logo>span:last-child{min-width:0;line-height:1}.logo-sub{letter-spacing:.16em;white-space:nowrap;font-size:.52rem}.nav-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;width:auto;margin-left:0}.nav-actions .pill{white-space:nowrap;min-height:48px;padding:8px 10px;font-size:.86rem}.nav-actions .pill span{padding-inline:8px}.nav-toggle{flex:none;display:inline-flex}.nav-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-links{flex:initial;flex-direction:column;order:3;justify-content:flex-start;align-items:stretch;gap:8px;width:100%;padding-top:8px;display:none;transform:none}.nav-links.is-open{display:flex}.nav-links a{text-align:left;background:#ffffff75;border:2px solid #15253f1f;border-radius:18px;width:100%;padding:12px 14px}.banana-moon{width:86px;top:78px;right:12px}.night-star.star-a{top:12%;left:7%}.night-star.star-b{top:8%;left:31%}.night-star.star-c,.night-star.star-g,.night-star.star-i,.night-star.star-j{display:none}.night-star.star-d{top:16%;right:34%}.night-star.star-e{top:25%;right:16%}.night-star.star-f{top:10%;right:7%}.hero-text{z-index:5}.hero-meta{white-space:nowrap;font-size:1.04rem;display:block}.cloud-drop.cloud-a,.cloud-drop.cloud-b,.cloud-drop.cloud-c,.hero-landing-clouds{opacity:.16}.cloud-drop.cloud-a{top:7%;left:-16%}.cloud-drop.cloud-b{top:58%;left:82%}.cloud-drop.cloud-c,.hero-landing-clouds{display:none}.page:not([data-intro]){padding-top:calc(var(--nav-h) + 8px)}.nav{z-index:70;border-radius:24px;width:auto;margin-inline:0;position:fixed;top:8px;left:9px;right:9px;overflow:visible}.nav-inner{flex-wrap:nowrap;align-items:center;min-height:64px;padding:8px 10px;position:relative}.logo,.nav-actions{z-index:68;position:relative}.logo{flex:auto;font-size:.98rem}.logo>span:last-child{gap:5px;line-height:1;display:grid}.logo-sub{letter-spacing:.12em;margin-left:0;font-size:.58rem;display:block}.nav-actions{justify-content:flex-end;gap:6px;width:auto;margin-left:8px}.nav-actions .pill{place-items:center;min-width:74px;min-height:42px;padding:7px 10px;font-size:.78rem;line-height:1;display:inline-grid}.nav-actions .pill span{display:none}.nav-actions .pill-primary{min-width:58px}.nav-toggle{border-radius:15px;width:44px;height:44px}.nav-links{z-index:-1;width:100%;height:100dvh;max-height:100dvh;padding:calc(var(--nav-h) + 34px) 24px 30px;background:linear-gradient(145deg, var(--paper), var(--surface-tint)), var(--nav-glass);border-top-left-radius:28px;border-top-right-radius:28px;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.nav-links{background:linear-gradient(145deg, color-mix(in oklab, var(--paper) 92%, transparent), color-mix(in oklab, var(--surface-tint) 88%, transparent)), var(--nav-glass)}}.nav-links{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);overscroll-behavior:contain;opacity:0;pointer-events:none;transition:transform .36s cubic-bezier(.22,1,.36,1),opacity .22s;overflow-y:auto;transform:translate(100%)}.nav-links.is-open{opacity:1;pointer-events:auto;transform:translate(0)}.nav-links a{width:min(100%,360px);color:var(--ink);font-size:clamp(2rem,13vw,4.3rem);font-family:var(--font-display), var(--font-body), ui-sans-serif, system-ui, sans-serif;text-align:left;opacity:0;background:0 0;border:0;border-radius:0;padding:14px 4px;line-height:.95;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .26s;transform:translate(-26px)}.nav-links.is-open a{opacity:1;transform:translate(0)}.nav-links.is-open a:first-child{transition-delay:90ms}.nav-links.is-open a:nth-child(2){transition-delay:.135s}.nav-links.is-open a:nth-child(3){transition-delay:.18s}.nav-links.is-open a:nth-child(4){transition-delay:.225s}.nav-links.is-open a:nth-child(5){transition-delay:.27s}.hero{padding-top:118px}.hero-grid{padding-top:42px}.hero-meta{white-space:normal;text-wrap:balance;width:min(100%,330px);margin-inline:auto;font-size:clamp(.88rem,4.2vw,1.02rem);line-height:1.35}.education-card{padding:18px}.education-school{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:12px}.education-logo{width:54px}.education-school p,.education-chart strong{overflow-wrap:anywhere;word-break:normal}}
