@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");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{color-scheme:dark;--bg: #0d0f12;--surface: #181b22;--surface-2: #1f232c;--text: #f2f2f5;--text-2: #9a9eaa;--line: rgb(242 242 245 / .08);--line-strong: rgb(242 242 245 / .16);--accent: #69d8cc;--accent-hover: #8be6dc;--on-accent: #0d0f12;--r-sm: 12px;--r-md: 14px;--r-lg: 18px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 72px;--s-9: 112px;--font: "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--fs-name: clamp(2.5rem, 1.9rem + 1.6vw, 3.25rem);--fs-lead: 1.125rem;--fs-h2: 1.5rem;--fs-h3: 1.375rem;--fs-body: 1rem;--fs-small: .875rem;--fs-tag: .8125rem;--t-fast: .22s;--t-base: .32s;--t-slow: .55s;--ease: cubic-bezier(.22, 1, .36, 1);--lift: -4px;--zoom: 1.02}@media(prefers-reduced-motion:reduce){:root{--lift: 0px;--zoom: 1}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased}h1,h2,h3,p,dl,dd{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,video{display:block;max-width:100%}a{color:inherit;text-decoration-color:var(--line-strong);text-underline-offset:.2em;transition:color var(--t-fast) var(--ease),text-decoration-color var(--t-fast) var(--ease)}a:hover{color:var(--accent);text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.section:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:absolute;top:var(--s-3);left:var(--s-3);z-index:10;padding:var(--s-2) var(--s-4);border-radius:var(--r-sm);background:var(--accent);color:var(--on-accent);font-weight:500;text-decoration:none;translate:0 -200%}.skip:focus{translate:none;color:var(--on-accent)}.btn{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s-4);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-size:var(--fs-small);font-weight:500;text-decoration:none;white-space:nowrap;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.btn:hover{border-color:var(--accent);color:var(--text)}.btn--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn--primary:hover{background:var(--accent-hover);color:var(--on-accent)}.btn--small{min-height:40px;padding:0 var(--s-3)}.actions,.links{display:flex;flex-wrap:wrap;gap:var(--s-2)}.shell{max-width:1100px;margin:0 auto;padding:0 var(--s-4)}.content{padding-bottom:var(--s-7)}@media(min-width:960px){.shell{padding:0 var(--s-6)}}.quick{display:grid;gap:var(--s-4);padding:var(--s-7) 0 var(--s-6)}.quick__id{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s-4)}.portrait{width:64px;height:64px;border:1px solid var(--line-strong);border-radius:var(--r-lg);object-fit:cover}.portrait--empty{display:grid;place-items:center;background:var(--surface);color:var(--text-2);font-size:1.125rem;font-weight:600;letter-spacing:-.02em}.quick__heading{min-width:0}.quick__name{font-size:var(--fs-name);font-weight:650;line-height:1.02;letter-spacing:-.04em}.quick__role{margin-top:var(--s-1);font-size:var(--fs-lead);font-weight:500}.quick__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-4);color:var(--text-2);font-size:var(--fs-small)}.open{display:inline-flex;align-items:center;gap:var(--s-2);padding:4px 12px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);font-weight:500}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.quick__tagline{max-width:34ch;font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem);line-height:1.35;text-wrap:balance}.quick__intro{max-width:62ch;color:var(--text-2)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3)}.stat{display:grid;gap:var(--s-1);padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.stat__value{font-size:1.5rem;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat__label{color:var(--text-2);font-size:var(--fs-small);line-height:1.35}.strengths{display:flex;flex-wrap:wrap;gap:6px}.strength{padding:3px 10px;border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:var(--fs-tag);font-weight:500}.strength--secondary{border-color:var(--line);color:var(--text-2)}.lang{display:flex;gap:var(--s-1);font-size:var(--fs-small)}.lang a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:var(--r-sm);color:var(--text-2);text-decoration:none}.lang a[aria-current=page]{background:var(--surface);color:var(--text)}@media(max-width:599px){.quick{padding-top:var(--s-6)}.quick__id{grid-template-columns:auto 1fr}.quick__id .lang{grid-column:1 / -1;grid-row:1;justify-self:end}.portrait{width:52px;height:52px}.quick__name{font-size:2rem}.quick__role{font-size:1rem}.stats{grid-template-columns:1fr}.stat{grid-template-columns:5.5rem 1fr;align-items:baseline;padding:var(--s-3) var(--s-4)}}.cards{display:grid;gap:var(--s-7)}.card{position:relative;padding:var(--s-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);transition:transform var(--t-base) var(--ease),border-color var(--t-fast) var(--ease)}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:0 28px 56px -28px #000000b3;opacity:0;pointer-events:none;transition:opacity var(--t-base) var(--ease)}.card:focus-within{transform:translateY(var(--lift));border-color:var(--line-strong)}.card:focus-within:after{opacity:1}@media(hover:hover){.card:hover{transform:translateY(var(--lift));border-color:var(--line-strong)}.card:hover:after{opacity:1}.card:hover .media__screen img{transform:scale(var(--zoom));will-change:transform}.card:hover .media:before,.card:hover .media__frame:after{opacity:1}}.card:focus-within .media:before,.card:focus-within .media__frame:after{opacity:1}.media{position:relative;isolation:isolate}.media:before{content:"";position:absolute;top:-10%;right:-4%;bottom:-4%;left:-4%;z-index:-1;background:radial-gradient(60% 70% at 50% 45%,color-mix(in srgb,var(--accent-project) 38%,transparent),transparent 72%);filter:blur(28px);opacity:0;pointer-events:none;transition:opacity var(--t-slow) var(--ease)}.media__frame{position:relative;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface-2)}.media__frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid color-mix(in srgb,var(--accent-project) 70%,transparent);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity var(--t-base) var(--ease)}.media__bar{display:flex;align-items:center;height:30px;padding:0 var(--s-3);border-bottom:1px solid var(--line);color:var(--text-2);font-size:.75rem}.media__bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media__screen{position:relative;aspect-ratio:16 / 10;overflow:hidden}.media--desktop .media__screen img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}.media--mobile .media__screen{display:grid;place-items:center}.media--mobile picture{height:88%;aspect-ratio:9 / 19.5;overflow:hidden;border:6px solid #050608;border-radius:24px}.media--mobile .media__screen img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow) var(--ease)}.media__empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:24px 24px;color:var(--text-2);font-size:var(--fs-small)}.media__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--t-fast) var(--ease)}.media__video.is-playing{opacity:1}.preview-toggle{position:absolute;right:var(--s-3);bottom:var(--s-3);display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:#0d0f12d9;color:var(--text);cursor:pointer}.preview-toggle svg{width:16px;height:16px;fill:currentColor}.card__body{padding:var(--s-5) var(--s-2) var(--s-2)}.card__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s-1) var(--s-3)}.card__title{font-size:var(--fs-h3);font-weight:600;line-height:1.25;letter-spacing:-.02em}.status{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:var(--fs-tag);font-weight:500}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--text-2)}.status--live:before{background:var(--accent)}.card__summary{max-width:62ch;margin-top:var(--s-2);color:var(--text-2)}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--s-4)}.tags li{padding:2px 10px;border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-tag)}.card__part{max-width:66ch;margin-top:var(--s-4);color:var(--text-2);font-size:var(--fs-small)}.card__label{color:var(--text);font-weight:500}.card .links{margin-top:var(--s-4)}.notes{margin-top:var(--s-4);border-top:1px solid var(--line)}.notes summary{display:flex;align-items:center;gap:var(--s-2);min-height:44px;font-size:var(--fs-small);font-weight:500;list-style:none;cursor:pointer}.notes summary::-webkit-details-marker{display:none}.notes summary:before{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--t-base) var(--ease)}.notes[open] summary:before{transform:rotate(45deg)}.notes dl{display:grid;gap:var(--s-3);padding-bottom:var(--s-2)}.notes dt{font-size:var(--fs-small);font-weight:500}.notes dd{max-width:66ch;margin-top:2px;color:var(--text-2);font-size:var(--fs-small)}.media__screen:has(.media__empty){aspect-ratio:16 / 5}.media--mobile .media__video{inset:6% auto auto 50%;width:auto;height:88%;aspect-ratio:9 / 19.5;transform:translate(-50%);border:6px solid #050608;border-radius:24px}@media(max-width:640px){.media--mobile .media__screen{justify-items:end;padding-right:10%}.media--mobile .media__video{inset:6% 10% auto auto;transform:none}}.hero{display:grid;gap:var(--s-4);margin-bottom:var(--s-8)}.hero__frame{position:relative;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface-2)}.hero__poster,.hero__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero__video{opacity:0;transition:opacity var(--t-base) var(--ease)}.hero__video.is-playing{opacity:1}@media(orientation:portrait){.hero__frame{aspect-ratio:9 / 16;width:min(100%,43.875svh);margin-inline:auto}}.hero__text{display:grid;gap:var(--s-1)}.hero__title{font-size:var(--fs-h3);font-weight:600;letter-spacing:-.02em}.hero__caption{max-width:62ch;color:var(--text-2)}.hero__link{justify-self:start;margin-top:var(--s-1);color:var(--accent);font-weight:500;text-underline-offset:3px}.hero__link:hover{color:var(--accent-hover)}.watch{position:absolute;left:var(--s-3);bottom:var(--s-3);z-index:2;display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:0 var(--s-4);border:1px solid var(--line-strong);border-radius:999px;background:#0d0f12d9;color:var(--text);font:inherit;font-size:var(--fs-small);font-weight:500;cursor:pointer}.watch:hover{border-color:var(--accent)}.watch[hidden]{display:none}.watch svg{width:12px;height:12px;fill:currentColor}.watch--hero{left:var(--s-4);bottom:var(--s-4);background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.watch--hero:hover{background:var(--accent-hover)}.lightbox{width:min(96vw,1200px);max-width:none;max-height:92svh;padding:0;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--bg);color:var(--text)}.lightbox::backdrop{background:#050608d1}.lightbox__body{position:relative;display:grid}.lightbox__video{display:block;width:100%;max-height:calc(92svh - 56px);background:#000;object-fit:contain}.lightbox__title{padding:var(--s-3) var(--s-4);color:var(--text-2);font-size:var(--fs-small)}.lightbox__close{position:absolute;top:var(--s-2);right:var(--s-2);z-index:1;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;background:#0d0f12d9;color:var(--text);cursor:pointer}.lightbox__close svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.status--preview:before{background:#e8b86b}.hero__toggle{position:absolute;right:var(--s-4);bottom:var(--s-4);z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:#0d0f12d9;color:var(--text);cursor:pointer}.hero__toggle:hover{border-color:var(--accent)}.hero__toggle[hidden]{display:none}.hero__toggle svg{width:16px;height:16px;fill:currentColor}@media(orientation:portrait){.watch--hero,.hero__toggle{bottom:calc(var(--s-4) + 40px)}}.section+.section{margin-top:var(--s-8)}.section__title{margin-bottom:var(--s-5);font-size:var(--fs-h2);font-weight:600;letter-spacing:-.02em}.more__item{padding:var(--s-5) 0;border-top:1px solid var(--line)}.more__item:last-child{border-bottom:1px solid var(--line)}.more__title{font-size:1.125rem;font-weight:600}.more__summary{max-width:62ch;margin-top:var(--s-1);color:var(--text-2)}.more__tags{margin-top:var(--s-2);color:var(--text-2);font-size:var(--fs-tag)}.more__item .links{margin-top:var(--s-3)}.jobs{display:grid;gap:var(--s-6)}.job__company{font-size:1.125rem;font-weight:600}.job__meta{margin-top:2px;color:var(--text-2);font-size:var(--fs-small)}.job__bullets{display:grid;gap:var(--s-2);margin-top:var(--s-3)}.job__bullets li{position:relative;max-width:66ch;padding-left:var(--s-4)}.job__bullets li:before{content:"";position:absolute;top:.75em;left:0;width:6px;height:1px;background:var(--text-2)}.degrees{display:grid;gap:var(--s-3)}.degree{display:flex;flex-wrap:wrap;column-gap:var(--s-3)}.degree__title{font-weight:500}.degree__meta{color:var(--text-2)}.contact__text{max-width:48ch;color:var(--text-2)}.contact__email{display:inline-block;margin-top:var(--s-3);font-size:clamp(1.25rem,1rem + 1.2vw,1.75rem);font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}.contact .actions{margin-top:var(--s-5)}.footer{margin-top:var(--s-8);padding-top:var(--s-5);border-top:1px solid var(--line);color:var(--text-2);font-size:var(--fs-small)}.degree__link{color:var(--accent);font-size:var(--fs-small);text-underline-offset:3px}.job__company a{color:inherit;text-decoration-color:var(--line-strong);text-underline-offset:4px}.job__company a:hover{text-decoration-color:var(--accent)}@media(prefers-reduced-motion:no-preference){.enter{animation:enter var(--t-slow) var(--ease) both;animation-delay:calc(80ms + var(--i, 0) * 50ms)}@supports (animation-timeline: view()){.card+.card{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 35%}}.notes[open] dl{animation:notes-in var(--t-base) var(--ease)}}@keyframes enter{0%{opacity:0;translate:0 8px}}@keyframes reveal{0%{opacity:0;translate:0 16px}}@keyframes notes-in{0%{opacity:0;translate:0 -4px}}
