:root{--clr-bg: #0a0a0c;--clr-bg-alt: #131316;--clr-surface: rgba(255, 255, 255, .03);--clr-surface-hover: rgba(255, 255, 255, .08);--clr-border: rgba(255, 255, 255, .08);--clr-primary: #60a5fa;--clr-primary-hover: #3b82f6;--clr-secondary: #a78bfa;--clr-accent: #06b6d4;--clr-text: #f3f4f6;--clr-text-muted: #9ca3af;--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--container-max-width: 1200px;--section-padding: 6rem 2rem;--transition: all .3s ease;--glass-blur: blur(12px);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--clr-bg);color:var(--clr-text);line-height:1.6;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}h1,h2,h3,h4,.logo{font-family:var(--font-heading);font-weight:700;line-height:1.2}a{color:var(--clr-text);text-decoration:none;transition:var(--transition)}ul{list-style:none}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 2rem}.section{padding:var(--section-padding)}.bg-alt{background-color:var(--clr-bg-alt)}.section-title{font-size:2.5rem;margin-bottom:3rem;text-align:center}.section-title span{color:var(--clr-primary)}.btn{display:inline-block;padding:.75rem 1.75rem;border-radius:50px;font-weight:600;font-size:1rem;cursor:pointer;transition:var(--transition);text-align:center}.btn-primary{background:linear-gradient(135deg,var(--clr-primary),var(--clr-secondary));color:#fff;border:none;box-shadow:0 4px 15px #3b82f64d}.btn-primary:hover{box-shadow:0 6px 20px #3b82f680;transform:translateY(-2px);color:#fff}.btn-secondary{background:transparent;color:var(--clr-text);border:1px solid var(--clr-border);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.btn-secondary:hover{background:var(--clr-surface-hover);border-color:var(--clr-primary);transform:translateY(-2px)}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:1.25rem 0;transition:var(--transition);background:transparent}.navbar.scrolled{background:#0a0a0cd9;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--clr-border);padding:1rem 0}.nav-container{max-width:var(--container-max-width);margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:800;letter-spacing:1px}.logo span{color:var(--clr-primary)}.nav-links{display:flex;align-items:center;gap:2.5rem}.nav-links a{font-size:.95rem;font-weight:500;color:var(--clr-text-muted);position:relative;padding:.25rem 0}.nav-links a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(to right,var(--clr-primary),var(--clr-secondary));transition:width .3s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px var(--clr-primary)}.nav-links a:hover{color:var(--clr-text)}.nav-links a:hover:after{width:100%}.nav-links a.btn{color:#fff;padding:.5rem 1.25rem;font-size:.9rem}.nav-links li:last-child{margin-left:.75rem}.hamburger{display:none;cursor:pointer}.hamburger .bar{display:block;width:25px;height:3px;margin:5px auto;transition:all .3s ease-in-out;background-color:var(--clr-text)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding-top:80px;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:.4;animation:drift 15s infinite alternate ease-in-out}.glow-1{top:-10%;left:10%;width:40vw;height:40vw;background:var(--clr-primary)}.glow-2{bottom:10%;right:5%;width:35vw;height:35vw;background:var(--clr-secondary);animation-delay:-5s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(10%,10%) scale(1.1)}}.hero-content{text-align:center;position:relative;z-index:1;max-width:800px}.greeting{font-family:var(--font-heading);color:var(--clr-primary);font-size:1.25rem;font-weight:600;margin-bottom:.5rem;letter-spacing:2px;text-transform:uppercase}.title{font-size:clamp(3rem,8vw,5.5rem);margin-bottom:1rem;background:linear-gradient(135deg,#ffffff 30%,var(--clr-primary) 70%,var(--clr-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{font-size:clamp(1.5rem,4vw,2.5rem);color:var(--clr-text-muted);font-weight:400;margin-bottom:2rem}.highlight{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.description{font-size:1.125rem;color:var(--clr-text-muted);max-width:600px;margin:0 auto 3rem}.hero-actions{display:flex;gap:1.5rem;justify-content:center}.scroll-indicator{position:absolute;bottom:40px;left:50%;transform:translate(-50%);animation:bounce 2s infinite}.mouse{width:30px;height:50px;border:2px solid var(--clr-text-muted);border-radius:20px;position:relative}.wheel{width:4px;height:8px;background:var(--clr-text-muted);border-radius:2px;position:absolute;top:8px;left:50%;transform:translate(-50%);animation:scroll 2s infinite}@keyframes scroll{0%{top:8px;opacity:1}to{top:24px;opacity:0}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0) translate(-50%)}40%{transform:translateY(-15px) translate(-50%)}60%{transform:translateY(-7px) translate(-50%)}}footer{padding:3rem 0;border-top:1px solid var(--clr-border);text-align:center}.footer-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.footer-logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:700}.footer-logo span{color:var(--clr-primary)}.social-links a{color:var(--clr-text-muted);font-size:1.1rem}.social-links a:hover{color:var(--clr-primary)}footer p{color:var(--clr-text-muted);font-size:.9rem}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.about-text p{color:var(--clr-text-muted);margin-bottom:1.5rem;font-size:1.1rem}.about-text strong{color:var(--clr-text)}.about-skills h3{margin-bottom:1.5rem;font-size:1.5rem;color:var(--clr-primary)}.skills-grid{display:flex;flex-wrap:wrap;gap:1rem}.skill-tag{background:var(--clr-surface);border:1px solid var(--clr-border);padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;color:var(--clr-text);transition:var(--transition)}.skill-tag:hover{background:var(--clr-surface-hover);border-color:var(--clr-primary);transform:translateY(-2px);box-shadow:0 4px 10px #3b82f633}.timeline{position:relative;max-width:800px;margin:0 auto 3rem}.timeline:after{content:"";position:absolute;width:2px;background:var(--clr-border);top:0;bottom:0;left:20px;margin-left:-1px}.timeline-item{position:relative;padding-left:60px;margin-bottom:3rem}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;width:16px;height:16px;left:12px;top:5px;background:var(--clr-primary);border:3px solid var(--clr-bg-alt);border-radius:50%;z-index:1;box-shadow:0 0 10px var(--clr-primary)}.timeline-content{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:1.5rem;transition:var(--transition)}.timeline-content:hover{border-color:#60a5fa4d;background:var(--clr-surface-hover);transform:translateY(-3px);box-shadow:0 10px 30px #60a5fa1a}.timeline-header{display:flex;flex-direction:column;margin-bottom:.5rem}.timeline-header h3{font-size:1.3rem;color:var(--clr-text)}.timeline-company{color:var(--clr-primary);font-weight:500;font-size:1.1rem}.timeline-date{display:inline-block;color:var(--clr-text-muted);font-size:.9rem;margin-bottom:1rem;background:#ffffff0d;padding:.2rem .6rem;border-radius:var(--radius-sm)}.timeline-details{padding-left:1.2rem;color:var(--clr-text-muted);font-size:.95rem;line-height:1.8}.timeline-details li{margin-bottom:.5rem;list-style-type:disc}.timeline-details li:last-child{margin-bottom:0}.certifications{max-width:800px;margin:0 auto}.certifications h3{font-size:1.8rem;text-align:center;margin-bottom:2rem;color:var(--clr-text)}.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.cert-card{background:var(--clr-surface);border:1px solid var(--clr-border);padding:1.5rem;border-radius:var(--radius-md);text-align:center;transition:var(--transition)}.cert-card:hover{border-color:var(--clr-secondary);background:var(--clr-surface-hover);transform:translateY(-3px)}.cert-card h4{font-size:1.1rem;margin-bottom:.5rem;color:var(--clr-text)}.cert-card p{color:var(--clr-secondary);font-weight:500;font-size:.9rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:3rem}.project-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:2rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;height:100%}.project-card:hover{border-color:#60a5fa80;box-shadow:0 0 30px #60a5fa26;transform:translateY(-5px)}.project-card:hover .project-icon{color:var(--clr-primary)}.project-content{display:flex;flex-direction:column;height:100%;justify-content:space-between}.project-header{margin-bottom:2rem}.project-links{margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.project-icon{color:var(--clr-text-muted);transition:var(--transition)}.project-title{font-size:1.4rem;color:var(--clr-text);margin-bottom:1rem}.project-description{color:var(--clr-text-muted);font-size:.95rem;line-height:1.6}.project-tech-list{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:auto}.project-tech-list li{font-size:.75rem;color:var(--clr-secondary);background:#a78bfa14;border:1px solid rgba(167,139,250,.2);padding:.25rem .65rem;border-radius:20px;font-weight:500;font-family:var(--font-body)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:900px;margin:0 auto}.contact-info h3{font-size:2rem;margin-bottom:1.5rem;color:var(--clr-text)}.contact-info p{color:var(--clr-text-muted);margin-bottom:2rem;font-size:1.1rem}.contact-details{display:flex;flex-direction:column;gap:1rem}.contact-item{display:flex;align-items:center;gap:1rem;color:var(--clr-text);font-weight:500;padding:1rem;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-sm)}.contact-item:hover{border-color:var(--clr-primary);background:var(--clr-surface-hover);color:var(--clr-primary)}.contact-form{background:var(--clr-surface);padding:2.5rem;border-radius:var(--radius-lg);border:1px solid var(--clr-border);box-shadow:0 10px 30px #0003}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--clr-text);font-size:.9rem;font-weight:500}.form-group input,.form-group textarea{width:100%;padding:.8rem 1rem;background:#0003;border:1px solid var(--clr-border);border-radius:var(--radius-sm);color:var(--clr-text);font-family:var(--font-body);font-size:1rem;transition:var(--transition)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--clr-primary);background:#0006;box-shadow:0 0 0 2px #3b82f633}.form-group textarea{resize:vertical;min-height:120px}.contact-form .btn{width:100%;margin-top:1rem}@media(max-width:768px){.about-content{grid-template-columns:1fr;gap:2rem}.nav-links{position:fixed;right:-100%;top:0;flex-direction:column;background:#0a0a0cfa;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);width:100%;height:100vh;justify-content:center;transition:.3s;border-left:1px solid var(--clr-border);padding:2rem}.nav-links.active{right:0}.nav-links li{margin:1rem 0}.hamburger{display:block;z-index:1001}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.active .bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero-actions{flex-direction:column;gap:1rem}.contact-content{grid-template-columns:1fr;gap:2rem}}
