@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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}@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure{margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer}img,svg{display:block}img{max-width:100%}ul,ol{margin:0;padding:0;list-style:none}}@layer base{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#121513;--surface:#191d1a;--text:#f0f0e9;--muted:#a5aaa5;--subtle:#929b92;--accent:#b7d99b;--line:#303630;--content-width:1160px;font-family:Inter Variable,Inter,system-ui,sans-serif}html{scroll-behavior:smooth;scroll-padding-top:104px}body{background:var(--bg);color:var(--text);font-size:1rem;line-height:1.65}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:2px}main:focus,footer[tabindex="-1"]:focus,section[tabindex="-1"]:focus{outline:none}a,button{-webkit-tap-highlight-color:transparent}a{transition:color .16s,background-color .16s,border-color .16s}h1,h2,h3,h4{font-weight:500;line-height:1.13}h2{letter-spacing:-.055em;font-size:clamp(2rem,3.6vw,2.85rem)}h3{letter-spacing:-.035em;font-size:1.375rem}button{border:0}.container{width:min(var(--content-width), calc(100% - 96px));margin-inline:auto}.accent{color:var(--accent)}.eyebrow{letter-spacing:.12em;align-items:center;gap:13px;font-size:.75rem;font-weight:500;line-height:1.5;display:flex}.section{padding-block:108px}.section-number{color:var(--subtle);font-variant-numeric:tabular-nums;padding-right:8px}.section-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:42px;display:flex}.section-heading h2{margin-top:19px}.section-note{color:var(--muted);max-width:260px;font-size:1rem}.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.text-link{flex-shrink:0;align-items:center;gap:12px;padding-block:8px;font-size:.875rem;display:inline-flex}.text-link:hover{color:var(--accent)}.button{border-radius:3px;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:15px 23px;font-size:.875rem;font-weight:500;display:inline-flex}.button-primary{background:var(--accent);color:#172013;border:1px solid var(--accent)}.button-primary:hover{background:#c9e7b2;border-color:#c9e7b2}.button-text{gap:12px}.button-text:hover{color:var(--accent)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:var(--bg);background:var(--accent);padding:12px 20px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}}@layer components{.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#121513f5;position:sticky;top:0}.header-inner{align-items:center;gap:40px;height:88px;display:flex}.brand{white-space:nowrap;letter-spacing:-.045em;align-items:center;font-size:1.25rem;font-weight:600;display:inline-flex}.brand-prefix{color:var(--accent)}.brand-name{color:#fff}.main-nav{align-items:center;gap:28px;margin-left:auto;display:flex}.main-nav a{color:var(--muted);padding-block:10px;font-size:.875rem;position:relative}.main-nav a:hover,.main-nav a.active{color:var(--text)}.main-nav a.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:2px;left:0;right:0}.header-actions{align-items:center;gap:24px;display:flex}.language-button{color:var(--subtle);white-space:nowrap;background:0 0;padding:12px 0;font-size:.75rem}.language-divider{color:#929b92;padding-inline:5px}.language-button .selected{color:var(--text)}.header-contact{white-space:nowrap;border:1px solid #50594c;border-radius:3px;align-items:center;gap:18px;padding:10px 16px;font-size:.875rem;display:inline-flex}.header-contact:hover{border-color:var(--accent);color:var(--accent)}.menu-button,.main-nav .mobile-contact{display:none}.hero{border-bottom:1px solid var(--line);grid-template-columns:1.5fr 1fr;align-items:center;gap:88px;padding-top:84px;padding-bottom:100px;display:grid;position:relative}.hero-eyebrow{color:var(--accent);margin-bottom:27px}.hero h1{letter-spacing:-.065em;font-size:clamp(3rem,5.4vw,4.625rem);line-height:1.09}.hero-headline{color:#a8afa4;letter-spacing:-.06em;margin-top:8px;font-size:.69em;display:block}.hero-description{color:var(--muted);max-width:465px;margin-top:27px;font-size:1.0625rem;line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px;display:flex}.hero-location{color:var(--subtle);flex-wrap:wrap;align-items:center;gap:8px;margin-top:30px;font-size:.75rem;display:flex}.small-dot{background:var(--subtle);border-radius:50%;width:3px;height:3px;margin-inline:4px}.hero-portrait{min-width:0;padding-top:2px;transform:translateY(-3px)}.portrait-frame{background:#242924;border-radius:2px;height:387px;position:relative;overflow:hidden}.portrait-frame:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#1215134d);position:absolute;inset:0}.portrait-frame img{object-fit:cover;object-position:50% 40%;filter:grayscale();width:100%;height:100%;transition:filter .4s}.hero-portrait:hover img{filter:grayscale(30%)}.portrait-caption{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-block:17px;font-size:.875rem;display:flex}.portrait-caption-detail{color:var(--subtle);font-size:.75rem}.hero-scroll{color:var(--subtle);letter-spacing:.09em;align-items:center;gap:12px;font-size:.75rem;display:inline-flex;position:absolute;bottom:31px;left:0}.hero-scroll:hover{color:var(--accent)}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.project-card{min-width:0}.project-visual{background:#242f25;border:1px solid #3a4936;border-radius:3px;justify-content:center;align-items:center;height:270px;display:flex;position:relative;overflow:hidden}.project-visual:hover{background:#2d3a2d;border-color:#617258}.project-index{color:#afbdab;font-variant-numeric:tabular-nums;letter-spacing:.05em;font-size:.75rem;position:absolute;top:20px;left:24px}.project-mark{letter-spacing:-.095em;color:#c6ddad;padding-right:.06em;font-size:6.25rem;font-weight:500;line-height:1;transition:transform .22s}.project-visual:hover .project-mark{transform:translateY(-4px)}.project-visual-label{letter-spacing:.14em;color:#afbdab;font-size:.75rem;position:absolute;bottom:23px;left:24px}.project-arrow{color:#c6ddad;border:1px solid #5a6855;border-radius:50%;place-items:center;width:33px;height:33px;display:grid;position:absolute;bottom:18px;right:20px}.project-blue .project-visual{background:#202a31;border-color:#334550}.project-blue .project-visual:hover{background:#283640;border-color:#526f81}.project-blue .project-mark{color:#aec5d4}.project-blue .project-index,.project-blue .project-visual-label{color:#a0b4bf}.project-blue .project-arrow{color:#aec5d4;border-color:#4c616d}.project-sand .project-visual{background:#302d25;border-color:#4a4336}.project-sand .project-visual:hover{background:#39352b;border-color:#6a604e}.project-sand .project-mark{color:#d3c5a5}.project-sand .project-index,.project-sand .project-visual-label{color:#beb299}.project-sand .project-arrow{color:#d3c5a5;border-color:#70624a}.project-info{padding-top:23px}.project-category{color:var(--subtle);margin-bottom:9px;font-size:.75rem}.project-info h3 a{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-info h3 a svg{color:var(--muted)}.project-info h3 a:hover{color:var(--accent)}.project-description{color:var(--muted);max-width:480px;margin-top:13px;font-size:1rem;line-height:1.75}.tags{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.tags a{border:1px solid var(--line);color:#c3c9bf;border-radius:3px;padding:6px 10px;font-size:.75rem;display:block}.tags a:hover{color:var(--accent);border-color:var(--accent);background:var(--surface)}.about-section{background:var(--surface);border-block:1px solid var(--line)}.about-grid{grid-template-columns:.9fr 1.1fr;gap:120px;display:grid}.about-heading h2{max-width:370px;margin-top:24px;line-height:1.16}.about-signature{letter-spacing:-.055em;margin-top:37px;font-size:1.375rem;font-weight:300;display:inline-block}.about-signature span{color:var(--accent)}.about-copy{padding-top:2px}.about-copy>p{color:var(--muted);margin-bottom:20px;font-size:1rem;line-height:1.85}.about-copy>.about-lead{color:var(--text);letter-spacing:-.025em;margin-bottom:24px;font-size:1.25rem;line-height:1.6}.skills-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.skill-item{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:30px 25px 30px 0;display:flex}.skill-item:not(:nth-child(3n+1)){border-left:1px solid var(--line);padding-left:28px}.skill-item:hover,.skill-item:focus-visible{background:var(--surface);color:var(--accent)}.skill-arrow{color:var(--subtle);flex-shrink:0;margin-left:auto}.skill-item:hover .skill-arrow,.skill-icon{color:var(--accent)}.skill-item h3{font-size:1.0625rem;font-weight:450}.skill-item p{color:var(--subtle);margin-top:6px;font-size:.75rem}.journey-section{border-top:1px solid var(--line)}.journey-grid{grid-template-columns:.9fr 1.1fr;grid-template-areas:"heading timeline""education timeline";align-items:start;gap:40px 120px;display:grid}.journey-heading{grid-area:heading}.journey-content{grid-area:timeline}.education-foundation{grid-area:education}.education-foundation>h3{margin-bottom:20px;font-size:1.125rem}.journey-heading h2{white-space:pre-line;margin-top:23px;line-height:1.2}.journey-heading>p:not(.eyebrow){color:var(--muted);max-width:300px;margin-top:22px;font-size:1rem}.timeline{padding-left:19px}.timeline-item{border-left:1px solid #3b4638;padding:0 0 38px 32px;position:relative}.timeline-item:last-child{border-color:#0000;padding-bottom:0}.timeline-marker{background:var(--bg);border:1px solid #839078;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:-5px}.timeline-current .timeline-marker{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px #222c1d}.timeline-period{letter-spacing:.06em;color:var(--subtle);align-items:center;gap:8px;margin-bottom:12px;font-size:.75rem;display:flex}.timeline-period .status-dot{display:none}.timeline-current .timeline-period{color:var(--accent)}.timeline-item h3{font-size:1.25rem}.timeline-place{color:#d0d7c9;margin-top:7px;font-size:.875rem}.timeline-item>p:last-of-type:not(.timeline-place){color:var(--muted);margin-top:13px;font-size:1rem}.timeline-future .timeline-marker{border-color:var(--accent);width:19px;height:19px;color:var(--accent);place-items:center;display:grid;top:0;left:-10px}.future-tag{color:var(--accent);align-items:center;gap:10px;margin-top:15px;font-size:.75rem;display:inline-flex}.education-history{gap:22px;padding:5px 0 15px;display:grid}.education-history li{border-left:2px solid #485641;padding-left:20px}.education-period{color:var(--accent);font-size:.75rem}.education-history h4{margin-top:7px;font-size:1rem}.education-history p{color:var(--muted);margin-top:4px;font-size:.875rem}.education-history .education-description{margin-top:10px}.contact-section{padding-top:95px;padding-bottom:85px}.contact-heading{justify-content:space-between;align-items:center;gap:40px;margin-top:26px;display:flex}.contact-heading h2{white-space:pre-line;font-size:clamp(2rem,4.5vw,3.75rem);line-height:1.13}.contact-arrow{background:var(--accent);color:#1a2415;border-radius:50%;flex-shrink:0;place-items:center;width:90px;height:90px;display:grid}.contact-arrow svg{width:42px;height:42px;transition:transform .15s}.contact-arrow:hover{background:#c9e7b2}.contact-arrow:hover svg{transform:translate(3px,-3px)}.contact-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin-top:40px;padding-top:27px;display:flex}.email-link{overflow-wrap:anywhere;align-items:center;gap:12px;min-width:0;font-size:1rem;display:flex}.email-link svg{flex-shrink:0}.email-link:hover{color:var(--accent)}.social-links{align-items:center;gap:24px;display:flex}.social-links a{color:var(--muted);align-items:center;gap:5px;font-size:.875rem;display:inline-flex}.social-links a:hover{color:var(--accent)}.site-footer{border-top:1px solid var(--line)}.footer-copyright{color:var(--subtle);margin-top:30px;font-size:.75rem}.projects-page{padding-top:35px;padding-bottom:90px}.back-link{color:var(--muted);font-size:.875rem}.projects-page-heading{padding-top:54px}.projects-page-heading .eyebrow{color:var(--accent)}.projects-page-heading h1{letter-spacing:-.065em;margin-top:21px;font-size:clamp(2.5rem,5.3vw,4.5rem)}.projects-page-intro{justify-content:space-between;align-items:flex-end;gap:30px;margin-top:24px;display:flex}.projects-page-intro p{max-width:555px;color:var(--muted);font-size:1rem}.project-list-label{color:var(--subtle);letter-spacing:.08em;border-block:1px solid var(--line);justify-content:space-between;gap:20px;margin-top:24px;margin-bottom:32px;padding-block:17px;font-size:.75rem;display:flex}.project-list-label>span{overflow-wrap:anywhere;min-width:0}.project-list-label>p{flex-shrink:0}.project-filters{flex-wrap:wrap;gap:8px;margin-top:40px;display:flex}.project-filters button{border:1px solid var(--line);min-height:42px;color:var(--muted);overflow-wrap:anywhere;background:0 0;border-radius:3px;max-width:100%;padding:9px 14px;font-size:.875rem}.project-filters button:hover{border-color:var(--accent);color:var(--text)}.project-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#172013}.projects-empty{text-align:center;border:1px solid var(--line);padding:48px 24px}.projects-empty h2{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:1.5rem}.projects-empty p{color:var(--muted);margin-block:16px 25px}.projects-full-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.projects-full-grid .project-visual{height:250px}.projects-full-grid .project-info{flex-direction:column;flex:1;display:flex}.projects-full-grid .project-card{flex-direction:column;display:flex}.projects-full-grid .project-description{flex:1}.projects-endnote{border-top:1px solid var(--line);color:var(--muted);justify-content:center;align-items:center;gap:12px;margin-top:64px;padding-top:28px;font-size:.875rem;display:flex}.not-found{flex-direction:column;justify-content:center;align-items:flex-start;min-height:65vh;padding-block:70px;display:flex}.not-found .eyebrow{color:var(--accent)}.not-found h1{letter-spacing:-.055em;max-width:720px;margin-top:20px;font-size:clamp(2.5rem,5vw,4rem)}.not-found>p:not(.eyebrow){color:var(--muted);margin-top:22px}}@layer responsive{@media (width>=1500px){.hero{padding-block:104px 120px}}@media (width<=1100px){.header-inner{gap:24px}.main-nav{gap:22px}.header-actions{gap:16px}.header-contact{display:none}.hero{gap:48px}.portrait-frame{height:365px}.about-grid,.journey-grid{gap:65px}.projects-full-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-bottom{flex-wrap:wrap;gap:20px}}@media (width<=800px){.container{width:calc(100% - 48px)}.header-inner{gap:18px;height:76px}.header-actions{margin-left:auto}.menu-button{background:0 0;place-items:center;width:42px;height:44px;display:grid}.main-nav{background:#191d1a;border-bottom:1px solid #485044;padding:14px 24px 24px;display:none;position:absolute;top:76px;left:0;right:0;box-shadow:0 18px 25px #00000026}.main-nav.is-open{flex-direction:column;align-items:stretch;gap:0;display:flex}.main-nav a{padding-block:13px;font-size:1rem}.main-nav a.active:after{display:none}.main-nav a.active{color:var(--accent)}.main-nav .mobile-contact{border-top:1px solid var(--line);color:var(--accent);align-items:center;gap:12px;margin-top:8px;padding-top:18px;display:flex}.hero{grid-template-columns:1.3fr 1fr;gap:28px;padding-top:60px;padding-bottom:90px}.hero h1{font-size:clamp(2.4rem,5.8vw,3.1rem)}.hero-headline{font-size:.64em}.hero-eyebrow{gap:9px;margin-bottom:21px;font-size:.75rem}.hero-description{margin-top:21px;font-size:1rem}.portrait-frame{height:315px}.hero-actions{gap:5px}.button{gap:20px;padding-inline:17px}.hero-location{margin-top:23px}.section{padding-block:74px}.section-heading{flex-wrap:wrap;gap:24px;margin-bottom:30px}.section-heading h2{margin-top:16px}.section-note{max-width:100%}.projects-grid{gap:24px}.project-visual{height:235px}.project-mark{font-size:5rem}.about-grid,.journey-grid{grid-template-columns:1fr;gap:40px}.journey-grid{grid-template-areas:"heading""timeline""education"}.about-heading h2{max-width:420px}.about-signature{margin-top:24px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-item:not(:nth-child(3n+1)){border-left:0;padding-left:0}.skill-item:nth-child(2n){border-left:1px solid var(--line);padding-left:24px}.journey-heading>p:not(.eyebrow){max-width:420px}.contact-heading{gap:28px}.contact-arrow{width:65px;height:65px}.contact-arrow svg{width:32px;height:32px}.projects-page{padding-bottom:65px}.projects-page-heading{padding-top:40px}.projects-page-intro{flex-wrap:wrap;gap:20px}.projects-full-grid{row-gap:42px}}@media (width<=560px){html{scroll-padding-top:94px}.hero{grid-template-columns:1fr;gap:42px;padding-top:48px;padding-bottom:76px}.hero h1{font-size:clamp(2.65rem,11vw,3.8rem)}.hero-headline{font-size:.69em}.hero-description{max-width:100%;font-size:1rem}.hero-actions{gap:12px}.hero-portrait{max-width:100%;transform:none}.portrait-frame{aspect-ratio:1.1;height:auto}.portrait-frame img{object-position:50% 40%}.hero-scroll{bottom:24px}.section{padding-block:60px}.eyebrow{gap:9px;font-size:.75rem}.section-heading{gap:18px}.section-heading h2{font-size:2rem}.projects-grid{grid-template-columns:1fr;gap:37px}.project-visual,.projects-full-grid .project-visual{height:255px}.project-info{padding-top:20px}.about-grid,.journey-grid{gap:33px}.about-copy>.about-lead{font-size:1.2rem}.skill-item{gap:11px;padding:24px 12px 24px 0}.skill-item:nth-child(2n){padding-left:15px}.skill-item h3{font-size:.9375rem}.skill-icon svg{width:20px;height:20px}.timeline{padding-left:10px}.timeline-item{padding-left:25px}.timeline-period{font-size:.75rem}.timeline-item h3{font-size:1.125rem}.contact-heading{align-items:flex-start;gap:20px}.contact-heading h2{font-size:clamp(1.8rem,6.5vw,2.3rem)}.contact-arrow{width:48px;height:48px}.contact-arrow svg{width:27px;height:27px}.contact-bottom{margin-top:28px}.email-link{font-size:.875rem}.social-links{flex-wrap:wrap}.projects-page-heading h1{font-size:2.8rem}.project-list-label{margin-top:30px}.projects-endnote{justify-content:flex-start;align-items:flex-start;margin-top:40px;padding-top:23px}.projects-endnote .status-dot{margin-top:8px}}@media (width<=360px){.container{width:calc(100% - 32px)}.header-inner,.header-actions{gap:8px}.brand{font-size:1.125rem}.skill-item{gap:9px}.skill-item:nth-child(2n){padding-left:12px}.skill-icon{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}
