@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_34dee6{font-family:Geist,Geist Fallback;font-style:normal}.__variable_34dee6{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/eb251072d3b5478c-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:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/e92f802bb57ccffe-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:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(/_next/static/media/4b9bb515ce6d026f-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:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/eb251072d3b5478c-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:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/e92f802bb57ccffe-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:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/4b9bb515ce6d026f-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:Newsreader;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/eb251072d3b5478c-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:Newsreader;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/e92f802bb57ccffe-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:Newsreader;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/4b9bb515ce6d026f-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:Newsreader;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062-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:Newsreader;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/665e920483964785-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:Newsreader;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/5611c55482296524-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:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062-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:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/665e920483964785-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:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/5611c55482296524-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:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062-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:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/665e920483964785-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:Newsreader;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/5611c55482296524-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:Newsreader Fallback;src:local("Times New Roman");ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.00%;size-adjust:105.48%}.__className_a25816{font-family:Newsreader,Newsreader Fallback}.__variable_a25816{--font-serif:"Newsreader","Newsreader Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}.container{max-width:var(--max-content);margin:0 auto;padding:0 var(--gutter)}.prose{max-width:var(--max-prose)}.site-main{display:block;min-height:calc(100vh - var(--nav-height));position:relative;z-index:0}.rule{height:1px;background:var(--border);border:0;margin:0}.nav{position:sticky;top:0;z-index:40;height:var(--nav-height);display:flex;align-items:center;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid transparent;transition:border-color var(--duration-base) var(--ease)}.nav[data-scrolled=true]{border-bottom-color:var(--border)}.nav-inner{width:100%;max-width:var(--max-content);margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.brand{display:inline-flex;align-items:baseline;gap:9px;font-family:var(--font-serif);font-size:17px;letter-spacing:-.015em;color:var(--fg);text-decoration:none}.brand-dot{width:5px;height:5px;border-radius:50%;background:var(--signal);transform:translateY(-1px);transition:transform var(--duration-base) var(--ease)}.brand:hover .brand-dot{transform:translateY(-1px) scale(1.5)}.nav-links{display:flex;gap:clamp(16px,3vw,34px);align-items:center}.nav-link{position:relative;font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3);text-decoration:none;cursor:pointer;background:none;border:0;padding:4px 0;transition:color var(--duration-fast) var(--ease)}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--fg);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-base) var(--ease)}.nav-link:hover{color:var(--fg)}.nav-link.active:after,.nav-link:hover:after{transform:scaleX(1)}.nav-link.active{color:var(--fg)}.nav-right{gap:clamp(14px,2.4vw,28px)}.nav-meta,.nav-right{display:flex;align-items:center}.nav-meta{gap:var(--space-4);padding-left:clamp(14px,2.4vw,28px);border-left:1px solid var(--border);height:22px}.brand{white-space:nowrap}.nav-progress{position:absolute;left:0;bottom:-1px;height:1px;background:var(--fg);transform-origin:left;transform:scaleX(0);width:100%;opacity:.55}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);border:0;background:transparent;color:var(--fg-3);cursor:pointer;transition:color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.theme-toggle:hover{color:var(--fg);background:var(--surface-2)}.hero{padding:clamp(68px,12vh,132px) 0 clamp(52px,9vh,96px)}.hero-kicker{margin-bottom:clamp(22px,3.4vw,38px)}.hero-kicker .splitflap{--sf-w:clamp(14px,1.9vw,26px);--sf-h:clamp(20px,2.7vw,37px);--sf-fs:clamp(9px,1.2vw,17px);--sf-r:clamp(1.5px,0.2vw,3px);gap:clamp(1.5px,.24vw,3px)}.hero-kicker .splitflap-cell{box-shadow:0 1px 1px rgba(25,24,23,.05)}.dark .hero-kicker .splitflap-cell{box-shadow:0 1px 2px rgba(0,0,0,.3)}.hero-hail{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3);margin-bottom:clamp(24px,4vw,40px);display:flex;align-items:center;gap:12px}.hero-hail:after{content:"";height:1px;flex:1;max-width:120px;background:var(--border-strong)}.hero-title{font-family:var(--font-serif);font-size:clamp(42px,6.6vw,84px);font-weight:500;letter-spacing:-.032em;line-height:1;color:var(--fg);max-width:20ch;margin:0 0 clamp(22px,2.8vw,32px);text-wrap:balance}.hero-title em{font-style:italic;color:var(--fg)}.hero-lead{font-size:clamp(17px,1.45vw,20px);line-height:1.6;color:var(--fg-2);max-width:50ch;margin:0}.hero-rail{margin-top:clamp(48px,8vw,88px);padding-top:var(--space-5);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}.rail-item{display:flex;flex-direction:column;gap:10px;min-width:0}.rail-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted)}.rail-value{font-size:14px;color:var(--fg-2);letter-spacing:-.005em}.rail-value a{color:var(--fg-2);text-decoration:none;border-bottom:1px solid var(--border-strong);padding-bottom:1px;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.rail-value a:hover{color:var(--signal);border-color:var(--signal)}.splitflap{display:flex;flex-wrap:nowrap;align-items:center;gap:2px;--sf-w:clamp(10px,1.5vw,14px);--sf-h:clamp(15px,2.2vw,20px);--sf-fs:clamp(8px,1.2vw,11px);--sf-r:2.5px;--sf-tile:color-mix(in srgb,var(--fg) 9%,var(--bg));--sf-char:var(--fg);--sf-edge:rgba(var(--border-rgb),0.16);--sf-seam:rgba(var(--border-rgb),0.20);font-family:var(--font-mono);font-size:var(--sf-fs);line-height:1.25;letter-spacing:.1em;color:var(--fg)}.dark .splitflap{--sf-tile:color-mix(in srgb,var(--fg) 12%,var(--bg));--sf-edge:rgba(var(--border-rgb),0.13);--sf-seam:rgba(var(--border-rgb),0.20)}.splitflap-cell{position:relative;display:inline-block;flex:none;width:var(--sf-w);height:var(--sf-h);perspective:calc(var(--sf-h) * 6);border-radius:var(--sf-r)}.splitflap-cell .sf-fold,.splitflap-cell .sf-half{position:absolute;left:0;width:100%;height:50%;overflow:hidden;background:var(--sf-tile);backface-visibility:hidden}.splitflap-cell .sf-top{top:0;border-radius:var(--sf-r) var(--sf-r) 0 0}.splitflap-cell .sf-bottom{bottom:0;border-radius:0 0 var(--sf-r) var(--sf-r)}.splitflap-cell .sf-half{z-index:1}.splitflap-cell .sf-half.sf-bottom{box-shadow:inset 0 -1px 2px rgba(var(--border-rgb),.05)}.splitflap-cell .sf-fold{z-index:3}.splitflap-cell .sf-fold.sf-top{transform-origin:center bottom;transform:rotateX(0deg)}.splitflap-cell .sf-fold.sf-bottom{transform-origin:center top;transform:rotateX(90deg)}.splitflap-cell .sf-fold>span,.splitflap-cell .sf-half>span{position:absolute;left:0;width:100%;height:var(--sf-h);line-height:var(--sf-h);font-family:var(--font-mono);font-size:var(--sf-fs);font-weight:500;text-align:center;letter-spacing:.02em;color:var(--sf-char);white-space:pre}.splitflap-cell .sf-top>span{top:0}.splitflap-cell .sf-bottom>span{bottom:0}.splitflap-cell:before{inset:0;border-radius:var(--sf-r);box-shadow:inset 0 0 0 1px var(--sf-edge);z-index:5}.splitflap-cell:after,.splitflap-cell:before{content:"";position:absolute;pointer-events:none}.splitflap-cell:after{left:0;right:0;top:50%;height:1px;transform:translateY(-50%);background:var(--sf-seam);z-index:6}.band{padding:clamp(56px,9vw,112px) 0;border-top:1px solid var(--border)}.band-grid{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}.band-rail{position:sticky;top:calc(var(--nav-height) + 32px);display:flex;flex-direction:column;gap:6px}.band-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3)}.band-note{font-size:12.5px;line-height:1.5;color:var(--fg-muted);margin:6px 0 0;max-width:24ch}.work-index{border-top:1px solid var(--border)}.work-row{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:baseline;gap:var(--space-5);width:100%;padding:clamp(20px,2.4vw,30px) 0;background:none;border:0;border-bottom:1px solid var(--border);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:opacity var(--duration-base) var(--ease)}.work-index:has(.work-row:hover) .work-row:not(:hover){opacity:.4}.work-num{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--fg-muted);transition:color var(--duration-base) var(--ease)}.work-row:hover .work-num{color:var(--signal)}.work-body{display:block;min-width:0}.work-name{display:inline-block;font-family:var(--font-serif);font-size:clamp(22px,2.7vw,32px);font-weight:400;letter-spacing:-.02em;line-height:1.15;color:var(--fg);transition:transform var(--duration-base) var(--ease-out)}.work-row:hover .work-name{transform:translateX(6px)}.work-blurb{display:block;font-size:14.5px;line-height:1.55;color:var(--fg-3);margin-top:6px;max-width:46ch;transition:transform var(--duration-base) var(--ease-out)}.work-row:hover .work-blurb{transform:translateX(6px)}.work-aside{display:flex;align-items:center;gap:var(--space-5);flex-shrink:0}.work-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);white-space:nowrap}.work-cue{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;color:var(--fg-3);opacity:0;transform:translateX(-6px);transition:opacity var(--duration-base) var(--ease),transform var(--duration-base) var(--ease-out)}.work-row:focus-visible .work-cue,.work-row:hover .work-cue{opacity:1;transform:none}.work-preview{position:fixed;top:0;left:0;z-index:30;width:300px;aspect-ratio:16/10;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);background:var(--surface-2);box-shadow:var(--shadow-3);pointer-events:none;opacity:0;transition:opacity var(--duration-base) var(--ease);will-change:transform}.work-preview[data-visible=true]{opacity:1}.work-preview-frame{position:absolute;inset:0;opacity:0;transition:opacity .2s var(--ease)}.work-preview-frame[data-active=true]{opacity:1}.work-preview-frame img{object-fit:cover}@media (hover:none),(pointer:coarse){.work-preview{display:none}}.about-body>*+*{margin-top:1.45em}.about-body p{font-size:clamp(16px,1.3vw,18px);line-height:1.72;color:var(--fg-2);max-width:54ch}.edu{margin-top:clamp(32px,4vw,48px);padding-top:var(--space-5);border-top:1px solid var(--border);display:grid;grid-template-columns:clamp(54px,6vw,78px) minmax(0,1fr);gap:var(--space-5);align-items:start;max-width:54ch}.edu-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);padding-top:5px}.edu-list{list-style:none;margin:0;padding:0}.edu-list li{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding:5px 0 9px;border-bottom:1px solid var(--border)}.edu-list li+li{padding-top:9px}.edu-list li:last-child{border-bottom:0;padding-bottom:0}.edu-school{font-size:15px;color:var(--fg);letter-spacing:-.005em}.edu-degree{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);white-space:nowrap}.contact-title{font-family:var(--font-serif);font-size:clamp(30px,4.6vw,56px);font-weight:400;letter-spacing:-.026em;line-height:1.05;color:var(--fg);margin:0 0 var(--space-6)}.contact-title em{font-style:italic}.contact-title{margin-bottom:clamp(28px,3.4vw,40px)}.contact-links{display:flex;flex-direction:column;border-top:1px solid var(--border)}.contact-link{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) 0;background:none;border:0;border-bottom:1px solid var(--border);width:100%;font:inherit;color:var(--fg);text-decoration:none;cursor:pointer;text-align:left;transition:color var(--duration-fast) var(--ease)}.contact-link:hover{color:var(--signal)}.contact-link-value{font-family:var(--font-serif);font-size:clamp(19px,2.2vw,26px);letter-spacing:-.018em}.contact-link-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);transition:color var(--duration-fast) var(--ease)}.contact-link:hover .contact-link-label{color:var(--signal)}.btn{font-family:var(--font-sans);font-size:14px;font-weight:500;letter-spacing:-.005em;padding:10px 18px;border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:opacity var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease),transform 80ms var(--ease);text-decoration:none;display:inline-flex;align-items:center;gap:8px;line-height:1}.btn:active{transform:scale(.98)}.btn-primary{background:var(--fg);color:var(--bg)}.btn-primary:hover{opacity:.86}.btn-secondary{background:transparent;color:var(--fg);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{background:transparent;color:var(--fg);padding:10px 0}.btn-ghost:hover{opacity:.6}.btn-sm{font-size:12.5px;padding:7px 14px}.arrow-link{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg);text-decoration:none;display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;cursor:pointer;transition:color var(--duration-fast) var(--ease)}.arrow-link:hover{color:var(--signal)}.arrow-link .arrow{transition:transform var(--duration-base) var(--ease-out);display:inline-block}.arrow-link:hover .arrow{transform:translateX(4px)}.chip{font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--tracking-caps);text-transform:uppercase;padding:5px 11px;border-radius:var(--radius-pill);background:transparent;color:var(--fg-3);border:1px solid var(--border-strong);cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.chip.active,.chip:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.badge{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);color:var(--fg-3);display:inline-block}.case{display:flex;flex-direction:column;max-height:min(90vh,940px);overflow-y:auto;overscroll-behavior:contain}.dialog-close{position:absolute;top:14px;right:14px;z-index:10;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-pill);border:1px solid var(--border);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--fg-3);cursor:pointer;transition:color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.dialog-close:hover{color:var(--fg);background:var(--surface-2)}.dialog-close-lg{top:20px;right:20px;width:40px;height:40px;box-shadow:var(--shadow-2)}.image-frame{display:block;width:100%;padding:0;background:var(--surface-2);cursor:zoom-in;color:inherit;font:inherit;transition:opacity var(--duration-base) var(--ease)}.image-frame:hover{opacity:.9}.image-frame img{object-fit:cover}.case-head{padding:clamp(28px,4vw,48px) clamp(24px,4vw,52px) clamp(20px,3vw,32px)}.case-kicker{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);margin-bottom:var(--space-5)}.case-kicker span+span:before{content:"·";margin-right:10px;color:var(--border-strong)}.case-title{font-family:var(--font-serif);font-size:clamp(30px,4.4vw,48px);font-weight:400;letter-spacing:-.026em;line-height:1.04;color:var(--fg);margin:0}.case-sub{font-size:clamp(15px,1.3vw,17.5px);line-height:1.6;color:var(--fg-2);margin-top:var(--space-4);max-width:52ch}.case-actions{margin-top:var(--space-6);display:flex;gap:var(--space-6);flex-wrap:wrap}.case-figure{position:relative;flex:none;width:100%;aspect-ratio:16/9;overflow:hidden;border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.case-gallery .case-figure{border:1px solid var(--border);border-radius:var(--radius-md)}.case-body{padding:clamp(28px,4vw,48px) clamp(24px,4vw,52px) clamp(32px,5vw,56px);display:flex;flex-direction:column;gap:clamp(24px,3.4vw,40px)}.case-block{display:grid;grid-template-columns:116px minmax(0,1fr);gap:var(--space-6);align-items:start}.case-block-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);padding-top:5px}.case-block-body p{font-size:16px;line-height:1.68;color:var(--fg-2);max-width:58ch}.case-list{margin:0;padding:0;list-style:none;counter-reset:casestep}.case-list li{counter-increment:casestep;position:relative;padding-left:30px;padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--border);font-size:15.5px;line-height:1.6;color:var(--fg-2);max-width:58ch}.case-list li:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.case-list li:before{content:counter(casestep,decimal-leading-zero);position:absolute;left:0;top:3px;font-family:var(--font-mono);font-size:10px;color:var(--fg-muted);letter-spacing:.04em}.case-gallery{display:flex;flex-direction:column;gap:var(--space-4)}.footer{position:relative;z-index:0;padding:clamp(56px,8vw,96px) 0 var(--space-8);border-top:1px solid var(--border);background:var(--bg-tint)}.footer-inner{width:100%;max-width:var(--max-content);margin:0 auto;padding:0 var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-10);flex-wrap:wrap}.footer-brand{font-family:var(--font-serif);font-size:clamp(52px,9vw,104px);font-weight:400;letter-spacing:-.045em;color:var(--fg);line-height:.86;text-decoration:none;transition:color var(--duration-base) var(--ease)}.footer-brand:hover{color:var(--signal)}.footer-cols{display:flex;gap:clamp(32px,6vw,72px)}.footer-col{display:flex;flex-direction:column;gap:var(--space-2)}.footer-col-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);margin-bottom:var(--space-2)}.footer-link{font-size:13.5px;color:var(--fg-3);text-decoration:none;transition:color var(--duration-fast) var(--ease);background:none;border:0;padding:0;cursor:pointer;text-align:left}.footer-link:hover{color:var(--fg)}.colophon{width:100%;max-width:var(--max-content);margin:clamp(40px,6vw,72px) auto 0;padding:var(--space-5) var(--gutter) 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted);flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted)}.field-input,.field-textarea{font-family:var(--font-sans);font-size:15px;padding:11px 14px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);outline:none;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease);width:100%}.field-textarea{line-height:1.55;resize:vertical;min-height:140px}.field-input:focus,.field-textarea:focus{border-color:var(--fg);box-shadow:0 0 0 3px var(--selection)}.editorial-dialog{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);color:var(--fg)}.editorial-overlay{background:var(--scrim);backdrop-filter:blur(6px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%)}.reveal{opacity:1;transform:none;transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.reveal[data-shown=false]{opacity:0;transform:translateY(14px)}@media (prefers-reduced-motion:reduce){.reveal,.reveal[data-shown=false]{opacity:1;transform:none}}@media (max-width:900px){.band-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.band-rail{position:static;flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:var(--space-4)}.band-note{margin-top:0;max-width:100%}.case-block{grid-template-columns:1fr;gap:var(--space-3)}.case-block-label{padding-top:0}}@media (max-width:560px){.contact-link{flex-direction:column-reverse;align-items:flex-start;gap:6px}.contact-link-value{overflow-wrap:anywhere}.brand{font-size:15px}.nav-link{font-size:10px;letter-spacing:.08em}.nav-links{gap:13px}.nav-right{gap:12px}.nav-meta{padding-left:12px}.edu{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}.edu-label{padding-top:0}}@media (max-width:720px){.hero-rail{grid-template-columns:1fr;gap:var(--space-5)}.rail-item{flex-direction:row;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.work-row{grid-template-columns:28px minmax(0,1fr);row-gap:var(--space-3)}.work-aside{grid-column:2;min-width:0}.work-tag{white-space:normal}.work-cue{display:none}.footer-inner{flex-direction:column;align-items:flex-start;gap:var(--space-10)}.footer-cols{gap:var(--space-10);flex-wrap:wrap}.colophon{justify-content:flex-start;gap:var(--space-3)}}@media (max-width:380px){.colophon,.container,.footer-inner,.nav-inner{padding-left:16px;padding-right:16px}.brand{font-size:13px;gap:5px}.nav-link{font-size:9px;letter-spacing:.05em}.nav-links,.nav-right{gap:8px}.nav-meta{padding-left:8px}.theme-toggle{width:24px;height:24px}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono),ui-monospace,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--bg:#FAF9F6;--bg-tint:#F5F3EE;--surface:#FFFFFF;--surface-2:#F1EFE9;--fg:#191817;--fg-2:#4B4945;--fg-3:#7B7871;--fg-muted:#A9A69E;--border-rgb:25,24,23;--border:rgba(var(--border-rgb),0.09);--border-strong:rgba(var(--border-rgb),0.18);--accent:#191817;--accent-fg:#FAF9F6;--signal:#9C4A21;--link:#191817;--focus-ring:rgba(var(--border-rgb),0.4);--selection:rgba(156,74,33,0.14);--scrim:rgba(25,24,23,0.30);--grain:0.03;--shadow-1:0 1px 2px rgba(25,24,23,0.05);--shadow-2:0 1px 2px rgba(25,24,23,0.04),0 10px 30px rgba(25,24,23,0.07);--shadow-3:0 2px 6px rgba(25,24,23,0.06),0 30px 70px rgba(25,24,23,0.14);--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.75rem;--text-2xl:2.25rem;--text-3xl:3rem;--text-4xl:4rem;--text-5xl:5.5rem;--leading-tight:1.06;--leading-snug:1.25;--leading-normal:1.5;--leading-loose:1.62;--tracking-tight:-0.02em;--tracking-snug:-0.012em;--tracking-normal:-0.005em;--tracking-wide:0.04em;--tracking-caps:0.11em;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;--radius-sm:3px;--radius-md:6px;--radius-lg:10px;--radius-xl:14px;--radius-pill:999px;--radius:6px;--max-content:1080px;--max-prose:660px;--rail:148px;--gutter:clamp(20px,5vw,56px);--nav-height:62px;--scroll-offset:96px;--ease:cubic-bezier(0.32,0.72,0,1);--ease-out:cubic-bezier(0.22,1,0.36,1);--duration-fast:140ms;--duration-base:300ms;--duration-slow:620ms;--background:40 20% 97%;--foreground:30 4% 9%;--card:0 0% 100%;--card-foreground:30 4% 9%;--popover:0 0% 100%;--popover-foreground:30 4% 9%;--primary:30 4% 9%;--primary-foreground:40 20% 97%;--secondary:40 16% 93%;--secondary-foreground:30 4% 9%;--muted:40 16% 93%;--muted-foreground:33 5% 46%;--accent-hsl:40 16% 93%;--accent-foreground:30 4% 9%;--destructive:20 65% 37%;--destructive-foreground:40 20% 97%;--input:40 10% 88%;--ring:30 4% 9%;--chart-1:30 4% 9%;--chart-2:33 5% 46%;--chart-3:36 10% 62%;--chart-4:20 65% 37%;--chart-5:30 30% 55%}.dark{--bg:#100F0D;--bg-tint:#171512;--surface:#171613;--surface-2:#211F1B;--fg:#F3F1EB;--fg-2:#B9B5AC;--fg-3:#86827A;--fg-muted:#5D594F;--border-rgb:243,241,235;--border:rgba(var(--border-rgb),0.10);--border-strong:rgba(var(--border-rgb),0.20);--accent:#F3F1EB;--accent-fg:#100F0D;--signal:#D98A5E;--link:#F3F1EB;--focus-ring:rgba(var(--border-rgb),0.45);--selection:rgba(217,138,94,0.20);--scrim:rgba(0,0,0,0.62);--grain:0.045;--shadow-1:0 1px 2px rgba(0,0,0,0.5);--shadow-2:0 1px 2px rgba(0,0,0,0.5),0 10px 30px rgba(0,0,0,0.55);--shadow-3:0 2px 6px rgba(0,0,0,0.5),0 30px 70px rgba(0,0,0,0.65);--background:40 8% 6%;--foreground:45 23% 94%;--card:40 8% 9%;--card-foreground:45 23% 94%;--popover:40 8% 9%;--popover-foreground:45 23% 94%;--primary:45 23% 94%;--primary-foreground:40 8% 6%;--secondary:36 10% 12%;--secondary-foreground:45 23% 94%;--muted:36 10% 12%;--muted-foreground:40 6% 50%;--accent-hsl:36 10% 12%;--accent-foreground:45 23% 94%;--destructive:22 62% 61%;--destructive-foreground:40 8% 6%;--input:36 10% 17%;--ring:45 23% 94%;--chart-1:45 23% 94%;--chart-2:40 6% 50%;--chart-3:42 14% 70%;--chart-4:22 62% 61%;--chart-5:30 30% 55%}*{border-color:var(--border);box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-padding-top:var(--scroll-offset)}body,html{background:var(--bg)}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-loose);letter-spacing:var(--tracking-normal);color:var(--fg);font-feature-settings:"cv05" 1,"cv09" 1}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:var(--grain);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}::selection{background:var(--selection)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:var(--weight-regular);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);color:var(--fg);margin:0}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-md)}p{margin:0;font-size:var(--text-base);line-height:var(--leading-loose);color:var(--fg-2)}p+p{margin-top:1.1em}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:1.5px solid var(--focus-ring);outline-offset:3px;border-radius:2px}hr{border:0;border-top:1px solid var(--border);margin:var(--space-8) 0}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.left-\[50\%\]{left:50%}.top-\[50\%\]{top:50%}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.h-4{height:1rem}.h-5{height:1.25rem}.h-full{height:100%}.max-h-\[90vh\]{max-height:90vh}.w-4{width:1rem}.w-9{width:2.25rem}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-\[860px\]{max-width:860px}.max-w-lg{max-width:32rem}.shrink-0{flex-shrink:0}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-0{gap:0}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-md{border-radius:var(--radius-md)}.border{border-width:1px}.border-2{border-width:2px}.border-transparent{border-color:transparent}.bg-\[var\(--danger\)\]{background-color:var(--danger)}.bg-background{background-color:hsl(var(--background))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-2{padding:.5rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-center{text-align:center}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-\[color\:var\(--link\)\]{color:var(--link)}.text-\[var\(--bg\)\]{color:var(--bg)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.24s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.24s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.24s}.duration-300{transition-duration:.3s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.duration-300{animation-duration:.3s}.lead{font-size:var(--text-md);line-height:var(--leading-loose);color:var(--fg-2)}.eyebrow,.label{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-regular);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3)}.caption{font-size:var(--text-sm);color:var(--fg-3);line-height:var(--leading-normal)}.italic-serif,.serif{font-family:var(--font-serif)}.italic-serif{font-style:italic}.prose a,a.link{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:color-mix(in srgb,var(--link),transparent 68%);transition:text-decoration-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.prose a:hover,a.link:hover{color:var(--signal);text-decoration-color:var(--signal)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem}.data-\[state\=checked\]\:translate-x-4[data-state=checked],.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.24s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.24s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:text-left{text-align:left}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}