:root{--bg: #07070d;--bg-soft: #0b0b14;--surface: rgba(255, 255, 255, .03);--surface-hover: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .18);--text: #e5e7eb;--text-dim: #9ca3af;--text-faint: #6b7280;--grad: linear-gradient(100deg, #60a5fa 0%, #a78bfa 45%, #f472b6 80%, #fbbf24 110%);--font: "Nunito", "Segoe UI", system-ui, -apple-system, sans-serif;--radius: 18px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}::selection{background:#8b5cf666}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}ul{list-style:none}.gradient-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.section{position:relative;padding:5.5rem clamp(1.25rem,5vw,4rem);max-width:1200px;margin:0 auto;scroll-margin-top:90px}.section-separator{height:1px;max-width:160px;margin:0 auto 3.5rem;background:linear-gradient(90deg,transparent,rgba(167,139,250,.6),transparent)}.section-header{text-align:center;margin-bottom:3rem}.section-title{font-size:clamp(1.9rem,4vw,2.7rem);font-weight:800;text-transform:uppercase;letter-spacing:.03em}.section-subtitle{margin-top:.8rem;color:var(--text-dim);font-size:1.05rem}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.revealed{opacity:1;transform:none}.progress-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;background:var(--grad);transform-origin:0 50%;transform:scaleX(0);transition:transform .25s ease}.progress-bar-hidden{display:none}.header{position:fixed;top:0;left:0;right:0;z-index:90;transition:transform .35s ease,background .3s ease,border-color .3s ease;border-bottom:1px solid transparent}.header.scrolled{background:#07070dd1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-color:var(--border)}.header-hidden{transform:translateY(-100%)}.nav{max-width:1200px;margin:0 auto;padding:.75rem clamp(1.25rem,5vw,4rem)}.nav-list{display:flex;align-items:center;gap:clamp(.6rem,1.6vw,1.4rem)}.nav-item{opacity:0;animation:fadeInDown .6s ease forwards}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}.nav-logo{margin-right:.5rem}.nav-logo-mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;background:var(--grad);font-weight:900;font-size:1.05rem;color:#07070d;letter-spacing:.02em;box-shadow:0 0 24px #8b5cf659}.nav-link{font-size:.98rem;font-weight:600;padding:.35rem .15rem;position:relative;transition:color .25s ease}.nav-link span{transition:color .25s ease}.nav-link:hover span{color:transparent;background:var(--grad);-webkit-background-clip:text;background-clip:text}.lang-dropdown{position:relative}.lang-trigger{display:flex;align-items:center;gap:.35rem;border:1px solid var(--border);border-radius:999px;padding:.35rem .7rem;transition:border-color .25s ease,background .25s ease}.lang-trigger:hover{border-color:var(--border-hover);background:var(--surface)}.lang-current{display:flex;align-items:center;gap:.4rem}.lang-code{font-weight:700;font-size:.85rem}.lang-caret{opacity:.7}.lang-menu{position:absolute;top:calc(100% + .6rem);right:0;min-width:190px;background:#10101c;border:1px solid var(--border);border-radius:14px;padding:.4rem;box-shadow:0 18px 40px #00000080;animation:fadeInDown .25s ease}.lang-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .7rem;border-radius:10px;font-size:.92rem;font-weight:600;transition:background .2s ease}.lang-item:hover{background:var(--surface-hover)}.lang-item.active{color:#a78bfa}.nav-toggle{display:none;position:fixed;top:.9rem;right:1.1rem;z-index:120;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;border-radius:12px;background:#10101ce6;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .3s ease}.nav-toggle-bar{display:block;width:20px;height:2px;border-radius:2px;background:#fff;transition:transform .3s ease,opacity .3s ease}.nav-toggle.open .nav-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open .nav-toggle-bar:nth-child(2){opacity:0}.nav-toggle.open .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:95;opacity:0;pointer-events:none;transition:opacity .3s ease}.nav-overlay.visible{opacity:1;pointer-events:auto}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2rem;background:#07070df7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity .35s ease}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu ul{display:flex;flex-direction:column;align-items:center;gap:.4rem}.mobile-menu li{opacity:0;transform:translateY(16px);transition:opacity .4s ease,transform .4s ease}.mobile-menu.open li{opacity:1;transform:none}.mobile-menu a{display:block;padding:.5rem 1rem;font-size:1.5rem;font-weight:800}.mobile-langs{display:flex;gap:.6rem}.mobile-langs .lang-item{width:auto;border:1px solid var(--border)}.mobile-langs .lang-item.active{border-color:#a78bfa99}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:6rem;overflow:hidden;isolation:isolate}.hero-aurora{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(600px circle at 18% 28%,rgba(96,165,250,.22),transparent 60%),radial-gradient(700px circle at 82% 18%,rgba(244,114,182,.16),transparent 60%),radial-gradient(620px circle at 55% 82%,rgba(52,211,153,.12),transparent 60%),radial-gradient(500px circle at 70% 60%,rgba(167,139,250,.16),transparent 65%);filter:blur(18px);animation:aurora 14s ease-in-out infinite alternate}@keyframes aurora{0%{opacity:.75;transform:scale(1)}50%{opacity:1}to{opacity:.8;transform:scale(1.08)}}.hero-content{text-align:center;padding:0 1.25rem;animation:fadeInUp .9s ease both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.hero-intro{font-size:clamp(1.1rem,2.5vw,1.35rem);color:var(--text-dim);margin-bottom:.3rem}.hero-name{font-size:clamp(3rem,8.5vw,5.6rem);font-weight:900;line-height:1.05;letter-spacing:-.01em;animation:shimmer 8s linear infinite;background-size:200% auto}@keyframes shimmer{to{background-position:200% center}}.hero-role{font-size:clamp(1.4rem,3.6vw,2.1rem);font-weight:600;color:var(--text);margin-top:.5rem;letter-spacing:.04em}.hero-tagline{margin:1.1rem auto 0;max-width:560px;color:var(--text-dim);font-size:clamp(1rem,2vw,1.12rem)}.hero-actions{display:flex;gap:1rem;justify-content:center;margin-top:2.2rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:700;font-size:1rem;padding:.85rem 2rem;border-radius:999px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}.btn-primary{background:var(--grad);color:#07070d;box-shadow:0 10px 30px #8b5cf659}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 16px 40px #8b5cf680}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text)}.btn-secondary:hover{transform:translateY(-3px);border-color:var(--border-hover);background:var(--surface-hover)}.hero-social{display:flex;justify-content:center;gap:1.4rem;margin-top:2.4rem}.hero-social a{opacity:.85;transition:transform .25s ease,opacity .25s ease}.hero-social a:hover{transform:translateY(-4px) scale(1.05);opacity:1}.hero-marquee{width:100%;margin-top:3.6rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.hero-marquee-track{display:flex;gap:2.6rem;width:max-content;animation:marquee 32s linear infinite}.hero-marquee-track img{width:34px;height:34px;opacity:.6;transition:opacity .25s ease,transform .25s ease}.hero-marquee-track img:hover{opacity:1;transform:scale(1.2)}@keyframes marquee{to{transform:translate(-50%)}}.hero-scroll{position:absolute;bottom:1.4rem;left:50%;transform:translate(-50%);animation:bounce 2.2s ease-in-out infinite;z-index:5}@keyframes bounce{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,9px)}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:2.2rem}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-6px);border-color:var(--border-hover);box-shadow:0 24px 50px #00000073}.project-media{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#0d0d18}.carousel{position:absolute;top:0;right:0;bottom:0;left:0}.carousel-track{display:flex;height:100%;transition:transform .55s cubic-bezier(.65,0,.35,1)}.carousel-track img{min-width:100%;width:100%;height:100%;object-fit:cover}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#07070da6;border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .25s ease}.carousel:hover .carousel-btn{opacity:1}.carousel-btn:disabled{opacity:.25;cursor:default}.carousel-btn.left{left:.8rem}.carousel-btn.right{right:.8rem}.carousel-dots{position:absolute;bottom:.7rem;left:50%;transform:translate(-50%);display:flex;gap:.45rem}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#ffffff59;transition:background .25s ease,transform .25s ease}.carousel-dot.active{background:#fff;transform:scale(1.25)}.project-body{padding:1.6rem 1.6rem 1.7rem;display:flex;flex-direction:column;gap:.8rem;flex:1}.project-name{font-size:1.45rem;font-weight:800}.project-description{color:var(--text-dim);font-size:.97rem;flex:1}.chip-list{display:flex;flex-wrap:wrap;gap:.5rem}.chip{font-size:.82rem;font-weight:600;color:var(--text-dim);border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:.3rem .8rem;transition:border-color .25s ease,color .25s ease}.chip:hover{border-color:#a78bfa80;color:#c4b5fd}.project-links{display:flex;gap:1.4rem;flex-wrap:wrap}.project-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.95rem;color:#a78bfa;transition:color .25s ease,gap .25s ease}.project-link:hover{color:#60a5fa;gap:.6rem}.timeline{max-width:760px;margin:0 auto;position:relative;padding-left:2.2rem}.timeline:before{content:"";position:absolute;left:14px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,rgba(96,165,250,.5),rgba(244,114,182,.4),transparent)}.timeline-item{position:relative;padding-bottom:2.8rem}.timeline-marker{position:absolute;left:-2.2rem;top:0}.timeline-marker-logo{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--grad);box-shadow:0 0 18px #8b5cf680}.timeline-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.7rem;transition:border-color .3s ease,transform .3s ease}.timeline-content:hover{border-color:var(--border-hover);transform:translate(4px)}.timeline-content h3{font-size:1.25rem;font-weight:800}.timeline-meta{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:.4rem 0 .9rem}.timeline-company{font-weight:700;color:#a78bfa}.timeline-period{font-size:.85rem;font-weight:600;color:var(--text-faint);border:1px solid var(--border);padding:.15rem .7rem;border-radius:999px}.timeline-content p{color:var(--text-dim);font-size:.97rem;margin-bottom:1rem}.tech-filters{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap;margin-bottom:2.6rem}.tech-filter{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border);border-radius:999px;padding:.5rem 1.1rem;font-weight:600;font-size:.9rem;color:var(--text-dim);transition:border-color .25s ease,color .25s ease,background .25s ease}.tech-filter:hover{border-color:var(--border-hover);color:var(--text)}.tech-filter.active{border-color:transparent;color:#07070d;background:var(--grad);font-weight:800}.tech-filter-count{font-size:.75rem;background:#ffffff1a;border-radius:999px;padding:.05rem .5rem;color:inherit}.tech-filter:not(.active) .tech-filter-count{color:var(--text-faint)}.tech-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.tech-tile{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1.3rem .8rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);font-size:.88rem;font-weight:600;text-align:center;transition:transform .25s ease,border-color .25s ease,background .25s ease}.tech-tile:hover{transform:translateY(-4px);border-color:var(--border-hover);background:var(--surface-hover)}.tech-tile img{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(139,92,246,.25))}.about-layout{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:3rem;align-items:start}.about-photo-placeholder{aspect-ratio:4 / 5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;border:1px dashed rgba(255,255,255,.25);border-radius:var(--radius);background:radial-gradient(300px circle at 30% 20%,rgba(96,165,250,.15),transparent 60%),radial-gradient(300px circle at 75% 80%,rgba(244,114,182,.12),transparent 60%),var(--surface)}.about-photo-initials{font-size:4.6rem;font-weight:900;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.about-photo-caption{color:var(--text-faint);font-size:.9rem;font-weight:600}.about-text p{color:var(--text-dim);font-size:1.02rem;margin-bottom:1rem}.about-stats{display:flex;gap:2.5rem;margin:2rem 0;flex-wrap:wrap}.about-stat{display:flex;flex-direction:column}.about-stat-number{font-size:2.4rem;font-weight:900;line-height:1.1}.about-stat-label{color:var(--text-faint);font-size:.9rem;font-weight:600;margin-top:.2rem}.about-languages-title{font-size:1.1rem;font-weight:800;margin-bottom:1rem}.about-languages{display:flex;flex-direction:column;gap:.9rem;max-width:420px}.about-languages li{display:grid;grid-template-columns:1fr auto;gap:.4rem 1rem;align-items:center}.about-lang-name{display:flex;align-items:center;gap:.55rem;font-weight:700;font-size:.98rem}.about-lang-level{color:var(--text-faint);font-size:.85rem;font-weight:600}.about-lang-bar{grid-column:1 / -1;height:5px;border-radius:999px;background:#ffffff14;overflow:hidden}.about-lang-bar-fill{display:block;height:100%;border-radius:999px;background:var(--grad)}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:start}.contact-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.form-field{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.2rem;flex:1}.form-field span{font-size:.88rem;font-weight:700;color:var(--text-dim)}.form-field input,.form-field textarea{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:.8rem 1rem;color:var(--text);font-family:inherit;font-size:.98rem;resize:vertical;transition:border-color .25s ease,box-shadow .25s ease}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:#a78bfa99;box-shadow:0 0 0 3px #8b5cf626}.form-submit{width:100%;margin-top:.4rem}.form-hint{text-align:center;color:var(--text-faint);font-size:.8rem;margin-top:1rem}.contact-cards{display:flex;flex-direction:column;gap:1rem}.contact-card{display:flex;align-items:center;gap:1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.3rem 1.4rem;transition:transform .25s ease,border-color .25s ease}.contact-card:hover{transform:translate(5px);border-color:var(--border-hover)}.contact-card-icon{flex-shrink:0;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#8b5cf624;border:1px solid rgba(139,92,246,.3);font-weight:900;color:#a78bfa}.contact-card-icon img{width:24px;height:24px}.contact-card>div:last-child{display:flex;flex-direction:column;min-width:0}.contact-card-label{font-size:.82rem;font-weight:700;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.contact-card-value{font-weight:700;overflow-wrap:anywhere}.footer{border-top:1px solid var(--border);padding:2.4rem 1.5rem;text-align:center;color:var(--text-faint);font-size:.92rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.footer-developed{display:flex;align-items:center;gap:.4rem}.footer-developed img{width:18px;height:18px}@media(max-width:960px){.about-layout{grid-template-columns:1fr}.about-photo{max-width:340px;margin:0 auto}.contact-layout{grid-template-columns:1fr}}@media(max-width:820px){.nav-list .nav-item:not(:first-child):not(:last-child){display:none}.nav-toggle{display:flex}.nav-list{justify-content:space-between}.hero-scroll{display:none}.projects-grid,.form-row{grid-template-columns:1fr}}
