@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Archivo;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Archivo;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_cb24bf{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_cb24bf{--font-archivo:"Archivo","Archivo Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_c8daab{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_c8daab{--font-plex-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_595324{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_595324{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}@font-face{font-family:nameFont;src:url(/_next/static/media/6b59b66bc06787d3-s.p.otf) format("opentype");font-display:swap}@font-face{font-family:nameFont Fallback;src:local("Arial");ascent-override:63.51%;descent-override:15.47%;line-gap-override:8.22%;size-adjust:131.92%}.__className_09a0e0{font-family:nameFont,nameFont Fallback}.__variable_09a0e0{--font-name:"nameFont","nameFont Fallback"}:root{--bg:#12100d;--bg-raised:#1c1913;--bg-raised-2:#221e17;--ink:#f3eee6;--ink-dim:#cdc4b6;--muted:#948a7c;--accent:hwb(19 7% 4%);--accent-ink:#12100d;--line:#fe6715;--line-strong:#3c372c;--star-opacity:.8;--font-display:var(--font-archivo),"Arial Narrow",sans-serif;--font-body:var(--font-plex-sans),-apple-system,"Segoe UI",sans-serif;--font-mono:var(--font-plex-mono),"SFMono-Regular",Menlo,Consolas,monospace;--maxw:1180px}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f6f1e7;--bg-raised:#fffdf9;--bg-raised-2:#efe8d9;--ink:#1c1712;--ink-dim:#3a3227;--muted:#766a58;--accent:#ef6713;--accent-ink:#fffdf9;--line:#e2d9c5;--line-strong:#cfc3a8;--star-opacity:0}}:root[data-theme=light]{--bg:#f6f1e7;--bg-raised:#fffdf9;--bg-raised-2:#efe8d9;--ink:#1c1712;--ink-dim:#3a3227;--muted:#766a58;--accent:#1a94b3;--accent-ink:#fffdf9;--line:#e2d9c5;--line-strong:#cfc3a8;--star-opacity:0}:root[data-theme=dark]{--bg:#12100d;--bg-raised:#1c1913;--bg-raised-2:#221e17;--ink:#f3eee6;--ink-dim:#cdc4b6;--muted:#948a7c;--accent:hsl(18,69%,52%);--accent-ink:#12100d;--line:#2e2a22;--line-strong:#3c372c;--star-opacity:1}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.101em;text-wrap:balance;margin:0}p{margin:0}.eyebrow,.mono{font-family:var(--font-mono)}.eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:.5em;margin-bottom:1rem}.eyebrow:before{content:"[";color:var(--muted)}.eyebrow:after{content:"]";color:var(--muted)}header.site{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(10px) saturate(1.1);backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid var(--line)}header.site .bar{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;padding-bottom:1rem}.mark{font-family:var(--font-mono);font-weight:600;font-size:.95rem;letter-spacing:.04em;text-decoration:none;color:var(--ink);transition:color .2s ease}.mark strong,.mark:hover{color:var(--accent)}nav.links{display:flex;align-items:center;gap:clamp(1rem,2vw,1.75rem)}nav.links a{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.04em;text-decoration:none;color:var(--ink-dim);padding:.3rem 0;border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease}nav.links a:hover{color:var(--ink);border-color:var(--line-strong)}.btn{font-family:var(--font-mono);font-size:.88rem;font-weight:800;letter-spacing:.3em;text-decoration:none;color:var(--ink);border:1px solid var(--line-strong);padding:.55rem 1rem;display:inline-block;transition:background .45s ease-in-out,color .15s ease,border-color .15s ease,transform .15s ease;white-space:nowrap}.btn:hover{border-color:white;transform:translateY(-2px)}.btn-solid,.btn:hover{background:var(--accent);color:var(--accent-ink)}.btn-solid{border-color:var(--accent)}.btn-solid:hover{opacity:.88;background:var(--accent);color:var(--accent-ink)}.nav-cta{display:none}@media (min-width:720px){.nav-cta{display:inline-block}}.nav-toggle{display:none}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none}.hero-inner{position:relative;padding-block:clamp(4rem,10vw,7.5rem) clamp(3rem,6vw,4.5rem)}.hero-glow{position:absolute;top:-20%;right:-10%;width:80vw;height:60vw;max-width:900px;max-height:900px;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent) 0,transparent 70%);pointer-events:none;animation:glow-pulse 18s ease-in-out infinite}@keyframes glow-pulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.role-line{font-family:var(--font-mono);font-size:clamp(.85rem,1.4vw,1rem);color:var(--ink-dim);letter-spacing:.02em;margin-bottom:1.25rem}.role-line .dot{color:var(--accent)}h1.name{font-family:var(--font-name),var(--font-display);font-size:clamp(3.2rem,10vw,7.5rem);line-height:.92;text-transform:uppercase;letter-spacing:6px;margin-top:-.475em}.name-accent-letter{color:var(--accent)}.tagline{max-width:42rem;margin-top:1.75rem;font-size:clamp(1.05rem,2vw,1.35rem);color:var(--ink-dim);font-weight:400}.tagline strong{color:var(--ink);font-weight:600}.hero-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:2.25rem;font-family:var(--font-mono);font-size:.82rem;color:var(--muted)}.hero-meta span{display:inline-flex;align-items:center;gap:.5em}.hero-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}.marquee{margin-top:0;border-bottom:1px solid var(--line);background:var(--bg-raised);overflow:hidden;white-space:nowrap}.marquee-track{display:inline-flex;animation:scroll 70s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track span{font-family:var(--font-mono);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);padding:.9rem 1.5rem;display:inline-flex;align-items:center;gap:1.5rem;border-right:1px solid var(--line)}.marquee-track span em{color:var(--accent);font-style:normal}@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}section{padding:clamp(4rem,9vw,6.5rem) 0;border-bottom:1px solid var(--line)}section.no-border{border-bottom:none}.section-head{max-width:44rem;margin-bottom:clamp(2.5rem,5vw,3.5rem)}.section-head h2{font-size:clamp(1.9rem,4vw,3rem);line-height:1.05}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:clamp(2.5rem,6vw,5rem);gap:clamp(2.5rem,6vw,5rem);align-items:start}@media (max-width:860px){.about-grid{grid-template-columns:1fr}}.about-media-stack:empty{display:none}.about-grid:has(>.about-media-stack:empty){grid-template-columns:1fr}.lede{font-size:clamp(1.1rem,2.2vw,1.4rem);color:var(--ink-dim);max-width:54rem}.lede strong{color:var(--ink);font-weight:600}.about-body p+p{margin-top:1.1rem}.about-media-stack{display:flex;flex-direction:column}.about-media{border-radius:1rem;overflow:hidden}.about-media-delayed{margin-top:77px;padding-top:17px}.about-media video{display:block;width:100%;height:auto;object-fit:cover;opacity:.55;filter:sepia(.35) saturate(1.6) hue-rotate(-8deg) contrast(1.05)}.about-body{color:var(--ink-dim);max-width:54rem;margin-top:1.5rem}.pillars{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line)}.pillar{background:var(--bg);padding:1.5rem 1.6rem;transition:background-color .25s ease}.pillar:hover{background:var(--bg-raised)}.pillar-num{font-family:var(--font-mono);font-size:.72rem;color:var(--accent);letter-spacing:.1em}.pillar h3{font-family:var(--font-body);font-weight:700;font-size:1.05rem;margin-top:.5rem}.pillar p{color:var(--muted);font-size:.92rem;margin-top:.4rem}.work-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line)}@media (max-width:820px){.work-grid{grid-template-columns:1fr}}.card{background:var(--bg-raised);padding:clamp(1.6rem,3vw,2.25rem);display:flex;flex-direction:column;position:relative;transform-style:preserve-3d;will-change:transform;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease-out}.card:hover{background:var(--bg-raised-2);z-index:1;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}.card-media{height:230px;margin-bottom:1.4rem;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--line-strong);overflow:hidden;transform:translateZ(6px)}.card-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}@media (max-width:820px){.card-media{height:260px}}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;transform:translateZ(18px)}.card-tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.card-period,.card-tag{font-family:var(--font-mono)}.card-period{font-size:.72rem;color:var(--muted);white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card h3{font-family:var(--font-body);font-weight:700;font-size:1.3rem;margin-bottom:.75rem;transform:translateZ(28px)}.card p.desc{color:var(--ink-dim);font-size:.96rem;flex:1 1}.tagset{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.4rem;transform:translateZ(12px)}.tag{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-dim);border:1px solid var(--line-strong);padding:.25rem .55rem;transition:transform .18s ease,border-color .18s ease,color .18s ease;display:inline-block}.tag:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--ink)}.timeline{position:relative;padding-left:1.75rem}.timeline:before{content:"";position:absolute;left:0;top:.4rem;bottom:.4rem;width:1px;background:var(--line-strong)}.tl-item{position:relative;padding-bottom:clamp(2.5rem,5vw,3.5rem)}.tl-item:last-child{padding-bottom:0}.tl-item:before{content:"";position:absolute;left:-1.75rem;top:.35rem;width:9px;height:9px;background:var(--accent);transform:translateX(-4px)}.tl-date{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.03em}.tl-item h3{font-family:var(--font-body);font-weight:700;font-size:1.3rem;margin-top:.4rem}.tl-item .role-sub{color:var(--muted);font-size:.88rem;margin-top:.2rem;font-family:var(--font-mono)}.tl-roles{margin-top:1.5rem;display:grid;grid-gap:1.1rem;gap:1.1rem}.tl-role{border-top:1px solid var(--line);padding-top:1.1rem;transition:border-color .2s ease}.tl-role:hover{border-color:var(--accent)}.tl-role .rt{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:var(--font-mono);font-size:.78rem;color:var(--ink-dim)}.tl-role .rt strong{color:var(--ink);font-family:var(--font-body);font-weight:600;font-size:.98rem}.tl-role p{color:var(--muted);font-size:.9rem;margin-top:.45rem;max-width:44rem}.skill-groups{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2.5rem 3rem;gap:2.5rem 3rem}@media (max-width:720px){.skill-groups{grid-template-columns:1fr}}.skill-group h3{font-family:var(--font-mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;margin-bottom:.9rem}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tags .tag{color:var(--ink)}.oss-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line)}@media (max-width:820px){.oss-grid{grid-template-columns:1fr}}.oss-card{background:var(--bg-raised);padding:1.75rem;display:flex;flex-direction:column;gap:.6rem;transition:background-color .25s ease}.oss-card:hover{background:var(--bg-raised-2)}.oss-card .oname{font-family:var(--font-mono);font-weight:600;font-size:1.05rem}.oss-card p{color:var(--muted);font-size:.9rem;flex:1 1}.oss-card .gh{font-family:var(--font-mono);font-size:.78rem;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.oss-card .gh:hover{text-decoration:underline}.contact-inner{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.contact-inner h2{font-size:clamp(2rem,4vw,3.4rem);max-width:26ch}footer{padding:2.5rem 0}.foot-row{justify-content:space-between;gap:1rem;align-items:center;font-family:var(--font-mono);font-size:.78rem;color:var(--muted)}.foot-links,.foot-row{display:flex;flex-wrap:wrap}.foot-links{gap:1.5rem}.foot-links a{color:var(--ink-dim);text-decoration:none}.foot-links a:hover{color:var(--accent)}.starfield{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;opacity:var(--star-opacity);transition:opacity .4s ease-out}.star{position:absolute;top:var(--y);left:var(--x);width:var(--size);height:var(--size);border-radius:50%;background:var(--ink);animation:twinkle var(--dur) ease-in-out var(--delay) infinite}@keyframes twinkle{0%,58%,to{opacity:var(--min-op)}90%{opacity:var(--max-op)}}.landscape{position:fixed;left:0;right:0;bottom:0;z-index:0;overflow:hidden;pointer-events:none;line-height:0}.landscape img{display:block;width:100%;height:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ufo-layer{position:fixed;inset:0;z-index:10050;overflow:hidden;pointer-events:none;opacity:var(--star-opacity);transition:opacity .4s ease-out}.satellite{left:-14%;z-index:565;filter:drop-shadow(0 0 6px rgba(223,3,3,.35))}.satellite,.ufo{position:absolute;top:var(--y);width:var(--size);height:auto;opacity:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ufo{--glow:223 3 3;--dir:1;--tilt:6deg;--zoom-near:1.4;left:calc(50% - var(--dir) * 64vw);filter:drop-shadow(0 0 1.5px rgb(var(--glow)/.95)) drop-shadow(0 0 6px rgb(var(--glow)/.7)) drop-shadow(0 0 15px rgb(var(--glow)/.45));animation-duration:var(--dur);animation-iteration-count:1;animation-fill-mode:both;will-change:transform,opacity}.ufo--p1{animation-name:ufo-p1;animation-timing-function:ease-out}.ufo--p2{animation-name:ufo-p2;animation-timing-function:linear}.ufo--p3{animation-name:ufo-p3;animation-timing-function:ease-in-out}.ufo--p4{animation-name:ufo-p4;animation-timing-function:linear}.ufo--p5{animation-name:ufo-p5;animation-timing-function:ease-in-out}@keyframes ufo-p1{0%{transform:translate(0) scale(var(--zoom-in));opacity:0;animation-timing-function:cubic-bezier(.09,.6,.3,1)}4%{opacity:1}9%{transform:translate(calc(var(--x) * var(--dir) * 1vw)) scale(var(--zoom-in));opacity:1;animation-timing-function:cubic-bezier(.3,0,.25,1)}20%{transform:translate(calc(var(--x) * var(--dir) * 1vw)) scale(.72);animation-timing-function:cubic-bezier(.34,1.4,.5,1)}26%{transform:translate(calc(var(--x) * var(--dir) * 1vw),calc(var(--bob) * -.6)) scale(1) rotate(calc(var(--tilt) * -1))}38%{transform:translate(calc(var(--x) * var(--dir) * 1vw),var(--bob)) scale(var(--zoom-near)) rotate(var(--tilt));animation-timing-function:ease-in-out}50%{transform:translate(calc(var(--x) * var(--dir) * 1vw),calc(var(--bob) * -.8)) scale(.9) rotate(calc(var(--tilt) * -.6))}58%{transform:translate(calc(var(--x) * var(--dir) * 1vw),calc(var(--bob) * -.2)) scale(1);opacity:1}65%{transform:translate(calc((var(--x) - 6) * var(--dir) * 1vw)) scale(calc(var(--zoom-near) * 1.15));opacity:1;animation-timing-function:cubic-bezier(.75,0,1,.5)}76%{transform:translate(calc(var(--dir) * 150vw),calc(var(--bob) * -.5)) scale(.35);opacity:0}to{transform:translate(calc(var(--dir) * 150vw),calc(var(--bob) * -.5)) scale(.35);opacity:0}}@keyframes ufo-p2{0%{transform:translate(0) scale(var(--zoom-in));opacity:0;animation-timing-function:cubic-bezier(.15,.75,.35,1)}4%{opacity:1}11%{transform:translate(calc(var(--dir) * 14vw),calc(var(--bob) * -1.2)) scale(calc(var(--zoom-in) * .7)) rotate(calc(var(--tilt) * -1.2));opacity:1;animation-timing-function:cubic-bezier(.85,0,.15,1)}22%{transform:translate(calc(var(--dir) * 30vw),calc(var(--bob) * 2.4)) scale(.55) rotate(calc(var(--tilt) * 1.6));animation-timing-function:cubic-bezier(.8,0,.15,1)}34%{transform:translate(calc(var(--dir) * 44vw),calc(var(--bob) * -2)) scale(var(--zoom-near)) rotate(calc(var(--tilt) * -1.5));animation-timing-function:cubic-bezier(.85,0,.15,1)}46%{transform:translate(calc(var(--dir) * 60vw),calc(var(--bob) * 1.8)) scale(.6) rotate(calc(var(--tilt) * 1.2));animation-timing-function:cubic-bezier(.9,0,.1,1)}58%{transform:translate(calc(var(--dir) * 74vw),calc(var(--bob) * -1.4)) scale(calc(var(--zoom-near) * .85)) rotate(calc(var(--tilt) * -1));animation-timing-function:cubic-bezier(.9,0,.1,1)}68%{transform:translate(calc(var(--dir) * 88vw),calc(var(--bob) * .5)) scale(.7) rotate(calc(var(--tilt) * .6));opacity:1;animation-timing-function:cubic-bezier(.6,0,1,.6)}80%{transform:translate(calc(var(--dir) * 150vw)) scale(.3);opacity:0}to{transform:translate(calc(var(--dir) * 150vw)) scale(.3);opacity:0}}@keyframes ufo-p3{0%{transform:translate(0) scale(var(--zoom-in));opacity:0;animation-timing-function:cubic-bezier(.05,.85,.2,1)}4%{opacity:1}11%{transform:translate(calc(var(--x) * var(--dir) * 1vw)) scale(var(--zoom-in));opacity:1;animation-timing-function:cubic-bezier(.2,0,.9,.2)}20%{transform:translate(calc(var(--x) * var(--dir) * 1vw)) scale(.9);animation-timing-function:cubic-bezier(.55,0,.85,.3)}33%{transform:translate(calc(var(--x) * var(--dir) * 1vw),34vh) scale(var(--zoom-near));animation-timing-function:cubic-bezier(.2,.9,.3,1)}40%{transform:translate(calc((var(--x) + 2) * var(--dir) * 1vw),30vh) scale(calc(var(--zoom-near) * .82)) rotate(calc(var(--tilt) * -1))}52%{transform:translate(calc((var(--x) - 2) * var(--dir) * 1vw),calc(30vh + var(--bob))) scale(calc(var(--zoom-near) * .95)) rotate(var(--tilt))}63%{transform:translate(calc(var(--x) * var(--dir) * 1vw),28vh) scale(calc(var(--zoom-near) * 1.45));opacity:1;animation-timing-function:cubic-bezier(.85,0,1,.4)}78%{transform:translate(calc(var(--dir) * 150vw),-40vh) scale(.22);opacity:0}to{transform:translate(calc(var(--dir) * 150vw),-40vh) scale(.22);opacity:0}}@keyframes ufo-p4{0%{transform:translateY(22vh) scale(.22) rotate(calc(var(--tilt) * -1.5));opacity:0}8%{opacity:1}24%{transform:translate(calc(var(--dir) * 32vw),2vh) scale(calc(var(--zoom-in) * .32)) rotate(calc(var(--tilt) * -1))}38%{transform:translate(calc(var(--dir) * 52vw),-8vh) scale(calc(var(--zoom-in) * .72)) rotate(calc(var(--tilt) * -.35));animation-timing-function:ease-in-out}50%{transform:translate(calc(var(--dir) * 70vw),-11vh) scale(var(--zoom-in)) rotate(0deg);animation-timing-function:ease-in-out}62%{transform:translate(calc(var(--dir) * 88vw),-7vh) scale(calc(var(--zoom-in) * .6)) rotate(calc(var(--tilt) * .6));opacity:1}74%{transform:translate(calc(var(--dir) * 106vw),2vh) scale(calc(var(--zoom-in) * .28)) rotate(calc(var(--tilt) * 1.1));opacity:1}86%{transform:translate(calc(var(--dir) * 128vw),12vh) scale(.18) rotate(calc(var(--tilt) * 1.4));opacity:0}to{transform:translate(calc(var(--dir) * 150vw),20vh) scale(.15) rotate(calc(var(--tilt) * 1.4));opacity:0}}@keyframes ufo-p5{0%{transform:translate(0) scale(var(--zoom-in));opacity:0;animation-timing-function:cubic-bezier(.2,.8,.3,1)}6%{opacity:1}14%{transform:translate(calc((var(--x) - 8) * var(--dir) * 1vw)) scale(calc(var(--zoom-in) * .6));opacity:1;animation-timing-function:cubic-bezier(.4,0,.2,1)}28%{transform:translate(calc(var(--x) * var(--dir) * 1vw),calc(var(--bob) * -.5)) scale(.42);animation-timing-function:ease-in-out}38%{transform:translate(calc((var(--x) + 3) * var(--dir) * 1vw),var(--bob)) scale(.5) rotate(var(--tilt))}50%{transform:translate(calc((var(--x) - 3) * var(--dir) * 1vw),calc(var(--bob) * -1.6)) scale(.44) rotate(calc(var(--tilt) * -1))}58%{transform:translate(calc(var(--x) * var(--dir) * 1vw),calc(var(--bob) * .4)) scale(.5);animation-timing-function:cubic-bezier(.5,0,.4,1)}70%{transform:translate(calc((var(--x) + 5) * var(--dir) * 1vw),calc(var(--bob) * -.8)) scale(var(--zoom-near));opacity:1;animation-timing-function:cubic-bezier(.75,0,1,.4)}84%{transform:translate(calc(var(--dir) * -40vw),calc(var(--bob) * -2)) scale(.2);opacity:0}to{transform:translate(calc(var(--dir) * -40vw),calc(var(--bob) * -2)) scale(.2);opacity:0}}.satellite{left:-8%;animation:satellite-pass var(--dur) linear var(--delay) infinite}.satellite--rev{left:auto;right:-8%;animation-name:satellite-pass-rev}@keyframes satellite-pass{0%{transform:translate(0) rotate(0deg);opacity:0}4%{opacity:.9}96%{opacity:.9}to{transform:translate(122vw,55vh) rotate(10deg);opacity:0}}@keyframes satellite-pass-rev{0%{transform:translate(0) rotate(0deg);opacity:0}4%{opacity:.9}96%{opacity:.9}to{transform:translate(-112vw,55vh) rotate(-10deg);opacity:0}}footer,main{position:relative;z-index:1}@keyframes fade-in{0%{opacity:0}}.lightbox{position:fixed;inset:0;z-index:10002;align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .6s ease both}.lightbox,.lightbox-inner{display:flex;border:1px solid var(--line-strong)}.lightbox-inner{width:100%;max-width:980px;max-height:90vh;flex-direction:column;background:var(--bg-raised);box-shadow:0 4px 8px -20px #ffffff}.lightbox-head{display:flex;align-items:center;gap:1rem;padding:.9rem 1.1rem;border-bottom:1px solid var(--line)}.lightbox-head,.lightbox-title{border:1px solid var(--line-strong)}.lightbox-title{font-family:var(--font-body);font-weight:700;font-size:.95rem;color:var(--ink);flex:1 1}.lightbox-count{border:1px solid var(--line-strong);font-size:.75rem;color:var(--muted);white-space:nowrap}.lightbox-close{border:1px solid var(--muted);background:transparent;color:var(--ink);width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;line-height:1;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.lightbox-close:hover{background:var(--muted);border-color:var(--muted);color:var(--accent-ink)}.lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;flex:1 1;padding:clamp(1rem,2.5vw,1.75rem);overflow:hidden}.lightbox-img,.lightbox-stage{border:1px solid var(--line-strong)}.lightbox-img{max-width:100%;max-height:calc(90vh - 12rem);width:auto;height:auto;object-fit:contain}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:2.75rem;height:2.75rem;background:color-mix(in srgb,var(--bg-raised) 80%,transparent);color:var(--ink);font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--line-strong);transition:border-color .15s ease,background-color .15s ease,color .15s ease}.lightbox-nav:hover{background:var(--muted);border-color:var(--muted);color:var(--accent-ink)}.lightbox-prev{left:clamp(.5rem,2vw,1.5rem)}.lightbox-next{right:clamp(.5rem,2vw,1.5rem)}.lightbox-thumbs{display:flex;gap:.6rem;padding:0 1.1rem 1.1rem;overflow-x:auto}.lightbox-thumb{flex:none;width:4.5rem;height:3rem;padding:0;border:1px solid var(--line-strong);background:var(--bg);cursor:pointer;overflow:hidden;opacity:.6;transition:opacity .15s ease,border-color .15s ease}.lightbox-thumb img{width:100%;height:100%;object-fit:cover}.lightbox-thumb:hover{opacity:.9}.lightbox-thumb.active{opacity:1;border-color:var(--line-strong)}.reveal{opacity:0;transform:translateY(16px);transition:opacity 1.6s cubic-bezier(.16,.8,.3,1),transform 1.6s cubic-bezier(.16,.8,.3,1)}.reveal.reveal-down{transform:translateY(-12px)}.reveal.in-view{opacity:1;transform:translateY(0)}@media (max-width:720px){h2,h3{letter-spacing:-.03em}.starfield{opacity:calc(var(--star-opacity) * .65)}nav.links a{padding:.55rem 0}.btn{padding:.7rem 1rem}.hero-cta{display:grid;grid-gap:.6rem;gap:.6rem;width:100%}.hero-cta .btn{text-align:center}.tl-role .rt{flex-direction:column;gap:.15rem}}