.bars{display:flex;gap:3px}.bars__bar{display:block;width:3px;border-radius:3px;animation-play-state:paused}.bars--visible .bars__bar{animation-play-state:running}.bars--bottom{align-items:flex-end}.bars--bottom .bars__bar{background:#64a0ff99;animation:barBottom 1.8s ease-in-out infinite;animation-delay:calc(var(--i) * .07s)}@keyframes barBottom{0%,to{height:4px;opacity:.2}50%{height:var(--bar-max, 32px);opacity:.85}}.bars--top{align-items:flex-start}.bars--top .bars__bar{background:#64a0ff99;animation:barTop 2s ease-in-out infinite;animation-delay:calc(var(--i) * .08s)}@keyframes barTop{0%,to{height:4px;opacity:.2}50%{height:var(--bar-max, 32px);opacity:.85}}.bars--center{align-items:center}.bars--center .bars__bar{background:#78aaffa6;animation:barCenter 1.6s ease-in-out infinite;animation-delay:calc(var(--i) * .06s)}@keyframes barCenter{0%,to{height:4px;opacity:.2}50%{height:var(--bar-max, 40px);opacity:.9}}.bars--wave{align-items:center}.bars--wave .bars__bar{background:linear-gradient(180deg,#a0c8ffcc,#5082ff66);animation:barWave 2.4s ease-in-out infinite;animation-delay:calc(var(--i) * .1s)}@keyframes barWave{0%{height:4px;opacity:.15}25%{height:var(--bar-max, 36px);opacity:.9}50%{height:6px;opacity:.2}75%{height:var(--bar-max, 36px);opacity:.7}to{height:4px;opacity:.15}}.bars--cascade{align-items:flex-end}.bars--cascade .bars__bar{background:linear-gradient(180deg,#8cbefff2,#3c78ff4d);animation:barCascade 1.4s cubic-bezier(.4,0,.2,1) infinite;animation-delay:calc(var(--i) * 55ms);box-shadow:0 0 8px #64a0ff4d}@keyframes barCascade{0%,to{height:4px;opacity:.15}40%{height:var(--bar-max, 44px);opacity:1}60%{height:var(--bar-max, 44px);opacity:.8}}.bars--mirror{align-items:stretch;height:var(--bar-max, 48px)}.bars--mirror .bars__bar{background:linear-gradient(180deg,#64a0ffb3,#64a0ff1a 45%,#64a0ff1a 55%,#64a0ffb3);align-self:stretch;animation:barMirror 2s ease-in-out infinite;animation-delay:calc(var(--i) * .07s);height:auto!important;clip-path:inset(0 0 50% 0),inset(50% 0 0 0)}.bars--mirror .bars__bar{transform-origin:center;animation:barMirrorScale 2s ease-in-out infinite;animation-delay:calc(var(--i) * .07s);height:var(--bar-max, 48px)!important;opacity:.6}@keyframes barMirrorScale{0%,to{transform:scaleY(.08);opacity:.2}50%{transform:scaleY(1);opacity:.85}}.bars--rainbow{align-items:flex-end}.bars--rainbow .bars__bar{animation:barRainbow 2s ease-in-out infinite;animation-delay:calc(var(--i) * .07s);background:hsl(calc(var(--i) * (240 / var(--total, 20))),80%,65%);box-shadow:0 0 8px hsla(calc(var(--i) * (240 / var(--total, 20))),80%,65%,.4)}@keyframes barRainbow{0%,to{height:5px;opacity:.3}50%{height:var(--bar-max, 36px);opacity:1}}.bars--pulse{align-items:flex-end;gap:5px}.bars--pulse .bars__bar{width:4px;border-radius:50%;background:#64a0ffb3;box-shadow:0 0 10px #64a0ff80;animation:barPulse 1.6s ease-in-out infinite;animation-delay:calc(var(--i) * .09s)}@keyframes barPulse{0%,to{height:4px;opacity:.2;transform:scaleX(1)}50%{height:var(--bar-max, 30px);opacity:1;transform:scaleX(1.4)}}.bars--amber{align-items:flex-end}.bars--amber .bars__bar{background:linear-gradient(180deg,#ffb43ce6,#c85a1466);box-shadow:0 0 8px #ff962840;animation:barAmber 2.2s ease-in-out infinite;animation-delay:calc(var(--i) * .09s)}@keyframes barAmber{0%,to{height:4px;opacity:.2}30%{height:var(--bar-max, 32px);opacity:.9}60%{height:8px;opacity:.35}80%{height:calc(var(--bar-max, 32px) * .5);opacity:.6}}.bars--violet{align-items:flex-end}.bars--violet .bars__bar{background:linear-gradient(180deg,hsla(calc(270 + var(--i) * 4),70%,70%,.9),hsla(calc(310 + var(--i) * 3),65%,55%,.3));box-shadow:0 0 8px #c567e440;animation:barViolet 2.4s ease-in-out infinite;animation-delay:calc(var(--i) * .08s)}@keyframes barViolet{0%,to{height:4px;opacity:.25}40%{height:var(--bar-max, 36px);opacity:1}70%{height:calc(var(--bar-max, 36px) * .4);opacity:.5}}@media(prefers-reduced-motion:reduce){.bars__bar{animation:none!important;height:16px!important;opacity:.5!important;transform:none!important}}.hdr{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1.4rem clamp(1.5rem,5vw,4rem);transition:background .4s ease,backdrop-filter .4s ease,border-color .4s ease;border-bottom:1px solid transparent}.hdr--scrolled{background:#000000bf;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-color:#ffffff0f}.hdr--menu-open{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-color:transparent!important}.hdr__logo{display:flex;align-items:center;gap:6px;font-family:Iskra,sans-serif;font-size:1.15rem;font-weight:700;color:#fff;text-decoration:none;letter-spacing:-.02em;position:relative;z-index:210}.hdr__logo-dot{width:6px;height:6px;border-radius:50%;background:#64a0ffe6;animation:dotPulse 2.4s ease-in-out infinite}@keyframes dotPulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.2)}}.hdr__nav{display:flex;align-items:center;gap:2.5rem}.hdr__link{font-family:Iskra,sans-serif;font-size:.78rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73;text-decoration:none;transition:color .2s ease;position:relative}.hdr__link:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:1px;background:#64a0ffcc;transform:scaleX(0);transition:transform .25s ease}.hdr__link:hover{color:#ffffffd9}.hdr__link:hover:after{transform:scaleX(1)}.hdr__link--active{color:#fff}.hdr__link--active:after{transform:scaleX(1)}.hdr__burger{display:none;flex-direction:column;justify-content:center;gap:7px;background:none;border:1px solid rgba(255,255,255,.12);border-radius:8px;cursor:pointer;padding:10px 12px;width:46px;height:40px;position:relative;z-index:210;transition:border-color .25s ease,background .25s ease}.hdr__burger:hover{border-color:#ffffff4d;background:#ffffff0d}.hdr__burger-line{display:block;height:1.5px;border-radius:2px;background:#ffffffd9;transition:transform .35s cubic-bezier(.16,1,.3,1),width .35s cubic-bezier(.16,1,.3,1),opacity .2s ease;transform-origin:center}.hdr__burger-line:nth-child(1){width:100%}.hdr__burger-line:nth-child(2){width:65%}.hdr__burger--open .hdr__burger-line:nth-child(1){transform:translateY(4.5px) rotate(45deg);width:100%}.hdr__burger--open .hdr__burger-line:nth-child(2){transform:translateY(-4.5px) rotate(-45deg);width:100%}.drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;background:#000;display:flex;flex-direction:column;justify-content:center;padding:clamp(5rem,12vw,7rem) clamp(1.5rem,8vw,5rem) clamp(2rem,5vw,3rem);overflow:hidden;pointer-events:none;clip-path:inset(0 0 0 100%);transition:clip-path .55s cubic-bezier(.16,1,.3,1)}.drawer--open{clip-path:inset(0 0 0 0%);pointer-events:all}.drawer__bars-bg{position:absolute;right:clamp(1.5rem,8vw,5rem);top:50%;transform:translateY(-50%);opacity:.12}.drawer__bars{height:200px}.drawer__bars .bars__bar{--bar-max: 200px;width:4px}.drawer__nav{display:flex;flex-direction:column;gap:.2rem;flex:1;justify-content:center}.drawer__link{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.4rem);text-decoration:none;padding:clamp(.6rem,1.5vw,1rem) 0;border-bottom:1px solid rgba(255,255,255,.05);color:#ffffff59;transition:color .25s ease;opacity:0;transform:translate(-20px)}.drawer--open .drawer__link{animation:linkSlideIn .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--delay, 0s)}@keyframes linkSlideIn{to{opacity:1;transform:translate(0)}}.drawer__link:hover,.drawer__link--active{color:#fff}.drawer__link--active .drawer__link-num{color:#64a0ffcc}.drawer__link-num{font-family:Iskra,sans-serif;font-size:clamp(.6rem,1.5vw,.7rem);font-weight:400;letter-spacing:.1em;color:#fff3;min-width:2em;transition:color .25s ease}.drawer__link-label{font-family:Iskra,sans-serif;font-size:clamp(2rem,9vw,4.5rem);font-weight:700;letter-spacing:-.03em;line-height:1;flex:1}.drawer__link-arrow{font-size:clamp(1rem,3vw,1.8rem);opacity:0;transform:translate(-8px);transition:opacity .2s ease,transform .2s ease}.drawer__link:hover .drawer__link-arrow,.drawer__link--active .drawer__link-arrow{opacity:.4;transform:translate(0)}.drawer__footer{display:flex;align-items:center;justify-content:space-between;padding-top:clamp(1rem,3vw,2rem);opacity:0}.drawer--open .drawer__footer{animation:linkSlideIn .5s cubic-bezier(.16,1,.3,1) .42s forwards}.drawer__socials{display:flex;gap:clamp(1rem,3vw,2rem)}.drawer__social{font-family:Iskra,sans-serif;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff4d;text-decoration:none;transition:color .2s ease}.drawer__social:hover{color:#fffc}.drawer__footer-bars{height:24px}.drawer__footer-bars .bars__bar{--bar-max: 22px}@media(max-width:640px){.hdr__nav{display:none}.hdr__burger{display:flex}}.cb{position:fixed;bottom:clamp(1rem,3vw,2rem);left:50%;transform:translate(-50%) translateY(140%);z-index:1000;width:min(480px,calc(100vw - 2rem));font-family:Iskra,sans-serif}.cb--in{animation:cbSlideIn .5s cubic-bezier(.16,1,.3,1) forwards}.cb--out{animation:cbSlideOut .4s cubic-bezier(.4,0,1,1) forwards}@keyframes cbSlideIn{to{transform:translate(-50%) translateY(0)}}@keyframes cbSlideOut{to{transform:translate(-50%) translateY(160%);opacity:0}}.cb__inner{background:#0a0a0ed1;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:1.2rem 1.4rem 1.3rem;box-shadow:0 24px 60px #0009,0 0 0 1px #ffffff08 inset;display:flex;flex-direction:column;gap:.85rem}.cb__top{display:flex;align-items:center;justify-content:space-between}.cb__heading{display:flex;align-items:center;gap:.55rem}.cb__icon{width:22px;height:22px;color:#fff9;flex-shrink:0}.cb__title{font-size:.82rem;font-weight:700;letter-spacing:.04em;color:#ffffffe6}.cb__dismiss{background:none;border:none;cursor:pointer;color:#ffffff4d;padding:.2rem;line-height:0;transition:color .2s ease}.cb__dismiss:hover{color:#ffffffb3}.cb__desc{font-size:.75rem;font-weight:300;line-height:1.6;color:#c8d7ff66;margin:0}.cb__policy{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;cursor:pointer;font-family:Iskra,sans-serif;font-size:.75rem;font-weight:400;color:#78aaffb3;padding:0;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.cb__policy:hover{color:#8cbeff}.cb__tags{display:flex;gap:.5rem;flex-wrap:wrap}.cb__tag{display:inline-flex;align-items:center;gap:.3rem;font-size:.65rem;letter-spacing:.06em;color:#b4c8ff73;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:4px;padding:.25em .6em}.cb__actions{display:flex;gap:.6rem;justify-content:flex-end}.cb__btn{font-family:Iskra,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.55em 1.4em;border-radius:4px;cursor:pointer;transition:all .22s ease;border:none}.cb__btn--decline{background:#ffffff0d;color:#fff6;border:1px solid rgba(255,255,255,.08)}.cb__btn--decline:hover{background:#ffffff17;color:#ffffffa6}.cb__btn--accept{background:#fff;color:#000}.cb__btn--accept:hover{background:#d2e1fff2;transform:translateY(-1px)}.cb-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:1rem;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:cbFadeIn .3s ease forwards}@keyframes cbFadeIn{0%{opacity:0}to{opacity:1}}.cb-modal__box{background:#0c0c12f2;border:1px solid rgba(255,255,255,.08);border-radius:16px;width:min(520px,100%);max-height:80vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent;animation:cbBoxIn .35s cubic-bezier(.16,1,.3,1) forwards;font-family:Iskra,sans-serif}@keyframes cbBoxIn{0%{transform:scale(.94) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.cb-modal__header{display:flex;align-items:center;gap:.6rem;padding:1.3rem 1.4rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);position:sticky;top:0;background:#0c0c12fa}.cb-modal__header svg{color:#78aaffb3;flex-shrink:0}.cb-modal__title{font-size:.88rem;font-weight:700;color:#ffffffe6;flex:1;margin:0}.cb-modal__close{background:none;border:none;cursor:pointer;color:#ffffff4d;padding:.2rem;line-height:0;transition:color .2s ease}.cb-modal__close:hover{color:#ffffffb3}.cb-modal__body{padding:1.2rem 1.4rem 1.5rem;display:flex;flex-direction:column;gap:1.1rem}.cb-modal__body section h3{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;margin:0 0 .4rem}.cb-modal__body section p{font-size:.8rem;font-weight:300;line-height:1.7;color:#c8d7ff73;margin:0}.cb-modal__body code{font-family:monospace;font-size:.75rem;background:#ffffff0f;padding:.1em .4em;border-radius:3px;color:#b4c8ff99}.cb-modal__body a{color:#78aaffb3;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.cb-modal__body a:hover{color:#8cbeff}@media(max-width:480px){.cb__actions{justify-content:stretch}.cb__btn{flex:1;text-align:center}}.pm-consent-badge{display:inline-flex;align-items:center;gap:.3rem;font-family:Iskra,sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.08em;padding:.25em .65em;border-radius:4px;margin-left:auto;margin-right:.5rem;animation:pmBadgeIn .4s cubic-bezier(.16,1,.3,1) forwards}.pm-consent-badge--ok{background:#28c8641a;border:1px solid rgba(40,200,100,.22);color:#50dc82e6}.pm-consent-badge--no{background:#dc3c3c1a;border:1px solid rgba(220,60,60,.2);color:#e65a5ae6}@keyframes pmBadgeIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.aurora-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:0;filter:blur(60px)}.footer{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.2rem clamp(1.5rem,8vw,7rem);font-family:Iskra,sans-serif;font-size:clamp(.6rem,1.4vw,.7rem);letter-spacing:.08em;color:#ffffff2e;border-top:1px solid rgba(255,255,255,.04)}.footer__copy{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.footer__copy strong{color:#ffffff59;font-weight:700}.footer__sep{opacity:.25}.footer__policy{background:none;border:none;cursor:pointer;font-family:Iskra,sans-serif;font-size:inherit;letter-spacing:inherit;color:#ffffff2e;padding:0;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.footer__policy:hover{color:#ffffff80}.footer__lang{display:flex;align-items:center;gap:0;border:1px solid rgba(255,255,255,.08);border-radius:4px;overflow:hidden}.footer__lang-btn{background:none;border:none;cursor:pointer;font-family:Iskra,sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.12em;color:#ffffff40;padding:.35em .75em;transition:color .2s ease,background .2s ease}.footer__lang-btn:hover{color:#fff9}.footer__lang-btn--active{color:#fff;background:#ffffff14}.footer__lang-sep{width:1px;height:14px;background:#ffffff14}.consent-toast{position:fixed;bottom:clamp(1.2rem,3vw,2rem);right:clamp(1.2rem,3vw,2rem);z-index:999;display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:8px;font-family:Iskra,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:none}.consent-toast--ok{background:#28c8641f;border:1px solid rgba(40,200,100,.25);color:#50dc82e6}.consent-toast--no{background:#dc3c3c1a;border:1px solid rgba(220,60,60,.2);color:#e65a5ae6}.consent-toast__icon{line-height:0}.consent-toast--in{animation:toastIn .4s cubic-bezier(.16,1,.3,1) forwards}.consent-toast--out{animation:toastOut .35s ease forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.95)}}@media(max-width:480px){.footer{justify-content:center;text-align:center}}.home{position:relative;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:#000;font-family:Iskra,sans-serif;color:#fff}.home__vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.8) 100%),linear-gradient(to bottom,rgba(0,0,0,.35) 0%,transparent 25%,transparent 75%,rgba(0,0,0,.6) 100%)}.home__hero{position:relative;z-index:10;flex:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(6rem,12vw,10rem) clamp(1.5rem,8vw,7rem) clamp(2rem,4vw,4rem);opacity:0;transform:translateY(24px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}.home__hero--in{opacity:1;transform:translateY(0)}.home__tag{display:inline-flex;align-items:center;gap:.5rem;font-size:clamp(.6rem,1.5vw,.72rem);letter-spacing:.2em;text-transform:uppercase;color:#78b4ffb3;margin-bottom:clamp(1.2rem,3vw,2rem)}.home__tag-dot{width:7px;height:7px;border-radius:50%;background:#4caf50;box-shadow:0 0 8px #4caf50b3;animation:greenBlink 2.5s ease-in-out infinite}@keyframes greenBlink{0%,to{opacity:.5}50%{opacity:1}}.home__title{display:flex;flex-direction:column;line-height:.92;margin:0 0 clamp(1.2rem,3vw,2.2rem)}.home__title-line{font-size:clamp(3.5rem,11vw,10rem);font-weight:700;letter-spacing:-.03em;color:#fff}.home__title-line--outline{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.3)}.home__sub{font-size:clamp(.9rem,2vw,1.05rem);font-weight:300;line-height:1.75;letter-spacing:.03em;color:#c8d7ff80;margin-bottom:clamp(2rem,4vw,3rem);max-width:520px}.home__sub strong{color:#ffffffd9;font-weight:700}.home__actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:clamp(2.5rem,5vw,4rem)}.home__btn{display:inline-flex;align-items:center;padding:.75em 1.8em;font-family:Iskra,sans-serif;font-size:clamp(.72rem,1.5vw,.82rem);font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:3px;transition:all .25s ease}.home__btn--primary{background:#fff;color:#000}.home__btn--primary:hover{background:#c8dcffe6;transform:translateY(-2px)}.home__btn--ghost{border:1px solid rgba(255,255,255,.18);color:#ffffffb3}.home__btn--ghost:hover{border-color:#ffffff73;color:#fff;transform:translateY(-2px)}.home__shader{display:none}@media(min-width:900px){.home__shader{display:block;position:absolute;top:0;right:0;width:50%;height:100%;pointer-events:none;z-index:2;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 30%);mask-image:linear-gradient(to right,transparent 0%,black 30%)}.home__shader canvas{opacity:.85}}.home__bars{height:40px}.home__bars .bars__bar{--bar-max: 38px}.home__skills{position:relative;z-index:10;display:flex;gap:clamp(1.5rem,4vw,3rem);flex-wrap:wrap;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,8vw,7rem);border-top:1px solid rgba(255,255,255,.05);opacity:0;transform:translateY(16px);transition:opacity 1s .3s cubic-bezier(.16,1,.3,1),transform 1s .3s cubic-bezier(.16,1,.3,1)}.home__skills--in{opacity:1;transform:translateY(0)}.home__skill{display:flex;align-items:center;gap:.5rem;color:#ffffff4d;transition:color .2s ease}.home__skill:hover{color:#ffffffbf}.home__skill-icon{width:18px;height:18px;flex-shrink:0}.home__skill-label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:400}.home__footer{position:relative;z-index:10;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:1.2rem clamp(1.5rem,8vw,7rem);font-size:clamp(.6rem,1.4vw,.7rem);letter-spacing:.08em;color:#ffffff2e;border-top:1px solid rgba(255,255,255,.04)}.home__footer strong{color:#ffffff59;font-weight:700}.home__footer-sep{opacity:.25}@media(max-width:480px){.home__title-line{letter-spacing:-.02em}.home__skills{gap:1.2rem}.home__footer{justify-content:center;text-align:center}}@media(max-width:360px){.home__title-line{font-size:2.8rem}}.proj{position:relative;min-height:100dvh;background:#000;font-family:Iskra,sans-serif;color:#fff;display:flex;flex-direction:column}.proj__vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 70% 30%,transparent 40%,rgba(0,0,0,.8) 100%)}.proj__content{position:relative;z-index:10;flex:1;padding:clamp(6rem,10vw,9rem) clamp(1.5rem,8vw,7rem) clamp(2rem,4vw,4rem);opacity:0;transform:translateY(20px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.proj__content--in{opacity:1;transform:translateY(0)}.proj__header{margin-bottom:clamp(2.5rem,5vw,5rem)}.proj__tag{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#78b4ff99;margin-bottom:1rem}.proj__tag-dot{width:6px;height:6px;border-radius:50%;background:#64a0ffcc;animation:dotBlink 2.4s ease-in-out infinite}.proj__title{font-size:clamp(2.8rem,9vw,8rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin-bottom:1.5rem}.proj__title--outline{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.28)}.proj__bars{height:32px}.proj__bars .bars__bar{--bar-max: 30px}.proj__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:1.5rem}.proj-card{background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:clamp(1.5rem,3vw,2.2rem);display:flex;flex-direction:column;gap:1rem;transition:border-color .3s ease,background .3s ease;overflow:hidden;position:relative}.proj-card:hover{border-color:#64a0ff33;background:#ffffff0d}.proj-card--featured{border-color:#ffffff1a}.proj-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;position:relative;z-index:1}.proj-card__logo-wrap{width:56px;height:56px;border-radius:12px;overflow:hidden;background:#ffffff0d;flex-shrink:0;position:relative;z-index:0;transform-origin:center;transition:transform .7s cubic-bezier(.16,1,.3,1),opacity .7s ease,border-radius .7s ease}.proj-card:hover .proj-card__logo-wrap{transform:scale(9) rotate(-8deg);opacity:.11;border-radius:4px}.proj-card__logo-wrap--placeholder{display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#ffffff26;border:1px dashed rgba(255,255,255,.1)}.proj-card__logo{width:100%;height:100%;object-fit:cover}.proj-card__name,.proj-card__desc,.proj-card__features,.proj-card__upcoming-bars,.proj-card__footer{position:relative;z-index:1}.proj-card__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem}.proj-card__badge{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;padding:.25em .7em;border-radius:2px;font-weight:700}.proj-card__badge--live{background:#4caf501f;color:#4caf50;border:1px solid rgba(76,175,80,.25)}.proj-card__badge--soon{background:#64a0ff14;color:#64a0ffcc;border:1px solid rgba(100,160,255,.2)}.proj-card__platform{display:flex;align-items:center;gap:.3rem;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff4d}.proj-card__name{font-size:clamp(1.4rem,3.5vw,2rem);font-weight:700;letter-spacing:-.02em}.proj-card__desc{font-size:clamp(.82rem,1.8vw,.92rem);font-weight:300;line-height:1.7;color:#c8d7ff80}.proj-card__features{list-style:none;display:flex;flex-direction:column;gap:.5rem}.proj-card__features li{font-size:.78rem;color:#ffffff59;padding-left:1rem;position:relative;line-height:1.5}.proj-card__features li:before{content:"—";position:absolute;left:0;color:#64a0ff66}.proj-card__upcoming-bars{margin:.5rem 0}.proj-card__bars{height:28px}.proj-card__bars .bars__bar{--bar-max: 26px}.proj-card__footer{margin-top:auto;padding-top:.5rem}.proj-card__btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65em 1.4em;font-family:Iskra,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:3px;background:#fff;color:#000;transition:all .2s ease}.proj-card__btn svg{width:14px;height:14px}.proj-card__btn:hover{background:#c8dcffe6;transform:translateY(-1px)}.proj-card__btn--ghost{background:transparent;color:#fff9;border:1px solid rgba(255,255,255,.15)}.proj-card__btn--ghost:hover{border-color:#fff6;color:#fff}.proj__footer{position:relative;z-index:10;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:1.2rem clamp(1.5rem,8vw,7rem);font-size:.68rem;letter-spacing:.08em;color:#ffffff2e;border-top:1px solid rgba(255,255,255,.04)}.proj__footer strong{color:#ffffff59}@media(max-width:480px){.proj__footer{justify-content:center}}.about{position:relative;min-height:100dvh;background:#000;font-family:Iskra,sans-serif;color:#fff;display:flex;flex-direction:column}.about__vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 30% 60%,transparent 40%,rgba(0,0,0,.8) 100%)}.about__content{position:relative;z-index:10;flex:1;max-width:720px;padding:clamp(6rem,10vw,9rem) clamp(1.5rem,8vw,7rem) clamp(2rem,4vw,4rem);opacity:0;transform:translateY(20px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.about__content--in{opacity:1;transform:translateY(0)}.about__tag{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#78b4ff99;margin-bottom:1rem}.about__tag-dot{width:6px;height:6px;border-radius:50%;background:#64a0ffcc;animation:dotBlink 2.4s ease-in-out infinite}.about__title{font-size:clamp(2.8rem,9vw,7.5rem);font-weight:700;letter-spacing:-.03em;line-height:.95;margin-bottom:1.5rem}.about__title--accent{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.35)}.about__bars{height:28px;margin-bottom:clamp(2rem,5vw,4rem)}.about__bars .bars__bar{--bar-max: 26px}.about__bio{display:flex;flex-direction:column;gap:1.1rem;margin-bottom:clamp(2.5rem,5vw,4rem)}.about__bio p{font-size:clamp(.95rem,2.2vw,1.1rem);font-weight:300;line-height:1.8;color:#c8d7ff8c}.about__section{margin-bottom:clamp(2rem,4vw,3.5rem)}.about__section-title{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:#ffffff40;margin-bottom:1.4rem}.about__stack{display:flex;flex-direction:column;gap:1rem}.about__skill-top{display:flex;justify-content:space-between;margin-bottom:.4rem}.about__skill-name{font-size:.82rem;font-weight:400;color:#ffffffb3}.about__skill-pct{font-size:.72rem;color:#64a0ff80}.about__skill-bar{height:2px;background:#ffffff0f;border-radius:2px;overflow:hidden}.about__skill-fill{display:block;height:100%;width:var(--level);background:linear-gradient(90deg,#5082ff99,#8cb4ffcc);border-radius:2px;animation:fillIn 1.2s cubic-bezier(.16,1,.3,1) forwards;transform-origin:left}@keyframes fillIn{0%{width:0}to{width:var(--level)}}.about__wow{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.4rem;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:10px;text-decoration:none;color:#fff;transition:border-color .2s ease,background .2s ease}.about__wow:hover{border-color:#64a0ff40;background:#ffffff0d}.about__wow-left{display:flex;align-items:center;gap:1rem}.about__wow-icon{width:40px;height:40px;border-radius:8px;background:#64a0ff1a;border:1px solid rgba(100,160,255,.15);display:flex;align-items:center;justify-content:center;color:#64a0ffcc}.about__wow-icon svg{width:18px;height:18px}.about__wow-img{width:100%;height:100%;object-fit:cover;border-radius:6px}.about__wow-name{font-size:.9rem;font-weight:700}.about__wow-role{font-size:.72rem;color:#ffffff59;margin-top:.2rem}.about__wow-arrow{color:#ffffff40}.about__wow-arrow svg{width:18px;height:18px}.about__socials{display:flex;flex-direction:column;gap:.8rem}.about__social{display:flex;align-items:center;gap:.8rem;padding:.9rem 1.2rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;text-decoration:none;color:#ffffff80;font-size:.82rem;transition:all .2s ease}.about__social svg{width:16px;height:16px;flex-shrink:0}.about__social:hover{color:#fff;border-color:#ffffff26;background:#ffffff0a}.about__footer{position:relative;z-index:10;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:1.2rem clamp(1.5rem,8vw,7rem);font-size:.68rem;letter-spacing:.08em;color:#ffffff2e;border-top:1px solid rgba(255,255,255,.04)}.about__footer strong{color:#ffffff59}@media(max-width:480px){.about__footer{justify-content:center}}.contact{position:relative;min-height:100dvh;background:#000;font-family:Iskra,sans-serif;color:#fff;display:flex;flex-direction:column}.contact__vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 80% 20%,transparent 40%,rgba(0,0,0,.8) 100%)}.contact__content{position:relative;z-index:10;flex:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start;padding:clamp(6rem,10vw,9rem) clamp(1.5rem,8vw,7rem) clamp(2rem,4vw,4rem);opacity:0;transform:translateY(20px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.contact__content--in{opacity:1;transform:translateY(0)}.contact__tag{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#78b4ff99;margin-bottom:1rem}.contact__tag-dot{width:6px;height:6px;border-radius:50%;background:#64a0ffcc;animation:dotBlink 2.4s ease-in-out infinite}@keyframes dotBlink{0%,to{opacity:.3}50%{opacity:1}}.contact__title{font-size:clamp(2.8rem,9vw,8rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin-bottom:1.4rem}.contact__title--outline{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.28)}.contact__sub{font-size:clamp(.85rem,2vw,.95rem);font-weight:300;line-height:1.75;color:#c8d7ff73;margin-bottom:2rem}.contact__bars{height:28px}.contact__bars .bars__bar{--bar-max: 26px}.contact__links{display:flex;flex-direction:column;gap:.8rem;padding-top:.5rem}.contact__link{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.3rem;background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:10px;text-decoration:none;color:#fff;transition:all .25s ease;cursor:pointer}.contact__link:not(.contact__link--disabled):hover{border-color:#64a0ff40;background:#ffffff0d;transform:translate(4px)}.contact__link--disabled{opacity:.45;cursor:default}.contact__link-icon{width:40px;height:40px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff9}.contact__link-icon svg{width:16px;height:16px}.contact__link-body{display:flex;flex-direction:column;gap:.2rem;flex:1}.contact__link-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff4d}.contact__link-handle{font-size:.88rem;font-weight:400;color:#fffc}.contact__link-arrow{color:#fff3}.contact__link-arrow svg{width:16px;height:16px}.contact__link-badge{font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;padding:.2em .6em;border-radius:2px;background:#64a0ff14;color:#64a0ff99;border:1px solid rgba(100,160,255,.15)}@media(max-width:768px){.contact__content{grid-template-columns:1fr}}@font-face{font-family:Iskra;src:url(/fonts/IskraCyrillic/IskraCYR-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Iskra;src:url(/fonts/IskraCyrillic/IskraCYR-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Iskra;src:url(/fonts/IskraCyrillic/IskraCYR-UltraBold.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Iskra;src:url(/fonts/IskraCyrillic/IskraCYR-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100dvh}body{min-height:100dvh;background:#000;overflow-x:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}#root{min-height:100dvh}::selection{background:#00c8ff40;color:#fff}
