@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:600;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:600;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:600;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:800;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:800;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:800;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_939acb{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_939acb{--font-archivo:"Archivo","Archivo Fallback"}@font-face{font-family:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4b1cfd3867993fed-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:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/77f5a85cac4ea515-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bda87828535b47a7-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b22cdab1bc584ea3-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:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/eeeb642bd71d217b-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:Ubuntu;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/70d2fd2b9078a5a3-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:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e8773fdd4b7ad26f-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:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/23822ac40846484b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/387866ce4a39ca39-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/dbd9849a8a735d72-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:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/12a3e8885b69eb86-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:Ubuntu;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3ecd40fce058ee61-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:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/854d2e4705543874-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:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b188519314c42064-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/14d38ce06836ffee-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/cf66601165af2130-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:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b664222af7dcc13c-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:Ubuntu;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/33a864272e2b3e97-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:Ubuntu Fallback;src:local("Arial");ascent-override:91.32%;descent-override:18.52%;line-gap-override:2.74%;size-adjust:102.06%}.__className_f4f80c{font-family:Ubuntu,Ubuntu Fallback;font-style:normal}.__variable_f4f80c{--font-ubuntu:"Ubuntu","Ubuntu Fallback"}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cedd077c0f891edd-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:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/facf13258462dcea-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d56d74bcfcecdda2-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f80c5892e5a7a0e6-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:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/74bdcbd37e77ee59-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:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3b70f49e4997f325-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6e82f47b74b798b6-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5a43b42e42628976-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a29f3c6ff6ed5c14-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/49fbfcdc311de027-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4fc7ea80e76ae5f9-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/bc708e50edc22686-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:Ubuntu Mono Fallback;src:local("Arial");ascent-override:74.00%;descent-override:15.16%;line-gap-override:0.00%;size-adjust:112.16%}.__className_d6ec9c{font-family:Ubuntu Mono,Ubuntu Mono Fallback;font-style:normal}.__variable_d6ec9c{--font-ubuntu-mono:"Ubuntu Mono","Ubuntu Mono Fallback"}:root{--font-display:var(--font-archivo),"Archivo","Arial Black",sans-serif;--font-body:var(--font-ubuntu),"Ubuntu",system-ui,sans-serif;--font-mono:var(--font-ubuntu-mono),"Ubuntu Mono",ui-monospace,monospace;--orange:#e85b25;--orange-hi:#ec6229;--orange-lo:#d94e1c;--ink:#141414;--ink-2:#111;--cream:#f5efe6;--cream-line:#d8d0bf;--cream-border:#e2dac8;--cream-hover:#efe7d8;--code-bg:#17181c;--pad-x:clamp(20px,5vw,72px);--section-pad-y:clamp(64px,10vh,120px);--maxw:1280px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:#fff;font-family:var(--font-body);-webkit-font-smoothing:antialiased}::selection{background:var(--ink);color:var(--orange)}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}@keyframes marqueeX{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:var(--ink);color:var(--orange);padding:10px 18px;border-radius:8px;font-family:var(--font-mono);font-size:13px}.skip-link:focus{left:8px}:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}.js .reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.marquee-track{animation:none!important}}.section-inner{max-width:var(--maxw);margin:0 auto;padding:var(--section-pad-y) var(--pad-x)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:48px}.section-title{font-family:var(--font-display);font-weight:900;font-size:clamp(44px,7vw,96px);letter-spacing:-.03em;line-height:.95}.section-title .idx{font-size:.35em;font-weight:700;vertical-align:super}.section-sub{max-width:300px;font-size:14.5px;line-height:1.6;text-transform:uppercase;letter-spacing:.03em}.code-panel{background:var(--code-bg);border-radius:14px;padding:22px;font-family:var(--font-mono);font-size:12.5px;line-height:1.85;color:#b3bac4}.code-panel.code-sm{border-radius:9px;padding:14px;font-size:11px;line-height:1.75}.c-comment{color:#5a6270}.c-kw{color:#c586c0}.c-var{color:#7dbfe8}.c-str{color:#e8b96c}.hero{position:relative;overflow:hidden;background:linear-gradient(175deg,var(--orange-hi) 0,var(--orange) 55%,var(--orange-lo) 100%);color:#fff}.hero-grid,.hero-watermark{display:none}.hero-watermark{position:absolute;top:54px;left:50%;transform:translateX(-50%);font-family:var(--font-display);font-weight:900;font-size:clamp(120px,20vw,320px);letter-spacing:-.03em;color:rgba(255,255,255,.1);white-space:nowrap;line-height:1;z-index:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.nav{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:14px var(--pad-x)}.nav-logo{font-family:var(--font-display);font-weight:800;font-size:20px;color:#fff;text-decoration:none;letter-spacing:-.02em}.nav-logo sup{font-size:11px}.nav-links{display:flex;gap:clamp(20px,3vw,44px);align-items:center}.nav-link{font-size:13px;font-weight:500;color:#fff;letter-spacing:.04em;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;white-space:nowrap;transition:color .18s ease}.nav-link:hover{color:var(--ink)}.nav-link .num{font-size:10px;opacity:.75}.nav-toggle{display:none;flex-direction:column;gap:5px;width:42px;height:40px;padding:10px;background:none;border:1px solid rgba(255,255,255,.45);border-radius:10px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .25s}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero-body{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:30px;padding:18px var(--pad-x) 56px;text-align:center}.hero-name{order:1}.hero-copyright{font-size:15px;font-weight:500;margin-bottom:6px}.hero-h1{font-family:var(--font-display);font-weight:900;font-size:clamp(64px,20vw,180px);line-height:.88;letter-spacing:-.04em;color:#fff}.hero-statement{order:2;max-width:320px;font-size:16.5px;font-weight:500;line-height:1.55;letter-spacing:.03em;text-transform:uppercase}.hero-portrait{order:3;position:relative;width:min(360px,78vw);aspect-ratio:834/1290}.hero-portrait img{object-fit:contain;object-position:50% 100%}.hero-proj{order:4;width:min(280px,88vw);background:#fff;border-radius:14px;padding:10px;box-shadow:0 24px 60px rgba(120,30,0,.35);transition:transform .2s ease;text-align:left}.hero-proj:hover{transform:translateY(-4px)}.hero-proj-foot{display:flex;justify-content:space-between;align-items:center;padding:10px 6px 4px;font-size:12px}.hero-proj-foot .name{color:var(--ink);font-weight:700}.hero-proj-foot .kind{color:#8a8578}.hero-talk{order:5;display:flex;align-items:center;gap:14px;background:#151515;border-radius:14px;padding:12px 14px;width:min(320px,88vw);box-shadow:0 24px 60px rgba(80,20,0,.4);text-align:left}.hero-talk img{width:54px;height:54px;border-radius:8px;object-fit:cover;object-position:50% 0;background:var(--orange);flex:none}.hero-talk-info{display:flex;flex-direction:column;gap:2px;flex:1 1}.hero-talk-info .lbl{font-size:11px;color:#9a9a9a}.hero-talk-info .who{font-family:var(--font-display);font-size:15px;font-weight:700;color:#fff}.hero-talk-info .role{font-size:11.5px;color:#9a9a9a}.hero-talk-cta{width:42px;height:42px;border-radius:9px;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:18px;text-decoration:none;flex:none;transition:background .18s ease,color .18s ease}.hero-talk-cta:hover{background:var(--orange);color:#fff}.marquee{background:var(--ink);border-top:1px solid #2a2a2a;border-bottom:1px solid #2a2a2a;overflow:hidden;padding:20px 0}.marquee-track{display:flex;width:max-content;animation:marqueeX 28s linear infinite}.marquee-group{padding-right:34px}.marquee-group,.marquee-item{display:flex;gap:34px;align-items:center}.marquee-item{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:.01em;color:#fff;white-space:nowrap}.marquee-item .star{color:var(--orange);font-size:20px}.work{background:var(--cream);color:#1a1a1a}.work .section-title .idx{color:#c24413}.work .section-sub{color:#6b6455}.work-card{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:clamp(28px,4vw,64px);gap:clamp(28px,4vw,64px);background:#fff;border:1px solid var(--cream-border);border-radius:22px;padding:clamp(26px,4vw,52px);box-shadow:0 16px 48px rgba(60,40,10,.08)}.work-card-main{display:flex;flex-direction:column;gap:20px}.tags{display:flex;gap:8px;flex-wrap:wrap}.tag{font-size:11px;font-weight:700;letter-spacing:.06em;border:1px solid #1a1a1a;padding:6px 14px;border-radius:999px;text-transform:uppercase}.tag.tag-accent{background:var(--orange);border-color:var(--orange);color:#fff}.work-title{font-family:var(--font-display);font-weight:900;font-size:clamp(28px,3.6vw,52px);letter-spacing:-.02em;line-height:1}.work-desc{font-size:16px;line-height:1.65;color:#4b4639;max-width:56ch}.work-stats{display:flex;gap:28px;flex-wrap:wrap;margin-top:6px}.work-stat{display:flex;flex-direction:column;gap:2px}.work-stat .v{font-family:var(--font-display);font-weight:800;font-size:20px}.work-stat .k{font-family:var(--font-mono);font-size:11.5px;color:#8a8578}.work-code{align-self:stretch}.services{margin-top:72px}.service-row{display:grid;grid-template-columns:90px 1fr minmax(240px,320px);grid-gap:20px;gap:20px;align-items:center;border-top:1px solid var(--cream-line);padding:28px 0;transition:background .18s ease}.service-row:hover{background:var(--cream-hover)}.service-num{font-family:var(--font-mono);font-size:13px;color:#c24413}.service-title{font-family:var(--font-display);font-weight:800;font-size:clamp(22px,3vw,38px);letter-spacing:-.02em;text-transform:uppercase}.service-desc{font-size:14px;line-height:1.55;color:#6b6455}.services-end{border-top:1px solid var(--cream-line)}.experience{background:var(--ink);color:#fff}.experience .section-title .idx{color:var(--orange)}.experience .section-sub{color:#8a8a8a}.xp-row{border-top:1px solid #2e2e2e;padding:34px 0;display:grid;grid-template-columns:150px 1fr auto;grid-gap:24px;gap:24px;align-items:start;transition:background .18s ease}.xp-row:last-of-type{border-bottom:1px solid #2e2e2e;align-items:center}.xp-row:hover{background:#1a1a1a}.xp-date{font-family:var(--font-mono);font-size:13px;color:var(--orange);padding-top:8px}.xp-row:last-of-type .xp-date{padding-top:0}.xp-body{display:flex;flex-direction:column;gap:8px}.xp-title{font-family:var(--font-display);font-weight:800;font-size:clamp(24px,3vw,40px);letter-spacing:-.02em;text-transform:uppercase}.xp-title.sm{font-size:clamp(18px,2vw,26px);letter-spacing:-.01em}.xp-org{font-size:14px;color:#8a8a8a}.xp-desc{margin-top:6px;font-size:15px;line-height:1.65;color:#b8b8b8;max-width:64ch}.xp-star{font-size:22px}.xp-star.on{color:var(--orange)}.xp-star.off{color:#8a8a8a}.skills{background:var(--orange);color:#fff}.skills .section-title .idx{color:var(--ink)}.skills .section-sub{color:rgba(255,255,255,.85)}.skill-words{flex-wrap:wrap;column-gap:22px;row-gap:14px}.skill-word,.skill-words{display:flex;align-items:baseline}.skill-word{gap:22px;font-family:var(--font-display);font-weight:800;font-size:clamp(22px,3.2vw,44px);letter-spacing:-.01em;color:#fff;cursor:default;transition:color .18s ease}.skill-word:hover{color:var(--ink)}.skill-word .star{font-size:.55em;color:rgba(255,255,255,.55)}.skills-note{margin-top:44px;font-family:var(--font-mono);font-size:13px;color:rgba(255,255,255,.8)}.contact{background:var(--ink-2);color:#fff}.contact-inner{max-width:var(--maxw);margin:0 auto;padding:clamp(72px,12vh,140px) var(--pad-x) 40px;display:flex;flex-direction:column;align-items:center;gap:28px;text-align:center}.contact-eyebrow{font-family:var(--font-mono);font-size:13px;color:var(--orange)}.contact-big{font-family:var(--font-display);font-weight:900;font-size:clamp(56px,10vw,150px);letter-spacing:-.04em;line-height:.9;color:#fff;text-decoration:none;transition:color .18s ease}.contact-big:hover{color:var(--orange)}.contact-desc{font-size:15px;line-height:1.6;color:#9a9a9a;max-width:44ch}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.btn{font-size:14px;padding:13px 26px;border-radius:999px;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease}.btn-primary{font-weight:700;color:var(--ink);background:var(--orange)}.btn-primary:hover{background:#fff}.btn-ghost{font-weight:500;color:#fff;border:1px solid #3a3a3a}.btn-ghost:hover{border-color:var(--orange);color:var(--orange)}.contact-foot{margin-top:52px;padding-top:24px;border-top:1px solid #2a2a2a;width:100%;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:var(--font-mono);font-size:11.5px;color:#6a6a6a}@media (min-width:1024px){.hero{min-height:max(740px,100vh)}.hero-grid{position:absolute;inset:0;pointer-events:none;z-index:4}.hero-grid,.hero-watermark{display:block}.nav{position:absolute;top:0;left:0;right:0;height:96px;min-height:0;padding:0 var(--pad-x)}.nav-links{display:flex}.hero-body{position:static;display:block;padding:0;text-align:left}.hero-statement{position:absolute;left:var(--pad-x);top:31%;z-index:3;max-width:300px}.hero-portrait{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(520px,46vw);height:74%;aspect-ratio:auto;z-index:2}.hero-proj{top:33%;width:250px}.hero-proj,.hero-talk{position:absolute;right:var(--pad-x);z-index:3}.hero-talk{bottom:8vh;width:300px}.hero-name{position:absolute;left:var(--pad-x);bottom:5vh;z-index:1}.hero-h1{font-size:clamp(52px,min(11vw,calc((100vw - 440px) / 5.4)),180px)}}@media (max-width:1023px){.nav-toggle{display:flex}.nav-links{position:absolute;top:68px;right:var(--pad-x);left:var(--pad-x);flex-direction:column;align-items:flex-start;gap:14px;background:var(--ink);border:1px solid #2a2a2a;border-radius:14px;padding:20px 22px;z-index:20;transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s}.nav-links.open{opacity:1;visibility:visible;transform:none}.nav-link{text-decoration:none;font-size:16px}}@media (max-width:760px){.service-row,.work-card{grid-template-columns:1fr}.service-row{gap:8px;align-items:start}.service-num{order:-1}.xp-row{grid-template-columns:1fr auto}.xp-date{grid-column:1/-1;padding-top:0}.section-head{margin-bottom:36px}}