@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}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--bg:#000;--bg-elevated:#0b0b0d;--surface:#161618;--surface-2:#1d1d1f;--line:#ffffff1f;--fg:#f5f5f7;--fg-dim:#86868b;--accent:#2997ff;--violet:#bf5af2;--pink:#ff375f;--green:#30d158;--amber:#ff9f0a;--light-bg:#fbfbfd;--light-fg:#1d1d1f;--light-dim:#6e6e73;--light-line:#0000001a;--font:"Inter Variable", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--ease:cubic-bezier(.16, 1, .3, 1);--nav-h:48px;--gutter:clamp(20px, 5vw, 48px)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);color:var(--fg);font-family:var(--font);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.47}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.print-only{display:none}.container{width:100%;max-width:1120px;padding:0 var(--gutter);margin:0 auto}.container--narrow{max-width:760px}.container--center{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.section{padding:clamp(80px,14vw,160px) 0;position:relative}.section--light{background:var(--light-bg);color:var(--light-fg)}.section--elevated{background:var(--bg-elevated)}.eyebrow{color:var(--fg-dim);letter-spacing:0;margin-bottom:14px;font-size:clamp(14px,1.4vw,17px);font-weight:600}.eyebrow--dark{color:var(--light-dim)}.display{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(38px,7vw,84px);font-weight:700;line-height:1.04}.display--dark{color:var(--light-fg)}.lede{max-width:44ch;color:var(--fg-dim);letter-spacing:-.02em;margin-top:24px;font-size:clamp(19px,2.2vw,28px);font-weight:500;line-height:1.25}.lede--dark{color:var(--light-dim);max-width:56ch}.gradient-text{background:linear-gradient(92deg, var(--accent) 0%, var(--violet) 48%, var(--pink) 100%);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.mask{vertical-align:top;margin-bottom:-.12em;padding-bottom:.12em;display:inline-block;overflow:hidden}.mask__inner{will-change:transform;display:inline-block}.btn{cursor:pointer;transition:transform .4s var(--ease), background .3s, box-shadow .4s;border:0;border-radius:980px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:17px;font-weight:500;display:inline-flex}.btn--primary{background:var(--accent);color:#fff}.btn--primary:hover{background:#0a84ff;transform:scale(1.03);box-shadow:0 10px 40px -10px #2997ffb3}.btn--primary:active{transform:scale(.98)}.btn--lg{padding:16px 30px;font-size:19px}.btn--sm{padding:8px 16px;font-size:14px}.link-arrow{color:var(--accent);align-items:center;gap:6px;font-size:19px;font-weight:500;display:inline-flex}.link-arrow:after{content:"›";transition:transform .3s var(--ease)}.link-arrow:hover:after{transform:translate(4px)}.link-arrow--back:after{content:none}.link-arrow--back:before{content:"‹";transition:transform .3s var(--ease)}.link-arrow--back:hover:before{transform:translate(-4px)}.nav{z-index:50;height:var(--nav-h);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);background:#161618b8;border-bottom:1px solid #ffffff0f;position:fixed;inset:0 0 auto}.nav__inner{max-width:1024px;height:100%;padding:0 var(--gutter);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;display:flex}.nav__brand{letter-spacing:.04em;font-weight:700}.nav__links{color:#f5f5f7cc;gap:clamp(14px,3vw,32px);font-size:12px;display:flex}.nav__links a:hover{color:#fff}.nav__lang{background:#ffffff14;border-radius:980px;padding:2px;display:inline-flex}.nav__lang button{cursor:pointer;color:var(--fg-dim);background:0 0;border:0;border-radius:980px;padding:3px 10px;font-size:11px;font-weight:600;transition:background .3s,color .3s}.nav__lang button.is-active{background:var(--fg);color:#000}.hero{text-align:center;min-height:100svh;padding:calc(var(--nav-h) + 40px) var(--gutter) 80px;place-items:center;display:grid;position:relative;overflow:hidden}.hero__orbs{pointer-events:none;position:absolute;inset:0}.orb{filter:blur(90px);opacity:.55;border-radius:50%;position:absolute}.orb--blue{background:radial-gradient(circle, var(--accent), transparent 65%);width:46vmax;height:46vmax;top:-10vmax;left:-12vmax}.orb--violet{background:radial-gradient(circle, var(--violet), transparent 65%);width:40vmax;height:40vmax;top:8vmax;right:-10vmax}.orb--pink{background:radial-gradient(circle, var(--pink), transparent 65%);opacity:.4;width:34vmax;height:34vmax;bottom:-18vmax;left:28vw}.hero__copy{z-index:1;max-width:1000px;position:relative}.hero__title{letter-spacing:-.04em;font-size:clamp(44px,9vw,112px);font-weight:700;line-height:1.02}.hero__line{display:block}.hero__sub{color:#f5f5f7b8;letter-spacing:-.02em;max-width:34ch;margin:28px auto 0;font-size:clamp(19px,2.4vw,28px);font-weight:500;line-height:1.25}.hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;margin-top:40px;display:flex}.hero__scroll{border:1.5px solid #ffffff59;border-radius:12px;width:22px;height:36px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.hero__scroll span{width:3px;height:7px;animation:wheel 1.8s var(--ease) infinite;background:#fff;border-radius:2px;margin-left:-1.5px;position:absolute;top:7px;left:50%}@keyframes wheel{0%{opacity:1;transform:translateY(0)}80%,to{opacity:0;transform:translateY(12px)}}.meet{padding-bottom:clamp(80px,12vw,140px);overflow:hidden}.meet__card{aspect-ratio:16/10;will-change:transform;background:#ddd;width:min(92vw,980px);margin:clamp(40px,6vw,72px) auto;overflow:hidden;box-shadow:0 40px 120px -40px #00000073}.meet__card img{object-fit:cover;object-position:50% 62%;width:100%;height:100%}.stage{min-height:100svh;padding:calc(var(--nav-h) + 24px) var(--gutter) 40px;align-content:center;display:grid;overflow:hidden}.stage__label{text-align:center}.stage__row{grid-template-columns:auto 1fr;align-items:center;gap:clamp(16px,3vw,40px);width:100%;max-width:1200px;margin:0 auto;display:grid}.stage__lead{letter-spacing:-.045em;font-size:clamp(40px,9vw,120px);font-weight:700;line-height:1}.stage__phrases{letter-spacing:-.035em;min-height:2.6em;font-size:clamp(28px,5.6vw,72px);font-weight:700;line-height:1.05;position:relative}.stage__phrase{will-change:transform, opacity, filter;flex-direction:column;justify-content:center;gap:18px;display:flex;position:absolute;inset:0}.stage__tech{letter-spacing:0;flex-wrap:wrap;gap:8px;font-size:15px;font-weight:500;display:flex}.stage__tech i{background:var(--surface-2);color:var(--fg-dim);border:1px solid var(--line);border-radius:980px;padding:6px 12px;font-style:normal}.stage--static .stage__phrases{gap:32px;min-height:0;display:grid}.stage--static .stage__phrase{position:static}@media (width<=720px){.stage__row{text-align:center;grid-template-columns:1fr}.stage__phrase,.stage__tech{justify-content:center;align-items:center}}.numbers{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(60px,10vw,120px) 0}.numbers__grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:48px 32px;display:grid}.numbers__value{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(64px,9vw,120px);font-weight:700;line-height:1}.numbers__label{max-width:24ch;color:var(--fg-dim);margin-top:12px;font-size:17px}.arch{min-height:100svh;padding:calc(var(--nav-h) + 24px) 0 32px;align-content:center;gap:clamp(16px,3vh,32px);display:grid;overflow:hidden}.arch__head .display{font-size:clamp(34px,5.6vw,68px)}.arch__head .lede{margin-top:12px;font-size:clamp(17px,1.8vw,22px)}.arch__canvas{width:min(100%,1240px);padding:0 var(--gutter);margin:0 auto}.arch__canvas svg{width:100%;height:auto;max-height:52vh;overflow:visible}.arch__col{fill:var(--fg-dim);letter-spacing:.14em;font-size:12px;font-weight:600}.arch__edge{fill:none;stroke:#ffffff47;stroke-width:1.5px}.arch__packet{fill:var(--accent);filter:drop-shadow(0 0 6px var(--accent))}.arch__node rect{fill:var(--surface);stroke-width:1.5px}.arch__node--blue rect{stroke:var(--accent)}.arch__node--violet rect{stroke:var(--violet)}.arch__node--pink rect{stroke:var(--pink)}.arch__node--green rect{stroke:var(--green)}.arch__node--amber rect{stroke:var(--amber);fill:#1f1608}.arch__title{fill:var(--fg);font-size:15px;font-weight:600}.arch__sub{fill:var(--fg-dim);font-size:12px}.arch__principles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px 40px;display:grid}.arch__principle h3{margin-bottom:4px;font-size:17px;font-weight:600}.arch__principle p{color:var(--fg-dim);font-size:15px}@media (width<=720px){.arch__principles{display:none}.arch__canvas{overflow-x:auto}.arch__canvas svg{min-width:640px}}.xp__intro{margin-bottom:clamp(40px,8vw,96px)}.xp__sticky{margin-bottom:18vh;position:sticky}.xp__sticky:last-child{margin-bottom:0}.xp__card{transform-origin:50% 0;border:1px solid var(--line);will-change:transform;background:linear-gradient(#1c1c1f,#141416);border-radius:28px;padding:clamp(24px,4vw,48px);position:relative;overflow:hidden;box-shadow:0 30px 80px -30px #000c}.xp__dim{pointer-events:none;background:#000;position:absolute;inset:0}.xp__period{color:var(--accent);letter-spacing:.02em;font-size:14px;font-weight:600}.xp__company{letter-spacing:-.03em;margin-top:6px;font-size:clamp(30px,4.6vw,52px);font-weight:700;line-height:1.05}.xp__role{color:var(--fg-dim);margin-top:6px;font-size:18px}.xp__list{gap:10px;max-width:68ch;margin:24px 0;display:grid}.xp__list li{color:#f5f5f7db;padding-left:22px;position:relative}.xp__list li:before{content:"";background:linear-gradient(135deg, var(--accent), var(--violet));border-radius:50%;width:7px;height:7px;position:absolute;top:.68em;left:0}.xp__metrics{flex-wrap:wrap;gap:32px;margin:0 0 24px;display:flex}.xp__metrics dd{letter-spacing:-.03em;margin:0;font-size:36px;font-weight:700}.xp__metrics dt{color:var(--fg-dim);order:2;font-size:14px}.xp__metrics div{flex-direction:column;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips li{border:1px solid var(--line);color:#f5f5f7e6;background:#ffffff12;border-radius:980px;padding:7px 14px;font-size:14px;font-weight:500}.chips--small li{padding:4px 11px;font-size:13px}.chips--light li{border-color:var(--light-line);color:var(--light-fg);background:#fff}.toolbox__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:48px;margin-top:clamp(40px,6vw,72px);display:grid}.toolbox__group h3{letter-spacing:-.02em;margin-bottom:16px;font-size:21px;font-weight:600}.clients{padding:clamp(56px,8vw,96px) 0;overflow:hidden}.clients__label{text-align:center}.clients__track{width:max-content;animation:38s linear infinite marquee;display:flex;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.clients__row{letter-spacing:-.03em;color:#f5f5f747;white-space:nowrap;flex-shrink:0;gap:clamp(40px,6vw,88px);padding-right:clamp(40px,6vw,88px);font-size:clamp(24px,3.6vw,44px);font-weight:700;display:flex}@keyframes marquee{to{transform:translate(-50%)}}.cta{text-align:center}.cta .lede{margin:0}.footer{border-top:1px solid var(--line);color:var(--fg-dim);padding:48px 0 64px;font-size:13px}.footer__inner{gap:20px;display:grid}.footer__links{flex-wrap:wrap;gap:8px 24px;display:flex}.footer__links a{color:#f5f5f7cc}.footer__links a:hover{color:var(--accent)}.links{min-height:100svh;padding:72px var(--gutter) 64px;text-align:center;align-content:start;justify-items:center;gap:8px;display:grid;position:relative;overflow:hidden}.links:before{content:"";filter:blur(40px);pointer-events:none;background:radial-gradient(60% 60% at 30% 20%,#2997ff47,#0000 70%),radial-gradient(50% 50% at 75% 10%,#bf5af23d,#0000 70%);height:60vh;position:absolute;inset:-20% -10% auto}.links>*{position:relative}.links__lang{top:20px;right:var(--gutter);position:absolute}.links__photo{object-fit:cover;object-position:50% 60%;border:2px solid #ffffff2e;border-radius:50%;width:128px;height:128px;box-shadow:0 0 0 6px #2997ff1f}.links h1{letter-spacing:-.035em;margin-top:12px;font-size:clamp(30px,6vw,40px);font-weight:700}.links__role{color:var(--fg-dim);margin-bottom:24px}.links__groups{text-align:left;gap:28px;width:min(100%,460px);display:grid}.links__group h2{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);margin-bottom:10px;padding-left:4px;font-size:13px;font-weight:600}.links__list{gap:8px;display:grid}.links__btn{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);background:#1d1d1fcc;border-radius:16px;justify-content:space-between;align-items:baseline;gap:16px;padding:15px 18px;font-weight:500;transition:border-color .3s,background .3s;display:flex}.links__btn:hover{border-color:var(--accent);background:#2997ff14}.links__hint{color:var(--fg-dim);font-size:14px;font-weight:400}.cv{background:var(--light-bg);color:var(--light-fg);min-height:100svh}.cv__bar{z-index:40;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--light-line);background:#fbfbfdcc;position:sticky;top:0}.cv__bar-inner{max-width:1120px;height:56px;padding:0 var(--gutter);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.cv__bar .link-arrow{font-size:15px}.cv__bar-actions{align-items:center;gap:14px;display:flex}.cv .nav__lang{background:#0000000f}.cv .nav__lang button{color:var(--light-dim)}.cv .nav__lang button.is-active{background:var(--light-fg);color:#fff}.cv__layout{max-width:1120px;padding:48px var(--gutter) 120px;grid-template-columns:200px minmax(0,1fr);gap:clamp(32px,6vw,80px);margin:0 auto;display:grid}.cv__toc{align-self:start;position:sticky;top:96px}.cv__toc ul{border-left:1px solid var(--light-line);gap:4px;display:grid}.cv__toc a{color:var(--light-dim);border-left:2px solid #0000;margin-left:-1px;padding:6px 14px;font-size:15px;transition:color .3s,border-color .3s;display:block}.cv__toc a:hover{color:var(--light-fg)}.cv__toc a.is-active{color:var(--light-fg);border-color:var(--accent);font-weight:600}.cv__hero{align-items:center;gap:24px;margin-bottom:56px;display:flex}.cv__photo{object-fit:cover;object-position:50% 60%;border-radius:28px;width:104px;height:104px}.cv__hero h1{letter-spacing:-.04em;font-size:clamp(34px,5vw,56px);font-weight:700;line-height:1.05}.cv__title{color:var(--light-dim);margin-top:4px;font-size:21px;font-weight:500}.cv__meta{color:var(--light-dim);margin-top:6px;font-size:15px}.cv__section{padding-bottom:56px;scroll-margin-top:88px}.cv__section+.cv__section{border-top:1px solid var(--light-line);padding-top:40px}.cv__section h2{letter-spacing:.08em;text-transform:uppercase;color:var(--light-dim);margin-bottom:24px;font-size:14px;font-weight:600}.cv__section p{max-width:68ch}.cv__availability{color:var(--light-dim);margin-top:16px}.cv__stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:28px;display:grid}.cv__stat-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:52px;font-weight:700;line-height:1}.cv__stat-label{color:var(--light-dim);margin-top:8px;font-size:14px}.timeline{padding-left:32px;position:relative}.timeline__rail{background:var(--light-line);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:5px}.timeline__fill{transform-origin:top;background:linear-gradient(180deg, var(--accent), var(--violet));border-radius:2px;position:absolute;inset:0}.timeline__item{padding-bottom:44px;position:relative}.timeline__item:before{content:"";background:var(--light-bg);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:8px;left:-32px}.timeline__top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;display:flex}.timeline__top h3{letter-spacing:-.02em;font-size:21px;font-weight:600}.timeline__top h3 span{color:var(--light-dim);font-weight:500}.timeline__period{color:var(--light-dim);font-size:14px;font-weight:500}.timeline__loc{color:var(--light-dim);font-size:14px}.timeline__list{gap:8px;margin:14px 0;display:grid}.timeline__list li{max-width:68ch;padding-left:18px;position:relative}.timeline__list li:before{content:"";background:var(--light-dim);border-radius:50%;width:5px;height:5px;position:absolute;top:.7em;left:0}.timeline__metrics{flex-wrap:wrap;gap:8px 20px;margin-bottom:14px;display:flex}.cv__skills{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;display:grid}.cv__skills h3{margin-bottom:10px;font-size:16px;font-weight:600}.cv .chips li{border-color:var(--light-line);color:var(--light-fg);background:#fff}.cv__row{justify-content:space-between;gap:12px;display:flex}.cv__year{color:var(--light-dim)}.cv__certs,.cv__contact{gap:8px;display:grid}.cv a:not(.btn):not(.link-arrow){color:#06c}.cv a:not(.btn):not(.link-arrow):hover{text-decoration:underline}@media (width<=860px){.cv__layout{grid-template-columns:minmax(0,1fr)}.cv__toc{display:none}.cv__hero{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.clients__track{flex-wrap:wrap;width:auto;animation:none}}@page{size:A4;margin:9mm 13mm}@media print{html,body,.cv{color:#000!important;background:#fff!important}body{font-size:10.5pt}.no-print,.nav{display:none!important}.print-only{display:inline!important}li.print-only{display:list-item!important}.cv__layout{max-width:none;padding:0;display:block}.cv__section{break-inside:auto;padding-bottom:14pt}.cv__section+.cv__section{padding-top:12pt}.timeline{padding-left:0}.timeline__item{break-inside:avoid;padding-bottom:12pt}.timeline__item:before{display:none}.cv__stats{grid-template-columns:repeat(4,1fr)}.cv__stat-value{font-size:22pt}.cv a{color:#000!important}.chips li{background:#fff!important;border:1px solid #bbb!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.ats{color:#000;letter-spacing:0;background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:10pt;line-height:1.32;display:none}.ats h1{letter-spacing:.02em;margin:0;font-size:20pt}.ats__title{margin:2pt 0;font-size:12pt;font-weight:700}.ats h2{text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #000;margin:11pt 0 5pt;padding-bottom:2pt;font-size:11pt}.ats h3{margin:0;font-size:10.5pt}.ats p{margin:2pt 0}.ats ul{margin:2pt 0 2pt 16pt;padding:0;list-style:outside}.ats li{margin:.5pt 0;display:list-item}.ats__job{break-inside:avoid;margin-bottom:6pt}.ats__item{break-inside:avoid;margin-bottom:3pt}.ats__meta{font-style:italic}.ats__skills{margin-left:0;list-style:none}.btn--ghost{color:var(--light-fg);border:1px solid var(--light-line);background:0 0}.btn--ghost:hover,.btn--ghost[aria-pressed=true]{background:var(--light-fg);color:#fff}.cv--ats .cv__layout{display:none}.cv--ats .ats{max-width:794px;min-height:1123px;margin:32px auto 80px;padding:56px 60px;display:block;box-shadow:0 10px 50px -20px #00000059}@media print{.cv .screen-only,.cv__bar{display:none!important}.ats{max-width:none;box-shadow:none;margin:0;padding:0;display:block!important}}.xp__weight{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 40px;margin-top:14px;display:flex}.xp__tagline{letter-spacing:-.02em;color:var(--fg);max-width:34ch;font-size:clamp(16px,1.8vw,20px);font-weight:600}.xp__stats{gap:28px;margin:0;display:flex}.xp__stats div{flex-direction:column;display:flex}.xp__stats dd{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(36px,5vw,56px);font-weight:700;line-height:1}.xp__stats dt{max-width:16ch;color:var(--fg-dim);order:2;margin-top:4px;font-size:13px}.arch__note{color:var(--fg-dim);font-size:13px}.timeline__weight{flex-wrap:wrap;gap:2px 16px;margin-top:4px;font-weight:600;display:flex}.timeline__weight span{color:var(--light-dim);font-weight:500}.timeline__weight strong{color:var(--light-fg)}.ats__context{font-weight:700}.xp__reach{border-top:1px solid var(--line);color:#f5f5f7db;flex-basis:100%;margin-top:4px;padding-top:14px;font-size:16px}.timeline__reach{color:var(--light-dim);margin-top:2px;font-size:15px}.projects__list{gap:24px;margin-top:clamp(40px,6vw,72px);display:grid}.win-slot{padding:0 0 4px;overflow:hidden}.win{background:var(--surface);border:1px solid var(--line);border-radius:20px;transition:border-color .3s;overflow:hidden;box-shadow:0 40px 100px -50px #000000f2}.win:hover{border-color:#ffffff38}.win__bar{border-bottom:1px solid var(--line);background:linear-gradient(#2c2c2f,#232326);align-items:center;gap:16px;padding:12px 16px;display:flex;position:relative}.win--min .win__bar{border-bottom-color:#0000}.lights{flex-shrink:0;gap:8px;display:flex}.light{cursor:pointer;color:#0000009e;border:0;border-radius:50%;place-items:center;width:13px;height:13px;padding:0;transition:filter .2s;display:grid;position:relative;box-shadow:inset 0 0 0 .5px #00000040}.light:after{content:"";position:absolute;inset:-6px}.light--close{background:#ff5f57}.light--min{background:#febc2e}.light--max{background:#28c840}.light svg{opacity:0;width:9px;height:9px;transition:opacity .18s, transform .28s var(--ease);transform:scale(.5)}.lights:hover .light svg,.lights:focus-within .light svg{opacity:1;transform:scale(1)}.light:hover{filter:brightness(1.12)}.win__url{color:#f5f5f7d9;background:#00000059;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;max-width:420px;margin:0 auto;padding:5px 14px;font-size:13px;transition:background .3s;display:flex}.win__url:hover{background:#2997ff40}.win__url svg{fill:none;stroke:currentColor;stroke-width:1.2px;opacity:.8;width:11px;height:11px}.win__title{opacity:0;pointer-events:none;font-size:13px;font-weight:600;transition:opacity .3s;position:absolute;left:50%;transform:translate(-50%)}.win--min .win__title{opacity:.9}.win--min .win__url{opacity:0;pointer-events:none}.win__content{overflow:hidden}.win__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);display:grid}.win__shot{cursor:zoom-in;aspect-ratio:16/10;background:#111;border:0;padding:0;display:block;position:relative;overflow:hidden}.win__shot img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .9s var(--ease)}.win__shot:hover img{transform:scale(1.04)}.win__shot-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;width:38px;height:38px;transition:opacity .3s, transform .4s var(--ease);background:#0000008c;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:14px;right:14px;transform:scale(.8)}.win__shot-icon svg{fill:none;stroke:#fff;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.win__shot:hover .win__shot-icon,.win__shot:focus-visible .win__shot-icon{opacity:1;transform:scale(1)}.win__body{flex-direction:column;align-items:flex-start;padding:clamp(22px,3vw,40px);display:flex}.win__kicker{color:var(--accent);font-size:14px;font-weight:600}.win__name{letter-spacing:-.03em;margin-top:6px;font-size:clamp(28px,3.6vw,40px);font-weight:700;line-height:1.1}.win__desc{color:#f5f5f7cc;margin-top:14px}.win__stack{margin-top:16px}.win__meta{color:var(--fg-dim);margin:16px 0 18px;font-size:14px}.win__body .link-arrow{margin-top:auto}.win-ghost{cursor:pointer;color:var(--fg-dim);background:#ffffff0a;border:1px dashed #ffffff47;border-radius:980px;align-items:center;gap:12px;padding:12px 20px;font-size:15px;transition:color .3s,border-color .3s;display:inline-flex}.win-ghost:hover{color:var(--fg);border-color:var(--accent)}.win-ghost__dot{background:#ff5f57;border-radius:50%;width:11px;height:11px}.projects__more{justify-content:center;margin-top:28px;display:flex}.more-btn{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:980px;align-items:center;gap:10px;padding:13px 24px;font-size:16px;font-weight:500;transition:border-color .3s,background .3s;display:inline-flex}.more-btn:hover{border-color:var(--accent);background:#2997ff1a}.more-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.modal{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#000000b3;place-items:center;padding:clamp(12px,4vw,40px);display:grid;position:fixed;inset:0}.modal__window{background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;width:min(100%,1280px);max-height:100%;display:flex;overflow:hidden;box-shadow:0 60px 140px -40px #000}.modal__visit{flex-shrink:0}.modal__scroll{background:#0a0a0a;overflow:auto}.modal__scroll img{width:100%;height:auto;display:block}@media (width<=820px){.win__grid{grid-template-columns:minmax(0,1fr)}.win__url{max-width:none}.modal__visit{display:none}}.xp__alias{color:var(--fg-dim);margin-top:2px;font-size:14px}.cv__projects{gap:22px;display:grid}.cv__projects .chips{margin-top:8px}.ai__cols{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-top:clamp(32px,5vw,56px);display:grid}.ai__col h3,.ai__mcp h3{letter-spacing:-.02em;margin-bottom:8px;font-size:21px;font-weight:600}.ai__col p,.ai__mcp>p{color:var(--fg-dim);max-width:60ch;margin-bottom:16px}.ai__mcp{border:1px solid var(--line);border-radius:20px;margin-top:clamp(40px,6vw,72px);padding:clamp(24px,4vw,40px)}.ai__tools{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px 32px;display:grid}.ai__tools dt code{color:var(--fg);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px}.ai__tools dd{color:var(--fg-dim);margin:2px 0 0;font-size:14px}.win__url--app{cursor:default}.win__url--app:hover{background:#00000059}.win__stores{flex-wrap:wrap;gap:8px 24px;display:flex}.contact{text-align:center;border-top:1px solid var(--line)}.contact .lede{margin:0 auto}.contact__actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.btn--ghost-dark{color:var(--fg);border:1px solid var(--line);background:0 0}.btn--ghost-dark:hover{background:#ffffff1a;transform:scale(1.03)}.contact__email{margin-top:24px;font-size:15px}.contact__email a{color:var(--fg-dim)}.contact__email a:hover{color:var(--accent)}.apps__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:clamp(40px,6vw,72px);display:grid}.apps__item{background:var(--surface);height:100%;transition:background .4s var(--ease), transform .5s var(--ease);border-radius:28px;flex-direction:column;align-items:flex-start;gap:10px;padding:clamp(28px,4vw,44px);display:flex}.apps__item:hover{background:var(--surface-2);transform:translateY(-4px)}.apps__item--powertools{background:var(--light-bg);color:var(--light-fg)}.apps__item--powertools:hover{background:#fff}.apps__item img{width:88px;height:88px;margin-bottom:14px}.apps__name{letter-spacing:-.03em;font-size:clamp(28px,3.4vw,40px);font-weight:700}.apps__line{color:var(--fg-dim);margin-bottom:8px;font-size:19px}.apps__item--powertools .apps__line{color:var(--light-dim)}.apps__item--powertools .link-arrow{color:#06c}.app{padding-top:var(--nav-h)}.app-hero{padding:clamp(64px,10vw,120px) 0 clamp(48px,7vw,88px);position:relative}.app-intro__icon{width:112px;height:112px}.app-intro__title{max-width:15ch}.app-intro .lede{max-width:40ch;margin:0 auto}.app-intro__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;margin-top:8px;display:flex}.app-data-note{color:var(--fg-dim);text-align:center;margin-top:14px;font-size:13px}.mock-stage{width:100%;position:relative;overflow:hidden}.mock-stage__inner{transform-origin:0 0;transition:transform .9s cubic-bezier(.65,0,.35,1);position:absolute;top:0;left:0}.app-statement{padding:clamp(96px,16vw,200px) 0}.app-statement p{letter-spacing:-.035em;max-width:22ch;color:var(--fg-dim);text-wrap:balance;font-size:clamp(34px,5.6vw,72px);font-weight:700;line-height:1.08}.app-statement strong{color:var(--fg);font-weight:inherit}.text-list{margin:clamp(40px,6vw,72px) 0 0}.text-list__item{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;padding:28px 0;display:grid}.text-list__item dt{letter-spacing:-.02em;font-size:clamp(21px,2.2vw,26px);font-weight:600;line-height:1.2}.text-list__item dd{color:var(--fg-dim);margin:0;font-size:17px}.app-facts{padding:clamp(72px,11vw,130px) 0}.app-facts__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,48px);margin:0;display:grid}.app-facts__list dt{letter-spacing:-.04em;font-size:clamp(48px,7vw,88px);font-weight:700;line-height:1}.app-facts__list dd{color:var(--fg-dim);max-width:28ch;margin:12px 0 0;font-size:17px}.app-film__title{margin-bottom:clamp(32px,5vw,56px)}.app-film__frame{box-shadow:0 0 0 1px var(--line);aspect-ratio:16/9;background:#000;border-radius:clamp(12px,2vw,22px);margin:0;overflow:hidden}.app-film__frame video{width:100%;height:100%;display:block}.app-film__note{color:var(--fg-dim);text-align:center;margin-top:14px;font-size:14px}.app-end{padding:0 0 clamp(80px,12vw,140px)}.app-stack{margin-bottom:clamp(48px,7vw,72px)}.app-next__link{background:var(--surface);transition:background .4s var(--ease);border-radius:28px;align-items:center;gap:24px;padding:clamp(24px,4vw,40px);display:flex}.app-next__link:hover{background:var(--surface-2)}.app-next__link img{flex-shrink:0;width:72px;height:72px}.app-next__link>span{flex-direction:column;display:flex}.app-next__link .eyebrow{margin:0}.app-next__name{letter-spacing:-.03em;font-size:clamp(26px,3vw,34px);font-weight:700}.app-next__line{color:var(--fg-dim)}.deck-hero__window{transform-origin:50% 0;border-radius:clamp(8px,1.2vw,14px);margin-top:clamp(48px,7vw,80px);overflow:hidden;box-shadow:0 50px 120px -40px #000000e6}.app--agent-deck .app-hero{perspective:1600px}.tour__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.tour__visual{top:calc(var(--nav-h) + 6vh);position:sticky}.tour__stage{box-shadow:0 0 0 1px var(--line);background:#1b1b1d;border-radius:16px}.tour__window{width:1440px;height:900px;position:relative}.tour__steps{padding:18vh 0 12vh}.tour__steps li{opacity:.3;min-height:62vh;transition:opacity .5s var(--ease);flex-direction:column;justify-content:center;display:flex}.tour__steps li.is-active{opacity:1}.tour__steps h3{letter-spacing:-.025em;font-size:clamp(24px,2.6vw,32px);font-weight:700;line-height:1.15}.tour__steps p{color:var(--fg-dim);margin-top:14px;font-size:17px}.deck-banner{color:#f5f5f7;background:#2c2c2ffa;border-radius:22px;align-items:center;gap:14px;width:520px;padding:18px 20px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;display:flex;position:absolute;top:70px;right:40px;box-shadow:0 0 0 1px #ffffff1f,0 30px 80px #0000008c}.deck-banner__app{color:#a1a1a6;font-size:13px;font-weight:600;display:flex}.deck-banner__app span{margin-left:auto;font-weight:400}.deck-banner__title{margin-top:3px;font-size:17px;font-weight:600}.deck-banner__body{color:#d1d1d6;font-size:15px}.deck-arch__map{grid-template-columns:minmax(0,1fr) 64px minmax(0,.9fr) 64px minmax(0,1fr);align-items:stretch;margin-top:clamp(48px,7vw,80px);display:grid}.deck-arch__col{flex-direction:column;justify-content:space-around;gap:10px;display:flex}.deck-arch__col li,.deck-arch__core{background:var(--surface);border-radius:14px;flex-direction:column;gap:2px;padding:14px 18px;display:flex}.deck-arch__col strong{font-size:16px;font-weight:600}.deck-arch__col span,.deck-arch__core span{color:var(--fg-dim);font-size:14px}.deck-arch__core{text-align:center;background:var(--surface-2);box-shadow:0 0 0 1px var(--line);align-self:center;align-items:center;padding:28px 22px}.deck-arch__core img{width:64px;height:64px;margin-bottom:10px}.deck-arch__core strong{font-size:22px;font-weight:700}.deck-arch__wires{width:100%;height:100%}.deck-arch__wires path{fill:none;stroke:#ffffff38;stroke-width:1.2px;vector-effect:non-scaling-stroke}.app--powertools .app-hero,.app--powertools .app-facts,.app--powertools .pt-feature--light,.app--powertools .pt-idle{background:var(--light-bg);color:var(--light-fg)}.app--powertools .app-hero .eyebrow,.app--powertools .app-hero .lede,.app--powertools .app-data-note,.app--powertools .app-facts__list dd,.app--powertools .pt-idle .lede,.app--powertools .pt-feature--light p{color:var(--light-dim)}.app--powertools .app-hero .link-arrow,.app--powertools .pt-feature--light .link-arrow{color:#06c}.pt-demo{margin-top:clamp(48px,7vw,80px)}.notch-shot{background:#000;border-radius:clamp(14px,2vw,26px) clamp(14px,2vw,26px) 0 0}.pt-demo .notch-shot{box-shadow:0 40px 90px -40px #0000008c}.live-island{background:#000;position:absolute;top:0;overflow:hidden}.pt-demo__controls{text-align:center;margin-top:24px}.pt-demo__label{color:var(--light-fg);font-size:15px;font-weight:600}.pt-demo__label span{color:var(--light-dim);margin-left:8px;font-weight:400}.pt-demo__chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.pt-demo__chips button{border:1px solid var(--light-line);color:var(--light-fg);cursor:pointer;background:#fff;border-radius:980px;padding:8px 16px;font-size:14px;transition:background .25s,color .25s,border-color .25s}.pt-demo__chips button:hover{border-color:#0000004d}.pt-demo__chips button.is-active{background:var(--light-fg);border-color:var(--light-fg);color:#fff}.pt-feature{padding:clamp(80px,12vw,150px) 0}.pt-feature__grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:center;gap:clamp(32px,5vw,72px);display:grid}.pt-feature--flip .pt-feature__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}.pt-feature--flip .pt-feature__text{order:2}.pt-feature__title{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(30px,3.8vw,48px);font-weight:700;line-height:1.08}.pt-feature__text p{color:var(--fg-dim);margin-top:18px;font-size:17px}.pt-feature--dark .notch-shot{box-shadow:0 0 0 1px var(--line)}.pt-feature--light .notch-shot{box-shadow:0 30px 70px -36px #00000080}.pt-sliders{grid-template-columns:1fr 1fr;gap:20px;margin-top:22px;display:grid}.pt-sliders label{flex-direction:column;gap:8px;font-size:14px;font-weight:600;display:flex}.pt-sliders input{accent-color:#0a84ff;width:100%}.pt-phone{max-width:330px;margin:0 auto}.pt-phone .mock-stage{overflow:visible}.pt-phone__hint{text-align:center;color:var(--fg-dim);margin-top:16px;font-size:14px}.pt-idle__cols{grid-template-columns:1fr 1fr;gap:20px;margin-top:clamp(40px,6vw,64px);display:grid}.pt-idle__col{box-shadow:0 0 0 1px var(--light-line);background:#fff;border-radius:24px;padding:clamp(24px,3vw,36px)}.pt-idle__col h3{letter-spacing:-.02em;font-size:22px;font-weight:700}.pt-idle__col ol{counter-reset:step;flex-direction:column;gap:12px;margin-top:18px;display:flex}.pt-idle__col li{color:var(--light-dim);padding-left:30px;font-size:16px;position:relative}.pt-idle__col li:before{text-align:center;border-radius:50%;width:20px;height:20px;font-size:12px;font-weight:700;line-height:20px;position:absolute;top:2px;left:0}.pt-idle__col--poll li:before{content:"↻";color:var(--light-dim);background:#0000000f}.pt-idle__col--poll li{-webkit-text-decoration:line-through #00000040;text-decoration:line-through #00000040}.pt-idle__col--push{background:var(--light-fg);box-shadow:none}.pt-idle__col--push h3{color:#fff}.pt-idle__col--push li{color:#ffffffc7}.pt-idle__col--push li:before{content:"↓";color:#062b12;background:#30d158}.pt-modules__list{grid-template-columns:1fr 1fr;column-gap:clamp(24px,4vw,56px);margin:clamp(40px,6vw,64px) 0 0;display:grid}.pt-modules__item{border-top:1px solid var(--line);padding:18px 0}.pt-modules__item dt{font-size:19px;font-weight:600}.pt-modules__item dd{color:var(--fg-dim);margin:4px 0 0;font-size:15px}@media (width<=900px){.tour__grid{grid-template-columns:minmax(0,1fr);gap:0}.tour__visual{top:var(--nav-h);z-index:2;background:var(--bg);padding:12px 0}.tour__steps{padding:4vh 0 20vh}.tour__steps li{min-height:48vh}.deck-arch__map{grid-template-columns:minmax(0,1fr);gap:16px}.deck-arch__wires{display:none}.pt-feature__grid,.pt-feature--flip .pt-feature__grid{grid-template-columns:minmax(0,1fr)}.pt-feature--flip .pt-feature__text{order:0}}@media (width<=720px){.apps__list,.app-facts__list,.pt-idle__cols,.pt-modules__list,.pt-sliders{grid-template-columns:minmax(0,1fr)}.text-list__item{grid-template-columns:minmax(0,1fr);gap:8px}}
