@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/archivo-vietnamese-400-normal.BF4g3tCF.woff2) format("woff2"),url(/_astro/archivo-vietnamese-400-normal.FGOLYM1a.woff) format("woff");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-display:swap;font-weight:400;src:url(/_astro/archivo-latin-ext-400-normal.B5tPZzqW.woff2) format("woff2"),url(/_astro/archivo-latin-ext-400-normal.DrmqtLj6.woff) format("woff");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-display:swap;font-weight:400;src:url(/_astro/archivo-latin-400-normal.C81ewxNO.woff2) format("woff2"),url(/_astro/archivo-latin-400-normal.Bl602Mgc.woff) format("woff");unicode-range:U+0000-00FF,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-display:swap;font-weight:600;src:url(/_astro/archivo-vietnamese-600-normal.anCjMumA.woff2) format("woff2"),url(/_astro/archivo-vietnamese-600-normal.C8xBVdfP.woff) format("woff");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-display:swap;font-weight:600;src:url(/_astro/archivo-latin-ext-600-normal.Dm61iqcg.woff2) format("woff2"),url(/_astro/archivo-latin-ext-600-normal.D7uErJuz.woff) format("woff");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-display:swap;font-weight:600;src:url(/_astro/archivo-latin-600-normal.3BBy0ZsW.woff2) format("woff2"),url(/_astro/archivo-latin-600-normal.DwYieO8P.woff) format("woff");unicode-range:U+0000-00FF,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-display:swap;font-weight:800;src:url(/_astro/archivo-vietnamese-800-normal.DHDgv4cm.woff2) format("woff2"),url(/_astro/archivo-vietnamese-800-normal.BKe5Z8rz.woff) format("woff");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-display:swap;font-weight:800;src:url(/_astro/archivo-latin-ext-800-normal.BC6piDwP.woff2) format("woff2"),url(/_astro/archivo-latin-ext-800-normal.B9NTbsU1.woff) format("woff");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-display:swap;font-weight:800;src:url(/_astro/archivo-latin-800-normal.cB6v3kRN.woff2) format("woff2"),url(/_astro/archivo-latin-800-normal.DZa_k145.woff) format("woff");unicode-range:U+0000-00FF,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}:root{--font-heading: "Archivo", system-ui, sans-serif;--font-body: "Archivo", system-ui, sans-serif;--heading-weight: 800;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius: 0px;--shadow-sm: 0 1px 2px rgba(45,43,43,.14);--shadow-md: 0 3px 10px rgba(45,43,43,.16);--shadow-lg: 0 12px 32px rgba(45,43,43,.22);--ease: cubic-bezier(.2,.8,.2,1)}html,html[data-theme=light]{--shell: #e4e2e2;--main: #f3f2f2;--side: #f3f2f2;--texture: none;--side-texture: none;--rule1: #d6d2ce;--rule2: #201e1d;--head: #201e1d;--body: #3c3937;--muted: #8a8480;--accent: #ec3013;--accent-deep: #ae1800;--link: #ec3013;--btn-bg: #ec3013;--btn-fg: #f3f2f2;--btn2: #201e1d;--hover: #eae8e6;--img: grayscale(1) contrast(1.05);--track: .14em;--frame: 0px solid transparent;--sw-on-fg: #f3f2f2}html[data-theme=ink]{--shell: #0e0d0c;--main: #1a1918;--side: #121110;--texture: none;--side-texture: none;--rule1: #332f2c;--rule2: #4a4441;--head: #f3f2f2;--body: #d5d1ce;--muted: #8d8783;--accent: #ec3013;--accent-deep: #ff5836;--link: #ff5836;--btn-bg: #ec3013;--btn-fg: #f3f2f2;--btn2: #d5d1ce;--hover: #242220;--img: grayscale(1) contrast(1.15) brightness(.9);--track: .14em;--frame: 0px solid transparent;--sw-on-fg: #f3f2f2}html[data-theme=analog]{--shell: #cfc7b8;--main: #efe7d6;--side: #e6dcc7;--texture: repeating-linear-gradient(180deg, rgba(32,30,29,.055) 0 1px, transparent 1px 30px), repeating-linear-gradient(90deg, rgba(140,120,80,.05) 0 2px, transparent 2px 5px);--side-texture: repeating-linear-gradient(180deg, rgba(32,30,29,.05) 0 1px, transparent 1px 30px), radial-gradient(120% 90% at 20% 0%, rgba(255,252,240,.55), transparent 70%);--rule1: #c3b79c;--rule2: #3a352c;--head: #2c2822;--body: #453f36;--muted: #8b8069;--accent: #b3300f;--accent-deep: #8f2409;--link: #9a2b0d;--btn-bg: #3a352c;--btn-fg: #efe7d6;--btn2: #3a352c;--hover: #e5dbc6;--img: grayscale(1) sepia(.42) contrast(1.12) brightness(1.02);--track: .22em;--frame: 10px solid #f7f1e2;--sw-on-fg: #f7f1e2}.shell,.main,.side{transition:background .45s ease,color .45s ease}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--accent) 25%,transparent)}@keyframes dr-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes dr-slide{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:none}}@keyframes dr-wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);background:var(--shell);color:var(--body)}img{display:block;max-width:100%}a{color:var(--link)}a:hover{color:var(--accent)}h1,h2,h3{font-family:var(--font-heading);font-weight:var(--heading-weight)}.shell{min-height:100vh;background:var(--shell)}.frame{max-width:1180px;margin:0 auto;background:var(--main);background-image:var(--texture);box-shadow:var(--shadow-md);display:grid;grid-template-columns:340px 1fr;align-items:start;transition:background .45s ease}.content{min-width:0}.side{align-self:stretch;background:var(--side);background-image:var(--side-texture);border-right:2px solid var(--rule2);padding:36px 28px;display:flex;flex-direction:column;gap:22px;transition:background .45s ease;animation:dr-slide .7s var(--ease) both}.side__name{font-size:36px;line-height:1;margin:0;color:var(--head);letter-spacing:-.015em}.side__rule{height:2px;width:64px;background:var(--accent);margin:16px 0;transform-origin:left;animation:dr-wipe .8s .25s var(--ease) both}.side__tagline{font-size:14px;line-height:1.5;margin:0;color:var(--muted)}.side__portrait{height:300px;flex:0 0 300px;box-sizing:content-box;border:var(--frame);position:relative}.side__portrait img{width:100%;height:100%;object-fit:cover;filter:var(--img)}.facts{display:flex;flex-direction:column;flex-shrink:0;margin:0}.facts dd{margin:0}.facts__row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--rule1);font-size:13px}.facts__row:last-child{border-bottom:1px solid var(--rule1)}.facts__label{color:var(--muted)}.facts__value{color:var(--body);text-align:right}.ctas{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.cta{display:block;padding:11px 14px;font-family:var(--font-heading);font-weight:800;font-size:14px;text-decoration:none}.cta--primary{background:var(--btn-bg);color:var(--btn-fg);transition:opacity .2s ease}.cta--primary:hover{opacity:.86;color:var(--btn-fg)}.cta--secondary{border:2px solid var(--btn2);color:var(--btn2);transition:background .2s ease,color .2s ease}.cta--secondary:hover{background:var(--btn2);color:var(--main)}.socials{display:flex;gap:16px;font-size:13px;flex-shrink:0}.nav{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:22px;padding:14px 36px;background:var(--main);background-image:var(--texture);border-bottom:2px solid var(--rule2);font-size:14px}.nav__link{font-family:var(--font-heading);font-weight:800;font-size:14px;text-decoration:none;color:var(--body)}.nav__link[aria-current=page],.nav__link:hover{color:var(--accent)}.themer{margin-left:auto;display:flex;align-items:center;gap:10px}.themer__label{font-family:var(--font-heading);font-weight:800;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.themer__group{display:flex;border:1px solid var(--rule1)}.themer__btn{font-family:var(--font-heading);font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:7px 10px;border:0;cursor:pointer;background:transparent;color:var(--muted);transition:background .25s ease,color .25s ease}.themer__btn+.themer__btn{border-left:1px solid var(--rule1)}.themer__btn[aria-pressed=true]{background:var(--accent);color:var(--sw-on-fg)}.band{padding:44px 36px 40px;border-bottom:2px solid var(--rule2);animation:dr-rise .7s .12s var(--ease) both}.band__title{font-size:40px;line-height:1.04;margin:0;max-width:24ch;color:var(--head);letter-spacing:-.02em}.section{display:grid;grid-template-columns:80px 1fr;border-bottom:1px solid var(--rule1)}.section--close{border-bottom:2px solid var(--rule2)}.section--unnumbered{grid-template-columns:1fr}.section--unnumbered .section__body{padding:30px 36px 34px}.section__num{padding:30px 0 30px 36px;font-family:var(--font-heading);font-weight:800;font-size:13px;color:var(--accent)}.section__body{padding:30px 36px 34px 0}.section--work .section__num{padding:26px 0 26px 36px}.section--work .section__body{padding:26px 36px 30px 0}.label{font-family:var(--font-heading);font-weight:800;font-size:11px;letter-spacing:var(--track);text-transform:uppercase;color:var(--muted);margin:0 0 16px}.bio__p{margin:0 0 14px;font-size:16px;line-height:1.6;max-width:64ch;color:var(--body)}.bio__p--lead{font-size:17px;line-height:1.55}.bio__p:last-child{margin-bottom:0}.work{display:flex;flex-direction:column;margin-top:10px}.work__row{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;text-align:left;width:100%;padding:12px 0;border-top:1px solid var(--rule1);text-decoration:none;color:inherit;transition:padding-left .25s ease,background .25s ease}.work__row:last-child{border-bottom:1px solid var(--rule1)}a.work__row:hover{background:var(--hover);padding-left:8px;color:inherit}.work__thumb{height:68px;width:120px;object-fit:cover;filter:var(--img)}.work__title{font-family:var(--font-heading);font-weight:800;font-size:16px;color:var(--head)}.work__sub{font-size:13px;color:var(--muted)}.work__arrow{color:var(--accent);font-size:18px}.footer{padding:22px 36px;display:flex;justify-content:space-between;gap:16px;font-size:13px}.footer__copy{color:var(--muted)}.projects-head{padding:44px 36px 36px;border-bottom:2px solid var(--rule2);display:flex;align-items:flex-end;justify-content:space-between;gap:28px;animation:dr-rise .7s .12s var(--ease) both}.projects-head__kicker{font-family:var(--font-heading);font-weight:800;font-size:11px;letter-spacing:var(--track);text-transform:uppercase;color:var(--accent);margin-bottom:14px}.projects-head__title{font-size:40px;line-height:1.04;margin:0;max-width:22ch;color:var(--head);letter-spacing:-.02em}.projects-head__note{font-size:14px;max-width:32ch;margin:0;color:var(--muted)}.project{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--rule1)}.project:last-of-type{border-bottom:2px solid var(--rule2)}.project__media{min-width:0;height:340px}.project__media img{width:100%;height:100%;object-fit:cover;filter:var(--img)}.project__text{padding:32px;min-width:0}.project--media-left .project__text,.project--media-right .project__media{border-left:1px solid var(--rule1)}.project--media-right .project__media{order:2}.tags{display:flex;gap:8px;margin-bottom:14px;font-family:var(--font-heading);font-weight:800;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.tag{padding:4px 8px;background:var(--accent);color:var(--btn-fg)}.tag--year{background:none;border:1px solid var(--rule1);color:var(--muted)}.project__title{margin:0 0 12px;font-size:26px;color:var(--head)}.project__p{font-size:15px;line-height:1.6;color:var(--body);margin:0 0 12px}.project__p:last-of-type{margin-bottom:18px}.project__meta{display:flex;gap:22px;font-size:12px;color:var(--muted);border-top:1px solid var(--rule1);padding-top:14px;flex-wrap:wrap}.project__links{display:flex;gap:16px;margin-left:auto}.project__link{font-family:var(--font-heading);font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);text-decoration:none}.project__link:hover{text-decoration:underline}@media(max-width:900px){.frame{grid-template-columns:1fr}.side{border-right:0;border-bottom:2px solid var(--rule2)}.side__portrait{height:240px;flex:0 0 240px}.nav{gap:16px;padding:14px 20px;flex-wrap:wrap}.themer{margin-left:auto}.band{padding:32px 20px 28px}.band__title{font-size:30px}.section{grid-template-columns:1fr}.section__num,.section--work .section__num{padding:24px 20px 0}.section__body,.section--work .section__body{padding:12px 20px 28px}.work__row{grid-template-columns:92px 1fr auto;gap:14px}.work__thumb{width:92px;height:56px}.projects-head{padding:32px 20px 28px;flex-direction:column;align-items:flex-start;gap:18px}.projects-head__title{font-size:30px}.projects-head__note{max-width:none}.project{grid-template-columns:1fr}.project__media{height:240px}.project__text{padding:24px 20px}.project--media-left .project__text,.project--media-right .project__media{border-left:0}.project--media-right .project__media{order:-1}.footer{padding:20px;flex-direction:column;gap:8px}}
