@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--black: #050505;--black-soft: #0a0a0a;--white: #f5f5f5;--gray: #858585;--red: #ff2020;--red-dark: #8f0000;font-family:Inter,sans-serif;color:var(--white);background:var(--black);font-synthesis:none;text-rendering:optimizeLegibility}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background:var(--black)}body{min-width:320px;min-height:100vh;background:var(--black);cursor:none}button{font-family:inherit}#root{min-height:100vh}@media(pointer:fine){body,a,button{cursor:none}}@media(max-width:768px){body{cursor:auto}}.portfolio{min-height:100vh;background:radial-gradient(circle at 80% 20%,rgba(255,32,32,.08),transparent 30%),var(--black)}.hero{position:relative;min-height:100vh;padding:120px 6vw 40px;display:flex;align-items:center;overflow:hidden}.hero__content{position:relative;z-index:2;max-width:1100px}.hero__eyebrow{margin-bottom:28px;font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.2em;color:var(--red)}.hero__title{font-size:clamp(70px,15vw,220px);line-height:.78;letter-spacing:-.07em;font-weight:900}.hero__title-mask{overflow:hidden;line-height:.82}.hero__title-main,.hero__title-outline{display:block}.hero__title-outline{color:transparent;-webkit-text-stroke:2px var(--white)}.hero__description{max-width:500px;margin-top:55px;color:var(--gray);font-size:18px;line-height:1.7}.hero__actions{display:flex;gap:16px;margin-top:35px}.hero__actions button{padding:15px 24px;border:1px solid var(--red);background:var(--red);color:#fff;font-size:12px;font-weight:700;letter-spacing:.12em;cursor:pointer;transition:transform .3s ease,background .3s ease}.hero__actions button:hover{transform:translateY(-4px)}.hero__button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border:1px solid var(--red);background:var(--red);color:#fff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.12em;cursor:pointer;transition:transform .3s ease,background .3s ease,border-color .3s ease}.hero__button:hover{transform:translateY(-4px)}.hero__button--outline{background:transparent;border-color:#ffffff40}.hero__button--outline:hover{border-color:var(--red)}.hero__button--resume{background:transparent;border-color:#ff202080}.hero__actions .hero__button--outline{background:transparent;border-color:#ffffff40}.hero__actions .hero__button--outline:hover{border-color:var(--red);background:#ff20200d}.hero__status{position:absolute;bottom:40px;right:6vw;display:flex;align-items:center;gap:10px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em;color:var(--gray);z-index:3}.hero__status span{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 15px var(--red);animation:statusPulse 2s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@media(max-width:768px){.hero{padding:30px 24px}.hero__button{width:100%}.hero__title{font-size:clamp(70px,18vw,150px);line-height:.82}.hero__description{font-size:16px;margin-top:40px}.hero__actions{flex-direction:column;width:fit-content}.hero__status{left:24px;right:auto;bottom:25px}.hero:before{width:300px;height:300px;right:-180px}}.hero__orb{position:absolute;border-radius:50%;pointer-events:none}.hero__orb--large{width:500px;height:500px;right:-150px;top:15%;border:1px solid rgba(255,32,32,.15);box-shadow:0 0 80px #ff202014,inset 0 0 80px #ff20200a}.hero__orb--small{width:350px;height:350px;left:-150px;bottom:-150px;border:1px solid rgba(255,32,32,.12)}html{scroll-behavior:smooth;scroll-padding-top:75px}.navbar{position:fixed;top:0;left:0;width:100%;height:90px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;z-index:10000;background:linear-gradient(to bottom,#050505eb,#05050500);transition:height .4s ease,background .4s ease,border .4s ease,backdrop-filter .4s ease}.navbar--scrolled{height:72px;background:#050505c7;border-bottom:1px solid rgba(255,32,32,.12);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.navbar__logo{position:relative;z-index:10002;font-size:30px;font-weight:900;letter-spacing:-.08em;color:var(--white);text-decoration:none;cursor:pointer;transition:color .3s ease}.navbar__logo span,.navbar__logo:hover{color:var(--red)}.navbar__links{position:relative;z-index:10001;display:flex;align-items:center;gap:40px}.navbar__links a{position:relative;display:inline-block;color:var(--gray);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em;text-decoration:none;cursor:pointer;transition:color .3s ease}.navbar__links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--red);transition:width .3s ease}.navbar__links a:hover{color:var(--white)}.navbar__links a:hover:after{width:100%}.navbar__links a.navbar__link--active{color:var(--white)}.navbar__links a.navbar__link--active:after{width:100%}.navbar__availability{position:relative;z-index:10002;display:flex;align-items:center;gap:10px;color:var(--white);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-decoration:none;cursor:pointer;transition:color .3s ease}.navbar__availability:hover{color:var(--red)}.navbar__availability span{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--red);box-shadow:0 0 12px var(--red);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@media(max-width:768px){.navbar{height:75px;padding:0 24px}.navbar--scrolled{height:65px}.navbar__links{display:none}.navbar__availability{font-size:9px}.navbar__logo{font-size:26px}}@media(max-width:480px){.navbar{padding:0 18px}.navbar__availability{gap:7px;font-size:8px}.navbar__availability span{width:6px;height:6px}}.cursor__dot,.cursor__follower{position:fixed;top:0;left:0;pointer-events:none;z-index:999999;transform:translate(-50%,-50%);will-change:transform;display:block}.cursor__dot{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 15px #ff2020cc}.cursor__follower{width:34px;height:34px;border:1px solid rgba(255,32,32,.6);border-radius:50%;background:#ff202008}@media(max-width:768px){.cursor__dot,.cursor__follower{display:none}}@media(pointer:coarse){.cursor__dot,.cursor__follower{display:none}}.about{position:relative;min-height:100vh;padding:20px 6vw 100px;background:var(--black-soft);border-top:1px solid rgba(255,255,255,.06)}.about__header{display:flex;align-items:center;gap:25px;margin-bottom:100px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em}.about__number{color:var(--red)}.about__label{color:var(--gray)}.about__content{display:grid;grid-template-columns:1.3fr .7fr;gap:8vw;align-items:end}.about__headline{display:flex;flex-direction:column;font-size:clamp(60px,10vw,150px);line-height:.82;letter-spacing:-.07em;font-weight:900}.about__headline-outline{color:transparent;-webkit-text-stroke:1px var(--white)}.about__description{max-width:500px;padding-bottom:10px}.about__description p{margin-bottom:25px;color:var(--gray);font-size:16px;line-height:1.8}.about__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:120px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.about__stat{min-height:160px;padding:35px 25px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.08)}.about__stat:last-child{border-right:none}.about__stat strong{font-size:clamp(40px,5vw,70px);font-weight:800;letter-spacing:-.05em}.about__stat span{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.12em;color:var(--gray)}.about__skills{margin-top:90px}.about__skills-title{margin-bottom:25px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em;color:var(--red)}.about__skills-grid{display:flex;flex-wrap:wrap;gap:10px}.about__skills-grid span{padding:12px 16px;border:1px solid rgba(255,255,255,.12);color:var(--gray);font-family:JetBrains Mono,monospace;font-size:11px;transition:color .3s ease,border-color .3s ease,transform .3s ease}.about__skills-grid span:hover{color:var(--white);border-color:var(--red);transform:translateY(-4px)}@media(max-width:768px){.about{padding:100px 24px 80px}.about__header{margin-bottom:60px}.about__content{grid-template-columns:1fr;gap:50px}.about__headline{font-size:clamp(60px,18vw,120px)}.about__stats{grid-template-columns:1fr;margin-top:80px}.about__stat{min-height:120px;border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.about__stat:last-child{border-bottom:none}}.experience{position:relative;padding:20px 6vw 120px;background:var(--black)}.experience__header{display:flex;align-items:center;gap:25px;margin-bottom:90px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em}.experience__number{color:var(--red)}.experience__label{color:var(--gray)}.experience__intro{display:grid;grid-template-columns:1fr .5fr;gap:8vw;align-items:end;margin-bottom:120px}.experience__intro h2{margin:0;font-size:clamp(70px,11vw,170px);line-height:.8;letter-spacing:-.07em;font-weight:900}.experience__intro h2 span{display:block;color:transparent;-webkit-text-stroke:1px var(--white)}.experience__intro p{max-width:400px;color:var(--gray);font-size:16px;line-height:1.8}.experience__timeline{position:relative;max-width:1100px;margin:0 auto}.experience__line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--red),rgba(255,32,32,.05));transform:translate(-50%)}.experience__card{position:relative;width:50%;padding:0 60px 100px}.experience__card:nth-child(2n){margin-left:50%}.experience__card:nth-child(odd){text-align:right}.experience__marker{position:absolute;top:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--red);border-radius:50%;background:var(--black);color:var(--red);font-family:JetBrains Mono,monospace;font-size:10px;z-index:2}.experience__card:nth-child(odd) .experience__marker{right:-22px}.experience__card:nth-child(2n) .experience__marker{left:-22px}.experience__card-content{padding:35px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(255,255,255,.025),transparent);transition:border-color .4s ease,transform .4s ease}.experience__card-content:hover{border-color:#ff202080;transform:translateY(-6px)}.experience__period{margin-bottom:20px;color:var(--red);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em}.experience__card h3{margin:0;font-size:clamp(25px,3vw,40px);line-height:1;letter-spacing:-.04em}.experience__role{margin-top:12px;color:var(--white);font-size:14px;font-weight:600}.experience__location{margin-top:5px;color:var(--gray);font-family:JetBrains Mono,monospace;font-size:9px}.experience__card p{margin-top:30px;color:var(--gray);font-size:14px;line-height:1.8}.experience__technologies{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.experience__card:nth-child(odd) .experience__technologies{justify-content:flex-end}.experience__technologies span{padding:7px 10px;border:1px solid rgba(255,255,255,.1);color:var(--gray);font-family:JetBrains Mono,monospace;font-size:9px}@media(max-width:768px){.experience{padding:100px 24px 80px}.experience__intro{grid-template-columns:1fr;gap:40px;margin-bottom:80px}.experience__intro h2{font-size:clamp(60px,18vw,120px)}.experience__line{left:15px}.experience__card,.experience__card:nth-child(2n){width:100%;margin-left:0;padding:0 0 70px 45px;text-align:left}.experience__marker,.experience__card:nth-child(odd) .experience__marker,.experience__card:nth-child(2n) .experience__marker{left:-7px;right:auto}.experience__card:nth-child(odd) .experience__technologies{justify-content:flex-start}.experience__card-content{padding:25px}}.projects{position:relative;padding:20px 6vw 140px;background:var(--black-soft);overflow:hidden}.projects__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:120px}.projects__header>div{display:flex;align-items:center;gap:25px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em}.projects__number{color:var(--red)}.projects__label{color:var(--gray)}.projects__header h2{margin:0;max-width:700px;font-size:clamp(60px,10vw,150px);line-height:.8;letter-spacing:-.07em;font-weight:900;text-align:right}.projects__header h2 span{display:block;color:transparent;-webkit-text-stroke:1px var(--white)}.projects__list{max-width:1200px;margin:0 auto}.project{position:relative;min-height:360px;padding:60px 80px 60px 120px;display:flex;align-items:center;border-top:1px solid rgba(255,255,255,.1);transition:background .5s ease,border-color .5s ease;overflow:hidden}.project:last-child{border-bottom:1px solid rgba(255,255,255,.1)}.project:before{content:"";position:absolute;width:0;height:100%;left:0;top:0;background:var(--red);transition:width .5s ease;z-index:0}.project:hover:before{width:5px}.project:hover{background:#ff202006;border-color:#ff20204d}.project__number{position:absolute;left:0;font-family:JetBrains Mono,monospace;font-size:100px;line-height:1;color:#ffffff09;transition:color .5s ease,transform .5s ease;z-index:0}.project:hover .project__number{color:#ff20201a;transform:translate(15px)}.project__content{position:relative;z-index:1;max-width:750px}.project__category{margin-bottom:18px;color:var(--red);font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.16em}.project h3{margin:0;font-size:clamp(35px,5vw,70px);line-height:.95;letter-spacing:-.05em;transition:transform .5s ease}.project:hover h3{transform:translate(10px)}.project p{max-width:600px;margin-top:30px;color:var(--gray);font-size:15px;line-height:1.8}.project__technologies{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.project__technologies span{padding:7px 10px;border:1px solid rgba(255,255,255,.1);color:var(--gray);font-family:JetBrains Mono,monospace;font-size:9px;transition:color .3s ease,border-color .3s ease}.project:hover .project__technologies span{border-color:#ff202040}.project__arrow{position:absolute;right:40px;top:50%;transform:translateY(-50%);font-size:50px;color:#fff3;transition:color .4s ease,transform .4s ease}.project:hover .project__arrow{color:var(--red);transform:translate(8px,-58%)}@media(max-width:768px){.projects{padding:100px 24px 80px}.projects__header{display:block;margin-bottom:80px}.projects__header>div{margin-bottom:50px}.projects__header h2{font-size:clamp(60px,18vw,120px);text-align:left}.project{min-height:0;padding:50px 45px 50px 25px;display:block}.project__number{position:relative;display:block;margin-bottom:20px;font-size:60px}.project__arrow{right:15px;font-size:35px}.project h3{font-size:40px}.project p{font-size:14px}.project__preview{display:none}}.project__preview{position:absolute;width:260px;height:170px;right:120px;top:50%;transform:translateY(-50%) translate(30px) rotate(4deg) scale(.8);opacity:0;border:1px solid rgba(255,32,32,.4);background:radial-gradient(circle at 30% 30%,rgba(255,32,32,.25),transparent 50%),#080808;overflow:hidden;pointer-events:none;transition:opacity .45s ease,transform .55s cubic-bezier(.16,1,.3,1);z-index:3}.project--active .project__preview{opacity:1;transform:translateY(-50%) translate(0) rotate(0) scale(1)}.project__preview-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:25px 25px;-webkit-mask-image:linear-gradient(to bottom,black,transparent);mask-image:linear-gradient(to bottom,black,transparent)}.project__preview-number{position:absolute;left:20px;bottom:25px;font-size:70px;font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.6)}.project__preview-label{position:absolute;top:20px;right:20px;max-width:130px;text-align:right;color:var(--red);font-family:JetBrains Mono,monospace;font-size:8px;letter-spacing:.12em}.skills{position:relative;min-height:100vh;padding:150px 6vw;background:var(--black);overflow:hidden}.skills:before{content:"";position:absolute;width:600px;height:600px;right:-300px;top:20%;border-radius:50%;border:1px solid rgba(255,32,32,.12);box-shadow:0 0 100px #ff20200d,inset 0 0 100px #ff202008;pointer-events:none}.skills__header{position:relative;display:flex;justify-content:space-between;align-items:flex-end;z-index:1}.skills__meta{display:flex;gap:25px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em}.skills__meta span:first-child{color:var(--red)}.skills__meta span:last-child{color:var(--gray)}.skills__header h2{margin:0;font-size:clamp(70px,11vw,160px);line-height:.8;letter-spacing:-.07em;font-weight:900;text-align:right}.skills__header h2 span{display:block;color:transparent;-webkit-text-stroke:1px var(--white)}.skills__intro{position:relative;display:flex;justify-content:flex-end;margin-top:70px;z-index:1}.skills__intro p{max-width:380px;margin:0;color:var(--gray);font-size:15px;line-height:1.8}.skills__cloud{position:relative;max-width:1100px;margin:130px auto 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;z-index:2}.skill{position:relative;display:inline-block;padding:14px 18px;border:1px solid rgba(255,255,255,.12);color:var(--gray);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.04em;cursor:default;overflow:hidden;transition:color .3s ease,border-color .3s ease,background .3s ease,transform .3s ease,box-shadow .3s ease}.skill:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,32,32,.12),transparent);transform:translate(-100%);transition:transform .5s ease;pointer-events:none}.skill:hover{color:var(--white);border-color:var(--red);background:#ff202014;transform:translateY(-6px) scale(1.05);box-shadow:0 10px 30px #ff202014}.skill:hover:before{transform:translate(100%)}.skill--1{font-size:18px}.skill--2{font-size:13px}.skill--3{font-size:22px;color:#fffc}.skill--4{font-size:11px}.skill--5{font-size:16px}@media(max-width:768px){.skills{min-height:auto;padding:100px 24px}.skills__header{display:block}.skills__meta{margin-bottom:50px}.skills__header h2{font-size:clamp(70px,18vw,120px);text-align:left}.skills__intro{justify-content:flex-start;margin-top:50px}.skills__intro p{font-size:14px}.skills__cloud{margin-top:80px;justify-content:flex-start;gap:10px}.skill--1,.skill--2,.skill--3,.skill--4,.skill--5{font-size:11px}}@media(max-width:480px){.skills{padding:80px 20px}.skills__meta{gap:15px}.skills__header h2{font-size:19vw}.skills__cloud{margin-top:60px}.skill{padding:11px 13px;font-size:10px}}.contact{position:relative;min-height:auto;padding:20px 6vw 35px;display:flex;flex-direction:column;justify-content:space-between;background:#050505;overflow:hidden}.contact__glow{position:absolute;width:700px;height:700px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,32,32,.16),transparent 65%);pointer-events:none;filter:blur(10px)}.contact__meta{position:relative;display:flex;align-items:center;gap:25px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.15em;z-index:2}.contact__meta span:first-child{color:var(--red)}.contact__meta span:last-child{color:var(--gray)}.contact__main{position:relative;width:100%;max-width:1100px;margin:110px auto 140px;z-index:2}.contact__title{margin:0;font-size:clamp(65px,11vw,170px);line-height:.8;letter-spacing:-.07em;font-weight:900}.contact__title span{display:block}.contact__outline{color:transparent;-webkit-text-stroke:1px var(--white)}.contact__description{max-width:480px;margin-top:60px;color:var(--gray);font-size:16px;line-height:1.8}.contact__button{position:relative;display:inline-flex;align-items:center;gap:40px;margin-top:40px;padding:20px 25px;border:1px solid var(--red);color:var(--white);text-decoration:none;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.12em;overflow:hidden;transition:color .4s ease,transform .3s ease,box-shadow .3s ease}.contact__button:before{content:"";position:absolute;inset:0;background:var(--red);transform:translate(-101%);transition:transform .45s cubic-bezier(.16,1,.3,1);z-index:-1}.contact__button:hover:before{transform:translate(0)}.contact__button:hover{transform:translateY(-4px);box-shadow:0 12px 35px #ff20202e}.contact__arrow{font-size:22px;transition:transform .4s ease}.contact__button:hover .contact__arrow{transform:translate(5px,-5px)}.contact__footer{position:relative;display:flex;justify-content:space-between;padding-top:25px;border-top:1px solid rgba(255,255,255,.1);color:#ffffff59;font-family:JetBrains Mono,monospace;font-size:8px;letter-spacing:.12em;z-index:2}@media(max-width:768px){.contact{min-height:auto;padding:100px 24px 25px}.contact__meta{gap:15px;font-size:9px}.contact__main{margin:80px auto 100px}.contact__title{font-size:clamp(60px,17vw,110px)}.contact__description{margin-top:45px;font-size:14px}.contact__button{width:100%;justify-content:space-between;box-sizing:border-box}.contact__footer{flex-direction:column;gap:10px}}@media(max-width:480px){.contact{padding:80px 20px 20px}.contact__main{margin-top:65px}.contact__description{font-size:13px}.contact__button{padding:17px 18px;gap:20px}}
