@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");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:Montserrat;font-style:normal;font-weight:600 800;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600 800;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");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{--cv-yellow:#f5c242;--cv-amber:#9a6400;--cv-ink:#161616;--cv-text:#2e2e2e;--cv-muted:#6b6b6b;--cv-hairline:#e3e3e3;--cv-paper:#fff;--cv-cream:#fbf6ea;--cv-dark:#1b1b1b;--cv-on-dark-muted:#bdbdbd;--font-display:"Montserrat", sans-serif;--font-text:"Inter", "Helvetica Neue", Arial, sans-serif;--ease-out:cubic-bezier(.2, .8, .2, 1);--page-pad:clamp(20px, 4vw, 64px);--header-h:64px;--glow:0 0 8px 2px #f5c242f2, 0 0 24px 6px #f5c24299, 0 0 60px 14px #f5c2424d}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scrollbar-width:none;height:100%}::-webkit-scrollbar{width:0;height:0;display:none}body{background:var(--cv-paper);height:100%;color:var(--cv-text);font-family:var(--font-text);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body[data-loading]{overflow:hidden}:where(a){color:var(--cv-ink)}:where(a:hover){color:var(--cv-amber)}ul{margin:0;padding:0;list-style:none}section[id],footer[id]{scroll-margin-top:72px}body[data-loading] .hero-intro{animation-play-state:paused!important}@keyframes letterUp{0%{opacity:0;transform:translateY(110%)rotate(6deg)}to{opacity:1;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes pulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}@keyframes drift{0%,to{transform:translate(0)}50%{transform:translate(-10px,14px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes photoIn{0%{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes orbit{0%{transform:rotate(0) translateX(var(--rpx)) rotate(0)}to{transform:rotate(360deg) translateX(var(--rpx)) rotate(-360deg)}}@keyframes swingIn{0%{opacity:0;transform:translateY(90px)rotate(7deg)}50%{opacity:1;transform:translateY(-12px)rotate(-3deg)}66%{transform:translateY(5px)rotate(1.6deg)}79%{transform:translateY(-3px)rotate(-.8deg)}90%{transform:translateY(1px)rotate(.35deg)}to{opacity:1;transform:none}}@keyframes plLetter{0%{opacity:0;filter:blur(8px);transform:translateY(60px)scale(1.4)rotate(-8deg)}to{opacity:1;filter:blur();transform:none}}@keyframes plBoom{0%{opacity:1;transform:none}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(var(--rot)) scale(.4);filter:blur(4px)}}@keyframes plRing{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(1)}}@keyframes plFill{0%{transform:scale(0)rotate(45deg)}to{transform:scale(1)rotate(0)}}@keyframes plWipe{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes plShake{0%,to{transform:none}20%{transform:translate(-6px,4px)}40%{transform:translate(6px,-4px)}60%{transform:translate(-4px,-3px)}80%{transform:translate(4px,3px)}}@keyframes plSpark{0%{opacity:1;transform:translate(0)scale(1)}to{transform:translate(var(--dx), var(--dy)) scale(0);opacity:0}}.preloader{z-index:200;background:var(--cv-ink);color:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.preloader__stage{text-align:center;flex-direction:column;align-items:center;gap:28px;display:flex;position:relative}.preloader__name{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;flex-direction:column;align-items:center;gap:0;font-size:clamp(48px,11vw,180px);font-weight:800;line-height:.95;display:flex}.preloader__row{white-space:nowrap;display:flex}.preloader__letter{opacity:0;display:inline-block}.preloader__role{letter-spacing:.18em;text-transform:uppercase;color:var(--cv-on-dark-muted);opacity:0;align-items:center;gap:12px;margin:0;font-size:clamp(12px,1.1vw,16px);font-weight:500;transition:opacity .5s;display:flex}.preloader__rule{background:var(--cv-yellow);width:24px;height:2px;display:block}.preloader__track{background:var(--cv-text);width:min(60vw,420px);height:2px;overflow:visible}.preloader__bar{background:var(--cv-yellow);width:0;height:100%;box-shadow:var(--glow);transition:width .12s linear}.preloader__pct{font-family:var(--font-display);letter-spacing:.1em;color:var(--cv-yellow);font-variant-numeric:tabular-nums;text-shadow:0 0 12px #f5c242e6,0 0 32px #f5c24280;margin:0;font-size:14px;font-weight:800;position:absolute;bottom:-34px;right:0}.preloader__ring{aspect-ratio:1;border:3px solid var(--cv-yellow);opacity:0;pointer-events:none;border-radius:50%;width:min(140vw,140vh);position:absolute;top:50%;left:50%;transform:scale(0)}.preloader__sparks{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.preloader__spark{position:absolute;top:0;left:0;translate:-50% -50%}.preloader__fill{aspect-ratio:1;background:var(--cv-yellow);pointer-events:none;width:max(150vw,150vh);position:absolute;top:50%;left:50%;transform:scale(0)}.progress-track{z-index:100;pointer-events:none;background:#16161614;width:3px;position:fixed;top:0;bottom:0;right:0}.progress-bar{background:var(--cv-yellow);z-index:101;pointer-events:none;width:3px;height:0;box-shadow:var(--glow);border-radius:0 0 3px 3px;transition:height .12s linear;position:fixed;top:0;right:0}.cursor{border:2px solid var(--cv-yellow);box-sizing:border-box;pointer-events:none;z-index:99;opacity:0;background:0 0;width:22px;height:22px;transition:width .25s,height .25s,opacity .3s,background .25s;animation:4s linear infinite spin;position:fixed;top:0;left:0;translate:-50% -50%}.cursor[data-hot]{background:#f5c24240;width:48px;height:48px}.page{flex-direction:column;min-height:100vh;display:flex}.first-screen,.content{padding:0 var(--page-pad);font-size:clamp(16px,1.15vw,18px);line-height:1.55}.first-screen{flex-direction:column;flex:1;display:flex}.header-spacer{height:var(--header-h);flex:none}.header{z-index:60;box-sizing:border-box;padding:0 var(--page-pad);height:var(--header-h);-webkit-backdrop-filter:blur(14px);background:#fff0;border-bottom:1px solid #1616161a;justify-content:space-between;align-items:center;gap:24px;transition:background .35s,border-color .35s;animation:.8s both fadeUp;display:flex;position:fixed;top:0;left:0;right:0}.header[data-dark]{background:#16161659;border-color:#ffffff24!important}.header[data-dark] a{color:#fff!important}.header[data-dark] .burger__line{background:#fff!important}.header__logo{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--cv-ink);align-items:center;gap:10px;font-size:14px;font-weight:800;text-decoration:none;display:flex}.header__logo-mark{background:var(--cv-yellow);width:10px;height:10px;animation:6s linear infinite spin;display:block}.header__nav{flex-wrap:wrap;justify-content:flex-end;gap:24px;display:flex}.header__link{color:var(--cv-muted);background:linear-gradient(var(--cv-yellow), var(--cv-yellow)) no-repeat left bottom / 0 2px;padding-bottom:4px;font-size:14px;font-weight:500;text-decoration:none;transition:background-size .3s,color .3s}.header__link:hover{color:var(--cv-ink)!important;background-size:100% 2px!important}.header[data-dark] .header__link:hover{color:#fff!important}.burger{cursor:pointer;box-sizing:border-box;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;width:44px;height:44px;margin-right:-8px;padding:0 8px;display:none}.burger__line{background:var(--cv-ink);transform-origin:50%;width:28px;height:2px;transition:transform .35s var(--ease-out), width .35s, opacity .25s, background .3s;display:block}.burger__line:first-child{width:18px}.burger[data-open] .burger__line:first-child{transform:translateY(8px)rotate(45deg);width:28px!important}.burger[data-open] .burger__line:nth-child(2){opacity:0;transform:scaleX(0)}.burger[data-open] .burger__line:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.menu{z-index:55;background:var(--cv-ink);color:#fff;box-sizing:border-box;padding:96px var(--page-pad) 40px;visibility:hidden;flex-direction:column;transition:transform .55s cubic-bezier(.7,0,.3,1),visibility 0s linear .56s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.menu[data-open]{visibility:visible;transition:transform .55s cubic-bezier(.7,0,.3,1),visibility;transform:translateY(0)}.menu__nav{flex-direction:column;gap:12px;display:flex}.menu__link{font-family:var(--font-display);text-transform:uppercase;color:#fff;border-bottom:1px solid var(--cv-text);align-items:baseline;gap:14px;padding:10px 0;font-size:clamp(34px,9vw,56px);font-weight:800;line-height:1.05;text-decoration:none;display:flex}.menu__link:last-child{border-bottom:0}.menu__num{letter-spacing:.1em;color:var(--cv-yellow);font-size:13px}.menu__footer{flex-direction:column;gap:14px;margin-top:auto;display:flex}.menu__phone{color:var(--cv-on-dark-muted);align-self:center;font-size:14px;text-decoration:none}.btn{min-height:52px;color:var(--cv-ink);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;padding:0 24px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.btn--primary{background:var(--cv-yellow);box-shadow:inset 0 0 0 0 var(--cv-ink);transition:box-shadow .35s var(--ease-out), color .35s, transform .25s ease-out}.btn--primary:hover{box-shadow:inset 0 -60px 0 0 var(--cv-ink)!important;color:#fff!important}.btn--primary:active{transform:scale(.96)!important}.btn--outline{border:1px solid var(--cv-ink);box-shadow:inset 0 0 0 0 var(--cv-yellow);transition:box-shadow .35s var(--ease-out), border-color .35s}.btn--outline:hover{box-shadow:inset 0 -60px 0 0 var(--cv-yellow)!important;border-color:var(--cv-yellow)!important;color:var(--cv-ink)!important}.btn--menu{background:var(--cv-yellow);box-shadow:0 0 18px 2px #f5c24299,0 0 48px 10px #f5c2424d}.btn--glow{background:var(--cv-yellow);transition:box-shadow .35s var(--ease-out), transform .25s ease-out;justify-self:start;box-shadow:inset 0 0 #fff,0 0 18px 2px #f5c242d9,0 0 48px 10px #f5c24273,0 0 110px 24px #f5c24238}.btn--glow:hover{color:var(--cv-ink)!important;box-shadow:inset 0 -60px #fff,0 0 26px 4px #f5c242,0 0 70px 16px #f5c24299,0 0 140px 36px #f5c2424d!important}.hero{box-sizing:border-box;flex:1;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center;gap:clamp(32px,5vw,80px);padding:clamp(24px,3vw,48px) 0;display:grid;position:relative}.hero__text{flex-direction:column;gap:32px;min-width:0;display:flex;position:relative;container-type:inline-size}.hero__eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--cv-muted);align-items:center;gap:10px;min-height:1.6em;margin:0;font-size:14px;font-weight:500;animation:.8s .2s both fadeUp;display:flex}.hero__caret{background:var(--cv-yellow);width:8px;height:14px;animation:1.1s step-end infinite blink;display:block}.hero__name{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;color:var(--cv-ink);flex-direction:column;align-items:flex-start;margin:0;font-size:min(16.5cqi,clamp(48px,17vh,260px));font-weight:800;line-height:.95;display:flex}.hero__name-row{clip-path:inset(-.3em -.5em 0);white-space:nowrap;padding-bottom:.06em;display:flex}.hero__letter{animation:letterUp .9s var(--ease-out) backwards;cursor:default;display:inline-block;transition:transform .3s,color .3s,text-shadow .35s!important}.hero__letter:hover{color:var(--cv-amber)!important;text-shadow:0 0 4px #f5c242,0 0 10px #f5c242,0 0 22px #f5c242d9!important;transform:translateY(-.08em)!important}.hero__lead{max-width:34em;color:var(--cv-text);text-wrap:pretty;margin:0;font-size:clamp(18px,1.4vw,22px);line-height:1.45;animation:.8s 1s both fadeUp}.hero__actions{flex-wrap:wrap;gap:12px;animation:.8s 1.2s both fadeUp;display:flex}.photo{aspect-ratio:4/5;perspective:900px;justify-self:end;width:min(100%,clamp(280px,36vw,620px),80vh - 288px);margin-top:24px;margin-right:24px;position:relative}.photo__block{background:var(--cv-yellow);animation:7s ease-in-out infinite drift;position:absolute;inset:24px -24px -24px 24px}.photo__orbit{pointer-events:none;z-index:2;width:0;height:0;position:absolute;top:50%;left:50%}.photo__orbit--outer{animation:18s linear infinite orbit}.photo__orbit--inner{animation:26s linear infinite reverse orbit}.photo__square{background:var(--cv-yellow);width:28px;height:28px;animation:3s linear infinite spin;display:block;position:absolute;translate:-50% -50%;box-shadow:0 4px 12px #1616162e}.photo__frame-mark{border:3px solid var(--cv-ink);box-sizing:border-box;width:22px;height:22px;animation:5s linear infinite reverse spin;display:block;position:absolute;translate:-50% -50%}.photo__frame{width:100%;height:100%;animation:photoIn 1.1s .5s var(--ease-out) both;transform-style:preserve-3d;transition:transform .2s ease-out;position:relative;overflow:hidden}.photo__img,.photo__variant{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block;transform:scale(1.04)}.photo__img{transition:transform .8s var(--ease-out), filter .8s}.photo__img:hover{transform:scale(1.1)!important}.photo__variant{opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.photo__variant[data-active]{opacity:1}.photo__glitch{pointer-events:none;opacity:0;z-index:3;width:132%;height:116%;position:absolute;inset:-8% -16%}.stats{border-top:1px solid var(--cv-hairline);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat{border-right:1px solid var(--cv-hairline);padding:24px;transition:background .3s,padding-left .3s}.stat:first-child{padding-left:0}.stat:last-child{border-right:0;padding-right:0}.stat:hover{background:var(--cv-cream)!important;padding-left:32px!important}.stat:first-child:hover{padding-left:16px!important}.stat__num{font-family:var(--font-display);color:var(--cv-ink);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(36px,3.5vw,56px);font-weight:800;line-height:1}.stat__label{color:var(--cv-muted);margin:8px 0 0;font-size:14px}.ticker{background:var(--cv-yellow);color:var(--cv-ink);flex:none;padding:20px 0;overflow:hidden}.ticker__track{width:max-content;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;gap:0;font-size:16px;font-weight:800;animation:28s linear infinite marquee;display:flex}.ticker__group{gap:32px;padding-right:32px;display:inline-flex}.section{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(24px,4vw,64px);padding:clamp(56px,7vw,112px) 0;display:grid}.section--ruled{border-bottom:1px solid var(--cv-hairline)}.section__num{font-family:var(--font-display);letter-spacing:.1em;color:var(--cv-amber);margin:0;font-size:14px;font-weight:800}.section__title{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--cv-ink);margin:8px 0 0;font-size:clamp(22px,2vw,28px);font-weight:800;line-height:1.2}.section__mark{background:var(--cv-yellow);width:0;height:4px;transition:width .8s .3s var(--ease-out);margin-top:12px}.section__note{color:var(--cv-muted);margin:24px 0 0;font-size:14px}.section__body{grid-column:span 2}.projects{flex-direction:column;display:flex}.project{border-top:1px solid var(--cv-hairline);box-shadow:inset 0 0 0 0 var(--cv-yellow);transition:box-shadow .4s var(--ease-out), background .4s;grid-template-columns:minmax(140px,1fr) 2fr;gap:16px 32px;padding:24px 0;display:grid}.project:last-child{border-bottom:1px solid var(--cv-hairline)}.project:hover{box-shadow:inset 6px 0 0 0 var(--cv-yellow)!important;background:var(--cv-cream)!important}.project__title{color:var(--cv-ink);transition:transform .4s var(--ease-out);margin:0;font-size:20px;font-weight:600;line-height:1.3}.project__text{text-wrap:pretty;margin:0}.timeline{flex-direction:column;display:flex;position:relative}.timeline__line{background:var(--cv-yellow);transform-origin:top;opacity:1;width:3px;height:100%;transition:none;position:absolute;top:0;left:-16px;transform:scaleY(0)}.job{border-top:1px solid var(--cv-hairline);grid-template-columns:minmax(140px,1fr) 2fr;gap:16px 32px;padding:32px 0;display:grid}.job:last-child{border-bottom:1px solid var(--cv-hairline)}.job__period{color:var(--cv-muted);align-items:center;gap:10px;margin:0;font-size:14px;display:flex}.job__dot{flex:none;width:10px;height:10px;display:block;position:relative}.job__dot-core,.job__dot-pulse{background:var(--cv-yellow);border-radius:50%;position:absolute;inset:0}.job__dot-pulse{animation:1.8s ease-out infinite pulse}.job__dot--past{border:2px solid var(--cv-yellow);box-sizing:border-box;border-radius:50%}.job__role{color:var(--cv-ink);margin:8px 0 0;font-size:20px;font-weight:600;line-height:1.3}.job__company{margin:4px 0 0;font-weight:500}.job__details{flex-direction:column;gap:16px;display:flex}.job__duties{flex-direction:column;gap:8px;display:flex}.duty{gap:12px;transition:transform .3s;display:flex}.duty:hover{transform:translate(8px)!important}.duty__bullet{background:var(--cv-yellow);flex:none;width:6px;height:6px;margin-top:.6em;transition:transform .4s}.duty__bullet:hover{transform:rotate(135deg)scale(1.4)!important}.job__stack{color:var(--cv-muted);margin:0;font-size:14px}.skills{flex-direction:column;gap:32px;display:flex}.skill-group{grid-template-columns:minmax(140px,1fr) 2fr;gap:12px 32px;display:grid}.skill-group__title{letter-spacing:.1em;text-transform:uppercase;color:var(--cv-muted);margin:0;font-size:14px;font-weight:500}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--cv-hairline);color:var(--cv-ink);border-radius:4px;padding:6px 12px;font-size:14px;font-weight:500;transition:transform .25s,background .25s,border-color .25s,color .25s}.chip--accent{background:var(--cv-yellow);border:0;transition:transform .25s,background .25s,color .25s}.chip:hover{transform:translateY(-4px) rotate(var(--tilt))!important;background:var(--cv-ink)!important;border-color:var(--cv-ink)!important;color:#fff!important}.about{text-wrap:pretty;flex-direction:column;gap:20px;max-width:40em;display:flex}.about p{margin:0}.footer{background:var(--cv-dark);color:#fff;overflow:hidden}.footer__marquee-wrap{padding:clamp(40px,5vw,64px) 0 0;overflow:hidden}.footer__marquee{width:max-content;font-family:var(--font-display);text-transform:uppercase;white-space:nowrap;color:#0000;-webkit-text-stroke:1px var(--cv-muted);font-size:clamp(64px,12vw,180px);font-weight:800;line-height:1;animation:40s linear infinite marquee;display:flex}.footer__marquee-group{padding-right:.4em}.footer__dot{color:var(--cv-yellow);-webkit-text-stroke:0}.footer__body{padding:clamp(40px, 5vw, 72px) var(--page-pad) 40px;flex-direction:column;gap:48px;display:flex}.footer__cta{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:end;gap:32px;display:grid}.footer__headline{font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;color:#fff;text-wrap:balance;margin:0;font-size:clamp(32px,4vw,56px);font-weight:800;line-height:1.05}.contacts{border-top:1px solid var(--cv-muted);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px 32px;margin:0;padding-top:32px;display:grid}.contacts dt{letter-spacing:.1em;text-transform:uppercase;color:var(--cv-on-dark-muted);font-size:12px}.contacts dd{margin:8px 0 0;font-weight:600}.contacts__link{color:#fff;background:linear-gradient(var(--cv-yellow), var(--cv-yellow)) no-repeat left bottom / 0 2px;padding-bottom:2px;text-decoration:none;transition:background-size .3s,color .3s}.contacts__link:hover{color:var(--cv-yellow)!important;background-size:100% 2px!important}.footer__name{color:var(--cv-on-dark-muted);margin:0;font-size:12px}@media (max-width:720px){.header__nav{display:none}.burger{display:flex}.section__body{grid-column:auto}.project,.job,.skill-group{grid-template-columns:1fr;gap:8px}.stats{grid-template-columns:1fr 1fr}.stats>.stat,.stats>.stat:hover{border-right:0;padding:20px 12px 20px 0!important}.stats>.stat:nth-child(2n),.stats>.stat:nth-child(2n):hover{border-left:1px solid var(--cv-hairline);padding-left:16px!important}.stats>.stat:nth-child(n+3){border-top:1px solid var(--cv-hairline)}.photo{width:calc(100% - 24px);margin-top:8px}.hero__name{font-size:20cqi}.timeline__line{display:none}.projects .project,.projects .project:hover{margin:0 -20px;padding-left:20px;padding-right:20px;box-shadow:none!important}.project__title{transform:none!important}.cursor{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.photo__orbit,.preloader{display:none}body[data-loading]{overflow:visible}}
