:root{--bg:#0a0f1e;--card-bg:#141c2f;--card-alt:#1c2444;--accent-blue:#2d7dd2;--accent-blue-dark:#1a5fa8;--gold:#e8a838;--gold-dark:#c4881c;--text-primary:#f0f4ff;--text-muted:#8892b0;--border:#1e2d4a;--font-heading:"Syne", sans-serif;--font-body:"Inter", sans-serif;--glow-blue:0 0 40px #2d7dd259;--glow-gold:0 0 40px #e8a8384d;--ease-out:cubic-bezier(.16, 1, .3, 1);--container:1240px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,h4,p,ul,figure{margin:0}ul{padding:0;list-style:none}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit}body{background:var(--bg);color:var(--text-primary);font-family:var(--font-body);font-weight:400;line-height:1.6;overflow-x:hidden}body.no-scroll{overflow:hidden}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:800;line-height:1.1}.section-inner{max-width:var(--container);margin:0 auto;padding:0 32px}.section-eyebrow{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-blue);margin-bottom:12px;font-size:12px;font-weight:600}.section-title{margin-bottom:8px;font-size:clamp(2rem,4vw,3rem)}.section-subtitle{color:var(--text-muted);max-width:520px;font-size:16px}section{padding:120px 0;position:relative}.btn{letter-spacing:.02em;transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), background .3s var(--ease-out), opacity .3s var(--ease-out);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--gold{background:linear-gradient(135deg, var(--gold), var(--gold-dark));color:#12131a}.btn--gold:hover{box-shadow:var(--glow-gold)}.btn--accent{background:var(--accent-blue);color:#fff}.btn--accent:hover{box-shadow:var(--glow-blue);background:var(--accent-blue-dark)}.btn--accent-outline{border:1px solid var(--accent-blue);color:var(--text-primary);background:0 0}.btn--accent-outline:hover{box-shadow:var(--glow-blue);background:#2d7dd21f}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:18px;padding:32px}.card--alt{background:var(--card-alt)}.cursor-dot,.cursor-ring{pointer-events:none;z-index:9999;opacity:0;transition:opacity .25s;position:fixed;top:0;left:0}.cursor-dot{background:var(--accent-blue);border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px}.cursor-ring{border:1px solid var(--accent-blue);width:36px;height:36px;transition:width .35s var(--ease-out), height .35s var(--ease-out), margin .35s var(--ease-out), background-color .35s var(--ease-out), opacity .25s ease;background:0 0;border-radius:50%;justify-content:center;align-items:center;margin:-18px 0 0 -18px;display:flex}.cursor-ring__label{font-family:var(--font-body);letter-spacing:.08em;color:var(--text-primary);opacity:0;font-size:11px;font-weight:600;transition:opacity .2s}body.has-cursor,body.has-cursor a,body.has-cursor button,body.has-cursor input,body.has-cursor textarea,body.has-cursor select{cursor:none}body.has-cursor .cursor-dot,body.has-cursor .cursor-ring{opacity:1}.cursor-ring.is-hovering{background:#2d7dd21a;width:56px;height:56px;margin:-28px 0 0 -28px}.cursor-ring.is-hovering .cursor-ring__label{opacity:1}.cursor-dot.is-hidden{opacity:0}.preloader{z-index:10000;background:var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.preloader__inner{flex-direction:column;align-items:center;gap:20px;display:flex}.preloader__logo{font-family:var(--font-heading);color:var(--accent-blue);font-size:clamp(2.5rem,6vw,4rem);font-weight:800}.preloader__logo span{opacity:0;display:inline-block;transform:translateY(16px)}.preloader__bar{background:var(--border);border-radius:2px;width:220px;height:2px;overflow:hidden}.preloader__bar-fill{background:var(--gold);width:0%;height:100%}.preloader__counter{letter-spacing:.08em;color:var(--text-muted);font-size:13px}.nav{z-index:500;transition:background .4s var(--ease-out), border-color .4s var(--ease-out);background:0 0;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.nav.is-scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#0a0f1ed9}.nav__inner{max-width:var(--container);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;padding:20px 32px;display:flex}.nav__logo{font-family:var(--font-heading);color:var(--accent-blue);font-size:20px;font-weight:800}.nav__links{gap:32px;margin-left:auto;margin-right:32px;display:flex}.nav__links a{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:12px;font-weight:600;transition:color .3s}.nav__links a:hover{color:var(--text-primary)}.nav__resume-btn{padding:10px 22px;font-size:12px}.nav__hamburger{z-index:600;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;display:none}.nav__hamburger span{background:var(--text-primary);width:100%;height:2px;transition:transform .3s var(--ease-out), opacity .3s var(--ease-out);display:block}.nav__hamburger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav__hamburger.is-open span:nth-child(2){opacity:0}.nav__hamburger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav__mobile-overlay{z-index:550;background:var(--bg);visibility:hidden;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.nav__mobile-overlay.is-open{visibility:visible}.nav__mobile-links{flex-direction:column;align-items:center;gap:28px;display:flex}.nav__mobile-links a{font-family:var(--font-heading);color:var(--text-primary);font-size:28px;font-weight:700}.nav__mobile-links a:hover{color:var(--accent-blue)}.hero{align-items:center;min-height:100vh;padding:160px 0 100px;display:flex;overflow:hidden}.hero__grid{z-index:0;pointer-events:none;background-image:radial-gradient(circle,#8892af29 1px,#0000 1.5px);background-size:26px 26px;position:absolute;inset:-50px}.hero__inner{z-index:1;max-width:var(--container);margin:0 auto;padding:0 32px;position:relative}.hero__content{max-width:640px}.hero__badge{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;align-items:center;gap:10px;margin-bottom:24px;padding:8px 16px;font-size:13px;display:inline-flex}.hero__badge-dot{background:#3ddc84;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-dot;box-shadow:0 0 #3ddc8499}@keyframes pulse-dot{0%{box-shadow:0 0 #3ddc8499}70%{box-shadow:0 0 0 8px #3ddc8400}to{box-shadow:0 0 #3ddc8400}}.hero__name{margin-bottom:16px;font-size:clamp(2.75rem,6.5vw,5rem)}.hero__role{font-family:var(--font-heading);color:var(--accent-blue);min-height:1.4em;margin-bottom:20px;font-size:clamp(1.1rem,2.2vw,1.6rem);font-weight:700}.hero__caret{margin-left:2px;animation:.9s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}.hero__bio{color:var(--text-muted);max-width:520px;margin-bottom:32px;font-size:17px}.hero__ctas{flex-wrap:wrap;gap:16px;margin-bottom:48px;display:flex}.hero__stats{grid-template-columns:repeat(4,auto);gap:32px;display:grid}.hero__stat{flex-direction:column;gap:4px;display:flex}.hero__stat-value{font-family:var(--font-heading);color:var(--text-primary);font-size:22px;font-weight:800}.hero__stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.hero__scroll-hint{z-index:1;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero__scroll-hint span{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-size:11px}.hero__scroll-line{background:linear-gradient(to bottom, var(--accent-blue), transparent);width:1px;height:40px}.services__grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px;display:grid}.service-card{min-height:180px;transition:transform .35s var(--ease-out), border-color .35s var(--ease-out), box-shadow .35s var(--ease-out);flex-direction:column;gap:12px;display:flex;position:relative}.service-card:hover{border-color:var(--accent-blue);transform:translateY(-6px)}.service-card__title{font-size:18px}.service-card__desc{color:var(--text-muted);flex-grow:1;font-size:14px}.service-card__price{color:var(--accent-blue);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.service-card__badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:-12px;right:20px}.service-card__badge--gold{background:var(--gold);color:#12131a}.service-card--featured{border-color:var(--gold)}.service-card--featured:hover{border-color:var(--gold);box-shadow:var(--glow-gold)}.service-card--promo{background:linear-gradient(160deg, #e8a83829, var(--card-bg));border-color:var(--gold-dark)}.service-card--promo .service-card__price{color:var(--gold)}.services__note{color:var(--text-muted);max-width:640px;margin-top:40px;font-size:14px}.client-work{background:#060911;padding:120px 0 60px}.client-work .section-inner{margin-bottom:56px}.client-work__stage{width:100%;padding:40px 0;position:relative;overflow:hidden}.client-work__track{will-change:transform;gap:32px;width:max-content;padding:0 32px;display:flex}.client-card{background:var(--card-bg);border:1px solid var(--border);width:min(420px,78vw);transform-style:preserve-3d;will-change:transform;border-radius:20px;flex-direction:column;flex-shrink:0;gap:14px;padding:36px;display:flex;position:relative}.client-card__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.client-card__status{letter-spacing:.06em;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;transition:box-shadow .3s;display:inline-flex}.client-card__status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.client-card__status--live{color:#3ddc84;background:#3ddc841f}.client-card__status--progress{color:var(--gold);background:#e8a8381f}.client-card__status--upcoming{color:var(--text-muted);background:#8892af1f}.client-card__status--new{color:var(--accent-blue);background:#2d7dd224}.client-card:hover .client-card__status--live{box-shadow:0 0 16px #3ddc8480}.client-card:hover .client-card__status--progress{box-shadow:0 0 16px #e8a83880}.client-card:hover .client-card__status--new{box-shadow:0 0 16px #2d7dd280}.client-card__link{color:var(--accent-blue);font-size:13px;font-weight:600}.client-card__link:hover{text-decoration:underline}.client-card__title{font-size:26px}.client-card__category{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:13px}.client-card__desc{color:var(--text-muted);margin-top:8px;font-size:15px}.client-card__stat{align-items:baseline;gap:10px;margin-top:4px;display:flex}.client-card__stat-value{font-family:var(--font-heading);color:var(--gold);font-size:32px;font-weight:800}.client-card__stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;max-width:140px;font-size:12px}.client-card__tags{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.client-work__progress{max-width:var(--container);background:var(--border);border-radius:3px;height:3px;margin:0 auto;padding:0 32px;overflow:hidden}.client-work__progress-fill{background:linear-gradient(90deg, var(--accent-blue), var(--gold));width:25%;height:100%}.projects__list{max-width:var(--container);flex-direction:column;gap:32px;margin:64px auto 0;padding:0 32px;display:flex}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:22px;grid-template-columns:42% 58%;min-height:320px;display:grid;overflow:hidden}.project-card:nth-child(2n){grid-template-columns:58% 42%}.project-card:nth-child(2n) .project-card__thumb{order:2}.project-card__thumb{background:var(--card-alt);justify-content:center;align-items:center;display:flex;position:relative}.project-card__thumb-img{object-fit:cover;width:100%;height:100%}.project-card__body{flex-direction:column;justify-content:center;gap:16px;padding:44px;display:flex}.project-card__tags{flex-wrap:wrap;gap:8px;display:flex}.tag{letter-spacing:.04em;text-transform:uppercase;background:var(--card-alt);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:5px 11px;font-size:11px;font-weight:600}.tag--ba{color:var(--gold);border-color:var(--gold-dark)}.project-card__title{font-size:28px}.project-card__desc{color:var(--text-muted);font-size:15px}.project-card__links{flex-wrap:wrap;gap:20px;margin-top:8px;display:flex}.project-card__link{color:var(--accent-blue);font-size:13px;font-weight:600}.project-card__link:hover{text-decoration:underline}.project-card__link--muted{color:var(--text-muted)}.projects__more{max-width:var(--container);margin:64px auto 0;padding:0 32px}.projects__more-title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:24px;font-size:14px;font-weight:700}.projects__more-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.project-mini{transition:transform .35s var(--ease-out), border-color .35s var(--ease-out);flex-direction:column;gap:12px;display:flex;position:relative}.project-mini:hover{border-color:var(--accent-blue);transform:translateY(-4px)}.project-mini__tags{flex-wrap:wrap;gap:8px;display:flex}.project-mini__title{font-size:18px}.project-mini__desc{color:var(--text-muted);font-size:14px}.project-mini__status{color:var(--text-muted);margin-top:-4px;font-size:12px;font-weight:600}.project-mini--flagship{border-color:var(--gold)}.project-mini--flagship:hover{border-color:var(--gold);box-shadow:var(--glow-gold)}.skills__grid{grid-template-columns:repeat(4,1fr);align-items:start;gap:20px;margin-top:48px;display:grid}.skills__panel-title{margin-bottom:24px;font-size:18px}.skill-bar{margin-bottom:20px}.skill-bar:last-child{margin-bottom:0}.skill-bar__top{color:var(--text-muted);justify-content:space-between;margin-bottom:8px;font-size:13px;display:flex}.skill-bar__top span:first-child{color:var(--text-primary)}.skill-bar__track{background:var(--border);border-radius:4px;height:6px;overflow:hidden}.skill-bar__fill{background:linear-gradient(90deg, var(--accent-blue), var(--gold));border-radius:4px;width:0%;height:100%}.resume__grid{grid-template-columns:1fr 1.4fr;gap:20px;margin-top:48px;display:grid}.resume__download{flex-direction:column;justify-content:center;gap:16px;display:flex}.resume__download-title{font-size:18px}.resume__download-desc{color:var(--text-muted);font-size:14px}.resume__strengths-title{margin-bottom:20px;font-size:18px}.resume__strengths-list{flex-direction:column;gap:18px;display:flex}.resume__strengths-list li{flex-direction:column;gap:4px;display:flex}.resume__strengths-list strong{font-size:15px}.resume__strengths-list span{color:var(--text-muted);font-size:14px}.contact__grid{grid-template-columns:.9fr 1.3fr;gap:48px;margin-top:48px;display:grid}.contact__info-list{flex-direction:column;gap:18px;margin-bottom:32px;display:flex}.contact__info-list li{flex-direction:column;gap:2px;display:flex}.contact__info-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:11px}.contact__info-list a{font-size:15px;transition:color .3s}.contact__info-list a:hover{color:var(--accent-blue)}.contact__socials{flex-wrap:wrap;gap:12px;display:flex}.contact__social-btn{border:1px solid var(--border);transition:border-color .3s ease, color .3s ease, transform .3s var(--ease-out);border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600}.contact__social-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);transform:translateY(-2px)}.contact__form{flex-direction:column;gap:18px;display:flex}.contact__form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact__field{flex-direction:column;gap:6px;display:flex}.contact__field label{color:var(--text-muted);font-size:12px}.contact__field input,.contact__field textarea,.contact__field select{background:var(--card-alt);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:14px;transition:border-color .3s}.contact__field input:focus,.contact__field textarea:focus,.contact__field select:focus{border-color:var(--accent-blue);outline:none}.contact__field textarea{resize:vertical;min-height:110px}.contact__submit{align-self:flex-start;margin-top:8px}.contact__form-status{min-height:1.4em;font-size:14px}.contact__form-status.is-success{color:#3ddc84}.contact__form-status.is-error{color:#e8615e}.footer{border-top:1px solid var(--border);padding:40px 0}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.footer__logo{font-family:var(--font-heading);color:var(--accent-blue);font-size:18px;font-weight:800}.footer__copyright{color:var(--text-muted);font-size:13px}.footer__links{gap:24px;display:flex}.footer__links a{color:var(--text-muted);font-size:13px;transition:color .3s}.footer__links a:hover{color:var(--text-primary)}@media (width<=1024px){.services__grid,.skills__grid{grid-template-columns:repeat(2,1fr)}.resume__grid,.contact__grid,.project-card,.project-card:nth-child(2n){grid-template-columns:1fr}.project-card__thumb{min-height:220px;order:0!important}}@media (width<=768px){section{padding:80px 0}.nav__links,.nav__resume-btn{display:none}.nav__hamburger{display:flex}.hero{padding:140px 0 80px}.hero__stats{grid-template-columns:repeat(2,1fr);row-gap:20px}.hero__ctas{flex-direction:column;align-items:stretch}.services__grid,.skills__grid,.projects__more-grid,.contact__form-row{grid-template-columns:1fr}.client-card{width:84vw;padding:28px}body.has-cursor{cursor:auto}body.has-cursor a,body.has-cursor button{cursor:pointer}.cursor-dot,.cursor-ring{display:none}}@media (width<=480px){.section-inner,.hero__inner{padding:0 20px}.hero__name{font-size:clamp(2.25rem,10vw,3rem)}.project-card__body{padding:28px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
