@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-ext-400-normal.3jvet3qmpe_np.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-400-normal.3h3676at96nns.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-cyrillic-400-normal.1kar6y_w7xc92.woff2)format("woff2"),url(../media/manrope-cyrillic-400-normal.2ow5pljymqch1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-greek-400-normal.3ndh7452icn1t.woff2)format("woff2"),url(../media/manrope-greek-400-normal.010saykxxeioc.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-vietnamese-400-normal.3twqkh3lr93h-.woff2)format("woff2"),url(../media/manrope-vietnamese-400-normal.3o_jvyozxy7do.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-ext-400-normal.3kpz2pq12o9y7.woff2)format("woff2"),url(../media/manrope-latin-ext-400-normal.3dacdzxdo3dh1.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-400-normal.2xa18tgv2np2i.woff2)format("woff2"),url(../media/manrope-latin-400-normal.16uzrbq5-8z5v.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-ext-500-normal.2kuwqy2x2_kvx.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-500-normal.0xr2oo9ws-j-l.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-cyrillic-500-normal.2j2me72v6wy09.woff2)format("woff2"),url(../media/manrope-cyrillic-500-normal.1snb6zl_nhipa.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-greek-500-normal.3fllgi463pg36.woff2)format("woff2"),url(../media/manrope-greek-500-normal.44ok24c-hm52c.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-vietnamese-500-normal.2rmwx81er-1wg.woff2)format("woff2"),url(../media/manrope-vietnamese-500-normal.3j-azu-_-g81b.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-ext-500-normal.2m4b1kv6exkn9.woff2)format("woff2"),url(../media/manrope-latin-ext-500-normal.09w2uqje_gnk0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-500-normal.23dhs730snm70.woff2)format("woff2"),url(../media/manrope-latin-500-normal.1uxcnzel4f8qj.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-ext-600-normal.2c5msalb399p0.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-600-normal.15dz_0yvxte-y.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-cyrillic-600-normal.2dlkzm0g6c5lw.woff2)format("woff2"),url(../media/manrope-cyrillic-600-normal.2lp-6i5mhw61k.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-greek-600-normal.36n2ro-k8135v.woff2)format("woff2"),url(../media/manrope-greek-600-normal.2cdz12dc1iljx.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-vietnamese-600-normal.44s_uvku5lu7o.woff2)format("woff2"),url(../media/manrope-vietnamese-600-normal.04ryp5-ejuw11.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-ext-600-normal.0rboslp6omgc3.woff2)format("woff2"),url(../media/manrope-latin-ext-600-normal.2dnw-ugx_s-0m.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-600-normal.2ybi4mo9-3upl.woff2)format("woff2"),url(../media/manrope-latin-600-normal.0d_nc7hu7m8km.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-cyrillic-ext-700-normal.24rfadzth-ea_.woff2)format("woff2"),url(../media/manrope-cyrillic-ext-700-normal.24rbunm8ei_ow.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-cyrillic-700-normal.16p40z5fn5_zv.woff2)format("woff2"),url(../media/manrope-cyrillic-700-normal.3te-i5lbatid1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-greek-700-normal.345zy40yxw5yy.woff2)format("woff2"),url(../media/manrope-greek-700-normal.106e_m097cdnm.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-vietnamese-700-normal.3spwa7rpbdcfi.woff2)format("woff2"),url(../media/manrope-vietnamese-700-normal.09mmasjjym1bw.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-latin-ext-700-normal.14ezai-4kezdq.woff2)format("woff2"),url(../media/manrope-latin-ext-700-normal.3p3hfqi13m0pv.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-latin-700-normal.22dwiag9_pj68.woff2)format("woff2"),url(../media/manrope-latin-700-normal.2dopus2zh5ii9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(../media/barlow-condensed-vietnamese-600-normal.43ud19ilw2-pl.woff2)format("woff2"),url(../media/barlow-condensed-vietnamese-600-normal.0csyzgbq6oph-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(../media/barlow-condensed-latin-ext-600-normal.0_w6c_5g3mtxc.woff2)format("woff2"),url(../media/barlow-condensed-latin-ext-600-normal.40rgster27fo6.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(../media/barlow-condensed-latin-600-normal.289y3avl9x-vx.woff2)format("woff2"),url(../media/barlow-condensed-latin-600-normal.0gvkp1c3flf_w.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#f4f5f3;--surface:#fff;--ink:#202527;--muted:#596267;--line:#d8deda;--accent:#ad4c1a;--dark:#101113;--white:#f6f7f5;--orange:#f4a264;--blue:#78cbd8;--max:1280px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);margin:0;font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:default}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,video:focus-visible{outline-offset:5px;outline:3px solid #1685a1}img{max-width:100%;height:auto;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1{font-size:64px;font-weight:600}h2{font-size:40px;font-weight:600}h3{font-size:23px;font-weight:600}p{max-width:76ch}svg{flex-shrink:0}::selection{color:#171b1b;background:#ffc290}[data-theme=dark]{--paper:#171a1b;--surface:#222729;--ink:#f1f4f1;--muted:#b4bfbb;--line:#394344;--accent:#f4a264;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.section{padding:100px 40px}.section-inner{max-width:var(--max);margin-inline:auto}.section-heading{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:50px;display:flex}.section-heading h2{max-width:680px;margin-bottom:0}.section-heading>p{max-width:320px;color:var(--muted);margin-bottom:3px;font-size:15px}.section-kicker{color:var(--accent);margin-bottom:18px;font-size:14px;font-weight:600}.text-link{overflow-wrap:anywhere;border-bottom:1px solid;align-items:center;gap:12px;max-width:100%;padding-bottom:5px;font-weight:600;display:inline-flex}.button{border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:14px;min-height:48px;padding:12px 23px;font-size:14px;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.button.primary{background:var(--orange);color:#181a19}.button.secondary{color:#f6f7f5;background:0 0;border-color:#626466}.button.outline{border-color:var(--line)}.icon-button,.icon-link{background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.skip-link{z-index:100;color:#101113;background:#fff;padding:10px 20px;position:fixed;top:-70px;left:20px}.skip-link:focus{top:12px}.navigation{color:#f6f7f5;z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#101113f2;border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:24px;height:78px;padding:0 40px;display:flex;position:sticky;top:0}.monogram{font-size:27px;font-weight:700;line-height:1}.monogram span{color:var(--orange)}.nav-links{gap:32px;font-size:13px;display:flex}.nav-links a:hover{color:var(--orange)}.nav-tools{align-items:center;gap:13px;display:flex}.language{font-size:12px;font-weight:700}.nav-contact{border:1px solid #5b5e60;border-radius:4px;align-items:center;gap:15px;padding:8px 17px;font-size:13px;display:flex}.mobile-menu{display:none}.hero{background:var(--dark);color:var(--white);padding:48px 40px 0;position:relative}.hero-inner{max-width:var(--max);grid-template-columns:1.15fr 1fr;align-items:center;gap:80px;min-height:545px;margin:auto;display:grid}.hero-copy{z-index:2;padding:15px 0 30px;position:relative}.hero .role{color:#c4ceca;margin-bottom:17px;font-size:14px}.hero h1{margin-bottom:28px;font-family:Barlow Condensed,Impact,sans-serif;font-size:134px;font-weight:600;line-height:.87}.hero-description{color:#ccd2cf;max-width:435px;margin-bottom:26px;font-size:18px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-social{color:#aab4b0;align-items:center;gap:16px;margin-top:27px;display:flex}.hero-social a{display:flex}.hero-social span{max-width:230px;font-size:11px}.portrait-frame{border:1px solid #5e6a69;place-self:center end;width:100%;max-width:420px;margin-right:24px;padding:10px;position:relative}.portrait-frame:before{content:"";background:var(--orange);width:3px;height:70px;position:absolute;top:28px;left:-13px}.portrait-frame:after{content:"";border-bottom:1px solid var(--blue);border-right:1px solid var(--blue);width:100px;height:100px;position:absolute;bottom:-14px;right:-14px}.portrait-frame img{aspect-ratio:5/6;object-fit:cover;filter:grayscale();background:#363b3d;width:100%}.portrait-frame figcaption{color:#c2ccc7;justify-content:space-between;gap:10px;padding:13px 3px 2px;font-size:10px;display:flex}.hero-bottom{max-width:var(--max);color:#b8c3c0;border-top:1px solid #343a3a;justify-content:space-between;align-items:center;gap:24px;margin:36px auto 0;padding:18px 0;font-size:11px;display:flex}.hero-bottom a{color:var(--orange);display:flex}.proof-bar{border-bottom:1px solid var(--line);padding:27px 40px}.proof-bar .section-inner{grid-template-columns:repeat(3,1fr);display:grid}.proof-bar a{border-right:1px solid var(--line);align-items:center;gap:22px;padding:4px 30px;display:flex}.proof-bar a:first-child{padding-left:0}.proof-bar a:last-child{border:0}.proof-bar strong{font-family:Barlow Condensed,sans-serif;font-size:43px;line-height:1}.proof-bar span{color:var(--muted);max-width:140px;font-size:12px}.work{padding-top:85px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 32px;display:grid}.project-image{aspect-ratio:16/10;background:#e8eff1;border-radius:6px;display:block;position:relative;overflow:hidden}.project-image>img{object-fit:contain;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.project-image:hover>img{transform:scale(1.035)}.project-open{color:#26322e;background:#f9faf9;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:absolute;bottom:17px;right:17px;box-shadow:0 2px 10px #0002}.project-meta{color:var(--muted);justify-content:space-between;gap:15px;padding-top:20px;font-size:11px;display:flex}.project-title{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.project-title h3{margin-bottom:0;font-size:27px}.project-item>p{color:var(--muted);margin-top:10px;font-size:14px}.project-facts{color:var(--accent);flex-wrap:wrap;gap:10px 22px;font-size:11px;display:flex}.project-facts span:before{content:"";background:currentColor;width:4px;height:4px;margin:0 7px 3px 0;display:inline-block}.interview-visual{color:#694978;background:#e9e6ed;flex-direction:column;justify-content:center;align-items:center;gap:25px;height:100%;display:flex}.audio-track{justify-content:center;align-items:center;gap:5px;width:80%;height:82px;display:flex}.audio-track i{background:#9474a1;border-radius:2px;width:3px;display:block}.audio-track i:nth-child(3n){background:#318194}.audio-captions{color:#4a505a;gap:30px;font-size:10px;display:flex}.architecture{margin:40px 0 25px;position:relative}.architecture-toolbar{border-bottom:1px solid #364142;justify-content:space-between;align-items:center;gap:20px;padding-bottom:14px;display:flex}.system-tabs{flex-wrap:wrap;gap:8px;display:flex}.system-tabs button{color:#aebcb8;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 13px;font-size:12px}.canvas-area{height:330px;position:relative}.canvas-area>div:not(.static-graph){inset:0;position:absolute!important}.node-label{color:#d7e7e3;white-space:nowrap;pointer-events:none;background:#101113e8;border-radius:3px;padding:4px 7px;font-size:11px;display:block}.static-graph{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex;position:absolute;inset:0}.static-graph span{color:#a8d4d3;align-items:center;gap:12px;font-size:13px;display:flex}.architecture-caption{color:#b6c7c1;border-top:1px solid #364142;justify-content:space-between;gap:24px;padding-top:16px;font-size:11px;display:flex}.architecture-caption>p{text-align:right;margin:0}.principles{grid-template-columns:repeat(3,1fr);gap:38px;margin-top:65px;display:grid}.principles h3{max-width:250px;font-size:19px;line-height:1.4}.principles p{color:#b3c0ba;font-size:13px}.experience-list article{border-top:1px solid var(--line);grid-template-columns:155px 1fr 1.1fr 40px;align-items:start;gap:30px;padding:28px 0;display:grid}.experience-list time{color:var(--muted);font-size:12px}.experience-list h3{margin-bottom:9px;font-size:21px}.experience-list span{color:var(--muted);font-size:12px}.experience-list p{color:var(--muted);margin:0;font-size:13px}.education{max-width:800px;margin-top:45px}.education p{color:var(--muted);font-size:14px}.about-band{border-top:1px solid var(--line);padding-block:35px}.about-band .section-inner{justify-content:space-between;align-items:center;gap:30px;display:flex}.about-band p{margin:0;font-size:20px}.contact{color:#203731;background:#dce8e3;padding-block:60px 25px}.contact-top{justify-content:space-between;align-items:center;gap:25px;font-size:12px;display:flex}.contact-top p{margin:0}.contact-top span{align-items:center;gap:8px;display:flex}.contact-heading{justify-content:space-between;align-items:center;gap:50px;max-width:1080px;margin:35px 0 50px;font-size:56px;font-weight:600;line-height:1.18;display:flex}.contact-heading svg{width:60px;height:60px}.contact-bottom{border-bottom:1px solid #a9c1b6;justify-content:space-between;gap:30px;padding-bottom:30px;font-size:13px;display:flex}.contact-bottom a,.contact-bottom>div{align-items:center;gap:10px;display:flex}.contact-bottom>div{gap:25px}.footer-note{color:#4a655a;justify-content:space-between;gap:25px;padding-top:22px;font-size:10px;display:flex}.about-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:80px;display:grid}.about-grid>img{object-fit:cover;filter:grayscale();border-radius:4px;max-height:600px}.about-grid h1{font-size:52px}.about-grid p{color:var(--muted)}.resume-list{grid-template-columns:1fr 1fr;gap:0 50px;display:grid}.resume-list a{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:30px 0;display:flex}.resume-list h2{margin-bottom:10px;font-size:25px}.resume-list span{color:var(--muted);font-size:12px}.availability{color:var(--muted);margin-top:45px;font-size:14px}.case-intro{padding-bottom:55px}.back{margin-bottom:40px;font-size:12px}.case-intro h1{margin-bottom:20px;font-size:68px}.case-subtitle{max-width:850px;color:var(--muted);font-size:22px}.case-facts{border-top:1px solid var(--line);grid-template-columns:1.5fr 1fr 1.4fr;gap:30px;margin-top:40px;padding-top:30px;display:grid}.case-facts span{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.case-facts strong{font-size:13px;font-weight:600}.case-actions{flex-wrap:wrap;gap:15px;margin-top:30px;display:flex}.case-cover{padding:0 40px}.case-cover img{object-fit:contain;background:#e5ede8;border-radius:4px;width:100%;max-height:650px}.case-cover figcaption{color:var(--muted);margin-top:13px;font-size:11px}.case-body{grid-template-columns:250px minmax(0,760px);gap:80px;padding:80px 40px;display:grid}.chapter-nav{align-self:start;font-size:11px;position:sticky;top:108px}.chapter-nav>p{font-size:13px;font-weight:700}.chapter-nav nav{gap:9px;display:grid}.chapter-nav a{color:var(--muted);gap:10px;line-height:1.45;display:flex}.chapter-nav a:hover{color:var(--accent)}.chapter-nav a span{color:var(--accent);min-width:18px}.prose{color:var(--muted);font-size:15px}.prose h2{color:var(--ink);margin-top:45px;margin-bottom:20px;scroll-margin-top:105px;font-size:28px}.prose h2:first-child{margin-top:0}.prose h3{color:var(--ink);margin-top:26px;font-size:20px}.prose p{margin-bottom:20px}.prose ul{padding-left:23px}.prose li{margin-bottom:10px}.prose a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.prose strong{color:var(--ink)}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink);margin:25px 0;padding:10px 0 10px 22px}.prose blockquote p{margin:0}.evidence-gallery{gap:45px;margin-top:35px;display:grid}.evidence-gallery img{object-fit:contain;background:#e9eeee;width:100%;max-height:620px}.evidence-gallery figcaption,.video-grid figcaption{color:var(--muted);margin-top:12px;font-size:12px}.evidence-gallery figcaption a{text-decoration:underline}.video-section{background:var(--surface)}.video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px;display:grid}.video-grid video{aspect-ratio:9/16;object-fit:contain;background:#101113;border-radius:4px;width:100%;max-height:460px}.source-section{border-top:1px solid var(--line)}.source-section p{color:var(--muted)}.next-work{width:max-content;margin-top:45px;display:flex}@media (min-width:1600px){.hero-inner{min-height:620px}.hero h1{font-size:158px}.portrait-frame{max-width:455px}.hero{padding-top:60px}.hero-bottom{margin-top:45px}}@media (max-width:1100px){.hero-inner{gap:35px}.hero h1{font-size:110px}.portrait-frame{max-width:350px;margin-right:10px}.hero-description{font-size:16px}.hero-inner{min-height:500px}.nav-links{gap:20px}.navigation{padding-inline:28px}.section{padding:75px 28px}.section-heading{gap:30px}h2{font-size:34px}.experience-list article{grid-template-columns:120px 1fr 1fr 30px;gap:20px}.proof-bar a{gap:15px;padding-inline:20px}.proof-bar strong{font-size:36px}.case-body{grid-template-columns:190px minmax(0,1fr);gap:40px}.about-grid{gap:40px}.contact-heading{font-size:46px}.hero-social span{max-width:160px}.case-cover{padding-inline:28px}}@media (max-width:760px){h1{font-size:43px}h2{font-size:31px}.navigation{gap:12px;height:65px;padding-inline:20px}.monogram{font-size:25px}.nav-tools{gap:8px}.nav-contact{gap:8px;padding:6px 10px;font-size:12px}.mobile-menu{display:inline-flex}.nav-links{background:#171a1b;padding:24px;display:none;position:absolute;top:65px;left:0;right:0;box-shadow:0 15px 25px #0003}.nav-links.open{gap:0;display:grid}.nav-links a{padding:12px 0}.section{padding:58px 22px}.section-heading{margin-bottom:32px;display:block}.section-heading>p{max-width:100%;margin-top:20px}.section-heading>.text-link{margin-top:25px}.hero{padding:28px 22px 0}.hero-inner{grid-template-columns:1fr;gap:25px;min-height:0;position:relative}.hero-copy{order:2;padding:0}.hero .role{margin-bottom:16px;font-size:12px}.hero h1{margin-bottom:20px;font-size:80px;line-height:.91}.hero h1{max-width:340px}.hero-description{max-width:430px;margin-bottom:21px;font-size:15px}.portrait-frame{z-index:3;order:1;justify-self:end;width:43%;max-width:205px;margin:0 10px -145px 0}.portrait-frame img{aspect-ratio:5/6}.portrait-frame figcaption{padding-top:8px;font-size:8px}.portrait-frame figcaption span:last-child{display:none}.hero .role{max-width:47%;line-height:1.5}.hero h1{overflow-wrap:normal;max-width:49%;padding:4px 0;font-size:66px;line-height:.9}.hero h1 br{display:block}.hero-copy .hero-description{padding-top:18px}.hero-actions .button{min-height:45px;padding:11px 17px;font-size:12px}.hero-social{margin-top:23px}.hero-social span{max-width:none;font-size:10px}.hero-bottom{margin-top:26px;padding-block:16px;font-size:9px}.proof-bar{padding:22px}.proof-bar .section-inner{grid-template-columns:repeat(3,minmax(0,1fr))}.proof-bar a{gap:0;padding:0 12px;display:block}.proof-bar strong{margin-bottom:9px;font-size:31px;display:block}.proof-bar span{max-width:110px;font-size:10px;line-height:1.5;display:block}.project-grid{grid-template-columns:1fr;gap:40px}.project-image{aspect-ratio:16/10}.project-title h3{font-size:24px}.project-meta{padding-top:16px}.project-facts{font-size:10px}.system-tabs{flex:1;grid-template-columns:1fr 1fr;gap:4px;display:grid}.system-tabs button{text-align:left;padding:8px 5px;font-size:11px}.architecture-toolbar{align-items:flex-start;gap:10px}.canvas-area{height:245px}.node-label{padding:3px;font-size:9px}.architecture-caption{font-size:10px;display:block}.architecture-caption>p{text-align:left;margin-top:10px}.principles{grid-template-columns:1fr;gap:20px;margin-top:38px}.principles h3{max-width:none;margin-bottom:10px;font-size:19px}.principles p{margin-bottom:0}.experience-list article{grid-template-columns:1fr 34px;gap:12px}.experience-list time{grid-column:1;font-size:11px}.experience-list article>div,.experience-list article>p{grid-column:1}.experience-list article>.icon-link{grid-area:2/2}.experience-list article>span:last-child{display:none}.about-band .section-inner{display:block}.about-band p{margin-bottom:20px;font-size:19px}.contact-top{display:block}.contact-top span{margin-top:14px;font-size:11px}.contact-heading{gap:15px;margin:30px 0;font-size:35px}.contact-heading svg{width:32px;height:32px}.contact-bottom{font-size:12px;display:block}.contact-bottom>div{flex-wrap:wrap;gap:22px;margin-top:25px}.footer-note{font-size:10px;display:block}.footer-note span{margin-top:8px;display:block}.about-grid{grid-template-columns:1fr;gap:35px}.about-grid>img{object-position:center 30%;width:100%;max-height:380px}.about-grid h1{font-size:38px}.resume-list{grid-template-columns:1fr}.resume-list h2{font-size:23px}.case-intro h1{overflow-wrap:anywhere;font-size:43px}.case-subtitle{font-size:18px}.case-facts{grid-template-columns:1fr;gap:18px;margin-top:28px;padding-top:24px}.case-facts span{margin-bottom:3px}.case-actions .button{padding-inline:16px;font-size:12px}.case-cover{padding-inline:22px}.case-body{padding:42px 22px;display:block}.chapter-nav{border-bottom:1px solid var(--line);margin-bottom:35px;padding-bottom:25px;position:static}.chapter-nav nav{grid-template-columns:1fr 1fr;gap:10px 20px;display:grid}.prose{font-size:14px}.prose h2{font-size:25px}.video-grid{grid-template-columns:1fr}.video-grid video{max-height:480px}.audio-captions{gap:18px}.source-section .text-link{font-size:11px}.static-graph{gap:10px;padding:20px}.static-graph span{gap:8px;font-size:10px}}@media (max-width:370px){.hero h1{font-size:56px}.portrait-frame{margin-bottom:-130px}.hero .role{font-size:10px}.nav-contact{display:none}.hero-actions{gap:8px}.hero-actions .button{padding-inline:12px}.contact-heading{font-size:30px}.proof-bar strong{font-size:27px}.hero-social{gap:12px}}.hero-system-strip{color:#f1f4f1;background:#101113;padding:0 40px 15px}.hero-system-strip .architecture{margin:0}.hero-system-strip .canvas-area{height:105px}.hero-system-strip .node-label{font-size:9px}.hero-system-strip .static-graph{padding:10px}.hero-system-strip .static-graph span{font-size:10px}.hero-inner{min-height:510px}.hero-bottom{margin-top:20px}.hero-system-strip+.proof-bar{position:relative}@media (min-width:1600px){.hero{padding-top:40px}.hero-inner{min-height:510px}.hero h1{font-size:134px}.portrait-frame{max-width:420px}.hero-bottom{margin-top:20px}}@media (min-width:761px) and (max-height:850px){.hero{padding-top:24px}.hero-inner{min-height:415px}.hero h1{font-size:100px}.hero-description{margin-bottom:20px;font-size:15px}.hero-social{margin-top:20px}.portrait-frame{max-width:310px}.hero-bottom{margin-top:5px}.hero-system-strip .canvas-area{height:85px}}@media (max-width:760px){.hero h1{font-size:52px}.hero-inner{min-height:0}.hero-system-strip{padding:0 22px 10px}.hero-system-strip .canvas-area{height:95px}.hero-system-strip .node-label{font-size:8px}}@media (max-width:370px){.hero h1{font-size:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-image:hover>img{transform:none}}:root{--paper:#f7f8fa;--surface:#fff;--ink:#17212b;--muted:#526171;--line:#dce2e7;--accent:#087f68;--dark:#17212b;--white:#fff;--orange:#f05b2a;--blue:#365ccb;--soft:#edf5f1}[data-theme=dark]{--paper:#111a22;--surface:#18242d;--ink:#f7f8fa;--muted:#aebbc7;--line:#31414c;--accent:#43c3aa;--dark:#0b1218;--white:#f7f8fa;--orange:#ff7b48;--blue:#82a0f0}body{background:var(--paper)}main,.contact{z-index:1;position:relative}.navigation{color:#17212b;background:#f7f8faf2;border-color:#dce2e7;box-shadow:0 1px #ffffff80}[data-theme=dark] .navigation{color:#f7f8fa;box-shadow:none;background:#111a22f2;border-color:#31414c}.monogram span,.nav-links a:hover{color:var(--accent)}.icon-button:hover,.icon-link:hover{background:#087f6814}.nav-contact{color:#fff;background:#17212b;border-color:#17212b;min-height:44px}.nav-contact:hover{background:#087f68;border-color:#087f68}.button.primary{color:#fff;background:#17212b}.button.primary:hover{background:#087f68}.button.secondary{color:var(--ink);border-color:var(--line);background:#ffffffa8}.button.secondary:hover{background:var(--soft)}.section-kicker{color:var(--accent)}.hero{color:var(--ink);background:0 0;padding-top:36px;overflow:clip}.hero-inner{grid-template-columns:1.05fr .95fr;gap:70px;min-height:510px;position:relative}.hero-copy{padding:24px 0 34px}.hero .role{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.hero .role:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;margin-right:10px;box-shadow:10px 0 #14b8a6}.hero h1{max-width:650px;margin-bottom:27px;font-family:Manrope,Arial,sans-serif;font-size:82px;font-weight:500;line-height:.98}.hero h1 span{color:var(--orange)}.hero-description{color:var(--muted);max-width:515px;font-size:18px}.hero-social{color:var(--muted)}.hero-watermark{color:#e9eef1;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:146px;font-weight:600;line-height:.76;position:absolute;bottom:18px;right:-30px}[data-theme=dark] .hero-watermark{color:#192731}.portrait-stage{z-index:2;place-self:center end;width:min(100%,382px);margin-right:60px;position:relative}.portrait-stage img{aspect-ratio:5/6;object-fit:cover;object-position:center;border-radius:6px;width:100%;box-shadow:0 22px 60px #17212b20}.portrait-stage figcaption{color:var(--muted);justify-content:space-between;gap:16px;margin-top:12px;font-size:10px;display:flex}.portrait-orbit{z-index:-1;border:1px solid #087f6838;border-radius:50%;position:absolute;inset:-48px -80px -42px -105px;transform:rotate(-12deg)}.portrait-orbit:before,.portrait-orbit:after{content:"";border:1px solid #365ccb22;border-radius:50%;position:absolute;inset:38px -22px;transform:rotate(19deg)}.portrait-orbit:after{border-color:#f05b2a29;inset:92px -58px;transform:rotate(-28deg)}.portrait-orbit i{background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 0 5px #087f6812}.portrait-orbit i:first-child{top:34%;left:3%}.portrait-orbit i:nth-child(2){background:var(--blue);top:17%;right:8%}.portrait-orbit i:nth-child(3){background:var(--orange);bottom:23%;right:0}.hero-bottom{border-color:var(--line);color:var(--muted);margin-top:12px}.hero-bottom a{color:var(--accent)}.hero-system-strip{color:#17212b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#edf5f1c7;border-top:1px solid #dce2e7;border-bottom:1px solid #dce2e7}[data-theme=dark] .hero-system-strip{color:#f7f8fa;background:#18242de8;border-color:#31414c}.proof-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd6}[data-theme=dark] .proof-bar{background:#111a22e6}.proof-bar strong{color:var(--accent)}.project-image{background:#eef1fa}.project-open{color:#17212b}.engineering{color:#f7f8fa;background:#17212b}.engineering .section-kicker{color:#43c3aa}.engineering .section-heading p{color:#b9c6cf}.system-tabs button[aria-selected=true]{color:#75dbc6;border-color:#43c3aa}.principles p{color:#b9c6cf}.contact{color:#17212b;background:#edf5f1}.footer-note{color:#526171}.about-grid>img{filter:none;box-shadow:0 18px 50px #17212b18}.chapter-nav a{border-left:2px solid #0000;padding-left:8px;transition:color .2s,border-color .2s}.chapter-nav a:hover,.chapter-nav a[aria-current=location]{color:var(--ink);border-left-color:var(--accent)}.prose h2{scroll-margin-top:0}.video-player{background:#101820;border-radius:4px;place-items:center;display:grid;position:relative;overflow:hidden}.video-play{color:#17212b;background:#f7f8faed;border:1px solid #fff9;border-radius:50%;place-items:center;width:64px;height:64px;padding:0 0 0 3px;transition:background .2s,transform .2s;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 8px 26px #0005}.video-play:hover{background:#fff;transform:translate(-50%,-50%)scale(1.05)}.ci-atmosphere{z-index:0;pointer-events:none;color:var(--accent);position:fixed;inset:78px 0 0;overflow:hidden}.ci-atmosphere svg{opacity:.55;width:100%;height:100%}.ci-atmosphere ellipse,.ci-atmosphere path{fill:none;vector-effect:non-scaling-stroke}.ci-atmosphere ellipse{stroke:#087f6822;stroke-width:1px}.ci-atmosphere .orbit-b ellipse{stroke:#365ccb1d}.ci-atmosphere .orbit-c ellipse{stroke:#f05b2a1b}.ci-atmosphere circle{fill:#087f68}.ci-atmosphere .orbit-b circle{fill:#365ccb}.ci-atmosphere .orbit-c circle{fill:#f05b2a}.ci-atmosphere .orbit{transform-box:view-box;transform-origin:50%;animation:48s linear infinite ci-orbit}.ci-atmosphere .orbit-b{animation-duration:63s;animation-direction:reverse}.ci-atmosphere .orbit-c{animation-duration:39s}.ci-atmosphere .signal-line{stroke:#087f681f;stroke-width:1px;stroke-dasharray:3 14;animation:28s linear infinite ci-signal}.ci-atmosphere .signal-line-b{stroke:#365ccb19;animation-duration:35s;animation-direction:reverse}.ci-atmosphere.is-paused .orbit,.ci-atmosphere.is-paused .signal-line{animation-play-state:paused}.atmosphere-toggle{z-index:61;pointer-events:auto;border:1px solid var(--line);background:var(--paper);width:38px;height:38px;color:var(--ink);border-radius:50%;place-items:center;display:grid;position:fixed;bottom:18px;right:18px;box-shadow:0 6px 20px #17212b14}.atmosphere-toggle:hover{color:var(--accent);border-color:var(--accent)}@keyframes ci-orbit{to{transform:rotate(360deg)}}@keyframes ci-signal{to{stroke-dashoffset:-170px}}@media (min-width:1600px){.hero-inner{min-height:560px}.hero h1{font-size:92px}.portrait-stage{width:410px;margin-right:75px}.hero-watermark{font-size:174px}}@media (min-width:761px) and (max-height:850px){.hero{padding-top:22px}.hero-inner{min-height:415px}.hero h1{font-size:68px}.portrait-stage{width:300px;margin-right:65px}.hero-watermark{font-size:116px}.hero-system-strip .canvas-area{height:85px}}@media (max-width:1100px){.hero h1{font-size:70px}.portrait-stage{width:340px;margin-right:30px}.hero-watermark{font-size:118px}}@media (max-width:760px){.navigation{height:65px}.nav-links{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}.hero{padding-top:36px}.hero-inner{grid-template-columns:1fr;gap:34px;display:grid}.hero-copy{order:1;padding:0}.hero .role{max-width:none}.hero h1{max-width:none;font-size:52px;line-height:1}.hero-copy .hero-description{padding-top:0}.portrait-stage{order:2;justify-self:center;width:min(78vw,330px);margin:0}.portrait-stage figcaption{font-size:9px}.portrait-orbit{inset:-30px -42px -28px -46px}.hero-watermark{font-size:76px;bottom:105px;right:-12px}.hero-bottom{margin-top:38px}.ci-atmosphere{inset:65px 0 0}.atmosphere-toggle{bottom:12px;right:12px}.proof-bar{background:var(--paper)}.about-grid>img{filter:none}}@media (max-width:370px){.hero h1{font-size:44px}.portrait-stage{width:76vw}}@media (prefers-reduced-motion:reduce){.ci-atmosphere .orbit,.ci-atmosphere .signal-line{animation:none!important}}.portrait-stage{will-change:transform}.career-architecture{margin-top:32px}.career-architecture .architecture-toolbar>div{gap:4px;display:grid}.career-architecture .architecture-toolbar strong{color:#d9e2e7;font-size:13px;font-weight:500}.timeline-label{color:#75dbc6;text-transform:uppercase;font-size:10px}.career-architecture .canvas-area{border-bottom:1px solid #364142;height:235px}.career-fallback{justify-content:space-between;align-items:center;padding:0 4%;display:flex;position:absolute;inset:0}.career-fallback:before{content:"";background:#75a49b;height:1px;position:absolute;top:50%;left:4%;right:4%}.career-fallback span{background:#17212b;border:2px solid #43c3aa;border-radius:50%;width:13px;height:13px;position:relative}.career-fallback span:nth-child(3n){border-color:#5879d9}.career-fallback span:nth-child(5){border-color:#f05b2a}.career-legend{border-bottom:1px solid #364142;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.career-legend li{color:#aebbc3;border-top:2px solid #0000;border-right:1px solid #364142;grid-template-columns:25px 1fr 28px;gap:9px;min-height:116px;padding:18px 14px;display:grid;position:relative}.career-legend li:nth-child(4n){border-right:0}.career-legend li.is-active{background:#ffffff06;border-top-color:#43c3aa}.career-legend>li>span{color:#75dbc6;font-size:10px}.career-legend li div{align-content:start;gap:3px;min-width:0;display:grid}.career-legend time{color:#7f919c;font-size:9px}.career-legend strong{color:#f7f8fa;font-size:12px;line-height:1.35}.career-legend small{font-size:10px;line-height:1.4}.career-legend a{color:#75dbc6;border-radius:50%;align-self:start;place-items:center;width:28px;height:28px;display:grid}.career-legend a:hover{background:#ffffff12}.education{border-top:1px solid var(--line);grid-template-columns:1.2fr 1fr;gap:8px 60px;max-width:none;margin-top:60px;padding:40px 0 0;display:grid}.education .section-kicker{grid-column:1/-1;margin-bottom:4px}.education h3{max-width:650px;margin-bottom:15px;font-size:30px}.education p{grid-column:2;margin-bottom:8px;font-size:13px}.resume-page>.section-inner>.section-heading p{color:var(--muted)}.resume-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;display:grid}.resume-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;min-width:0;overflow:hidden}.resume-preview{text-align:left;background:#edf5f1;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.resume-preview img{aspect-ratio:4/5;object-fit:cover;object-position:top;width:100%;transition:transform .45s cubic-bezier(.2,.7,.3,1)}.resume-preview>span{color:#fff;background:#17212be8;border-radius:3px;align-items:center;gap:8px;padding:9px 12px;font-size:11px;display:flex;position:absolute;bottom:13px;right:13px}.resume-preview:hover img{transform:scale(1.025)}.resume-card-copy{padding:22px}.resume-card-copy>p{color:var(--accent);margin:0 0 7px;font-size:10px}.resume-card-copy h2{margin-bottom:8px;font-size:23px}.resume-card-copy>span{min-height:44px;color:var(--muted);font-size:12px;line-height:1.55;display:block}.resume-card-copy>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin-top:18px;padding-top:19px;display:flex}.resume-card-copy small{color:var(--muted);font-size:10px}.resume-education{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:180px 1fr auto;align-items:baseline;gap:20px;margin-top:58px;padding:30px 0;display:grid}.resume-education>span{color:var(--accent);font-size:11px}.resume-education h2{margin:0;font-size:25px}.resume-education p{color:var(--muted);margin:0;font-size:12px}.resume-dialog{color:#17212b;background:0 0;border:0;width:min(1120px,100vw - 48px);max-width:none;height:calc(100vh - 48px);max-height:none;margin:auto;padding:0;animation:.3s cubic-bezier(.2,.8,.2,1) resume-dialog-in;position:fixed;inset:0;overflow:visible}.resume-dialog::backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#17212bd9;animation:.3s ease-out resume-backdrop-in}.resume-dialog.is-closing{animation:.22s ease-in forwards resume-dialog-out}.resume-dialog.is-closing::backdrop{animation:.22s ease-in forwards resume-backdrop-out}.resume-dialog-shell{background:#f7f8fa;border-radius:6px;flex-direction:column;height:100%;display:flex;overflow:hidden;box-shadow:0 28px 90px #0008}.resume-dialog header{border-bottom:1px solid #dce2e7;justify-content:space-between;align-items:center;gap:25px;height:64px;padding:10px 14px 10px 22px;display:flex}.resume-dialog header>div{align-items:center;gap:13px;display:flex}.resume-dialog header>div:first-child{gap:1px;display:grid}.resume-dialog header span{color:#087f68;text-transform:uppercase;font-size:9px}.resume-dialog header strong{font-size:14px}.resume-page-viewport{overscroll-behavior:contain;scrollbar-gutter:stable;background:#dfe5e8;flex:1;min-height:0;padding:24px;overflow-y:auto}.resume-page{width:min(920px,100%);margin:0 auto 22px}.resume-page:last-child{margin-bottom:0}.resume-page figcaption{color:#53616b;text-align:right;padding:0 0 7px;font-size:10px}.resume-page img{background:#fff;width:100%;height:auto;display:block;box-shadow:0 10px 30px #17212b24}.portfolio-dialog{width:min(1180px,100vw - 48px)}.portfolio-open{border:0}.portfolio-page-viewport{background:#d8e0e4}.portfolio-page img{border:1px solid #c8d1d6}@keyframes resume-dialog-in{0%{opacity:0;transform:translateY(18px)scale(.975)}to{opacity:1;transform:none}}@keyframes resume-dialog-out{to{opacity:0;transform:translateY(12px)scale(.985)}}@keyframes resume-backdrop-in{0%{background:#17212b00}to{background:#17212bd9}}@keyframes resume-backdrop-out{to{background:#17212b00}}@media (min-width:1101px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:58px 28px}.project-title h3{font-size:24px}}@media (max-width:760px){.career-architecture .canvas-area{height:180px}.career-legend{grid-template-columns:1fr 1fr}.career-legend li{grid-template-columns:22px 1fr 26px;min-height:105px;padding:14px 10px}.career-legend li:nth-child(4n){border-right:1px solid #364142}.career-legend li:nth-child(2n){border-right:0}.education{grid-template-columns:1fr;gap:7px}.education .section-kicker,.education p{grid-column:1}.education h3{font-size:25px}.resume-gallery{grid-template-columns:1fr;gap:25px}.resume-preview img{aspect-ratio:4/4.4}.resume-card-copy>span{min-height:0}.resume-education{grid-template-columns:1fr;gap:8px}.resume-education h2{font-size:22px}.resume-dialog{width:calc(100vw - 20px);height:calc(100vh - 20px)}.resume-dialog header{padding-left:14px}.resume-page-viewport{padding:8px}.resume-page{margin-bottom:12px}.resume-page figcaption{padding:4px 2px 6px}}@media (prefers-reduced-motion:reduce){.resume-dialog,.resume-dialog::backdrop{animation:none!important}.resume-preview img{transition:none}.portrait-stage{will-change:auto}}.contact-page,.voice-page{min-height:calc(100vh - 78px);padding-top:70px}.contact-page-grid{grid-template-columns:.88fr 1.12fr;align-items:start;gap:90px;display:grid}.contact-intro{position:sticky;top:145px}.contact-intro h1{max-width:620px;margin-bottom:28px;font-size:58px}.contact-intro>p:not(.section-kicker){color:var(--muted);max-width:540px;font-size:17px}.contact-facts{gap:12px;margin-top:40px;display:grid}.contact-facts span,.contact-facts a{color:var(--muted);align-items:center;gap:11px;font-size:13px;display:flex}.contact-facts svg{width:17px;color:var(--accent)}.contact-form{border:1px solid var(--line);background:var(--surface);border-radius:6px;gap:22px;padding:34px;display:grid;box-shadow:0 18px 50px #17212b0b}.contact-form label{color:var(--muted);gap:8px;font-size:11px;font-weight:700;display:grid}.form-pair{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form input,.contact-form textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:inherit;resize:vertical;border-radius:3px;outline:none;padding:12px 14px;font-size:14px}.contact-form input{min-height:48px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #087f6812}.form-submit{justify-content:space-between;align-items:center;gap:18px;display:flex}.form-submit>a{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.form-status{border-top:1px solid var(--line);color:var(--accent);margin:0;padding-top:16px;font-size:12px}.form-status.error{color:#b53f24}.spin{animation:.8s linear infinite control-spin}@keyframes control-spin{to{transform:rotate(360deg)}}.voice-page{isolation:isolate;padding-inline:28px;position:relative;overflow:hidden}.voice-page>.section-inner{z-index:1;position:relative}.voice-page-portrait{z-index:0;opacity:.12;filter:saturate(.7);pointer-events:none;width:430px;height:auto;position:absolute;top:50%;right:-170px;transform:translateY(-50%);-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 38% 100%);mask-image:linear-gradient(90deg,#0000 0,#000 38% 100%)}.voice-workspace{border:1px solid var(--line);background:var(--surface);border-radius:6px;grid-template-columns:minmax(300px,.82fr) minmax(480px,1.18fr);width:calc(100% - clamp(44px,6vw,92px));height:min(720px,100vh - 170px);min-height:610px;display:grid;overflow:hidden;box-shadow:0 24px 65px #17212b12}.voice-visual{background:#eaf1f2;min-width:0;position:relative;overflow:hidden}.voice-microphone{object-fit:cover;object-position:44% center}.voice-visual:after{content:"";background:linear-gradient(#edf5f10d 45%,#17212b8c);position:absolute;inset:0}.voice-status{z-index:2;color:#17212b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f8fae8;border:1px solid #ffffff70;border-radius:3px;align-items:center;gap:9px;padding:8px 11px;font-size:10px;font-weight:700;display:flex;position:absolute;top:22px;left:22px}.voice-status i{background:#087f68;border-radius:50%;width:7px;height:7px}.voice-signal.greeting+.voice-status i,.voice-signal.listening+.voice-status i,.voice-signal.speaking+.voice-status i{background:#f05b2a;animation:1s ease-in-out infinite voice-pulse}.voice-signal.paused+.voice-status i{background:#365ccb}.voice-signal{z-index:2;justify-content:center;align-items:center;gap:8px;height:62px;display:flex;position:absolute;bottom:28px;left:25px;right:25px}.voice-signal i{opacity:.7;background:#fff;border-radius:2px;width:3px;height:10px;transition:height .35s}.voice-signal.greeting i,.voice-signal.listening i,.voice-signal.speaking i{animation:.85s ease-in-out infinite alternate voice-bar}.voice-signal.paused i{opacity:.5;height:18px}.voice-signal i:nth-child(3n){animation-delay:-.25s}.voice-signal i:nth-child(4n){animation-delay:-.5s}.voice-signal i:nth-child(5n){animation-delay:-.7s}@keyframes voice-bar{0%{opacity:.55;height:8px}to{opacity:1;height:54px}}@keyframes voice-pulse{50%{box-shadow:0 0 0 7px #f05b2a28}}.voice-console{grid-template-rows:auto minmax(0,1fr) auto auto;min-width:0;height:100%;min-height:0;padding:28px 30px 24px;display:grid;overflow:hidden}.voice-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:22px;padding-bottom:22px;display:flex}.voice-toolbar .section-kicker{margin-bottom:7px;font-size:10px}.voice-toolbar h1{margin:0;font-size:32px}.voice-options{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:7px;max-width:330px;display:flex}.voice-options label{color:var(--muted);gap:3px;font-size:9px;display:grid}.voice-options select{border:1px solid var(--line);background:var(--paper);min-width:88px;height:38px;color:var(--ink);border-radius:3px;padding:0 9px}.voice-options .icon-button{border:1px solid var(--line)}.voice-transcript{overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable;scrollbar-width:thin;min-height:0;padding:24px 8px 18px 4px;overflow-y:scroll}.voice-empty{place-content:center;gap:22px;height:100%;display:grid}.voice-empty>p{max-width:470px;color:var(--muted);font-size:15px}.voice-empty>div{flex-wrap:wrap;gap:8px;display:flex}.voice-empty button{border:1px solid var(--line);color:var(--muted);text-align:left;background:0 0;border-radius:3px;padding:8px 10px;font-size:10px}.voice-empty button:hover{border-color:var(--accent);color:var(--accent)}.voice-message{max-width:88%;margin-bottom:18px}.voice-message>span{color:var(--accent);text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.voice-message>p,.agent-answer{background:var(--paper);border-radius:4px;margin:0;padding:12px 14px;font-size:13px;line-height:1.6}.voice-message.user{margin-left:auto}.voice-message.user>span{text-align:right}.voice-message.user>p{color:#fff;background:#17212b}.voice-message small{color:var(--muted);margin-top:5px;font-size:9px;display:block}.agent-answer p{margin:0 0 9px}.agent-answer p:last-child{margin-bottom:0}.agent-answer ol{margin:4px 0 0;padding-left:21px}.agent-answer li{margin:0 0 8px;padding-left:4px}.agent-answer li:last-child{margin-bottom:0}.agent-answer strong{color:var(--ink);font-weight:700}.voice-error{color:#b53f24;background:#f05b2a10;border-left:2px solid #f05b2a;margin:0 0 10px;padding:9px 11px;font-size:11px}.archive-consent{color:var(--muted);align-items:flex-start;gap:8px;margin:0 0 10px;font-size:9px;line-height:1.45;display:flex}.archive-consent input{accent-color:var(--accent);margin-top:2px}.voice-input{border:1px solid var(--line);background:var(--paper);border-radius:4px;grid-template-columns:48px 1fr 44px;align-items:center;display:grid;overflow:hidden}.voice-input label{min-width:0}.voice-input input{width:100%;height:52px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:0 13px;font-size:13px}.mic-button,.send-button{width:100%;height:52px;color:var(--accent);background:0 0;border:0;place-items:center;display:grid}.mic-button{border-right:1px solid var(--line)}.send-button{border-left:1px solid var(--line)}.mic-button.active{color:#fff;background:#f05b2a}.mic-button svg,.send-button svg{width:19px}.voice-privacy{max-width:980px;color:var(--muted);text-align:center;margin:14px auto 0;font-size:9px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1100px){.contact-page-grid{gap:45px}.contact-intro h1{font-size:47px}.voice-workspace{grid-template-columns:.72fr 1.28fr}.voice-console{padding:23px 22px}.voice-toolbar{display:block}.voice-options{margin-top:15px}}@media (max-width:760px){.contact-page,.voice-page{min-height:0;padding-top:45px}.contact-page-grid{grid-template-columns:1fr;gap:36px}.contact-intro{position:static}.contact-intro h1{font-size:39px}.contact-form{padding:22px}.form-pair{grid-template-columns:1fr}.form-submit{flex-direction:column;align-items:flex-start}.voice-page{padding-inline:12px}.voice-page-portrait{opacity:.08;width:360px;right:-185px}.voice-workspace{grid-template-rows:250px minmax(510px,1fr);grid-template-columns:1fr;width:100%;height:auto;min-height:760px}.voice-console{padding:20px 16px 16px}.voice-toolbar h1{font-size:27px}.voice-transcript{max-height:360px}.voice-options{align-items:flex-end}.voice-message{max-width:94%}}@media (prefers-reduced-motion:reduce){.voice-signal i,.voice-status i,.spin{animation:none!important}}.voice-launcher{right:16px;bottom:calc(70px + env(safe-area-inset-bottom,0px));z-index:60;border:1px solid var(--line);background:var(--surface);isolation:isolate;border-radius:50%;place-items:center;width:66px;height:66px;padding:3px;display:grid;position:fixed;box-shadow:0 5px 20px #17212b24}.voice-launcher-parallax{width:58px;height:58px;transform:translate3d(var(--voice-x,0px),var(--voice-y,0px),0);pointer-events:none;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block;position:relative}.voice-launcher-image{object-fit:contain;width:58px;height:58px;animation:4.6s ease-in-out infinite voice-launcher-float}.voice-launcher-bars{border:2px solid var(--surface);background:#087f68;border-radius:8px;align-items:center;gap:2px;height:15px;padding:2px 4px;display:flex;position:absolute;bottom:0;right:0}.voice-launcher-bars i{background:#fff;width:2px;height:5px;animation:1.6s ease-in-out infinite voice-launcher-wave}.voice-launcher-bars i:nth-child(2){animation-delay:-.4s}.voice-launcher-bars i:nth-child(3){animation-delay:-.8s}.voice-launcher-tooltip{white-space:nowrap;border:1px solid var(--line);background:var(--surface);opacity:0;pointer-events:none;border-radius:4px;padding:5px 10px;font-size:12px;font-weight:600;transition:opacity .18s;position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%)}.voice-launcher:hover .voice-launcher-tooltip,.voice-launcher:focus-visible .voice-launcher-tooltip{opacity:1}.voice-launcher.is-paused .voice-launcher-image,.voice-launcher.is-paused .voice-launcher-bars i{animation-play-state:paused}.voice-launcher.is-paused .voice-launcher-parallax{transform:none}@keyframes voice-launcher-float{0%,to{transform:translateY(1px)rotate(-2deg)}50%{transform:translateY(-2px)rotate(2deg)}}@keyframes voice-launcher-wave{0%,to{transform:scaleY(.55)}50%{transform:scaleY(1.35)}}.voice-agent-dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;width:min(1120px,100vw - 40px);max-width:none;max-height:calc(100dvh - 36px);padding:0;animation:.22s ease-out voice-dialog-enter;overflow:hidden;box-shadow:0 22px 80px #17212b33}.voice-agent-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17212b77}.voice-agent-dialog.is-closing{animation:.18s ease-in forwards voice-dialog-leave}.voice-dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:7px 14px 7px 20px;display:flex}.voice-dialog-header>span{color:var(--accent);font-size:12px;font-weight:700}.voice-dialog-header>div{gap:5px;display:flex}.voice-agent-dialog .voice-workspace{width:100%;height:min(690px,100dvh - 100px);min-height:0;box-shadow:none;border:0;border-radius:0;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr)}.voice-agent-dialog .voice-toolbar{display:block}.voice-agent-dialog .voice-toolbar h2{margin:0;font-size:28px}.voice-agent-dialog .voice-options{justify-content:flex-start;max-width:none;margin-top:14px}.voice-agent-dialog .voice-transcript{max-height:none}.voice-launcher-loading{height:350px;color:var(--muted);place-content:center;font-size:14px;display:grid}@keyframes voice-dialog-enter{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}@keyframes voice-dialog-leave{to{opacity:0;transform:translateY(10px)scale(.99)}}@media (max-width:760px){.voice-launcher{width:58px;height:58px;right:12px}.voice-launcher-parallax,.voice-launcher-image{width:50px;height:50px}.voice-agent-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.voice-agent-dialog .voice-workspace{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:calc(100dvh - 78px)}.voice-agent-dialog .voice-visual{display:none}.voice-agent-dialog .voice-toolbar h2{font-size:24px}.voice-agent-dialog .voice-console{padding:16px 12px}.voice-agent-dialog .voice-toolbar{padding-bottom:14px}.voice-agent-dialog .voice-options{gap:6px}.voice-launcher-tooltip{display:none}}@media (prefers-reduced-motion:reduce){.voice-launcher-image,.voice-launcher-bars i,.voice-agent-dialog{animation:none!important}.voice-launcher-parallax{transition:none;transform:none!important}.voice-launcher-tooltip{transition:none}}.voice-scope-dialog{border:1px solid var(--line);background:var(--surface);width:min(640px,100vw - 24px);max-width:none;max-height:calc(100dvh - 32px);color:var(--ink);overscroll-behavior:contain;border-radius:8px;padding:28px;animation:.24s cubic-bezier(.2,.8,.2,1) voice-dialog-enter;overflow:auto;box-shadow:0 22px 70px #17212b33}.voice-scope-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17212b66}.voice-scope-dialog.is-closing{animation:.18s ease-in forwards voice-dialog-leave}.voice-scope-dialog>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.voice-scope-dialog header p{color:var(--accent);margin:0 0 7px;font-size:12px;font-weight:600}.voice-scope-dialog h2{margin:0;font-size:30px}.voice-scope-intro{color:var(--muted);margin:16px 0 22px;font-size:13px}.voice-scope-topics{border-top:1px solid var(--line)}.voice-scope-topics>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:24px minmax(0,1fr) 18px;align-items:start;gap:15px;width:100%;padding:17px 3px;transition:background .18s,color .18s;display:grid}.voice-scope-topics>button>svg{color:var(--accent);margin-top:3px}.voice-scope-topics strong{font-size:14px;font-weight:700;display:block}.voice-scope-topics small{color:var(--muted);margin:2px 0 6px;font-size:11px;display:block}.voice-scope-topics button>span>span{color:var(--accent);font-size:12px;line-height:1.5;display:block}.voice-scope-topics button:hover{background:var(--paper)}@media (max-width:760px){.voice-scope-dialog{padding:20px 16px}.voice-scope-dialog h2{font-size:26px}.voice-scope-topics>button{gap:10px;padding:14px 0}}@media (prefers-reduced-motion:reduce){.voice-scope-dialog{animation:none!important}.voice-scope-topics>button{transition:none}}.voice-heading-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:9px;display:flex}.voice-heading-meta .section-kicker{margin:0}.voice-state-badge{border:1px solid var(--line);background:var(--paper);min-width:104px;max-width:160px;min-height:28px;color:var(--ink);vertical-align:middle;border-radius:5px;grid-template-columns:23px minmax(0,1fr) 5px;align-items:center;gap:5px;padding:2px 7px 2px 3px;font-size:10px;font-weight:600;line-height:1.25;transition:background .4s,border-color .4s,color .4s;display:inline-grid}.voice-state-badge img{object-fit:contain;width:23px;height:23px;transition:transform .6s}.voice-state-badge>span{overflow-wrap:anywhere;animation:.25s ease-out voice-badge-in}.voice-state-badge i{background:#087f68;border-radius:50%;width:5px;height:5px;transition:background .4s}.voice-state-badge.state-paused i{background:#365ccb}.voice-state-badge.state-stopped i{background:#788589}.voice-state-badge.state-error i{background:#c8482c}.voice-state-badge.state-speaking,.voice-state-badge.state-listening{border-color:#087f6870}.voice-state-badge.state-typing img,.voice-state-badge.state-responding img,.voice-state-badge.state-speaking img{animation:3s ease-in-out infinite voice-launcher-float}.voice-state-badge.state-paused img{transform:scale(.94)}.voice-state-badge.state-stopped img{transform:scale(.9)}.voice-launcher-scene{position:absolute;inset:0}.voice-launcher-parallax:has(canvas)>.voice-launcher-image{opacity:0}.voice-launcher-scene canvas{touch-action:pan-y;display:block}.voice-three-canvas{width:100%!important;height:100%!important}.voice-visual-emblem{z-index:2;pointer-events:none;width:64px;height:64px;position:absolute;top:20px;right:18px}.voice-microphone{transition:transform 1.1s cubic-bezier(.2,.8,.2,1),filter .6s;transform:scale(1)}.state-listening .voice-microphone,.state-speaking .voice-microphone{transform:scale(1.018)translateY(-2px)}.state-paused .voice-microphone{transform:scale(1.006)}.state-stopped .voice-microphone{transform:scale(1)}.voice-toolbar{flex-wrap:wrap}.voice-options{justify-content:flex-start;max-width:100%}.voice-console{grid-template-rows:auto minmax(0,1fr) auto auto}.voice-console:has(.voice-error){grid-template-rows:auto minmax(0,1fr) auto auto auto}.navigation .voice-state-badge{flex-shrink:0;width:112px;max-width:112px}.navigation .nav-tools{gap:10px}.navigation .nav-links{gap:22px}@keyframes voice-badge-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (max-width:1100px){.navigation .nav-links{gap:14px}.navigation{gap:14px;padding-inline:24px}}@media (max-width:760px){.navigation{gap:8px;padding-inline:12px}.navigation .nav-tools{gap:5px}.navigation .voice-state-badge{grid-template-columns:18px minmax(0,1fr) 4px;gap:3px;width:92px;min-width:92px;font-size:9px}.navigation .voice-state-badge img{width:18px;height:20px}.navigation .nav-contact{padding:8px}.navigation .nav-contact svg{display:none}.voice-options{gap:8px 6px}.voice-options .icon-button{width:38px;height:38px}.voice-visual-emblem{width:58px;height:58px}.voice-heading-meta{gap:8px}.voice-heading-meta .voice-state-badge{min-width:112px}}@media (max-width:380px){.navigation .nav-contact{display:none}}@media (prefers-reduced-motion:reduce){.voice-state-badge>span,.voice-state-badge img{animation:none!important}.voice-microphone,.voice-state-badge,.voice-state-badge img{transition:none!important;transform:none!important}}
