@font-face{font-family:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.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:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.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:Fraunces;font-style:italic;font-weight:300;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.0xr8au8udm.h9.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b887d91685b8c137-s.0z~ry.rim0raw.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.0duriy8536ewt.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:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:300;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_1e9ece7d-module__Adzo7q__className{font-family:Fraunces,Fraunces Fallback}.fraunces_1e9ece7d-module__Adzo7q__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@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 Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_e139b395-module__0ZMDHG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_e139b395-module__0ZMDHG__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:300;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_431c7218-module__BlQiVW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_431c7218-module__BlQiVW__variable{--font-jetbrains-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--paper:#0c0a08;--paper-2:#15110d;--paper-3:#1c1814;--ink:#f0e9d8;--ink-soft:#c8bfac;--ink-mute:#807767;--rule:#f0e9d81a;--rule-strong:#f0e9d82e;--accent:#c4553a;--accent-soft:#e3835f;--gold:#c8a96a;--night:#0a0908;--night-2:#131210;--bone:#e8e2d5;--bone-soft:#a8a094;--bone-mute:#6e675c;--term-green:#8ab86a;--term-amber:#d8a86a;--term-rule:#ffffff14;--serif:var(--font-fraunces), "Fraunces", "Times New Roman", serif;--sans:var(--font-inter), "Inter", system-ui, sans-serif;--mono:var(--font-jetbrains-mono), "JetBrains Mono", ui-monospace, monospace;--display:"tiffin-latin-variable", sans-serif}.phero-title,.thero-title{font-variation-settings:"wght" 700}.section .head h2,.section .about-layout h2,.gallery-section .head h2,.about-short,.foot h3,.services .item h4,.lb-title,body[data-mode=tech] .project h3,body[data-mode=tech] .cert h4{font-variation-settings:"wght" 500}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);background-color:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background-color .7s cubic-bezier(.7,0,.2,1),color .7s cubic-bezier(.7,0,.2,1);overflow-x:clip}body[data-mode=photo]{background-image:radial-gradient(90% 60% at 80% 0,#c4553a12 0%,#0000 55%),radial-gradient(70% 50% at 0 100%,#c8a96a0a 0%,#0000 60%);background-attachment:fixed}body[data-mode=tech]{background-color:var(--night);color:var(--bone)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}:focus{outline:none}body[data-mode=photo] :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}body[data-mode=tech] :focus-visible{outline:2px solid var(--term-amber);outline-offset:3px;border-radius:2px}.world{min-height:100vh}.curtain{pointer-events:none;z-index:200;background:var(--night);position:fixed;inset:0;transform:translateY(100%)}.curtain.up{animation:.9s cubic-bezier(.85,0,.15,1) forwards curtainUp}.curtain.down{background:var(--paper);background-image:radial-gradient(60% 40%,#c4553a1f 0%,#0000 60%);animation:.9s cubic-bezier(.85,0,.15,1) forwards curtainDown}@keyframes curtainUp{0%{transform:translateY(100%)}50%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes curtainDown{0%{transform:translateY(-100%)}50%{transform:translateY(0)}to{transform:translateY(100%)}}.chrome{z-index:100;pointer-events:none;color:#f5efe2;justify-content:space-between;align-items:center;padding:22px 36px;transition:color .7s;display:flex;position:fixed;top:0;left:0;right:0}.chrome:before{content:"";pointer-events:none;z-index:-1;-webkit-backdrop-filter:blur(14px)saturate(1.05);backdrop-filter:blur(14px)saturate(1.05);background:#060504e0;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 70%,#0000 100%);mask-image:linear-gradient(#000 0% 70%,#0000 100%)}body[data-mode=tech] .chrome{color:var(--bone)}body[data-mode=tech] .chrome:before{background:#080706e0}.chrome>*{pointer-events:auto}.brand{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:10px;font-size:12px;font-weight:500;display:flex}.brand .dot{background:var(--accent);border-radius:999px;width:6px;height:6px}body[data-mode=tech] .brand .dot{background:var(--term-green);animation:2s ease-in-out infinite blinkdot}@keyframes blinkdot{0%,55%,to{opacity:1}60%,95%{opacity:.3}}.brand .meta{letter-spacing:.18em;opacity:.55;margin-left:4px;font-size:11px}.toggle{-webkit-backdrop-filter:blur(8px);font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;background:#ffffff0f;border:1px solid;border-radius:999px;align-items:center;gap:0;padding:3px;font-size:12px;font-weight:500;display:inline-flex;position:relative}body[data-mode=photo] .toggle{color:#f5efe2;background:#0806058c;border-color:#f5efe2b3}body[data-mode=tech] .toggle{color:var(--bone);background:#e8e2d50f;border-color:#e8e2d58c}.toggle button{z-index:2;white-space:nowrap;color:inherit;opacity:.62;border-radius:999px;padding:9px 18px;transition:color .4s,opacity .32s,transform .24s cubic-bezier(.7,0,.2,1);position:relative}.toggle button:hover{opacity:.95}.toggle button:active{transform:scale(.96)}.toggle button.active{opacity:1}.toggle button:focus-visible{outline-offset:4px}body[data-mode=photo] .toggle button{color:#f5efe2}body[data-mode=tech] .toggle button{color:var(--bone)}.toggle .pill{z-index:1;background:currentColor;border-radius:999px;transition:left .5s cubic-bezier(.7,0,.2,1),width .5s cubic-bezier(.7,0,.2,1);position:absolute;top:3px;bottom:3px}body[data-mode=photo] .toggle button.active{color:#0a0908}body[data-mode=tech] .toggle button.active{color:var(--night)}body[data-mode=photo] .toggle .pill{background:#f5efe2}body[data-mode=tech] .toggle .pill{background:var(--bone)}.phero{color:#f5efe2;isolation:isolate;align-items:flex-end;min-height:100vh;padding:120px 56px 56px;display:flex;position:relative;overflow:hidden}.phero-bg{z-index:-1;background:var(--night);position:absolute;inset:0;overflow:hidden}.phero-slide{opacity:0;will-change:opacity, transform;pointer-events:none;transition:opacity 1.4s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.phero-slide.active{opacity:1;animation:7s ease-out forwards heroZoomOut}.phero-bg img{object-fit:cover;object-position:center;filter:contrast(1.06)saturate(.92)}@keyframes heroZoomOut{0%{transform:scale(1.14)translate(0,0)}to{transform:scale(1)translate(0,0)}}.phero-vignette{background:radial-gradient(80% 60% at 70% 30%,#d4a8781a 0%,#0000 55%),linear-gradient(#08060573 0%,#08060500 28% 50%,#080605f2 100%),linear-gradient(90deg,#0806058c 0%,#08060500 55%);position:absolute;inset:0}.phero-grain{mix-blend-mode:overlay;opacity:.35;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.95  0 0 0 0 0.85  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/></svg>");position:absolute;inset:0}.phero-frame{pointer-events:none;text-shadow:0 1px 12px #00000080;z-index:1;justify-content:flex-end;align-items:flex-end;display:flex;position:absolute;bottom:22px;left:28px;right:28px}.phero-caption-wrap{will-change:opacity;transition:opacity .42s cubic-bezier(.4,0,.2,1)}.phero-caption{text-align:right;flex-direction:column;align-items:flex-end;gap:16px;max-width:min(280px,42vw);margin:0;display:flex}.phero-caption-item{flex-direction:column;flex:none;align-items:flex-end;gap:6px;min-width:0;max-width:100%;display:flex}.phero-caption dt{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#f5efe285;margin:0;font-size:11px}.phero-caption dd{font-family:var(--sans);letter-spacing:.01em;text-transform:none;color:#f5efe2f0;margin:0;font-size:14px;font-weight:450;line-height:1.45}.phero-inner{z-index:2;width:100%;max-width:1280px;position:relative}.phero-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#f5efe2d9;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:36px;font-size:12px;display:flex}.phero-eyebrow .ebw-bar{background:var(--accent);width:36px;height:1px;display:inline-block}.phero-eyebrow .ebw-sep{opacity:.35}.phero-eyebrow .ebw-status{color:#f5efe299;align-items:center;gap:8px;display:inline-flex}.phero-eyebrow .ebw-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 0 var(--accent);border-radius:999px;animation:2s ease-in-out infinite ebwPulse}@keyframes ebwPulse{0%,to{box-shadow:0 0 #b54a2a73}50%{box-shadow:0 0 0 8px #b54a2a00}}.phero-title{font-family:var(--display);letter-spacing:-.035em;color:#f5efe2;flex-direction:column;margin:0;font-size:clamp(82px,13vw,200px);font-weight:700;line-height:.86;display:flex}.phero-title .line{margin:-.22em -.05em;padding:.22em .05em;display:block;overflow:hidden}.phero-title .line:first-child{animation:.9s cubic-bezier(.7,0,.2,1) .1s both pheroLineUp}.phero-title .line:nth-child(2){padding-left:clamp(40px,8vw,140px);animation:.9s cubic-bezier(.7,0,.2,1) .24s both pheroLineUp}@keyframes pheroLineUp{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translateY(0)}}.phero-title em{color:var(--accent);font-style:italic;font-weight:700}.phero-grid{border-top:1px solid #f5efe22e;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:56px;margin-top:44px;padding-top:24px;display:grid}.phero-lede{font-family:var(--sans);color:#f5efe2f0;text-wrap:pretty;text-shadow:0 1px 12px #0000008c;max-width:56ch;margin:0;font-size:clamp(18px,1.25vw,21px);font-weight:300;line-height:1.55}.phero-lede .ul{border-bottom:1px solid var(--accent);padding-bottom:1px}.phero-data{grid-template-columns:1fr 1fr;align-self:start;gap:18px 32px;margin:0;display:grid}.phero-data>div{border-left:1px solid #f5efe238;gap:6px;padding-left:14px;display:grid}.phero-data dt{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#f5efe29e;text-shadow:0 1px 8px #00000073;margin:0;font-size:11px}.phero-data dd{font-family:var(--sans);letter-spacing:.01em;color:#f5efe2f5;text-shadow:0 1px 10px #0000008c;margin:0;font-size:15px}.phero-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:56px;display:flex}.phero-cta{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#f5efe2;-webkit-backdrop-filter:blur(6px);background:#f5efe20a;border:1px solid #f5efe280;border-radius:999px;align-items:center;gap:14px;padding:16px 22px 16px 24px;font-size:12px;transition:color .32s,border-color .32s;display:inline-flex;position:relative;overflow:hidden}.phero-cta:before{content:"";background:var(--accent);z-index:0;transition:transform .42s cubic-bezier(.7,0,.2,1);position:absolute;inset:0;transform:translateY(101%)}.phero-cta:hover:before{transform:translateY(0)}.phero-cta:hover{color:#fff;border-color:var(--accent)}.phero-cta .cta-label,.phero-cta .cta-arrow{z-index:1;position:relative}.phero-cta .cta-arrow{transition:transform .32s cubic-bezier(.7,0,.2,1);display:inline-block}.phero-cta:hover .cta-arrow{transform:translate(3px,-3px)}.phero-scroll{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#f5efe28c;align-items:center;gap:14px;font-size:11px;display:inline-flex}.phero-scroll .ps-line{background:#f5efe266;width:56px;height:1px;display:inline-block;position:relative;overflow:hidden}.phero-scroll .ps-line:after{content:"";background:#f5efe2;width:40%;height:100%;animation:2.4s cubic-bezier(.7,0,.2,1) infinite psSweep;position:absolute;top:0;left:0}@keyframes psSweep{0%{transform:translate(-100%)}60%{transform:translate(260%)}to{transform:translate(260%)}}.thero{background:var(--night);min-height:92vh;color:var(--bone);isolation:isolate;align-items:center;padding:140px 56px 96px;display:flex;position:relative;overflow:hidden}.thero-bg{z-index:-1;pointer-events:none;position:absolute;inset:0}.thero-glow{background:radial-gradient(60% 50% at 80% 70%,#8ab86a1a 0%,#0000 60%),radial-gradient(50% 40% at 15% 30%,#8ab86a0f 0%,#0000 60%);position:absolute;inset:0}.thero-bg:before{content:"";background-image:linear-gradient(#e8e2d50a 1px,#0000 1px),linear-gradient(90deg,#e8e2d50a 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 50% 60%,#000 0%,#0000 75%);mask-image:radial-gradient(70% 70% at 50% 60%,#000 0%,#0000 75%)}.thero-inner{width:100%;max-width:1100px;position:relative}.thero-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--term-green);align-items:center;gap:10px;margin-bottom:28px;font-size:12px;display:flex}.thero-eyebrow .dot-live{color:var(--term-green);animation:2s ease-in-out infinite blinkdot}.thero-eyebrow:after{content:"";background:var(--term-green);flex:0 0 36px;height:1px}.thero-title{font-family:var(--display);letter-spacing:-.03em;color:var(--bone);margin:0;font-size:clamp(72px,11vw,168px);font-weight:700;line-height:.92}.thero-title em{color:var(--term-green);font-style:italic;font-weight:700}.thero-lede{max-width:640px;font-family:var(--sans);color:#e8e2d5d9;margin:28px 0 0;font-size:clamp(19px,1.4vw,23px);font-weight:300;line-height:1.5}.thero-meta-row{font-family:var(--mono);letter-spacing:.06em;border-top:1px solid #e8e2d526;flex-wrap:wrap;gap:28px;margin-top:44px;padding-top:20px;font-size:13px;display:flex}.thero-meta-row a{color:#e8e2d5d9;border-bottom:1px solid #e8e2d540;padding-bottom:2px;transition:color .2s,border-color .2s}.thero-meta-row a:hover{color:var(--term-amber);border-color:var(--term-amber)}.section{border-top:1px solid var(--rule);padding:96px 56px;position:relative}body[data-mode=photo] .section,body[data-mode=photo] .gallery-section,body[data-mode=photo] .foot{position:relative}body[data-mode=photo] .section:before,body[data-mode=photo] .gallery-section:before,body[data-mode=photo] .foot:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, transparent 100%);opacity:.6;pointer-events:none;width:200px;height:1px;position:absolute;top:-1px;left:56px}body[data-mode=tech] .section{border-top-color:var(--term-rule)}.section .head{grid-template-columns:200px 1fr;align-items:baseline;gap:48px;margin-bottom:56px;display:grid}.section .head .label,.section .about-layout .label,.gallery-section .head .label{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);font-size:11px}body[data-mode=tech] .section .head .label,body[data-mode=tech] .section .about-layout .label,body[data-mode=tech] .gallery-section .head .label{color:var(--bone-mute)}.section .head .label:before,.section .about-layout .label:before,.gallery-section .head .label:before{content:"§ ";color:var(--accent)}body[data-mode=tech] .section .head .label:before,body[data-mode=tech] .section .about-layout .label:before,body[data-mode=tech] .gallery-section .head .label:before{color:var(--term-green)}.section .head h2,.section .about-layout h2,.gallery-section .head h2{font-family:var(--display);letter-spacing:-.015em;max-width:22ch;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(34px,4.4vw,56px);font-weight:500;line-height:1.05}.section .head h2 em,.section .about-layout h2 em,.gallery-section .head h2 em{color:var(--accent);font-style:italic;font-weight:500}body[data-mode=tech] .section .head h2,body[data-mode=tech] .section .about-layout h2,body[data-mode=tech] .gallery-section .head h2{color:var(--bone)}body[data-mode=tech] .section .head h2 em,body[data-mode=tech] .section .about-layout h2 em,body[data-mode=tech] .gallery-section .head h2 em{color:var(--term-amber)}.about-layout{grid-template-columns:200px 1fr 1fr;align-items:start;gap:48px;margin-bottom:56px;display:grid}.about-text{flex-direction:column;gap:20px;display:flex}.about-body p{color:var(--ink-soft);text-wrap:pretty;margin:0;font-size:17px;line-height:1.65}.about-short{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(28px,3vw,38px);font-weight:500;line-height:1.1}.services{border-top:1px solid var(--rule);grid-template-columns:200px repeat(3,1fr);gap:40px 48px;margin-top:96px;padding-top:32px;display:grid}.services .label{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);grid-area:1/1/span 2;font-size:11px}.services .item{border-left:1px solid var(--rule);padding:0 0 0 20px;transition:border-color .32s}body[data-mode=photo] .services .item:hover{border-left-color:var(--accent)}.services .item .num{font-family:var(--mono);letter-spacing:.2em;color:var(--ink-mute);font-size:11px}.services .item h4{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);margin:18px 0 12px;font-size:25px;font-weight:500;line-height:1.15}.services .item p{color:var(--ink-soft);margin:0;font-size:14.5px;line-height:1.55}.kit{border-top:1px solid var(--rule);grid-template-columns:200px minmax(0,.85fr) minmax(0,2.6fr);gap:0 48px;margin-top:96px;padding-top:32px;display:grid}.kit-label{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);font-size:11px}.kit-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 14px;font-size:11px}.kit-eyebrow-glass{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.kit-count{color:var(--ink-mute)}.kit-body{border-left:1px solid var(--rule);padding:0 24px 0 20px;position:relative}.kit-body-name{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin:0 0 12px;font-size:27px;font-weight:400;line-height:1.1}.kit-body-spec{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-soft);max-width:30ch;margin:0;font-size:12.5px;line-height:1.6}.kit-lenses{border-left:1px solid var(--rule);min-width:0;padding-left:20px}.kit-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.kit-lens{border-top:1px dashed var(--rule);grid-template-columns:88px minmax(0,1.5fr) minmax(0,1.1fr);align-items:baseline;gap:24px;padding:16px 0;transition:border-color .32s;display:grid}.kit-lens:first-child{border-top:0;padding-top:4px}body[data-mode=photo] .kit-lens:hover{border-top-color:var(--rule-strong)}.kit-range{font-family:var(--mono);letter-spacing:.04em;color:var(--accent);font-feature-settings:"tnum" 1;font-size:14px}.kit-name-row{flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0;display:flex}.kit-name{font-family:var(--serif);color:var(--ink);font-size:16.5px;font-weight:400;line-height:1.35}.kit-maker{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-mute);border:1px solid var(--rule);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px}.kit-use{font-family:var(--sans);color:var(--ink-soft);text-wrap:pretty;font-size:14px;line-height:1.45}.kit-note{border-top:1px solid var(--rule);font-family:var(--sans);color:var(--ink-mute);gap:10px;margin:20px 0 0;padding-top:16px;font-size:13.5px;line-height:1.55;display:flex}.kit-note-mark{font-family:var(--mono);color:var(--accent);letter-spacing:0}@media (max-width:1100px){.kit{grid-template-columns:200px minmax(0,1fr);gap:32px 48px}.kit-body{grid-column:2/-1;grid-template-columns:auto 1fr;align-items:baseline;gap:0 18px;padding:0 0 0 20px;display:grid}.kit-body .kit-eyebrow{grid-column:1;align-self:center;margin:0}.kit-body-name{grid-column:2;margin:0}.kit-body-spec{grid-column:1/-1;max-width:none;margin-top:10px}.kit-lenses{grid-column:2/-1}}.gallery-section{border-top:1px solid var(--rule);padding:96px 0 0}.gallery-section .head{padding:0 56px}.gallery-tabs{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;gap:24px;margin-bottom:32px;padding:0 56px;font-size:12px;display:flex}.gallery-tabs button{color:var(--ink-mute);border-bottom:1px solid #0000;padding:10px 2px 8px;transition:color .22s,border-color .32s cubic-bezier(.7,0,.2,1);position:relative}.gallery-tabs button:hover{color:var(--ink-soft)}.gallery-tabs button.active{color:var(--ink);border-color:var(--accent)}.gallery-tabs button:focus-visible{outline-offset:4px}.gallery-tabs .count{color:var(--ink-mute);font-feature-settings:"tnum" 1;margin-left:6px}.gallery{grid-template-columns:repeat(12,1fr);gap:14px;padding:0 56px 56px;display:grid}.tile{background:var(--paper-2);cursor:pointer;outline-offset:-1px;outline:1px solid #f0e9d80f;transition:outline-color .32s,box-shadow .42s cubic-bezier(.7,0,.2,1);position:relative;overflow:hidden}body[data-mode=photo] .tile:hover{outline-color:#f0e9d838;box-shadow:0 24px 60px -20px #000000b3,0 0 0 1px #c4553a26}.tile img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.2, 0, .2, 1), filter .6s ease-out, opacity .72s var(--ease-out-quart);opacity:0;display:block}.tile.is-loaded img{opacity:1}.tile:hover img{filter:brightness(1.04);transform:scale(1.025)}.tile-skeleton{background:linear-gradient(100deg, #fff0 30%, #ffffff0f 50%, #fff0 70%), var(--paper-2);pointer-events:none;z-index:0;background-position:100% 0,0 0;background-size:200% 100%,100% 100%;transition:opacity .4s ease-out;animation:1.6s ease-in-out infinite tileShimmer;position:absolute;inset:0}.tile.is-loaded .tile-skeleton{opacity:0;animation:none}@keyframes tileShimmer{0%{background-position:100% 0,0 0}to{background-position:-100% 0,0 0}}@media (prefers-reduced-motion:reduce){.tile-skeleton{animation:none}}.tile .cap{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#ffffffd9;opacity:0;text-shadow:0 1px 4px #0006;justify-content:space-between;font-size:11.5px;transition:opacity .3s,transform .3s;display:flex;position:absolute;bottom:10px;left:12px;right:12px;transform:translateY(6px)}.tile:hover .cap{opacity:1;transform:translateY(0)}.tile .ix{font-family:var(--mono);letter-spacing:.18em;color:#ffffffc7;text-shadow:0 1px 4px #0006;opacity:0;font-size:11.5px;transition:opacity .3s;position:absolute;top:10px;left:12px}.tile:hover .ix{opacity:1}.tile.s-tall{aspect-ratio:4/5;grid-column:span 4}.tile.s-wide{aspect-ratio:16/11;grid-column:span 8}.tile.s-square{aspect-ratio:1;grid-column:span 4}.tile.s-half{aspect-ratio:5/4;grid-column:span 6}.tile.s-third{aspect-ratio:5/6;grid-column:span 4}.tile.s-full{aspect-ratio:21/9;grid-column:span 12}.foot{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(220px,auto);align-items:end;gap:48px;padding:80px 56px 36px;display:grid}body[data-mode=tech] .foot{border-top-color:var(--term-rule)}.foot h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(40px,6vw,96px);font-weight:500;line-height:.95}.foot h3 a{color:var(--accent);text-underline-offset:.16em;text-decoration-skip-ink:auto;-webkit-text-decoration:underline #c4553a73;text-decoration:underline #c4553a73;text-decoration-thickness:2px;transition:text-decoration-color .24s}.foot h3 a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}body[data-mode=tech] .foot h3 a{color:var(--term-amber);text-decoration-color:#d8a86a80}body[data-mode=tech] .foot h3 a:hover{-webkit-text-decoration-color:var(--term-amber);text-decoration-color:var(--term-amber)}.foot .meta{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);gap:14px;font-size:11.5px;display:grid}.foot .meta>span{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.foot .meta .meta-key{color:var(--ink-mute);flex:none}.foot .meta b{color:var(--ink);letter-spacing:.16em;font-weight:500}body[data-mode=tech] .foot .meta,body[data-mode=tech] .foot .meta .meta-key{color:var(--bone-mute)}body[data-mode=tech] .foot .meta b{color:var(--bone)}.foot .meta-link{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:8px;padding:0;transition:color .2s;display:inline-flex;position:relative}.foot .meta-link:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .32s cubic-bezier(.7,0,.2,1),background-color .2s;position:absolute;bottom:-3px;left:0;right:0}.foot .meta-link span{transition:transform .32s cubic-bezier(.7,0,.2,1)}.foot .meta-link:hover{color:var(--accent)}.foot .meta-link:hover span{transform:translate(3px)}body[data-mode=tech] .foot .meta-link:hover{color:var(--term-amber)}.copyline{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute);border-top:1px solid var(--rule);justify-content:space-between;padding:18px 56px 36px;font-size:11px;display:flex}body[data-mode=tech] .copyline{color:var(--bone-mute);border-top-color:var(--term-rule)}.terminal-section{padding-top:96px}.terminal-section .head h2 code{font-family:var(--mono);color:var(--term-green);background:#8ab86a1f;border-radius:3px;margin:0 2px;padding:2px 8px;font-size:.85em}.terminal-wrap{max-width:1100px;margin-top:32px}.terminal{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--mono);cursor:text;background:#070707f5;border:1px solid #e8e2d547;border-radius:6px;font-size:14px;line-height:1.65;overflow:hidden;box-shadow:0 0 0 1px #0a0908d9,0 30px 80px #00000094}.terminal .bar{border-bottom:1px solid var(--term-rule);letter-spacing:.16em;text-transform:uppercase;color:var(--bone-mute);background:#ffffff05;justify-content:space-between;align-items:center;padding:10px 14px;font-size:11px;display:flex}.terminal .bar .dots{gap:6px;display:flex}.terminal .bar .dots span{background:#ffffff20;border-radius:999px;width:11px;height:11px}.terminal .bar .dots span:first-child{background:#ff5f57}.terminal .bar .dots span:nth-child(2){background:#febc2e}.terminal .bar .dots span:nth-child(3){background:#28c840}.terminal .body{color:var(--bone-soft);word-break:break-word;scrollbar-width:thin;scrollbar-color:#e8e2d533 transparent;height:420px;padding:18px 20px;overflow-y:auto}.terminal .body::-webkit-scrollbar{width:8px}.terminal .body::-webkit-scrollbar-thumb{background:#e8e2d533;border-radius:4px}.terminal .prompt{color:var(--term-green);-webkit-user-select:none;user-select:none;margin-right:6px}.terminal .prompt-full{color:var(--term-green);-webkit-user-select:none;user-select:none;white-space:nowrap;margin-right:8px}.terminal .prompt-full .at{color:var(--bone-mute)}.terminal .prompt-full .cwd{color:#6ea6ff}.terminal .prompt-full .dollar{color:var(--bone);margin-left:2px}.terminal .flag{color:var(--term-amber)}.terminal .key{color:var(--bone)}.terminal .t-banner{color:var(--term-green);letter-spacing:.08em;margin-bottom:2px}.terminal .t-dim{color:var(--bone-mute);opacity:.7}.terminal .t-line{color:var(--bone-soft)}.terminal .t-echo{color:var(--bone)}.terminal .t-echoline{display:flex}.terminal .t-section{color:var(--term-amber);text-transform:lowercase;letter-spacing:.04em;margin-top:4px}.terminal .t-kv{grid-template-columns:160px 18px 1fr;gap:4px;padding-left:14px;display:grid}.terminal .t-kv .k{color:var(--bone)}.terminal .t-kv .sep{color:var(--bone-mute);opacity:.5}.terminal .t-kv .v{color:var(--bone-soft)}.terminal .t-err{color:#f08c8c}.terminal .t-inputline{align-items:baseline;margin-top:4px;display:flex;position:relative}.terminal .t-typed{color:var(--bone);white-space:pre;flex:1;align-items:center;display:inline-flex}.terminal .caret-block{background:var(--term-green);color:#0a0908;min-width:.6em;animation:1s steps(2,end) infinite caretblink;display:inline-block}.terminal .caret-block.caret-hollow{color:var(--term-green);outline:1px solid var(--term-green);outline-offset:-1px;background:0 0;animation:none}@keyframes caretblink{0%,50%{background:var(--term-green);color:#0a0908}50.01%,to{color:var(--bone);background:0 0}}.terminal .t-input-hidden{color:#0000;caret-color:#0000;width:100%;height:100%;font:inherit;z-index:1;background:0 0;border:0;outline:none;padding:0;position:absolute;inset:0}.terminal .t-input-hidden:focus-visible{outline-offset:0;border-radius:0;outline:none}.terminal .t-input-hidden::selection{color:#0000;background:#8ab86a4d}.tech-logos-section{border-top:1px solid var(--term-rule);border-bottom:1px solid var(--term-rule);padding:48px 0;position:relative}.tech-logos-label{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bone-mute);margin-bottom:28px;padding:0 56px;font-size:11px}.tech-logos-track-wrap{position:relative;overflow:clip visible}.tech-logos-section:before,.tech-logos-section:after{content:"";z-index:2;pointer-events:none;width:80px;position:absolute;top:0;bottom:0}.tech-logos-section:before{background:linear-gradient(90deg, var(--night) 0%, transparent 100%);left:0}.tech-logos-section:after{background:linear-gradient(270deg, var(--night) 0%, transparent 100%);right:0}.tech-logos-track{align-items:center;gap:0;width:max-content;animation:32s linear infinite tech-logos-scroll;display:flex}.tech-logos-track:hover{animation-play-state:paused}@keyframes tech-logos-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.tech-logo-item{border-right:1px solid var(--term-rule);white-space:nowrap;opacity:.6;align-items:center;gap:10px;padding:0 32px;transition:opacity .2s;display:flex;position:relative}.tech-logo-item:hover{opacity:1}.tech-logo-item img{flex-shrink:0;display:block}.tech-logo-item>span{font-family:var(--mono);letter-spacing:.08em;color:var(--bone-soft);font-size:13px}.tech-logo-tooltip{background:var(--night-2);border:1px solid var(--term-rule);pointer-events:none;opacity:0;z-index:10;border-radius:2px;flex-direction:column;gap:5px;width:200px;padding:12px 14px;display:flex;position:absolute;bottom:calc(100% + 14px);left:50%;transform:translate(-50%)translateY(6px)}.tech-logo-item:hover .tech-logo-tooltip{opacity:1;transform:translate(-50%)translateY(0)}.tech-logo-tooltip-head{align-items:center;gap:7px;display:flex}.tech-logo-tooltip-head img{flex-shrink:0;display:block}.tech-logo-tooltip-name{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--term-amber);font-size:11px;font-weight:600}.tech-logo-tooltip-desc{font-family:var(--sans);color:var(--bone-soft);white-space:normal;font-size:12px;line-height:1.5}.projects{grid-template-columns:200px 1fr;gap:48px;display:grid}.project{border-top:1px solid var(--rule);cursor:pointer;grid-template-columns:60px 1fr 240px 120px;align-items:baseline;gap:24px;padding:28px 0;display:grid;position:relative}body[data-mode=tech] .project{border-top-color:var(--term-rule)}.project:last-child{border-bottom:1px solid var(--rule)}body[data-mode=tech] .project:last-child{border-bottom-color:var(--term-rule)}.project .num{font-family:var(--mono);letter-spacing:.18em;color:var(--bone-mute);font-size:12px}body[data-mode=photo] .project .num{color:var(--ink-mute)}.project h3{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:29px;font-weight:400;line-height:1.1}body[data-mode=tech] .project h3{font-family:var(--display);font-weight:500}.project h3 .desc{font-family:var(--sans);color:var(--bone-soft);letter-spacing:0;max-width:56ch;margin-top:8px;font-size:14.5px;font-weight:400;display:block}body[data-mode=photo] .project h3 .desc{color:var(--ink-soft)}.project .stack{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bone-mute);font-size:11.5px}body[data-mode=photo] .project .stack{color:var(--ink-mute)}.project .stack span+span:before{content:" · "}.project .status{text-align:right;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;font-size:11.5px}.project .status .live{color:var(--term-green)}.project .status .wip{color:var(--term-amber)}.project .status .arrow{margin-left:8px;transition:transform .24s;display:inline-block}.project:hover .status .arrow{transform:translate(3px,-3px)}.project:after{content:"";background:var(--bone);transform-origin:0;height:1px;transition:transform .6s cubic-bezier(.7,0,.2,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}body[data-mode=photo] .project:after{background:var(--ink)}.project:hover:after{transform:scaleX(1)}.project:hover h3{color:var(--term-amber);transition:color .2s}body[data-mode=photo] .project:hover h3{color:var(--accent)}.skill-layers{grid-template-columns:1fr 1fr;gap:48px 64px;display:grid}.skill-layer-head{border-bottom:1px solid var(--term-rule);align-items:baseline;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}body[data-mode=photo] .skill-layer-head{border-bottom-color:var(--rule)}.skill-layer-num{font-family:var(--mono);letter-spacing:.1em;color:var(--term-green);font-size:11px;font-weight:500}body[data-mode=photo] .skill-layer-num{color:var(--accent)}.skill-layer-title{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--bone);margin:0;font-size:12px;font-weight:600}body[data-mode=photo] .skill-layer-title{color:var(--ink)}.skill-layer-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.skill-row{border-bottom:1px solid var(--term-rule);cursor:default;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;transition:border-color .18s;display:flex}body[data-mode=photo] .skill-row{border-bottom-color:var(--rule)}.skill-row:last-child{border-bottom:none}.skill-row:hover{border-bottom-color:color-mix(in srgb, var(--term-amber) 30%, transparent)}body[data-mode=photo] .skill-row:hover{border-bottom-color:var(--ink-mute)}.skill-row-left{align-items:center;gap:12px;min-width:0;display:flex}.skill-row-icon{opacity:.8;flex-shrink:0;display:block}.skill-row-icon-ph{flex-shrink:0;width:20px;height:20px}.skill-row-name{font-family:var(--sans);color:var(--bone);white-space:nowrap;font-size:14px;font-weight:500}body[data-mode=photo] .skill-row-name{color:var(--ink)}.skill-row-projects{font-family:var(--mono);letter-spacing:.08em;color:var(--bone-mute);white-space:nowrap;text-align:right;flex-shrink:0;font-size:10px}body[data-mode=photo] .skill-row-projects{color:var(--ink-mute)}.certs{grid-template-columns:200px 1fr;gap:48px;display:grid}.cert-list{grid-template-columns:1fr 1fr;gap:18px;display:grid}.cert{border:1px solid var(--term-rule);background:var(--night-2);color:inherit;border-radius:2px;grid-template-columns:56px 1fr;align-items:start;gap:18px;padding:22px 24px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:grid}.cert:hover{border-color:var(--term-green)}body[data-mode=photo] .cert{border-color:var(--rule);background:0 0}body[data-mode=photo] .cert:hover{border-color:var(--accent)}.cert-logo{object-fit:contain;width:56px;height:56px;display:block}.cert-body{gap:8px;min-width:0;display:grid}.cert .verify-arrow{margin-left:8px;transition:transform .24s;display:inline-block}.cert:hover .verify-arrow{transform:translate(3px,-3px)}.cert .verify-text{opacity:.7}.cert .badge{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--term-green);font-size:11.5px}body[data-mode=photo] .cert .badge{color:var(--accent)}.cert h4{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:23px;font-weight:400}body[data-mode=tech] .cert h4{font-family:var(--display);font-weight:500}.cert .org{font-family:var(--mono);color:var(--bone-mute);letter-spacing:.1em;font-size:12px}body[data-mode=photo] .cert .org{color:var(--ink-mute)}.exp-layout{grid-template-columns:200px 1fr;gap:48px;display:grid}.exp-clusters{flex-direction:column;gap:48px;display:flex}.exp-cluster-label{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bone-mute);margin-bottom:18px;font-size:11px}body[data-mode=photo] .exp-cluster-label{color:var(--ink-mute)}.exp-jobs{flex-direction:column;display:flex}.exp-job{border-top:1px solid var(--term-rule);gap:6px;padding:22px 0;display:grid}.exp-job:last-child{border-bottom:1px solid var(--term-rule)}body[data-mode=photo] .exp-job{border-top-color:var(--rule)}body[data-mode=photo] .exp-job:last-child{border-bottom-color:var(--rule)}.exp-job-meta{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.exp-job-role{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--term-green);font-size:11px}body[data-mode=photo] .exp-job-role{color:var(--accent)}.exp-job-period{font-family:var(--mono);letter-spacing:.08em;color:var(--bone-mute);white-space:nowrap;font-size:11px}body[data-mode=photo] .exp-job-period{color:var(--ink-mute)}.exp-job-company{font-family:var(--display);color:var(--bone);letter-spacing:-.01em;font-size:26px;font-weight:500}body[data-mode=photo] .exp-job-company{font-family:var(--serif);color:var(--ink);font-weight:400}.exp-job-desc{font-family:var(--sans);color:var(--bone-soft);max-width:560px;margin:0;font-size:14px;line-height:1.65}body[data-mode=photo] .exp-job-desc{color:var(--ink-mute)}.exp-comps{flex-direction:column;gap:0;display:flex}.exp-comp{border-top:1px solid var(--term-rule);grid-template-columns:140px 1fr;align-items:start;gap:24px;padding:16px 0;display:grid}.exp-comp:last-child{border-bottom:1px solid var(--term-rule)}body[data-mode=photo] .exp-comp{border-top-color:var(--rule)}body[data-mode=photo] .exp-comp:last-child{border-bottom-color:var(--rule)}.exp-comp-rank{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--term-amber);padding-top:2px;font-size:12px}body[data-mode=photo] .exp-comp-rank{color:var(--accent)}.exp-comp-name{font-family:var(--mono);color:var(--bone);letter-spacing:.04em;font-size:13px;font-weight:600}body[data-mode=photo] .exp-comp-name{color:var(--ink)}.exp-comp-detail{font-family:var(--sans);color:var(--bone-soft);margin-top:3px;font-size:13px;line-height:1.5}body[data-mode=photo] .exp-comp-detail{color:var(--ink-mute)}.exp-langs{flex-wrap:wrap;gap:10px;display:flex}.exp-lang{border:1px solid var(--term-rule);background:var(--night-2);border-radius:2px;align-items:center;gap:10px;padding:10px 14px;display:flex}body[data-mode=photo] .exp-lang{border-color:var(--rule);background:0 0}.exp-lang-name{font-family:var(--mono);color:var(--bone);font-size:13px}body[data-mode=photo] .exp-lang-name{color:var(--ink)}.exp-lang-level{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--bone-mute);border-left:1px solid var(--term-rule);padding-left:10px;font-size:10px}body[data-mode=photo] .exp-lang-level{color:var(--ink-mute);border-left-color:var(--rule)}:root{--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-out-quint:cubic-bezier(.22, 1, .36, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out-quart:cubic-bezier(.76, 0, .24, 1);--ease-in-out-quint:cubic-bezier(.83, 0, .17, 1)}.lightbox{z-index:250;-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background-color .36s var(--ease-out-quart), backdrop-filter .36s var(--ease-out-quart);background:#08060500;place-items:center;padding:36px;display:grid;position:fixed;inset:0}.lightbox.is-mounted{-webkit-backdrop-filter:blur(10px)saturate(1.05);backdrop-filter:blur(10px)saturate(1.05);background:#080605f0}.lightbox.is-closing{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background-color .28s var(--ease-out-quart), backdrop-filter .28s var(--ease-out-quart);background:#08060500}.lb-frame{opacity:0;width:min(96vw,1520px);max-height:calc(100dvh - 72px);transition:opacity .38s var(--ease-out-expo), transform .46s var(--ease-out-expo);grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:32px;display:grid;position:relative;transform:translateY(14px)scale(.985)}.lightbox.is-mounted .lb-frame{opacity:1;transform:translateY(0)scale(1)}.lightbox.is-closing .lb-frame{opacity:0;transition:opacity .22s var(--ease-out-quart);transform:translateY(0)scale(1)}.lb-stage{touch-action:pan-y;flex-direction:column;gap:16px;min-width:0;min-height:0;display:flex;position:relative}.lb-img-wrap{will-change:transform;width:100%;height:100%;min-height:0;transition:transform .24s var(--ease-out-quart), box-shadow .48s var(--ease-out-quart);background:radial-gradient(#f0e9d809 0%,#0000 70%),#f0e9d805;flex:auto;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;box-shadow:0 0 #0000}.lightbox.is-mounted .lb-img-wrap{box-shadow:0 30px 80px -24px #000000a6,0 12px 28px -10px #00000073}.lightbox.is-closing .lb-img-wrap{box-shadow:0 0 #0000}.lb-img-wrap img{z-index:1;opacity:0;transition:opacity .42s var(--ease-out-quart), transform .7s var(--ease-out-expo);filter:blur(6px);display:block;position:absolute;inset:0;transform:scale(1.012);width:100%!important;height:100%!important}.lb-img-wrap.is-loaded img{opacity:1;filter:blur();transform:scale(1)}.lb-vignette{pointer-events:none;z-index:2;opacity:0;transition:opacity .48s var(--ease-out-quart);background:radial-gradient(100% 100%,#0000 60%,#0000002e 100%);position:absolute;inset:0}.lb-img-wrap.is-loaded .lb-vignette{opacity:1}.lb-skeleton{transition:opacity .32s var(--ease-out-quart);pointer-events:none;z-index:0;background:linear-gradient(100deg,#f0e9d800 30%,#f0e9d812 50%,#f0e9d800 70%) 100% 0/200% 100%,#f0e9d809 0 0/100% 100%;animation:1.6s ease-in-out infinite tileShimmer;position:absolute;inset:0}.lb-img-wrap.is-loaded .lb-skeleton{opacity:0;animation:none}.lb-stage-bar{font-feature-settings:"tnum" 1;opacity:0;transition:opacity .36s var(--ease-out-quart) .22s, transform .42s var(--ease-out-expo) .22s;justify-content:space-between;align-items:center;gap:18px;padding-top:4px;display:flex;transform:translateY(6px)}.lightbox.is-mounted .lb-stage-bar{opacity:1;transform:translateY(0)}.lb-count{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#f0e9d89e;align-items:baseline;gap:6px;font-size:12px;display:inline-flex}.lb-count-cur{color:#f0e9d8;letter-spacing:.18em;font-size:14px;font-weight:500}.lb-count-divider{opacity:.55;color:var(--gold);margin:0 2px}.lb-count-total{color:#f0e9d88c}.lb-stage-exif{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#f0e9d8b3;white-space:nowrap;flex:auto;justify-content:center;align-items:baseline;gap:8px;min-width:0;font-size:11.5px;display:inline-flex;overflow:hidden}.lb-stage-exif-dot{color:#c8a96a8c}.lb-hints{align-items:center;gap:16px;display:inline-flex}.lb-hint{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#f0e9d880;align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.lb-hint em{letter-spacing:.22em;font-style:normal}.lb-hint kbd{font-family:var(--mono);letter-spacing:0;color:#f0e9d8d9;background:#f0e9d80a;border:1px solid #f0e9d82e;border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:11px;display:inline-flex}.lb-close{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f0e9d8d9;height:36px;transition:color .2s var(--ease-out-quart), background-color .2s var(--ease-out-quart), border-color .2s var(--ease-out-quart), transform .2s var(--ease-out-quart);background:#14100cc7;border:1px solid #f0e9d824;border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 12px;display:inline-flex;position:absolute;top:14px;right:14px}.lb-close:hover{color:#f0e9d8;background:#14100cf2;border-color:#c4553a8c}.lb-close:active{transform:scale(.96)}.lb-close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.lb-close svg{width:14px;height:14px}.lb-close kbd{font-family:var(--mono);letter-spacing:.14em;color:#f0e9d8d1;background:#f0e9d80f;border:1px solid #f0e9d838;border-radius:4px;justify-content:center;align-items:center;height:20px;padding:0 6px;font-size:11.5px;display:inline-flex}.lb-edge-nav{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f0e9d8d9;opacity:.32;pointer-events:auto;width:52px;height:52px;transition:opacity .24s var(--ease-out-quart), background-color .22s var(--ease-out-quart), border-color .22s var(--ease-out-quart), color .22s var(--ease-out-quart), transform .24s var(--ease-out-quart);background:#14100c8c;border:1px solid #f0e9d81a;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lb-edge-nav.prev{left:16px}.lb-edge-nav.next{right:16px}.lb-edge-nav svg{width:20px;height:20px}.lb-stage:hover .lb-edge-nav,.lb-edge-nav:hover,.lb-edge-nav:focus-visible{opacity:1}.lb-edge-nav:hover{color:#f0e9d8;background:#14100ceb;border-color:#c4553a80;transform:translateY(-50%)scale(1.06)}.lb-edge-nav:active{transform:translateY(-50%)scale(.94)}.lb-edge-nav:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (hover:none){.lb-edge-nav{opacity:.78}}.lb-panel{color:#e8e2d5eb;opacity:0;min-width:0;transition:opacity .52s var(--ease-out-quart) .16s, transform .58s var(--ease-out-expo) .16s;background:#120e0bf0;border:1px solid #f0e9d80f;flex-direction:column;display:flex;position:relative;overflow:hidden;transform:translate(22px)scale(.985)}.lb-panel:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, transparent 100%);opacity:.7;width:60px;height:1px;position:absolute;top:0;left:0}.lightbox.is-mounted .lb-panel{opacity:1;transform:translate(0)scale(1)}.lightbox.is-closing .lb-panel{opacity:0;transition:opacity .22s var(--ease-out-quart)}.lightbox.is-closing .lb-stage-bar{opacity:0;transition:opacity .18s var(--ease-out-quart)}.lightbox.is-closing .lb-edge-nav{opacity:0;transition:opacity .16s var(--ease-out-quart)}.lightbox.is-closing .lb-vignette{opacity:0;transition:opacity .2s var(--ease-out-quart)}.lb-panel-scroll{scrollbar-width:thin;scrollbar-color:#f0e9d82e transparent;scroll-behavior:smooth;overscroll-behavior:contain;padding:30px 26px 28px;overflow:auto}.lb-panel-scroll::-webkit-scrollbar{width:6px}.lb-panel-scroll::-webkit-scrollbar-thumb{background:#f0e9d829;border-radius:3px}.lb-panel-scroll::-webkit-scrollbar-thumb:hover{background:#f0e9d847}.lb-panel-head,.lb-block{opacity:0;animation:lbBlockIn .54s var(--ease-out-expo) forwards;animation-delay:var(--d,0s);transform:translateY(8px)}@keyframes lbBlockIn{to{opacity:1;transform:translateY(0)}}.lightbox:not(.is-mounted) .lb-panel-head,.lightbox:not(.is-mounted) .lb-block{animation-play-state:paused}.lb-panel-head{margin-bottom:24px}.lb-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#e8e2d59e;align-items:center;gap:10px;margin-bottom:14px;font-size:11px;display:inline-flex}.lb-bar{background:var(--accent);opacity:.85;width:26px;height:1px;display:inline-block}.lb-title{font-family:var(--display);letter-spacing:-.012em;color:#f4ecdc;text-wrap:balance;margin:0;font-size:clamp(21px,2.1vw,27px);font-weight:500;line-height:1.18}.lb-block{border-top:1px solid #f0e9d814;padding:20px 0 16px}.lb-block:first-of-type{border-top:0;padding-top:0}.lb-label{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:#e8e2d580;margin-bottom:10px;font-size:11.5px;display:block}.lb-story p{font-family:var(--serif);color:#f4ecdceb;text-wrap:pretty;margin:0;font-size:16px;font-weight:300;line-height:1.6}.lb-line{color:#e8e2d5eb;margin:0 0 4px;font-size:14.5px;line-height:1.45}.lb-line-mute{color:#e8e2d5b3}.lb-specs{font-feature-settings:"tnum" 1;grid-template-columns:1fr 1fr;gap:12px 18px;margin:0;display:grid}.lb-specs>div{border-bottom:1px dashed #f0e9d814;flex-direction:column;gap:3px;padding:10px 0;display:flex}.lb-specs dt{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#e8e2d580;font-size:11.5px}.lb-specs dd{font-family:var(--mono);letter-spacing:.04em;color:var(--gold);margin:0;font-size:14px}.lb-gear{gap:7px;margin:0;padding:0;list-style:none;display:grid}.lb-gear li{font-family:var(--mono);letter-spacing:.06em;color:#e8e2d5db;padding-left:14px;font-size:12.5px;position:relative}.lb-gear li:before{content:"";background:var(--accent);opacity:.65;width:6px;height:1px;position:absolute;top:.65em;left:0}.lb-coords{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#e8e2d58c;font-feature-settings:"tnum" 1;margin:4px 0 14px;font-size:11px}.lb-map{aspect-ratio:16/10;background:#0e0c0a;border:1px solid #f0e9d814;width:100%;position:relative;overflow:hidden}.lb-map iframe{filter:invert(.92)hue-rotate(180deg)saturate(.12)brightness(.96)contrast(.92);border:0;width:100%;height:100%;display:block}@media (max-width:1024px){.lightbox{padding:18px;padding-top:max(18px, env(safe-area-inset-top,0px));-webkit-overflow-scrolling:touch;align-content:start;place-items:start center;overflow-y:auto}.lb-frame{grid-template-rows:minmax(min(42dvh,320px),1fr) auto;grid-template-columns:minmax(0,1fr);gap:16px;max-height:none;margin-bottom:24px}.lb-panel{max-height:42dvh}.lb-close{top:10px;right:10px}.lb-edge-nav{width:44px;height:44px}.lb-edge-nav.prev{left:10px}.lb-edge-nav.next{right:10px}.lb-stage-exif{font-size:11px}}@media (max-width:640px){.lightbox{padding:12px}.lb-panel-scroll{padding:22px 18px 20px}.lb-title{font-size:19px}.lb-specs{grid-template-columns:1fr 1fr;gap:8px 14px}.lb-hints,.lb-stage-exif{display:none}.lb-stage-bar{justify-content:space-between;gap:10px}.lb-edge-nav{width:40px;height:40px}.lb-close{gap:6px;height:32px;padding:0 8px 0 10px}.lb-close kbd{height:18px;font-size:11px}}@media (prefers-reduced-motion:reduce){.phero-caption-wrap{transition-duration:.01ms}.lightbox{transition:background-color .2s,-webkit-backdrop-filter .2s,backdrop-filter .2s}.lb-frame,.lb-panel{transition:opacity .2s;transform:none!important}.lightbox.is-closing .lb-frame,.lightbox.is-closing .lb-panel{opacity:0;transition:opacity .16s}.lb-stage-bar{transition:opacity .2s;opacity:1!important;transform:none!important}.lightbox.is-closing .lb-stage-bar,.lightbox.is-closing .lb-edge-nav{transition:opacity .16s;opacity:0!important}.lb-img-wrap{transition:none;box-shadow:none!important;transform:none!important}.lb-img-wrap img{transition:opacity .2s;filter:none!important;transform:none!important}.lb-vignette{transition:opacity .2s}.lb-skeleton{animation:none}.lb-panel-head,.lb-block{opacity:1;animation:none;transform:none}}@media (max-width:1100px) and (min-width:801px){.services{grid-template-columns:160px repeat(2,1fr);gap:36px}.services .label{grid-row:1/span 3}}@media (max-width:800px){.chrome{padding:16px 18px}.phero,.thero{padding:88px 22px 56px}.phero{min-height:100svh}.phero-frame{bottom:14px;left:18px;right:18px}.phero-caption{gap:12px;max-width:min(260px,72vw)}.phero-caption dt{letter-spacing:.18em;font-size:11px}.phero-caption dd{font-size:13px}.phero-meta-row,.thero-meta-row{gap:18px 24px;font-size:11px}.phero-eyebrow,.thero-eyebrow{margin-bottom:20px;font-size:11px}.phero-lede,.thero-lede{font-size:17px}.phero-title .line:nth-child(2){padding-left:28px}.phero-grid{grid-template-columns:1fr;gap:28px;margin-top:28px}.phero-data{grid-template-columns:1fr 1fr;gap:14px 20px}.phero-foot{margin-top:32px}.phero-cta{padding:14px 18px}.section{padding:56px 24px}.section .head,.about-layout,.services,.projects,.skill-layers,.certs,.exp-layout{grid-template-columns:1fr;gap:22px}.services{margin-top:48px;padding-top:24px}.services .label{grid-area:auto}.services .item{border-left:0;border-top:1px solid var(--rule);padding:16px 0 0}.kit{grid-template-columns:1fr;gap:28px;margin-top:48px;padding-top:24px}.kit-body{border-left:0;grid-column:auto;padding:0;display:block}.kit-body .kit-eyebrow{margin:0 0 10px}.kit-body-name{font-size:23px}.kit-lenses{border-left:0;grid-column:auto;padding-left:0}.kit-lens{grid-template-columns:76px 1fr;grid-template-areas:"range name"".use";gap:6px 16px;padding:14px 0}.kit-lens .kit-range{grid-area:range;align-self:start;padding-top:2px}.kit-lens .kit-name-row{grid-area:name}.kit-lens .kit-use{grid-area:use;margin-top:2px}.skill-layers{grid-template-columns:1fr;gap:40px}.skill-row-projects{font-size:9px}.cert-list{grid-template-columns:1fr}.cert{grid-template-columns:44px 1fr;gap:14px;padding:18px}.cert-logo{width:44px;height:44px}.exp-layout{grid-template-columns:1fr;gap:22px}.exp-comp{grid-template-columns:100px 1fr;gap:14px}.exp-job-company{font-size:21px}.project{grid-template-columns:40px 1fr;gap:12px}.project .stack,.project .status{text-align:left;grid-column:2}.gallery-section .head,.gallery-tabs,.gallery,.foot{padding-left:24px;padding-right:24px}.tile.s-tall,.tile.s-wide,.tile.s-square,.tile.s-half,.tile.s-third,.tile.s-full{aspect-ratio:4/5;grid-column:span 6}.copyline{flex-wrap:wrap;gap:12px;padding:18px 24px 36px}body[data-mode=photo] .section:before,body[data-mode=photo] .gallery-section:before,body[data-mode=photo] .foot:before{width:140px;left:24px}.foot{grid-template-columns:1fr;gap:32px;padding:56px 24px 28px}.foot .meta>span{flex-direction:column;align-items:flex-start;gap:6px}}[data-reveal]{opacity:0;transition:opacity .72s var(--ease-out-expo) var(--reveal-delay,0s), transform .82s var(--ease-out-expo) var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(14px)}[data-reveal].is-in{opacity:1;transform:none}[data-reveal].is-in.reveal-settled{will-change:auto}[data-reveal-line]{vertical-align:bottom;margin:-.18em -.04em;padding:.18em .04em;display:inline-block;overflow:hidden}[data-reveal-line]>.rl-inner{transition:transform .9s var(--ease-out-expo) var(--reveal-delay,0s);will-change:transform;display:inline-block;transform:translateY(110%)}[data-reveal-line].is-in>.rl-inner{transform:translateY(0)}[data-reveal-line].is-in.reveal-settled>.rl-inner{will-change:auto}.tile[data-reveal]{transition:opacity .76s var(--ease-out-quint) var(--reveal-delay,0s), transform .92s var(--ease-out-expo) var(--reveal-delay,0s);transform:translateY(18px)}.tile[data-reveal].is-in{transform:none}@media (prefers-reduced-motion:reduce){[data-reveal],[data-reveal-line]>.rl-inner{opacity:1!important;transition:none!important;transform:none!important}}.toggle a.toggle-btn{z-index:2;white-space:nowrap;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;opacity:.62;border-radius:999px;align-items:center;padding:9px 18px;text-decoration:none;transition:color .4s,opacity .32s,transform .24s cubic-bezier(.7,0,.2,1);display:inline-flex;position:relative}.toggle a.toggle-btn:hover{opacity:.95}.toggle a.toggle-btn:active{transform:scale(.96)}.toggle a.toggle-btn.active{opacity:1}.toggle a.toggle-btn:focus-visible{outline-offset:4px}body[data-mode=photo] .toggle a.toggle-btn{color:#f5efe2}body[data-mode=tech] .toggle a.toggle-btn{color:var(--bone)}body[data-mode=photo] .toggle a.toggle-btn.active{color:#0a0908}body[data-mode=tech] .toggle a.toggle-btn.active{color:var(--night)}.chrome-right{align-items:center;gap:22px;display:flex}.subnav{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:4px;font-size:12px;display:inline-flex}.subnav-link{color:inherit;opacity:.62;border-radius:4px;align-items:center;gap:8px;padding:8px 14px;text-decoration:none;transition:opacity .32s,color .32s;display:inline-flex;position:relative}.subnav-link:before{content:"";opacity:0;transform-origin:100%;background:currentColor;width:6px;height:1px;transition:opacity .28s,transform .28s cubic-bezier(.7,0,.2,1);transform:scaleX(.4)}.subnav-link:hover{opacity:.95}.subnav-link.active{opacity:1}.subnav-link.active:before{opacity:1;transform:scaleX(1)}body[data-mode=photo] .subnav-link.active{color:var(--accent-soft)}body[data-mode=tech] .subnav-link.active{color:var(--term-amber)}@media (max-width:720px){.chrome-right{gap:12px}.subnav{display:none}}.gear-page{--bp-bg:#050d14;--bp-bg-2:#07141d;--bp-line:#66d2ff;--bp-line-soft:#66d2ff73;--bp-line-faint:#66d2ff2e;--bp-grid:#66d2ff14;--bp-ink:#cfeaff;--bp-ink-soft:#cfeaffb3;--bp-ink-mute:#cfeaff73;--bp-warn:#ffb86b;background:var(--bp-bg);min-height:100vh;color:var(--bp-ink);font-family:var(--sans);position:relative;overflow-x:clip}.gear-page:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 30% 0%, #66d2ff0f 0%, transparent 60%), radial-gradient(ellipse 70% 50% at 100% 100%, #66d2ff0a 0%, transparent 65%), linear-gradient(180deg, var(--bp-bg) 0%, var(--bp-bg-2) 50%, var(--bp-bg) 100%);position:fixed;inset:0}.gear-page>*{z-index:1;position:relative}body[data-mode=photo]:has(.gear-page){background-color:var(--bp-bg,#050d14);background-image:none}.gear-hero{isolation:isolate;align-items:center;min-height:100vh;padding:140px 56px 80px;display:flex;position:relative;overflow:hidden}.gear-hero-grid{z-index:-1;color:var(--bp-line);opacity:.7;background-image:linear-gradient(to right, var(--bp-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--bp-grid) 1px, transparent 1px);background-size:32px 32px,32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70%,#000 0%,#0000 100%);mask-image:radial-gradient(90% 70%,#000 0%,#0000 100%)}.gear-hero-corners{pointer-events:none;color:var(--bp-line-soft);position:absolute;inset:60px 36px 36px}.gh-corner{border:1px solid;width:28px;height:28px;position:absolute}.gh-corner.tl{border-bottom:none;border-right:none;top:0;left:0}.gh-corner.tr{border-bottom:none;border-left:none;top:0;right:0}.gh-corner.bl{border-top:none;border-right:none;bottom:0;left:0}.gh-corner.br{border-top:none;border-left:none;bottom:0;right:0}.gear-hero-inner{width:100%;max-width:1280px;margin:0 auto}.gear-hero-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bp-ink-soft);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:36px;font-size:12px;display:flex}.gear-hero-eyebrow .ebw-bar{background:var(--bp-line);width:36px;height:1px;display:inline-block}.gear-hero-eyebrow .ebw-sep{opacity:.4}.gear-hero-title{font-family:var(--serif);letter-spacing:-.02em;color:var(--bp-ink);margin:0 0 28px;font-size:clamp(56px,9vw,132px);font-weight:300;line-height:.94}.gear-hero-title em{color:var(--bp-line);text-shadow:0 0 24px #66d2ff40;font-style:italic;font-weight:300}.gear-hero-lede{max-width:640px;color:var(--bp-ink-soft);margin:0 0 56px;font-size:19px;line-height:1.6}.gear-hero-meta{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;flex-wrap:wrap;gap:48px;margin-bottom:80px;font-size:13px;display:flex}.gear-hero-meta>div{flex-direction:column;gap:6px;display:flex}.gear-hero-meta .meta-key{color:var(--bp-ink-mute);font-size:11px}.gear-hero-meta b{letter-spacing:.12em;color:var(--bp-ink);font-weight:500}.gear-hero-scroll{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bp-ink-mute);align-items:center;gap:14px;font-size:12px;display:inline-flex}.gh-scroll-line{background:currentColor;width:48px;height:1px;display:inline-block;position:relative;overflow:hidden}.gh-scroll-line:after{content:"";background:var(--bp-line);animation:2s linear infinite gearScrollPulse;position:absolute;inset:0}@keyframes gearScrollPulse{0%{transform:translate(-100%)}to{transform:translate(100%)}}.gear-stage-section{width:100%;position:relative}.gear-stage{isolation:isolate;grid-template-columns:minmax(0,1.6fr) minmax(360px,1fr);align-items:center;gap:48px;width:100%;height:100vh;padding:90px 56px 56px;display:grid;position:sticky;top:0;overflow:hidden}.gear-stage-grid{z-index:-1;background-image:linear-gradient(to right, var(--bp-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--bp-grid) 1px, transparent 1px), linear-gradient(to right, #66d2ff29 1px, transparent 1px), linear-gradient(to bottom, #66d2ff29 1px, transparent 1px);opacity:.9;background-size:32px 32px,32px 32px,160px 160px,160px 160px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(100% 80%,#000 0%,#0000 100%);mask-image:radial-gradient(100% 80%,#000 0%,#0000 100%)}.gear-stage-rail{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bp-line-soft);z-index:2;align-items:center;gap:16px;font-size:12px;display:flex;position:absolute;top:96px;left:56px;right:56px}.gear-stage-rail .rail-sep{opacity:.4;background:currentColor;flex:1;height:1px}.gear-stage-canvas{perspective:1600px;justify-content:flex-end;align-items:center;height:100%;min-height:0;display:flex;position:relative}.bp-body-wrap{aspect-ratio:1;width:min(62%,70vh);transform-style:preserve-3d;color:var(--bp-line);transition:transform .22s linear;position:relative}.bp-body-wrap .bp-svg{width:100%;height:100%}.bp-body-layer{backface-visibility:hidden;transition:opacity .28s,transform .22s linear;position:absolute;inset:0}.bp-svg{width:100%;height:100%;color:var(--bp-line);filter:drop-shadow(0 0 12px #66d2ff2e)}.bp-stroke-2{stroke-linejoin:round}.bp-callouts text{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;font-size:14px}.bp-callout-label{fill:var(--bp-ink);font-weight:500}.bp-callout-note{fill:var(--bp-ink-soft);letter-spacing:.14em;font-size:12px}.bp-corner-stamp text{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;fill:var(--bp-ink-mute);font-size:12px}.bp-stamp-line{font-size:13px}.bp-stamp-sub{opacity:.7;font-size:11px}.bp-body-badge{font-family:var(--mono);letter-spacing:.32em;fill:var(--bp-ink-soft);font-size:23px;font-weight:500}.bp-lens-slot{pointer-events:none;position:absolute;inset:0}.bp-lens-stage{will-change:transform, opacity;justify-content:flex-end;align-items:center;transition:transform .18s linear,opacity .22s;display:flex;position:absolute;inset:0 64% 0 0}.bp-lens-stage .bp-lens{width:100%;max-width:720px;height:100%}.bp-panel{border-left:1px solid var(--bp-line-faint);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#07121c99,#050d1466);flex-direction:column;justify-content:center;align-self:stretch;min-width:0;padding:32px 32px 32px 36px;transition:opacity .22s;display:flex;position:relative}.bp-panel-corner{width:18px;height:18px;position:absolute;top:16px;right:16px}.bp-panel-corner span{background:var(--bp-line);position:absolute}.bp-panel-corner span:first-child{width:18px;height:1px;top:0;right:0}.bp-panel-corner span:last-child{width:1px;height:18px;top:0;right:0}.bp-panel-eyebrow{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--bp-line);margin-bottom:16px;font-size:11px}.bp-panel-title{font-family:var(--serif);letter-spacing:-.01em;color:var(--bp-ink);margin:0 0 12px;font-size:clamp(28px,3.4vw,44px);font-weight:300;line-height:1.05}.bp-panel-fullname{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--bp-ink-soft);margin:0 0 24px;font-size:12px}.bp-panel-specs{gap:14px;margin:0 0 24px;display:grid}.bp-panel-specs>div{border-bottom:1px solid var(--bp-line-faint);grid-template-columns:88px 1fr;gap:16px;padding-bottom:12px;display:grid}.bp-panel-specs dt{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bp-ink-mute);font-size:11px}.bp-panel-specs dd{color:var(--bp-ink);margin:0;font-size:15px;line-height:1.4}.bp-panel-note{color:var(--bp-ink-soft);max-width:44ch;margin:0;font-size:15px;line-height:1.6}.bp-panel-meta{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--bp-line);margin-top:16px;font-size:12px}.gear-stage-stamp{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--bp-ink-mute);pointer-events:none;justify-content:space-between;font-size:11px;display:flex;position:absolute;bottom:32px;left:56px;right:56px}.gear-request{border-top:1px solid var(--bp-line-faint);padding:120px 56px 140px;position:relative;overflow:hidden}.gear-request-grid{z-index:-1;background-image:linear-gradient(to right, var(--bp-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--bp-grid) 1px, transparent 1px);opacity:.7;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 30% 70%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 30% 70%,#0000 100%)}.gear-request-inner{width:100%;max-width:980px;margin:0 auto}.gear-request-eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--bp-ink-soft);align-items:center;gap:14px;margin-bottom:32px;font-size:12px;display:flex}.gear-request-eyebrow .ebw-bar{background:var(--bp-line);width:36px;height:1px;display:inline-block}.gear-request-title{font-family:var(--serif);letter-spacing:-.02em;margin:0 0 24px;font-size:clamp(40px,6vw,80px);font-weight:300;line-height:.98}.gear-request-title em{color:var(--bp-line);font-weight:300}.gear-request-note{max-width:640px;color:var(--bp-ink-soft);margin:0 0 48px;font-size:18px;line-height:1.6}.gear-request-actions{flex-wrap:wrap;gap:18px;display:flex}.gear-cta{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;border:1px solid;border-radius:4px;align-items:center;gap:10px;padding:14px 22px;font-size:13px;text-decoration:none;transition:background .24s,color .24s,transform .24s cubic-bezier(.7,0,.2,1);display:inline-flex}.gear-cta.primary{background:var(--bp-line);border-color:var(--bp-line);color:var(--bp-bg)}.gear-cta.primary:hover{background:var(--bp-ink);border-color:var(--bp-ink);transform:translateY(-2px)}.gear-cta.ghost{color:var(--bp-ink-soft);border-color:var(--bp-line-soft)}.gear-cta.ghost:hover{color:var(--bp-ink);border-color:var(--bp-ink)}@media (max-width:960px){.gear-stage{grid-template-columns:1fr;gap:18px;padding:80px 28px 28px}.gear-stage-canvas{height:60%}.bp-body-wrap{width:92%;max-width:none}.bp-panel{border-left:none;border-top:1px solid var(--bp-line-faint);height:38%;padding:18px;overflow:hidden}.bp-panel-specs{gap:10px}.gear-stage-rail{gap:10px;font-size:11px;top:56px;left:28px;right:28px}.gear-stage-stamp{font-size:11px;bottom:16px;left:28px;right:28px}.gear-hero{padding:120px 28px 60px}.gear-request{padding:80px 28px 100px}}@media (prefers-reduced-motion:reduce){.bp-body-wrap{transition:none;transform:none!important}.bp-lens-stage{transition:none}.gh-scroll-line:after{animation:none}}@media (max-width:800px){.terminal .body{height:300px;padding:14px 16px}.terminal .t-kv{grid-template-columns:100px 14px 1fr;gap:2px;padding-left:10px}.terminal .bar>div:last-child{display:none}.gallery-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;gap:14px;padding-bottom:6px;overflow-x:auto}.gallery-tabs::-webkit-scrollbar{display:none}.gallery-tabs button{flex-shrink:0}.thero-title{font-size:clamp(56px,14vw,120px)}}@media (max-width:480px){.brand .meta{display:none}.toggle button,.toggle a.toggle-btn{padding:8px 13px}.toggle button,.toggle a.toggle-btn,.tile,.gallery-tabs button{touch-action:manipulation}.phero-title{font-size:clamp(52px,14vw,82px)}.phero-title .line:nth-child(2){padding-left:14px}.phero-frame{display:none}.phero-foot{flex-direction:column;align-items:flex-start;gap:18px;margin-top:24px}.phero-cta{justify-content:space-between;width:100%}.phero,.thero{padding:78px 18px 44px}.section{padding:44px 18px}.gallery-section .head,.gallery-tabs,.gallery,.foot{padding-left:18px;padding-right:18px}body[data-mode=photo] .section:before,body[data-mode=photo] .gallery-section:before,body[data-mode=photo] .foot:before{width:120px;left:18px}.copyline{padding-left:18px;padding-right:18px}.gallery{gap:10px}.tile.s-tall,.tile.s-wide,.tile.s-square,.tile.s-half,.tile.s-third,.tile.s-full{grid-column:span 12}.tile.s-tall{aspect-ratio:3/4}.tile.s-wide{aspect-ratio:16/9}.tile.s-square{aspect-ratio:1}.tile.s-half{aspect-ratio:4/3}.tile.s-third{aspect-ratio:4/5}.tile.s-full{aspect-ratio:16/9}.terminal .body{height:260px}.terminal .prompt-full .cwd{display:none}.gear-hero{padding:100px 18px 48px}.gear-request{padding:64px 18px 80px}}@media (max-width:640px){.gear-stage{padding:60px 18px 18px}.gear-stage-rail{top:48px;left:18px;right:18px}.gear-stage-stamp{left:18px;right:18px}.gear-hero-title{font-size:clamp(44px,12vw,80px)}}@media (hover:none){.tile .ix{opacity:.75}}@media (max-width:1024px){.lb-close,.lb-edge-nav{touch-action:manipulation}}@media (max-width:640px){.lb-panel{max-height:32vh}.lb-frame{gap:8px}.lb-edge-nav{opacity:1;background:#0c0a08b8;border-color:#f0e9d838;width:52px;height:52px}.lb-edge-nav.prev{left:10px}.lb-edge-nav.next{right:10px}.lb-edge-nav svg{width:22px;height:22px}.lb-close kbd{display:none}.lb-close{height:40px;padding:0 12px;top:10px;right:10px}.lb-stage-bar{gap:8px}}
