:root,[data-theme=light]{--bg-primary: #0b1e3d;--bg-secondary: #122a4f;--bg-card: rgba(255, 255, 255, .85);--bg-card-hover: rgba(255, 255, 255, .95);--text-primary: #1a1a2e;--text-secondary: #3a3a5c;--text-muted: #6b7280;--accent: #e01030;--accent-hover: #b80020;--accent-glow: rgba(224, 16, 48, .2);--accent-green: #069668;--accent-yellow: #b8860b;--accent-red: #ff1744;--accent-purple: #9c27b0;--border: rgba(0, 0, 0, .08);--border-light: rgba(0, 0, 0, .12);--radius: 16px;--radius-sm: 10px;--radius-lg: 20px;--shadow: 0 4px 30px rgba(224, 16, 48, .18);--shadow-lg: 0 12px 50px rgba(224, 16, 48, .25);--transition: .3s cubic-bezier(.4, 0, .2, 1);--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--max-width: 1200px;--navbar-height: 70px;--sky-from: #1a6fc4;--sky-20: #3a9fe0;--sky-40: #5bb8ed;--sky-55: #7ecdf5;--sky-70: #a8e0fb;--sky-85: #c8edfc;--sky-to: #e8f7ff;--navbar-bg: rgba(255, 255, 255, .85);--navbar-border: rgba(0, 0, 0, .08);--navbar-text: #1a1a2e;--footer-bg: rgba(255, 255, 255, .7);--footer-text: #3a3a5c;--terminal-bg: rgba(255, 255, 255, .9);--terminal-output: #8899aa;--input-bg: rgba(255, 255, 255, .6);--input-border: rgba(0, 0, 0, .1);--cloud-opacity: .7;--mobile-nav-bg: rgba(255, 255, 255, .95);--tag-color: #c00018}[data-theme=dark]{--bg-card: rgba(20, 20, 35, .82);--bg-card-hover: rgba(30, 30, 50, .9);--text-primary: #e8eaf0;--text-secondary: #b0b8c8;--text-muted: #7a8394;--accent: #ff2040;--accent-hover: #e01030;--accent-glow: rgba(255, 32, 64, .2);--accent-green: #69f0ae;--accent-yellow: #ffd740;--accent-purple: #ea80fc;--border: rgba(255, 255, 255, .1);--border-light: rgba(255, 255, 255, .15);--shadow: 0 4px 30px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 50px rgba(0, 0, 0, .4);--sky-from: #0a0e1a;--sky-20: #0f1628;--sky-40: #141e35;--sky-55: #182640;--sky-70: #1c2e4a;--sky-85: #203654;--sky-to: #243e5e;--navbar-bg: rgba(10, 14, 26, .85);--navbar-border: rgba(255, 255, 255, .08);--navbar-text: #e8eaf0;--footer-bg: rgba(10, 14, 26, .7);--footer-text: #7a8394;--terminal-bg: rgba(10, 14, 26, .9);--terminal-output: #607080;--input-bg: rgba(10, 14, 26, .6);--input-border: rgba(255, 255, 255, .12);--cloud-opacity: .15;--mobile-nav-bg: rgba(10, 14, 26, .95);--tag-color: #ff6b6b}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(180deg,var(--sky-from) 0%,var(--sky-20) 20%,var(--sky-40) 40%,var(--sky-55) 55%,var(--sky-70) 70%,var(--sky-85) 85%,var(--sky-to) 100%);background-attachment:fixed;color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .5s ease,color .3s ease}a{color:var(--accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-hover)}img{max-width:100%;display:block}.sky-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.cloud{position:absolute;background:radial-gradient(ellipse at center,rgba(255,255,255,.55) 0%,rgba(255,255,255,.25) 50%,transparent 70%);border-radius:50%;filter:blur(6px);opacity:var(--cloud-opacity);transition:opacity .5s ease}.cloud-1{width:400px;height:140px;top:8%;left:-10%;animation:floatCloud 35s linear infinite}.cloud-2{width:300px;height:100px;top:18%;left:20%;animation:floatCloud 50s linear infinite;animation-delay:-12s;opacity:.5}.cloud-3{width:500px;height:160px;top:30%;left:-20%;animation:floatCloud 45s linear infinite;animation-delay:-8s}.cloud-4{width:250px;height:90px;top:50%;left:10%;animation:floatCloud 55s linear infinite;animation-delay:-20s;opacity:.4}.cloud-5{width:350px;height:120px;top:65%;left:-15%;animation:floatCloud 40s linear infinite;animation-delay:-5s;opacity:.6}.cloud-6{width:280px;height:100px;top:78%;left:30%;animation:floatCloud 60s linear infinite;animation-delay:-25s;opacity:.35}.cloud-7{width:450px;height:150px;top:40%;left:-5%;animation:floatCloud 38s linear infinite;animation-delay:-15s;opacity:.45}.cloud-8{width:320px;height:110px;top:88%;left:50%;animation:floatCloud 48s linear infinite;animation-delay:-30s;opacity:.3}@keyframes floatCloud{0%{transform:translate(-100%) translateY(0)}50%{transform:translate(50vw) translateY(-20px)}to{transform:translate(120vw) translateY(0)}}.layout{display:flex;flex-direction:column;min-height:100vh;position:relative;z-index:1}.main-content{flex:1;padding:2rem 1.5rem;padding-top:calc(var(--navbar-height) + 2rem);max-width:var(--max-width);width:100%;margin:0 auto;animation:fadeSlideUp .6s ease-out}.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:var(--navbar-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-bottom:1px solid var(--navbar-border);z-index:1000;animation:slideDown .5s ease-out;transition:background .3s ease,border-color .3s ease}.navbar-container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem;height:100%;display:flex;align-items:center;gap:1rem}.navbar-logo{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--navbar-text);text-decoration:none}.navbar-logo:hover{color:var(--accent)}.logo-symbol{font-family:var(--font-mono);color:var(--accent);font-size:1.4rem}.nav-links{display:flex;gap:.25rem;flex:1;justify-content:center}.nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:all var(--transition)}.nav-link:hover{color:var(--text-primary);background:var(--accent-glow)}.nav-link.active{color:var(--accent);background:var(--accent-glow)}.menu-toggle{display:none;background:none;border:none;color:var(--navbar-text);font-size:1.5rem;cursor:pointer;padding:.5rem}.navbar-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:2px solid var(--border-light);background:var(--bg-card);color:var(--accent);font-size:1.1rem;cursor:pointer;transition:all var(--transition)}.theme-toggle:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:rotate(20deg) scale(1.1);box-shadow:0 4px 16px #e010304d}.lang-switcher{position:relative}.lang-toggle{display:flex;align-items:center;gap:.4rem;height:40px;padding:0 .75rem;border-radius:20px;border:2px solid var(--border-light);background:var(--bg-card);color:var(--text-primary);font-size:.85rem;font-weight:700;cursor:pointer;transition:all var(--transition);font-family:inherit}.lang-toggle svg{font-size:1rem;color:var(--accent)}.lang-toggle:hover{border-color:var(--accent);box-shadow:0 2px 12px #e0103026}.lang-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);overflow:hidden;z-index:1100;animation:slideDown .2s ease;min-width:70px}.lang-option{display:block;width:100%;padding:.6rem 1rem;border:none;background:transparent;color:var(--text-primary);font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;text-align:center;transition:background var(--transition)}.lang-option:hover{background:#e0103014}.lang-option.lang-active{color:var(--accent);background:#e010301a}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition);border:none;text-decoration:none}.btn-primary{background:linear-gradient(135deg,#e01030,#b80020);color:#fff;box-shadow:0 4px 20px #e0103073;animation:gentlePulse 3s ease-in-out infinite}.btn-primary:hover{background:linear-gradient(135deg,#c00018,#900010);color:#fff;transform:translateY(-3px) scale(1.03);box-shadow:0 8px 30px #e0103099;animation:none}.btn-outline{background:transparent;color:var(--accent);border:2px solid var(--accent)}.btn-outline:hover{background:var(--accent-glow);color:var(--accent);transform:translateY(-2px)}.page-header{text-align:center;margin-bottom:3rem}.page-header h1{font-size:2.5rem;font-weight:800;margin-bottom:.75rem;background:linear-gradient(135deg,#1a1a2e,#c00018,#e01030);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:floatBobble 5s ease-in-out infinite}.page-subtitle{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.section-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.section-icon{color:var(--accent)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:2rem 0 4rem}.hero-greeting{display:block;font-size:1.1rem;color:var(--accent);font-weight:500;margin-bottom:.5rem;font-family:var(--font-mono)}.hero-name{font-size:3.5rem;font-weight:900;line-height:1.1;margin-bottom:.5rem;background:linear-gradient(135deg,#1a1a2e,#c00018,#e01030);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:floatBobble 4s ease-in-out infinite}.hero-title{font-size:1.3rem;color:var(--accent-green);font-weight:600;margin-bottom:1rem;font-family:var(--font-mono)}.hero-description{font-size:1.05rem;color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;max-width:500px}.hero-actions{display:flex;gap:1rem}.terminal-window{background:var(--terminal-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius);border:1px solid var(--border-light);overflow:hidden;box-shadow:var(--shadow-lg);animation:floatBobble 7s ease-in-out infinite}.terminal-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-card);border-bottom:1px solid var(--border)}.terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-dot.red{background:var(--accent-red)}.terminal-dot.yellow{background:var(--accent-yellow)}.terminal-dot.green{background:var(--accent-green)}.terminal-title{font-size:.8rem;color:var(--text-muted);margin-left:.5rem;font-family:var(--font-mono)}.terminal-body{padding:1.25rem;font-family:var(--font-mono);font-size:.85rem;line-height:1.8}.terminal-body .prompt{color:var(--accent-green);margin-right:.5rem}.terminal-body .output{color:var(--terminal-output)}.terminal-body .cursor{animation:blink 1s step-end infinite;color:var(--accent-green)}@keyframes blink{50%{opacity:0}}.highlights{padding:3rem 0}.highlights-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.highlight-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:center;text-decoration:none;color:var(--text-primary);transition:all var(--transition);animation:floatBobble 6s ease-in-out infinite}.highlight-card:nth-child(2){animation-delay:-1.5s}.highlight-card:nth-child(3){animation-delay:-3s}.highlight-card:nth-child(4){animation-delay:-4.5s}.highlight-card:hover{background:var(--bg-card-hover);border-color:var(--accent);transform:translateY(-8px) scale(1.03);box-shadow:0 12px 40px #e0103040;color:var(--text-primary);animation-play-state:paused}.highlight-icon{font-size:2rem;color:var(--accent);margin-bottom:1rem;animation:gentlePulse 3s ease-in-out infinite;transition:transform var(--transition)}.highlight-card:hover .highlight-icon{transform:scale(1.2) rotate(-5deg)}.highlight-card h3{font-size:1.1rem;margin-bottom:.5rem}.highlight-card p{font-size:.9rem;color:var(--text-secondary)}.tech-stack{margin-bottom:3rem}.tech-group{margin-bottom:2rem}.tech-group-title{font-size:1rem;color:var(--text-secondary);font-weight:600;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.tech-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.tech-item{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem 1.25rem;transition:all var(--transition);animation:floatBobble 5s ease-in-out infinite}.tech-item:nth-child(odd){animation-delay:-2s}.tech-item:hover{border-color:var(--accent);background:var(--bg-card-hover);transform:translateY(-4px);box-shadow:var(--shadow);animation-play-state:paused}.tech-item-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.tech-icon{font-size:1.5rem;color:var(--accent);display:flex}.tech-name{font-weight:600;flex:1}.tech-level{font-size:.85rem;color:var(--text-muted);font-family:var(--font-mono)}.progress-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#e01030,#ff4060,#e01030);border-radius:3px;transition:width 1s ease;animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.7}}.practices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.practice-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;transition:all var(--transition);animation:floatBobble 7s ease-in-out infinite}.practice-card:nth-child(2n){animation-delay:-3.5s}.practice-card:hover{border-color:var(--accent);transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow);animation-play-state:paused}.practice-card h3{font-size:1.05rem;margin-bottom:.5rem;color:var(--accent)}.practice-card p{font-size:.9rem;color:var(--text-secondary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.project-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;display:flex;flex-direction:column;transition:all var(--transition);animation:floatBobble 6s ease-in-out infinite}.project-card:nth-child(2){animation-delay:-1s}.project-card:nth-child(3){animation-delay:-2s}.project-card:nth-child(4){animation-delay:-3s}.project-card:nth-child(5){animation-delay:-4s}.project-card:nth-child(6){animation-delay:-5s}.project-card:hover{border-color:var(--accent);transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-lg);animation-play-state:paused}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.project-card-header h3{font-size:1.15rem}.project-status{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:20px;white-space:nowrap}.status-production{background:#69f0ae26;color:var(--accent-green)}.status-active{background:#e0103026;color:var(--accent)}.status-development{background:#ffd74026;color:var(--accent-yellow)}.status-planning{background:#ea80fc26;color:var(--accent-purple)}.project-description{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem;flex:1}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.tag{font-size:.8rem;padding:.25rem .75rem;background:#e010301a;color:var(--tag-color);border-radius:20px;font-weight:500;border:1px solid rgba(224,16,48,.25);transition:all var(--transition)}.tag:hover{background:#e010304d;transform:scale(1.05)}.project-links{display:flex;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.project-link{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--text-secondary);transition:color var(--transition)}.project-link:hover{color:var(--accent)}.download-btn{margin-top:1rem}.resume-section{margin-bottom:3rem}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:2px;background:var(--border-light)}.timeline-item{position:relative;margin-bottom:2rem}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:-2rem;top:6px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:3px solid var(--bg-primary);box-shadow:0 0 0 2px var(--accent)}.timeline-content{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:all var(--transition);animation:floatBobble 8s ease-in-out infinite}.timeline-item:nth-child(2n) .timeline-content{animation-delay:-4s}.timeline-content:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:var(--shadow);animation-play-state:paused}.timeline-header{margin-bottom:.75rem}.timeline-header h3{font-size:1.1rem;margin-bottom:.25rem}.timeline-company{color:var(--accent);font-weight:600;margin-right:1rem}.timeline-period{font-size:.85rem;color:var(--text-muted);font-family:var(--font-mono)}.timeline-list{list-style:none;padding:0}.timeline-list li{position:relative;padding-left:1.25rem;margin-bottom:.4rem;font-size:.9rem;color:var(--text-secondary)}.timeline-list li:before{content:"▸";position:absolute;left:0;color:var(--accent)}.certifications-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.cert-card{display:flex;align-items:center;gap:.75rem;background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem 1.25rem;transition:all var(--transition);animation:floatBobble 5s ease-in-out infinite}.cert-card:nth-child(2n){animation-delay:-2.5s}.cert-card:hover{border-color:var(--accent-yellow);transform:translateY(-4px);box-shadow:0 8px 24px #ffd74033;animation-play-state:paused}.cert-icon{color:var(--accent-yellow);font-size:1.25rem;flex-shrink:0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.skill-group{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:all var(--transition);animation:floatBobble 7s ease-in-out infinite}.skill-group:nth-child(2n){animation-delay:-3s}.skill-group:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:var(--shadow);animation-play-state:paused}.skill-group h3{font-size:1rem;margin-bottom:1rem;color:var(--accent)}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-info h2,.contact-form h2{font-size:1.3rem;margin-bottom:1.5rem}.contact-links{display:flex;flex-direction:column;gap:1.25rem}.contact-item{display:flex;align-items:center;gap:1rem}.contact-icon{font-size:1.5rem;color:var(--accent);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#e010302e;border-radius:var(--radius-sm);flex-shrink:0;transition:all var(--transition);animation:gentlePulse 4s ease-in-out infinite}.contact-item:hover .contact-icon{transform:scale(1.1) rotate(5deg);background:#e010304d}.contact-label{display:block;font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.contact-value{font-size:.95rem;color:var(--text-primary)}a.contact-value:hover{color:var(--accent)}.contact-form,.form-group,.form-group label,.form-group input,.form-group textarea,.form-group input:focus,.form-group textarea:focus,.form-group input::placeholder,.form-group textarea::placeholder{display:none}.contact-status-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.85rem 1.5rem;margin-bottom:2.5rem;background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius);animation:fadeSlideUp .6s ease both}.status-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.status-dot--available{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green),0 0 20px #0696684d;animation:gentlePulse 2s ease-in-out infinite}.status-text{font-weight:600;font-size:1rem;color:var(--text-primary)}.contact-item--preferred{background:#e010300f;border:1px solid rgba(224,16,48,.18);border-radius:var(--radius-sm);padding:.75rem 1rem;margin:-.75rem -1rem}.preferred-badge{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;background:var(--accent);color:#fff;padding:.15rem .5rem;border-radius:4px;margin-left:.5rem;vertical-align:middle;font-weight:700}.contact-sidebar{display:flex;flex-direction:column;gap:1.5rem}.quick-facts-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;animation:floatBobble 9s ease-in-out infinite}.quick-facts-card h2{font-size:1.3rem;margin-bottom:1.5rem}.quick-facts-list{display:flex;flex-direction:column;gap:1.15rem}.quick-fact{display:flex;align-items:center;gap:.85rem}.quick-fact-icon{font-size:1.2rem;color:var(--accent);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#e010301f;border-radius:var(--radius-sm);flex-shrink:0}.quick-fact-label{display:block;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.quick-fact-value{font-size:.95rem;color:var(--text-primary);font-weight:500}.contact-cta-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;text-align:center;animation:floatBobble 7s ease-in-out infinite}.contact-cta-card .cta-icon{font-size:2.2rem;color:var(--accent);margin-bottom:.75rem}.contact-cta-card h3{font-size:1.15rem;margin-bottom:.5rem}.contact-cta-card p{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.5}.cta-btn{display:inline-flex;align-items:center;gap:.5rem;justify-content:center;width:100%;font-size:1rem}.form-group textarea{resize:vertical;min-height:120px}.form-success{margin-top:1rem;padding:.75rem 1rem;background:#69f0ae26;color:var(--accent-green);border-radius:var(--radius-sm);font-size:.9rem;border:1px solid rgba(105,240,174,.3);animation:fadeIn .3s ease,floatBobble 3s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.footer{border-top:1px solid var(--navbar-border);padding:2.5rem 1.5rem 1.5rem;color:var(--footer-text);font-size:.85rem;background:var(--footer-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .3s ease,color .3s ease}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem;margin-bottom:2rem}.footer-col .footer-logo{display:inline-flex;align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;color:var(--text-primary);text-decoration:none;margin-bottom:.5rem}.footer-col .footer-logo:hover{color:var(--accent)}.footer-tagline{font-size:.85rem;color:var(--text-muted);line-height:1.5;max-width:260px}.footer-clock{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.footer-clock-icon{color:var(--accent);font-size:1rem}.footer-clock-time{font-family:JetBrains Mono,monospace;font-size:1.3rem;font-weight:700;color:var(--text-primary);letter-spacing:.05em}.footer-clock-label{display:block;font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.footer-heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--text-secondary);margin-bottom:.75rem}.footer-links{display:flex;flex-direction:column;gap:.4rem}.footer-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-muted);text-decoration:none;transition:color var(--transition);padding:.15rem 0}.footer-link:hover{color:var(--accent)}.footer-link svg{font-size:.9rem;flex-shrink:0}.footer-bottom{display:flex;align-items:center;justify-content:center;gap:.5rem;padding-top:1.25rem;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted);flex-wrap:wrap}.footer-dot{opacity:.4}.footer-quote{font-style:italic;opacity:.7}@keyframes floatBobble{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes gentlePulse{0%,to{box-shadow:0 4px 20px #e0103059}50%{box-shadow:0 4px 30px #e0103099}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.footer-container{max-width:var(--max-width);margin:0 auto}@media(max-width:1024px){.hero{grid-template-columns:1fr;text-align:center}.hero-description{margin:0 auto 2rem}.hero-actions{justify-content:center}.highlights-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}}@media(max-width:768px){.menu-toggle{display:flex;align-items:center}.nav-links{display:none;position:absolute;top:var(--navbar-height);left:0;right:0;background:var(--mobile-nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--navbar-border);flex-direction:column;padding:1rem;gap:.25rem}.nav-links.nav-open{display:flex}.footer-grid{grid-template-columns:1fr;gap:1.5rem;text-align:center}.footer-tagline{max-width:none}.footer-links{align-items:center}.hero-name{font-size:2.5rem}.page-header h1{font-size:2rem}.highlights-grid,.projects-grid,.practices-grid,.skills-grid,.certifications-grid,.tech-items{grid-template-columns:1fr}.main-content{padding:1rem;padding-top:calc(var(--navbar-height) + 1rem)}}@media(max-width:480px){.hero-name{font-size:2rem}.hero-actions{flex-direction:column;align-items:center}.terminal-body{font-size:.75rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-icon{animation:spin 1s linear infinite;display:inline-block}.resume-pdf-content .section-title{page-break-after:avoid}.resume-pdf-content .timeline-item,.resume-pdf-content .cert-card,.resume-pdf-content .skill-group{page-break-inside:avoid}.pdf-resume{display:none;width:210mm;font-family:Inter,Arial,sans-serif;color:#1a1a1a;background:#fff;padding:16px 20px;font-size:11px;line-height:1.55;overflow:auto}.pdf-header{margin-bottom:6px}.pdf-header-main{margin-bottom:8px}.pdf-name{font-size:20px;font-weight:800;color:#111;margin:0 0 4px}.pdf-meta{font-size:12px;color:#555;margin:0}.pdf-contacts{margin-bottom:6px}.pdf-contacts p{margin:2px 0;font-size:11px}.pdf-badge{display:inline-block;background:#e01030;color:#fff;font-size:9px;font-weight:700;padding:1px 6px;border-radius:3px;margin-left:4px;vertical-align:middle;text-transform:uppercase}.pdf-location p{margin:2px 0;font-size:11px;color:#444}.pdf-divider{border:none;border-top:1px solid #ddd;margin:10px 0}.pdf-section{margin-bottom:4px}.pdf-section-title{font-size:14px;font-weight:800;color:#111;margin:0 0 6px;text-transform:uppercase;letter-spacing:.03em}.pdf-position{font-size:16px;font-weight:700;color:#e01030;margin:0 0 6px}.pdf-details p{margin:3px 0;font-size:11px}.pdf-salary{font-size:13px;color:#111;margin-top:6px}.pdf-list{margin:4px 0 4px 18px;padding:0}.pdf-list li{margin-bottom:2px;font-size:11px}.pdf-job{margin-bottom:8px}.pdf-job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.pdf-company{font-size:13px;font-weight:700;color:#111;margin:0}.pdf-industry{font-size:10px;color:#777;margin:2px 0 0}.pdf-period{font-size:10px;color:#888;white-space:nowrap;text-align:right}.pdf-role{font-size:12px;font-weight:700;color:#333;margin:0 0 4px}.pdf-edu{margin-bottom:8px}.pdf-edu-level{font-size:11px;color:#888;margin:0 0 2px}.pdf-cert{display:flex;gap:12px;margin-bottom:8px;align-items:flex-start;page-break-inside:avoid}.pdf-cert-year{font-weight:700;font-size:12px;color:#e01030;min-width:36px}.pdf-cert-title{font-size:11px;font-weight:600;margin:0 0 1px;color:#222}.pdf-cert-org{font-size:10px;color:#777;margin:0}.pdf-langs p{margin:3px 0;font-size:11px}.pdf-skills{display:flex;flex-wrap:wrap;gap:5px}.pdf-skill-tag{display:inline-block;background:#f0f0f0;color:#333;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:500}.pdf-about{font-size:11px;line-height:1.6;color:#333;margin:0}
