*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #fafaf9;--bg-secondary: #f5f5f4;--bg-tertiary: #e7e5e4;--bg-hover: #e7e5e4;--text-primary: #1c1917;--text-secondary: #57534e;--text-muted: #a8a29e;--accent-primary: #3b82f6;--accent-secondary: #8b5cf6;--accent-hover: #2563eb;--accent-gradient: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--accent-gradient-hover: linear-gradient(135deg, #2563eb 0%, #7c3aed 100%);--border-color: #e2e8f0;--border-hover: #cbd5e1;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .03);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .08), 0 1px 2px -1px rgba(0, 0, 0, .08);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -2px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .08);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 8px 10px -6px rgba(0, 0, 0, .08);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .12);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Monaco", "Menlo", monospace;--container-max-width: 1200px;--section-padding: 5rem 0;--nav-height: 70px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.68, -.55, .265, 1.55)}[data-theme=dark]{--bg-primary: #0a0e1a;--bg-secondary: #131827;--bg-tertiary: #1e2538;--bg-hover: #2a3347;--text-primary: #f1f5f9;--text-secondary: #e2e8f0;--text-muted: #94a3b8;--accent-primary: #60a5fa;--accent-secondary: #a78bfa;--accent-hover: #93c5fd;--accent-gradient: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);--accent-gradient-hover: linear-gradient(135deg, #93c5fd 0%, #c4b5fd 100%);--border-color: #1e3a5f;--border-hover: #2563eb;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .5), 0 1px 2px -1px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .6), 0 4px 6px -4px rgba(59, 130, 246, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6), 0 8px 10px -6px rgba(59, 130, 246, .15);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .7), 0 0 30px -10px rgba(59, 130, 246, .2)}html{scroll-behavior:smooth}body{font-family:var(--font-primary);line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-normal),color var(--transition-normal)}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 1rem}.social-sidebar{position:fixed;left:2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.75rem;background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:2px solid rgba(59,130,246,.3);z-index:50;transition:all var(--transition-normal);animation:slideInFromLeft .6s ease-out .3s both}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-100px) translateY(-50%)}to{opacity:1;transform:translate(0) translateY(-50%)}}[data-theme=dark] .social-sidebar{background:#f8fafcf2;border:2px solid rgba(59,130,246,.4)}.social-sidebar-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:#f8fafc;text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);background:transparent;position:relative}[data-theme=dark] .social-sidebar-link{color:#0f172a}.social-sidebar-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md);background:var(--accent-gradient);opacity:0;transition:opacity var(--transition-fast)}.social-sidebar-link:hover:before{opacity:.15}.social-sidebar-link:hover{transform:scale(1.15);color:var(--accent-primary);box-shadow:0 0 20px #3b82f666}[data-theme=dark] .social-sidebar-link:hover{color:var(--accent-primary)}.social-sidebar-link svg{width:20px;height:20px;position:relative;z-index:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.navbar{position:fixed;top:0;width:100%;background-color:#fafaf9f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);z-index:1000;transition:all var(--transition-normal);animation:slideDown .5s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}[data-theme=dark] .navbar{background-color:#0f172af2}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:0 1rem;height:var(--nav-height);max-width:var(--container-max-width);margin:0 auto}.nav-logo{font-family:var(--font-mono);font-weight:600;font-size:1.5rem}.logo-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-menu{display:flex;list-style:none;gap:2rem}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:all var(--transition-fast);position:relative;padding:.5rem 0}.nav-link:hover,.nav-link.active{color:var(--accent-primary)}.nav-link:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:2px;background:var(--accent-gradient);transition:width var(--transition-normal);border-radius:var(--radius-full)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link:active{transform:scale(.95)}.nav-actions{display:flex;align-items:center;gap:1rem}.theme-toggle{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all var(--transition-fast)}.theme-toggle:hover{background-color:var(--bg-hover);transform:scale(1.05)}.hamburger{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;gap:.25rem}.hamburger span{width:25px;height:2px;background-color:var(--text-primary);transition:var(--transition-fast)}.hero{min-height:100vh;display:flex;align-items:center;padding:var(--nav-height) 0 0;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);animation:fadeIn .8s ease-out;position:relative}[data-theme=dark] .hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 50%,rgba(59,130,246,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.08) 0%,transparent 50%);pointer-events:none;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-title{font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.5rem;color:var(--text-secondary);margin-bottom:1.5rem;font-family:var(--font-mono)}.typing-text{color:var(--accent-primary)}.cursor{animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-description{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem;max-width:600px}.hero-stats{display:flex;gap:2rem;margin-bottom:2rem}.stat{text-align:center;padding:1rem;border-radius:var(--radius-lg);transition:all var(--transition-normal);cursor:default}.stat:hover{background:var(--bg-secondary);transform:translateY(-5px);box-shadow:var(--shadow-md)}.stat-number{display:block;font-size:2rem;font-weight:700;color:var(--accent-primary);font-family:var(--font-mono);transition:all var(--transition-normal)}.stat:hover .stat-number{transform:scale(1.1);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:.9rem;color:var(--text-muted);transition:color var(--transition-fast)}.stat:hover .stat-label{color:var(--text-secondary)}.hero-actions{display:flex;gap:1rem;margin-bottom:2rem}.hero-visual{display:flex;justify-content:center;align-items:center}.code-block{background:var(--bg-secondary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);max-width:500px;width:100%;border:1px solid var(--border-color);transition:all var(--transition-normal)}.code-block:hover{box-shadow:var(--shadow-2xl);transform:translateY(-2px)}.code-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.code-dots{display:flex;gap:.5rem}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background-color:#ef4444}.dot.yellow{background-color:#eab308}.dot.green{background-color:#22c55e}.code-title{font-family:var(--font-mono);font-size:.9rem;color:var(--text-secondary)}.code-content{padding:1.5rem;font-family:var(--font-mono);font-size:.9rem;line-height:1.6}.code-keyword{color:#8b5cf6}.code-variable{color:#06b6d4}.code-property{color:#f59e0b}.code-string{color:#10b981}[data-theme=dark] .code-keyword{color:#c4b5fd}[data-theme=dark] .code-variable{color:#67e8f9}[data-theme=dark] .code-property{color:#fbbf24}[data-theme=dark] .code-string{color:#6ee7b7}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:500;transition:all var(--transition-normal);border:2px solid transparent;cursor:pointer;font-family:inherit;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width var(--transition-slow),height var(--transition-slow)}.btn:hover:before{width:300px;height:300px}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);background:var(--accent-gradient-hover)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--accent-primary);border-color:var(--accent-primary)}.btn-secondary:hover{background:var(--accent-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary:active{transform:translateY(0)}section{padding:var(--section-padding)}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}.section-subtitle{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.about{background:var(--bg-secondary)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-text p{margin-bottom:1.5rem;color:var(--text-secondary);line-height:1.8}.about-highlights{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.highlight{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border-radius:var(--radius-lg);transition:all var(--transition-normal);cursor:default}.highlight:hover{background:var(--bg-primary);transform:translate(10px);box-shadow:var(--shadow-md)}.highlight-icon{font-size:2rem;flex-shrink:0;transition:all var(--transition-bounce)}.highlight:hover .highlight-icon{transform:scale(1.2) rotate(5deg)}.highlight-text h4{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.highlight-text p{color:var(--text-secondary);margin:0}.about-image{display:flex;justify-content:center;align-items:center}.image-placeholder{width:300px;height:300px;background:var(--bg-tertiary);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-xl);border:4px solid var(--border-color);transition:all var(--transition-normal)}.image-placeholder:hover{transform:scale(1.05);box-shadow:var(--shadow-2xl);border-color:var(--accent-primary)}.profile-icon{font-size:6rem}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.skill-category{background:var(--bg-secondary);padding:2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:all var(--transition-normal);transform-style:preserve-3d}.skill-category:hover{box-shadow:var(--shadow-xl);border-color:var(--border-hover)}[data-theme=dark] .skill-category:hover,[data-theme=dark] .project-card:hover,[data-theme=dark] .blog-card:hover,[data-theme=dark] .timeline-content:hover{box-shadow:var(--shadow-xl),0 0 30px #3b82f626;border-color:#3b82f680}.category-title{font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary)}.skill-item{margin-bottom:1.5rem}.skill-name{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.skill-bar{height:8px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden;position:relative}.skill-progress{height:100%;background:var(--accent-gradient);border-radius:var(--radius-full);transition:width 1s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.skill-progress:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.experience{background:var(--bg-secondary)}.timeline{position:relative;max-width:800px;margin:0 auto}.timeline:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:2px;height:100%;background:var(--border-color)}.timeline-item{position:relative;margin-bottom:4rem;width:50%}.timeline-item:nth-child(2n){margin-left:50%;padding-left:2rem}.timeline-item:nth-child(odd){padding-right:2rem;text-align:right}.timeline-dot{position:absolute;top:0;width:16px;height:16px;background:var(--accent-primary);border-radius:50%;border:4px solid var(--bg-primary);z-index:1;transition:all var(--transition-normal);box-shadow:0 0 #3b82f666}.timeline-item:hover .timeline-dot{transform:scale(1.5);box-shadow:0 0 0 8px #3b82f633;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 12px #3b82f600}}.timeline-item:nth-child(odd) .timeline-dot{right:-10px}.timeline-item:nth-child(2n) .timeline-dot{left:-10px}.timeline-content{background:var(--bg-primary);padding:2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:all var(--transition-normal);transform-style:preserve-3d}.timeline-content:hover{box-shadow:var(--shadow-lg)}.timeline-date{font-size:.9rem;color:var(--accent-primary);font-weight:500;margin-bottom:.5rem}.timeline-title{font-size:1.3rem;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.timeline-company{font-size:1rem;color:var(--text-secondary);margin-bottom:1rem}.timeline-description{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.timeline-achievements{list-style:none;margin-bottom:1.5rem}.timeline-achievements li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:var(--text-secondary);line-height:1.6}.timeline-achievements li:before{content:"•";position:absolute;left:0;color:var(--accent-primary);font-weight:700}.timeline-tech{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background:var(--bg-tertiary);color:var(--text-primary);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:500;border:1px solid var(--border-color);transition:all var(--transition-fast)}.tech-tag:hover{background:var(--accent-primary);color:#fff;transform:scale(1.05)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.project-card{background:var(--bg-secondary);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:all var(--transition-normal);transform-style:preserve-3d}.project-card:hover{box-shadow:var(--shadow-2xl);border-color:var(--border-hover)}.project-image{height:200px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.project-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary))}.project-icon{font-size:3rem;color:#fff;transition:all var(--transition-bounce)}.project-card:hover .project-icon{transform:scale(1.2) rotate(10deg);filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.project-content{padding:1.5rem}.project-title{font-size:1.3rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.project-description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-links{display:flex;gap:1rem}.project-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-primary);text-decoration:none;font-weight:500;transition:all var(--transition-fast);position:relative}.project-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--accent-gradient);transition:width var(--transition-normal)}.project-link:hover{color:var(--accent-secondary);gap:.75rem}.project-link:hover:after{width:100%}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.blog-card{background:var(--bg-secondary);padding:2rem;border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-md);transition:all var(--transition-normal);display:flex;flex-direction:column;transform-style:preserve-3d}.blog-card:hover{box-shadow:var(--shadow-2xl);border-color:var(--border-hover)}.blog-icon{font-size:3rem;margin-bottom:1rem;transition:all var(--transition-bounce);display:inline-block}.blog-card:hover .blog-icon{transform:scale(1.15) rotate(-5deg);filter:drop-shadow(0 4px 8px rgba(59,130,246,.3))}.blog-title{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary);line-height:1.4}.blog-platform{display:inline-block;background:var(--accent-gradient);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;margin-bottom:1rem;width:-moz-fit-content;width:fit-content;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.blog-card:hover .blog-platform{transform:scale(1.05);box-shadow:var(--shadow-md)}.blog-excerpt{color:var(--text-muted);font-size:1rem;line-height:1.6;margin-bottom:1.5rem;flex-grow:1}.blog-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-primary);text-decoration:none;font-weight:500;transition:all var(--transition-normal);position:relative;padding:.5rem 0}.blog-link:after{content:"";position:absolute;bottom:.25rem;left:0;width:0;height:2px;background:var(--accent-gradient);transition:width var(--transition-normal)}.blog-link:hover{color:var(--accent-secondary);gap:.75rem}.blog-link:hover:after{width:calc(100% - 1.5rem)}.blog-link svg{transition:transform var(--transition-normal)}.blog-link:hover svg{transform:translate(3px) translateY(-3px)}.contact{background:var(--bg-secondary)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-info{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;align-items:flex-start;gap:1rem}.contact-icon{font-size:1.5rem;flex-shrink:0}.contact-text h4{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.contact-text a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.contact-text a:hover{color:var(--accent-primary)}.contact-form{background:var(--bg-primary);padding:2rem;border-radius:1rem;box-shadow:var(--shadow-md)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.5rem;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary)}.social-links{display:flex;justify-content:center;gap:1rem;margin-top:3rem}.social-link{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:var(--bg-primary);color:var(--text-secondary);border-radius:50%;text-decoration:none;transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.social-link:hover{transform:translateY(-2px);color:var(--accent-primary)}.footer{background:var(--bg-tertiary);padding:2rem 0;text-align:center}.footer-content{display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary);font-size:.9rem}@media (max-width: 768px){.social-sidebar{left:50%;top:auto;bottom:1rem;transform:translate(-50%);flex-direction:row;gap:.5rem;padding:.5rem;background:#0f172af2;border:2px solid rgba(59,130,246,.3)}[data-theme=dark] .social-sidebar{background:#f8fafcf2;border:2px solid rgba(59,130,246,.4)}.social-sidebar-link{width:44px;height:44px}.nav-menu{position:fixed;top:var(--nav-height);right:-100%;width:100%;height:calc(100vh - var(--nav-height));background:var(--bg-primary);flex-direction:column;justify-content:start;padding-top:2rem;transition:right var(--transition-normal);box-shadow:var(--shadow-lg)}.nav-menu.active{right:0}.hamburger{display:flex}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.hero-content{grid-template-columns:1fr;text-align:center;gap:2rem}.hero-title{font-size:2.5rem}.hero-stats,.hero-actions{justify-content:center}.about-content{grid-template-columns:1fr;gap:2rem}.about-text{text-align:center}.timeline:before{left:20px}.timeline-item{width:100%;margin-left:0;padding-left:3rem;text-align:left}.timeline-item:nth-child(2n){margin-left:0;padding-left:3rem}.timeline-item:nth-child(odd){padding-right:0;text-align:left}.timeline-dot{left:12px!important}.contact-content{grid-template-columns:1fr;gap:2rem}.footer-content{flex-direction:column;gap:1rem}.projects-grid,.skills-grid,.blog-grid{grid-template-columns:1fr}}@media (max-width: 480px){.container{padding:0 .5rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.2rem}.section-title{font-size:2rem}.hero-stats,.hero-actions{flex-direction:column;gap:1rem}.btn{width:100%;justify-content:center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.section-hidden{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1)}.section-visible{opacity:1;transform:translateY(0)}.skill-category,.project-card,.timeline-item,.blog-card,.highlight{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}.element-visible{opacity:1;transform:translateY(0)}.animate-fadeInUp{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) forwards}.animate-fadeInLeft{animation:fadeInLeft .8s cubic-bezier(.4,0,.2,1) forwards}.animate-fadeInRight{animation:fadeInRight .8s cubic-bezier(.4,0,.2,1) forwards}.ripple-effect{position:absolute;border-radius:50%;background:#fff9;transform:scale(0);animation:ripple-animation .6s ease-out;pointer-events:none}@keyframes ripple-animation{to{transform:scale(2);opacity:0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-gradient{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}section{scroll-margin-top:var(--nav-height)}
