:root{--bg:#020617;--bg-soft:#0b1120;--text:#f8fafc;--text-muted:#cbd5e1;--primary:#22c55e;--primary-soft:#16a34a;--border:#22c55e29;--card-bg:#0f172abf;--glow:0 0 20px #22c55e59, 0 0 40px #22c55e26}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{color:var(--text);background:linear-gradient(#ffffff04 1px, transparent 1px), linear-gradient(90deg, #ffffff04 1px, transparent 1px),  var(--bg);background-size:40px 40px,40px 40px,auto,auto,auto;margin:0;font-family:Inter,sans-serif;overflow-x:hidden}main{padding-top:80px}section{z-index:1;max-width:1100px;margin:0 auto;padding:7rem 3rem;scroll-margin-top:90px;position:relative}h1,h2,h3,p{margin-top:0}section h2{margin-bottom:3rem;font-size:2.5rem}.reveal{opacity:0;transition:opacity .45s,transform .45s;transition-delay:var(--reveal-delay,0s);transform:translateY(24px)}.reveal.active{opacity:1;transform:translateY(0)}section:not(.hero){content-visibility:auto;contain-intrinsic-size:900px}p{color:var(--text-muted);line-height:1.7}button,a{-webkit-tap-highlight-color:transparent;outline:none}button:focus-visible,a:focus-visible{outline-offset:4px;border-radius:12px;outline:2px solid #22c55e73}.scroll-progress{z-index:9999;background:linear-gradient(90deg, var(--primary), #86efac, var(--primary-soft));width:0;height:3px;transition:width 80ms linear;position:fixed;top:0;left:0;box-shadow:0 0 18px #22c55eb3}.cursor-glow{z-index:20;pointer-events:none;filter:blur(14px);opacity:.9;mix-blend-mode:screen;will-change:transform;background:radial-gradient(circle,#43e17d3d,#22c55e1a 35%,#0000 70%);border-radius:999px;width:260px;height:260px;position:fixed}.gradient-orbs{z-index:0;opacity:.9;pointer-events:none;mix-blend-mode:screen;position:fixed;inset:0;overflow:hidden}.orb{filter:blur(85px);opacity:.72;will-change:transform;border-radius:999px;width:760px;height:760px;position:absolute}.orb-1{background:radial-gradient(circle,#22c55eb3,#22c55e47 42%,#0000 70%);animation:16s ease-in-out infinite alternate orbDriftLeft;top:-240px;left:-260px}.orb-2{background:radial-gradient(circle,#2563eb8c,#0ea5e933 42%,#0000 72%);animation:18s ease-in-out infinite alternate orbDriftRight;top:-180px;right:-280px}.orb-3{display:none}.btn{border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.85rem 1.25rem;font-weight:700;text-decoration:none;transition:transform 2s cubic-bezier(.22,1,.36,1),box-shadow 2s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),color .4s cubic-bezier(.22,1,.36,1),background .45s cubic-bezier(.22,1,.36,1);display:inline-flex}.btn-primary{color:#020617;background:linear-gradient(135deg, var(--primary), var(--primary-soft));box-shadow:0 0 30px #22c55e40}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 0 45px #22c55e66}.btn-secondary{color:var(--text);background:#0f172abf;border:1px solid #22c55e40}.btn-secondary:hover{color:var(--primary);border-color:#22c55e80;transform:translateY(-3px)}.navbar{z-index:1000;-webkit-backdrop-filter:blur(16px);background:#02061773;border:1px solid #22c55e1f;border-radius:999px;justify-content:space-between;align-items:center;width:min(1120px,100% - 32px);height:72px;padding:0 1.25rem;transition:top .25s,background .4s cubic-bezier(.22,1,.36,1),border-color .4s cubic-bezier(.22,1,.36,1),box-shadow .25s;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.navbar--scrolled{background:#020617c7;border-color:#22c55e38;top:10px;box-shadow:0 18px 50px #00000059,0 0 35px #22c55e14}.navbar-logo{border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;padding:.35rem;text-decoration:none;transition:transform .4s cubic-bezier(.22,1,.36,1),background .4s cubic-bezier(.22,1,.36,1);display:flex}.navbar-logo:hover{background:#22c55e0f;transform:translateY(-2px)}.navbar-logo svg{width:103px;height:auto;transition:transform .4s cubic-bezier(.22,1,.36,1),filter .25s;display:block}.navbar-logo:after{display:none}.navbar-logo:hover svg{filter:drop-shadow(0 0 10px #22c55e73);transform:scale(1.05)}.navbar-nav{align-items:center;display:flex}.navbar-links{align-items:center;gap:.35rem;margin:0;padding:0;list-style:none;transition:color .35s cubic-bezier(.22,1,.36,1),background .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1);display:flex}.navbar-links a{color:var(--text-muted);border-radius:999px;align-items:center;padding:.7rem .95rem;font-size:.92rem;font-weight:500;text-decoration:none;transition:color .2s,background .2s;display:inline-flex;position:relative}.navbar-links a:hover{color:var(--text);background:#22c55e14}.navbar-links a:after{content:"";transform-origin:50%;background:linear-gradient(90deg, transparent, var(--primary), transparent);opacity:0;border-radius:999px;width:60%;height:2px;transition:opacity .25s,transform .4s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-.45rem;left:50%;transform:translate(-50%)scaleX(0);box-shadow:0 0 14px #22c55eb3}.navbar-links a:hover:after{transform:translate(-50%)scaleX(1)}.nav-link.active{color:var(--primary)}.nav-link.active:after{opacity:1;transform:translate(-50%)scaleX(1)}.navbar-toggle{cursor:pointer;background:#0f172ab3;border:1px solid #22c55e2e;border-radius:999px;width:44px;height:44px;display:none}.navbar-toggle span{background:var(--text);border-radius:999px;width:18px;height:2px;margin:4px auto;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .25s;display:block}.navbar-toggle--open span:first-child{transform:translateY(6px)rotate(45deg)}.navbar-toggle--open span:nth-child(2){opacity:0}.navbar-toggle--open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.hero{isolation:isolate;flex-direction:column;justify-content:center;min-height:100vh;display:flex;position:relative}.hero-badge{color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a8c;border:1px solid #22c55e29;border-radius:999px;align-items:center;gap:.7rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.92rem;font-weight:600;display:inline-flex;box-shadow:0 0 30px #22c55e14,inset 0 0 0 1px #ffffff05}.hero-gradient-text{color:#0000;-webkit-text-fill-color:transparent;text-shadow:0 0 25px #22c55e1f;background:linear-gradient(135deg,#fff 0%,#86efac 40%,#22c55e 100%);-webkit-background-clip:text;background-clip:text}.hero:before{content:"";z-index:0;filter:blur(85px);opacity:.75;pointer-events:none;will-change:transform;background:radial-gradient(circle,#22c55e9e,#22c55e38 38%,#0000 70%);border-radius:999px;width:760px;height:760px;animation:8s ease-in-out infinite alternate heroOrbLeft;position:absolute;top:-180px;left:-260px}.hero-content{z-index:1;max-width:900px;position:relative}.hero h1{margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5rem);line-height:1}.hero h2{color:var(--primary);margin-bottom:1.5rem;font-size:clamp(1.3rem,3vw,2rem)}.hero p{max-width:750px;color:var(--text-muted);line-height:1.8}.hero-buttons{align-items:center;gap:1rem;margin-top:2rem;display:flex}.primary-button,.secondary-button,.cv-button{border-radius:999px;padding:1rem 1.5rem;font-weight:700;text-decoration:none;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1),background .45s cubic-bezier(.22,1,.36,1),color .45s cubic-bezier(.22,1,.36,1)}.primary-button{color:var(--bg);background:var(--primary);box-shadow:var(--glow)}.primary-button:hover{transform:translateY(-3px);box-shadow:0 0 25px #22c55e80,0 0 50px #22c55e33}.secondary-button,.cv-button{color:var(--primary);border:1px solid var(--primary);background:0 0}.secondary-button:hover,.cv-button:hover{color:var(--bg);background:var(--primary);transform:translateY(-3px)}.hero-socials{align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.hero-socials a{color:var(--text);justify-content:center;align-items:center;font-size:2.2rem;text-decoration:none;transition:transform .45s cubic-bezier(.22,1,.36,1),color .45s cubic-bezier(.22,1,.36,1);display:flex}.hero-socials a:not(.cv-button):hover{color:var(--primary);transform:translateY(-3px)}.cv-button{font-size:.9rem!important}.hero-status{color:var(--text-muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a73;border:1px solid #22c55e26;border-radius:999px;align-items:center;gap:.7rem;margin-top:1.5rem;padding:.7rem 1rem;font-size:.95rem;display:inline-flex}.status-dot{background:var(--primary);border-radius:50%;width:10px;height:10px;animation:2s infinite pulse;box-shadow:0 0 10px #22c55ecc,0 0 20px #22c55e66}.hero-stats{grid-template-columns:repeat(4,1fr);gap:1rem;max-width:750px;margin-top:3rem;display:grid}.hero-stat{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a73;border:1px solid #22c55e1f;border-radius:1rem;padding:1.2rem;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1)}.hero-stat:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:0 0 20px #22c55e1f}.hero-stat h3{color:var(--primary);margin-bottom:.4rem;font-size:1.5rem}.hero-stat p{color:var(--text-muted);margin:0;font-size:.9rem}.hero:after{content:"";z-index:0;filter:blur(90px);opacity:.68;pointer-events:none;will-change:transform;background:radial-gradient(circle,#2563eb7a,#0ea5e929 40%,#0000 70%);border-radius:999px;width:820px;height:820px;animation:9s ease-in-out infinite alternate heroOrbRight;position:absolute;top:-130px;right:-280px}.section-header span{color:var(--primary);font-weight:700}.about-content{gap:1.2rem;max-width:850px;display:grid}.about-content p{color:var(--text-muted);font-size:1.05rem;line-height:1.8}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:40px;display:grid}.skill-card{color:var(--text);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a8c;border-radius:1rem;align-items:center;gap:.8rem;padding:1rem 1.2rem;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1);display:flex}.skill-card:hover{border-color:var(--primary);transform:translateY(-8px);box-shadow:0 0 20px #22c55e38,0 10px 30px #0000004d}.skill-card span{color:var(--primary);font-size:1.5rem;display:flex}.skill-card p{margin:0;font-weight:600}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:40px;display:grid}.project-card{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a8c;border-radius:1rem;flex-direction:column;transition:transform .5s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),box-shadow .5s cubic-bezier(.22,1,.36,1);display:flex;position:relative;overflow:hidden}.project-card:before{content:"";pointer-events:none;background:linear-gradient(120deg,#0000,#ffffff14,#0000);width:80%;height:100%;transition:left .9s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:-120%;transform:skew(-20deg)}.project-card:hover:before{left:120%}.project-card:hover{border-color:var(--primary);transform:translateY(-8px);box-shadow:0 0 26px #22c55e3d,0 18px 45px #00000061}.project-image{object-fit:cover;border-bottom:1px solid var(--border);width:100%;height:220px;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .7s cubic-bezier(.22,1,.36,1);display:block}.project-card:hover .project-image{filter:brightness(1.08);transform:scale(1.04)}.project-content{padding:1.5rem}.project-card h3{color:var(--text);margin-bottom:1rem}.project-card p{color:var(--text-muted);line-height:1.7}.project-technologies{flex-wrap:wrap;gap:.6rem;margin:1.5rem 0;padding:0;list-style:none;display:flex}.project-technologies li{color:var(--primary);background:#22c55e1f;border-radius:999px;padding:.4rem .7rem;font-size:.85rem;font-weight:600}.project-links{flex-wrap:wrap;gap:1rem;display:flex}.project-links a{color:var(--text);border:1px solid var(--border);background:#ffffff08;border-radius:.8rem;padding:.7rem 1.2rem;font-weight:600;text-decoration:none;transition:transform .45s cubic-bezier(.22,1,.36,1),background .45s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),color .45s cubic-bezier(.22,1,.36,1)}.project-links a:hover{color:var(--primary);border-color:var(--primary);background:#22c55e1a;transform:translateY(-2px)}.project-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(14px);isolation:isolate;background:#020617db;justify-content:center;align-items:flex-start;padding:8rem 1.5rem 3rem;display:flex;position:fixed;inset:0;overflow-y:auto}.project-modal{z-index:1;background:#0f172afa;border:1px solid #22c55e29;border-radius:28px;width:min(980px,100%);margin:0 auto 3rem;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000073,0 0 40px #22c55e14}.project-modal:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#22c55e24,#0000 30%);position:absolute;inset:0}.project-modal-image{object-fit:cover;border-bottom:1px solid #22c55e1f;width:100%;height:320px}.project-modal-content{padding:2rem}.project-modal-content h3{color:var(--text);margin-bottom:1rem;font-size:2rem}.project-modal-content p{margin-bottom:1.5rem;line-height:1.8}.project-modal-close{width:42px;height:42px;color:var(--text);cursor:pointer;background:#0f172abf;border:1px solid #22c55e29;border-radius:999px;justify-content:center;align-items:center;font-size:1.5rem;transition:background .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;top:1rem;right:1rem}.project-modal-close:hover{background:#22c55e24;transform:rotate(90deg)scale(1.18)}.project-modal::-webkit-scrollbar{width:8px}.project-modal::-webkit-scrollbar-thumb{background:#22c55e47;border-radius:999px}.project-demo-access{background:#0f172a99;border:1px solid #22c55e33;border-radius:1rem;margin-top:1.5rem;padding:1rem}.project-demo-access h4{color:var(--primary);margin-bottom:.75rem}.project-demo-access p{color:var(--text);margin-bottom:.4rem}.project-demo-notice{color:var(--text-muted);margin-top:.8rem;font-size:.9rem;display:block}.project-card-status{width:fit-content;color:var(--primary);background:#22c55e1f;border:1px solid #22c55e47;border-radius:999px;margin-top:.5rem;margin-bottom:.5rem;padding:.35rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}.project-status-badge{color:var(--primary);background:#22c55e1f;border:1px solid #22c55e4d;border-radius:999px;align-items:center;margin-top:.5rem;margin-bottom:.5rem;padding:.45rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.timeline{max-width:1200px;margin:4rem auto 0;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--primary), transparent);width:2px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.timeline-item{width:50%;margin-bottom:2rem;padding:1rem 3rem;position:relative}.timeline-item.left{left:0}.timeline-item.right{left:50%}.timeline-dot{background:var(--primary);width:1rem;height:1rem;box-shadow:0 0 20px var(--primary);border-radius:50%;position:absolute;top:2rem}.timeline-item.left .timeline-dot{right:-.5rem}.timeline-item.right .timeline-dot{left:-.5rem}.timeline-content{border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ab3;border-radius:1.5rem;padding:1.5rem;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1)}.timeline-content:hover{border-color:var(--primary);transform:translateY(-6px);box-shadow:0 10px 30px #22c55e26}.timeline-year{color:var(--primary);letter-spacing:1px;margin-bottom:.75rem;font-size:.9rem;font-weight:700;display:inline-block}.timeline-content h3{margin-bottom:1rem;font-size:1.3rem}.timeline-content p{color:var(--text-muted);line-height:1.7}.cloud-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:3rem;display:grid}.cloud-card{border:1px solid var(--border);background:#0f172ab3;border-radius:1.25rem;padding:1.5rem;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1)}.cloud-card:hover{border-color:var(--primary);transform:translateY(-6px);box-shadow:0 10px 30px #22c55e26}.cloud-card h3{color:var(--text);margin-bottom:.75rem}.cloud-card p{color:var(--text-muted);font-size:.95rem;line-height:1.6}.cloud-card span{color:var(--text);font-weight:600}.contact-section{position:relative}.contact-card{background:linear-gradient(135deg,#22c55e73,#94a3b81f,#22c55e14);border-radius:28px;max-width:900px;margin:0 auto;padding:1px;box-shadow:0 24px 80px #00000059}.contact-content{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 100% 0,#22c55e24,#0000 35%),#0f172ad1;border:1px solid #22c55e24;border-radius:27px;padding:3rem;position:relative;overflow:hidden}.contact-content:before{content:"";opacity:0;background:radial-gradient(circle,#22c55e1f,#0000 45%);transition:opacity .35s;position:absolute;inset:-40%}.contact-card:hover .contact-content:before{opacity:1}.contact-content h3{color:var(--text);margin-bottom:1rem;font-size:clamp(1.6rem,3vw,2.2rem);position:relative}.contact-content p{max-width:680px;color:var(--text-muted);line-height:1.8;position:relative}.contact-actions{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex;position:relative}.contact-actions .btn{align-items:center;gap:.6rem;display:inline-flex}.contact-actions svg{font-size:1.1rem}.footer{background:radial-gradient(circle at top,#22c55e14,#0000 40%),#020617eb;border-top:1px solid #22c55e1f;margin-top:8rem;position:relative;overflow:hidden}.footer-container{grid-template-columns:1.5fr 1fr 1fr;gap:2rem;max-width:1200px;margin:0 auto;padding:3rem 2rem 2.5rem;display:grid}.footer-brand h3{color:var(--text);margin-bottom:1rem;font-size:1.5rem}.footer-brand p{max-width:420px;color:var(--text-muted);max-width:520px;line-height:1.8}.footer p{margin:.3rem 0}.footer a{text-decoration:none}.footer-links{flex-direction:column;gap:.75rem;display:flex}.footer-links a{width:fit-content;color:var(--text-muted);transition:all .25s}.footer-links a:hover{color:var(--primary);transform:translate(4px)}.footer-socials{align-items:flex-start;gap:1rem;display:flex}.footer-socials a{width:44px;height:44px;color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172ab8;border:1px solid #22c55e24;border-radius:14px;justify-content:center;align-items:center;font-size:1.2rem;transition:all .3s;display:flex}.footer-socials a:hover{color:var(--primary);border-color:#22c55e66;transform:translateY(-4px);box-shadow:0 10px 30px #22c55e29}.footer-bottom{text-align:center;border-top:1px solid #22c55e14;padding:1.1rem}.footer-bottom p{color:var(--text-muted);font-size:.9rem}@keyframes orbDriftLeft{0%{transform:translate(0,0)scale(1)}to{transform:translate(160px,120px)scale(1.18)}}@keyframes orbDriftRight{0%{transform:translate(0,0)scale(1.05)}to{transform:translate(-170px,140px)scale(1.22)}}@keyframes heroOrbLeft{0%{transform:translate(0,0)scale(1)}to{transform:translate(220px,150px)scale(1.18)}}@keyframes heroOrbRight{0%{transform:translate(0,0)scale(1.05)}to{transform:translate(-230px,130px)scale(1.2)}}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.25)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.orb-1{animation:16s ease-in-out infinite alternate orbDriftLeft!important}.orb-2{animation:18s ease-in-out infinite alternate orbDriftRight!important}.hero:before{animation:8s ease-in-out infinite alternate heroOrbLeft!important}.hero:after{animation:9s ease-in-out infinite alternate heroOrbRight!important}.reveal,.reveal.active{opacity:1;transform:none}}@media (width<=768px){body{font-size:15px}main{padding-top:76px}section{padding:4rem 1.2rem}section h2{font-size:2rem}.navbar{border-radius:999px;flex-direction:row;justify-content:space-between;gap:.75rem;width:auto;max-width:none;height:58px;min-height:58px;padding:.45rem .55rem .45rem .8rem;top:.75rem;left:.75rem;right:.75rem;overflow:visible;transform:none}.navbar-logo{min-width:0;padding:.2rem}.navbar-logo svg{width:clamp(84px,25vw,96px);max-width:100%}.navbar-toggle{flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;display:flex}.navbar-nav{overscroll-behavior:contain;opacity:0;pointer-events:none;width:100%;max-height:calc(100vh - 110px);transition:opacity .25s,transform .4s cubic-bezier(.22,1,.36,1);position:absolute;top:calc(100% + .75rem);left:0;right:0;overflow-y:auto;transform:translateY(-10px)scale(.98)}.navbar-toggle span{background:var(--text);border-radius:999px;width:18px;height:2px;margin:3px 0;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .25s;display:block}.navbar-nav--open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.navbar-toggle--open span:first-child{transform:translateY(8px)rotate(45deg)}.navbar-toggle--open span:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-toggle--open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.navbar-links{-webkit-backdrop-filter:blur(18px);background:#020617eb;border:1px solid #22c55e29;border-radius:28px;flex-direction:column;align-items:stretch;gap:.45rem;width:100%;max-height:calc(100vh - 120px);padding:.85rem;overflow-y:auto;box-shadow:0 22px 60px #00000073,0 0 40px #22c55e14}.navbar-links li{width:100%}.navbar-links a{z-index:1;width:100%;color:var(--text-muted);text-align:center;border-radius:18px;justify-content:center;padding:.9rem 1rem;font-size:1rem;transition:background .4s cubic-bezier(.22,1,.36,1),color .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1),box-shadow .25s;display:flex;position:relative}@media (width<=420px){.navbar{width:auto;height:54px;min-height:54px;padding:.4rem .45rem .4rem .65rem;left:.5rem;right:.5rem}.navbar-logo svg{width:78px}.navbar-toggle{width:40px;min-width:40px;height:40px}}.navbar-links a:after,.navbar-links .nav-link.active:after{display:none}.navbar-links a:hover,.navbar-links a:active,.navbar-links a:focus-visible{color:var(--text);background:linear-gradient(135deg,#22c55e3d,#22c55e1a);transform:translateY(-2px);box-shadow:inset 0 0 0 1px #22c55e5c,0 0 24px #22c55e2e}.navbar-links .nav-link.active{color:var(--primary);background:#22c55e24;box-shadow:inset 0 0 0 1px #22c55e52,0 0 20px #22c55e1f}.hero{text-align:center;min-height:90vh}.gradient-orbs{display:none}.hero:before,.hero:after{filter:blur(42px);opacity:.5;width:520px;height:520px;animation:none}.hero:before{top:-130px;left:-260px}.hero:after{top:-90px;right:-290px}.hero h1{font-size:clamp(2.5rem,12vw,4rem)}.hero p{max-width:100%}.hero-content{width:100%;max-width:100%;overflow:hidden}.hero h1,.hero h2,.hero p{overflow-wrap:break-word;word-break:break-word}.hero-buttons,.hero-socials{flex-wrap:wrap;justify-content:center}.primary-button,.secondary-button,.cv-button{width:100%}.hero-status{justify-content:center;width:100%}.hero-stats{grid-template-columns:repeat(2,1fr)}.projects-grid,.skills-grid{grid-template-columns:1fr}.timeline:before{left:1rem}.timeline-item{width:100%;padding-left:3rem;padding-right:1rem;left:0!important}.timeline-dot{left:.5rem!important}.contact-content{padding:2rem}.contact-actions{flex-direction:column}.contact-actions .btn{justify-content:center;width:100%}.orb{filter:blur(10px);opacity:.12;width:220px;height:220px}body,html{overflow-x:hidden}.project-modal-overlay{z-index:99999;-webkit-backdrop-filter:blur(18px);background:#020617f5;padding:6.5rem 1rem 2rem}.project-modal{background:#0f172afc;border-radius:24px;width:100%;margin-bottom:2rem}.project-modal-image{object-fit:cover;height:220px;max-height:220px}.project-modal-content{padding:1.5rem}.project-modal-content h3{font-size:1.8rem}.project-demo-access{padding:1rem}.project-modal-close{z-index:10;top:1rem;right:1rem}.footer-container{text-align:center;grid-template-columns:1fr}.footer-brand p{margin:0 auto}.footer-links{flex-wrap:wrap;align-items:center}.project-links a{justify-content:center;width:100%}.footer-socials{justify-content:center}}@media (width<=480px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.navbar{max-width:calc(100vw - 1.5rem);top:.75rem;left:.75rem;right:.75rem}.navbar-logo svg{width:86px}.navbar-nav{max-height:calc(100vh - 95px)}.navbar-links{gap:.35rem;max-height:calc(100vh - 105px);padding:.7rem}.navbar-links a{padding:.8rem 1rem;font-size:.95rem}.hero,.hero-content,section,.navbar{width:100%;max-width:100%;overflow-x:hidden}.hero{padding-inline:1rem}.hero-content{text-align:center;align-items:center}.hero-badge,.hero-status{white-space:normal;text-align:center;justify-content:center;max-width:100%;line-height:1.4}.hero h1{max-width:100%;font-size:clamp(3rem,14vw,4rem);line-height:1}.hero h2{max-width:100%;font-size:clamp(1.35rem,7vw,2rem);line-height:1.15}.hero p{max-width:100%;font-size:1rem;line-height:1.7}.hero-buttons,.hero-socials{flex-direction:column;align-items:stretch;width:100%;max-width:100%}.hero-buttons a,.primary-button,.secondary-button,.cv-button{justify-content:center;width:100%;max-width:100%}}@media (width<=768px){.navbar{z-index:10000;overflow:visible!important}.navbar-nav{z-index:10001;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 110px);overflow:hidden auto}.navbar-links{max-height:calc(100vh - 120px);overflow:hidden auto}}@media (width<=480px){.navbar{width:auto;max-width:none;left:.75rem;right:.75rem;overflow:visible!important}.navbar-nav{max-height:calc(100vh - 95px)}.navbar-links{max-height:calc(100vh - 105px)}}
