@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap");*{margin:0;padding:0;box-sizing:border-box}:root{--primary:#2563eb;--primary-light:#3b82f6;--primary-dark:#1d4ed8;--primary-glow:rgba(37,99,235,.12);--bg:#f8fafc;--bg-white:#fff;--text:#0f172a;--text-secondary:#475569;--text-light:#94a3b8;--border:#e2e8f0;--border-light:#f1f5f9;--accent:#f1f5f9;--gradient-start:#0f172a;--gradient-end:#1e3a5f;--card-shadow:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.06);--card-shadow-hover:0 20px 40px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.04)}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.scroll-progress-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--primary),#8b5cf6,#06b6d4);z-index:200;transition:width .1s linear;border-radius:0 2px 2px 0}.scroll-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:44px;height:44px;border-radius:14px;background:var(--bg-white);border:1px solid var(--border);box-shadow:0 4px 20px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:90;opacity:0;transform:translateY(20px);transition:all .35s cubic-bezier(.16,1,.3,1);color:var(--text-secondary)}.back-to-top-visible{opacity:1;transform:translateY(0)}.back-to-top:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-3px);box-shadow:0 8px 30px rgba(37,99,235,.25)}.cv-nav{position:fixed;top:3px;left:0;right:0;background:hsla(0,0%,100%,.8);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(226,232,240,.5);z-index:100;padding:.6rem 0}.cv-nav-inner{max-width:1200px;margin:0 auto;padding:0 2rem;justify-content:space-between}.cv-nav-brand,.cv-nav-inner{display:flex;align-items:center}.cv-nav-brand{font-weight:700;font-size:.95rem;color:var(--text);text-decoration:none;gap:.6rem}.cv-nav-brand-text{display:inline}.cv-nav-logo{background:linear-gradient(135deg,var(--primary),#7c3aed);color:#fff;width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;letter-spacing:-.02em;flex-shrink:0}.cv-nav-links{display:flex;gap:.15rem;list-style:none;margin:0;padding:0}.cv-nav-links a{color:var(--text-secondary);text-decoration:none;font-size:.84rem;font-weight:500;transition:all .2s;padding:.4rem .75rem;border-radius:8px;position:relative}.cv-nav-links a.cv-nav-active,.cv-nav-links a:hover{color:var(--primary);background:var(--primary-glow)}.cv-nav-links a.cv-nav-active{font-weight:600}.cv-nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;z-index:110}.cv-nav-hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:all .3s}.cv-nav-hamburger-open span:first-child{transform:rotate(45deg) translate(5px,5px)}.cv-nav-hamburger-open span:nth-child(2){opacity:0}.cv-nav-hamburger-open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.cv-hero{position:relative;padding:10rem 2rem 7rem;background:linear-gradient(135deg,var(--gradient-start) 0,var(--gradient-end) 50%,#0c4a6e 100%);color:#fff;overflow:hidden;min-height:90vh;display:flex;align-items:center}.hero-particles{width:100%;height:100%;pointer-events:none}.cv-hero-bg,.hero-particles{position:absolute;inset:0;z-index:1}.cv-hero-bg{background-image:radial-gradient(ellipse at 20% 50%,rgba(37,99,235,.25) 0,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(139,92,246,.2) 0,transparent 50%),radial-gradient(ellipse at 60% 80%,rgba(6,182,212,.15) 0,transparent 50%);animation:heroGlow 8s ease-in-out infinite alternate}@keyframes heroGlow{0%{opacity:.6}to{opacity:1}}.cv-hero-inner{max-width:1200px;margin:0 auto;width:100%;display:flex;align-items:center;gap:3.5rem;position:relative;z-index:2;animation:heroFadeIn 1s ease-out}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.cv-hero-avatar{width:140px;height:140px;border-radius:28px;background:linear-gradient(135deg,var(--primary),#8b5cf6);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;animation:avatarFloat 6s ease-in-out infinite}.cv-hero-avatar span{font-size:2.75rem;font-weight:900;color:#fff;z-index:1}.cv-hero-photo{border-radius:28px;object-fit:cover;width:100%;height:100%;z-index:1;position:relative}.cv-hero-avatar-ring{position:absolute;inset:-6px;border-radius:32px;border:2px solid rgba(139,92,246,.3);animation:ringPulse 3s ease-in-out infinite}@keyframes avatarFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes ringPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.cv-hero-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem 1rem;border-radius:20px;background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.25);color:#4ade80;font-size:.78rem;font-weight:600;margin-bottom:.75rem;animation:badgePulse 3s ease-in-out infinite}.cv-hero-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#4ade80;animation:dotBlink 2s infinite}@keyframes badgePulse{0%,to{box-shadow:0 0 0 0 rgba(34,197,94,.1)}50%{box-shadow:0 0 0 8px rgba(34,197,94,0)}}@keyframes dotBlink{0%,to{opacity:1}50%{opacity:.4}}.cv-hero-info h1{font-size:3.25rem;font-weight:900;letter-spacing:-.03em;line-height:1.1;margin-bottom:.5rem;background:linear-gradient(135deg,#fff,#c7d2fe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cv-hero-title{font-size:1.15rem;font-weight:500;color:#93c5fd;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;min-height:1.8em}.cv-hero-title-line{width:32px;height:3px;background:linear-gradient(90deg,var(--primary-light),#8b5cf6);border-radius:2px;flex-shrink:0}.typewriter{color:#93c5fd}.typewriter-cursor{color:#93c5fd;animation:cursorBlink .8s step-end infinite;font-weight:300;margin-left:1px}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.cv-hero-subtitle{font-size:1rem;color:#94a3b8;max-width:560px;margin-bottom:1.75rem;line-height:1.7}.cv-hero-contact{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.cv-hero-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:12px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1)}.cv-hero-btn-primary{background:linear-gradient(135deg,var(--primary),#4f46e5);color:#fff;box-shadow:0 4px 20px rgba(37,99,235,.4)}.cv-hero-btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(37,99,235,.5)}.cv-hero-btn-ghost{background:hsla(0,0%,100%,.08);color:#fff;border:1px solid hsla(0,0%,100%,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cv-hero-btn-ghost:hover{background:hsla(0,0%,100%,.16);transform:translateY(-3px)}.cv-hero-wave{position:absolute;bottom:-1px;left:0;right:0;z-index:3}.cv-hero-wave svg{display:block;width:100%;height:auto}.cv-stats{background:var(--bg);padding:3rem 2rem;margin-top:-1px}.cv-stats-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.25rem;gap:1.25rem}.stat-item{text-align:center;padding:1.75rem 1rem;background:var(--bg-white);border-radius:18px;border:1px solid var(--border);box-shadow:var(--card-shadow);transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.stat-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),#8b5cf6);opacity:0;transition:opacity .3s}.stat-item:hover:before{opacity:1}.stat-item:hover{transform:translateY(-6px);box-shadow:var(--card-shadow-hover)}.stat-number{display:block;font-size:2.5rem;font-weight:900;letter-spacing:-.04em;background:linear-gradient(135deg,var(--primary),#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.stat-label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-top:.3rem}.cv-highlights{padding:2rem 2rem 4rem;background:var(--bg)}.cv-highlights-inner{max-width:1200px;margin:0 auto}.cv-highlights-heading{text-align:center;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin-bottom:2rem;color:var(--text)}.cv-highlights-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.25rem;gap:1.25rem}.cv-highlight-card{background:var(--bg-white);border:1px solid var(--border);border-radius:18px;padding:1.75rem;transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.cv-highlight-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 60%,rgba(37,99,235,.03));pointer-events:none}.cv-highlight-card:hover{transform:translateY(-6px);box-shadow:var(--card-shadow-hover);border-color:transparent}.cv-highlight-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;transition:transform .3s cubic-bezier(.16,1,.3,1)}.cv-highlight-card:hover .cv-highlight-icon{transform:scale(1.1)}.cv-highlight-icon-blue{background:rgba(37,99,235,.1);color:var(--primary)}.cv-highlight-icon-purple{background:rgba(139,92,246,.1);color:#8b5cf6}.cv-highlight-icon-green{background:rgba(34,197,94,.1);color:#16a34a}.cv-highlight-icon-orange{background:rgba(249,115,22,.1);color:#ea580c}.cv-highlight-card h3{font-size:1rem;font-weight:700;margin-bottom:.5rem}.cv-highlight-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.cv-main{max-width:1200px;margin:0 auto;padding:1rem 2rem 4rem;display:grid;grid-template-columns:1fr 340px;grid-gap:3rem;gap:3rem}.cv-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.cv-section-icon{width:30px;height:30px;border-radius:8px;background:var(--primary-glow);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.cv-section-icon-ai{background:rgba(139,92,246,.12);color:#7c3aed}.cv-sidebar{display:flex;flex-direction:column;gap:1.25rem}.cv-sidebar-card{background:var(--bg-white);border:1px solid var(--border);border-radius:18px;padding:1.5rem;box-shadow:var(--card-shadow);transition:all .35s cubic-bezier(.16,1,.3,1)}.cv-sidebar-card:hover{box-shadow:var(--card-shadow-hover)}.cv-sidebar-card-featured{border-color:rgba(37,99,235,.15);background:linear-gradient(135deg,rgba(37,99,235,.02),rgba(139,92,246,.02))}.cv-sidebar-card-ai{border-color:rgba(139,92,246,.15);background:linear-gradient(135deg,rgba(139,92,246,.03),rgba(99,102,241,.02));position:relative;overflow:hidden}.cv-sidebar-card-ai:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(139,92,246,.06) 0,transparent 70%);pointer-events:none}.skill-bar-item{margin-bottom:.85rem}.skill-bar-item:last-child{margin-bottom:0}.skill-bar-header{display:flex;justify-content:space-between;margin-bottom:.35rem}.skill-bar-label{font-size:.82rem;font-weight:600;color:var(--text)}.skill-bar-pct{font-size:.75rem;font-weight:700;color:var(--primary)}.skill-bar-track{height:7px;background:var(--accent);border-radius:4px;overflow:hidden}.skill-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),#8b5cf6);border-radius:4px;transition:width 1.8s cubic-bezier(.16,1,.3,1);position:relative}.skill-bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.cv-skills-list{display:flex;flex-wrap:wrap;gap:.4rem}.cv-skill-tag{background:var(--accent);border:1px solid var(--border);padding:.3rem .65rem;border-radius:8px;font-size:.78rem;font-weight:500;color:var(--text-secondary);transition:all .25s cubic-bezier(.16,1,.3,1);cursor:default}.cv-skill-tag:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-glow);transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,99,235,.1)}.cv-skill-tag-ai{background:rgba(139,92,246,.06);border-color:rgba(139,92,246,.15);color:#7c3aed}.cv-skill-tag-ai:hover{border-color:#8b5cf6;color:#7c3aed;background:rgba(139,92,246,.12);box-shadow:0 4px 12px rgba(139,92,246,.1)}.cv-edu-item{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.cv-edu-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.cv-edu-item h4{font-size:.875rem;font-weight:600;margin-bottom:.1rem}.cv-edu-school{font-size:.8rem;color:var(--text-secondary)}.cv-edu-date{font-size:.75rem;color:var(--text-light)}.cv-cert-item{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light)}.cv-cert-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.cv-cert-item h4{font-size:.825rem;font-weight:600;margin-bottom:.1rem}.cv-cert-item p{font-size:.75rem;color:var(--text-light);margin:0}.cv-profile-content{background:var(--bg-white);border:1px solid var(--border);border-radius:18px;padding:1.75rem;box-shadow:var(--card-shadow)}.cv-profile-content p{color:var(--text-secondary);font-size:.93rem;line-height:1.8;margin-bottom:.75rem}.cv-profile-content p strong{color:var(--text);font-weight:600}.cv-profile-content p:last-child{margin-bottom:0}.cv-timeline{position:relative;padding-left:32px}.cv-timeline:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--primary),var(--border) 70%,transparent);border-radius:1px}.cv-timeline>.scroll-reveal{position:relative;margin-bottom:1.25rem}.cv-timeline>.scroll-reveal:last-child{margin-bottom:0}.cv-timeline>.scroll-reveal:before{content:"";position:absolute;left:-32px;top:1.75rem;width:16px;height:16px;border-radius:50%;background:var(--bg);border:3px solid var(--primary);z-index:1;transition:all .3s cubic-bezier(.16,1,.3,1)}.cv-timeline>.scroll-reveal:hover:before{background:var(--primary);box-shadow:0 0 0 5px var(--primary-glow);transform:scale(1.2)}.cv-job{background:var(--bg-white);border:1px solid var(--border);border-radius:18px;padding:1.75rem;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.16,1,.3,1)}.cv-job:hover{box-shadow:var(--card-shadow-hover);transform:translateX(4px);border-color:rgba(37,99,235,.15)}.cv-job-accent{position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--primary),#8b5cf6);border-radius:4px 0 0 4px;opacity:0;transition:opacity .3s}.cv-job:hover .cv-job-accent{opacity:1}.cv-job-current{border-color:rgba(37,99,235,.12);background:linear-gradient(135deg,rgba(37,99,235,.015),rgba(139,92,246,.015))}.cv-job-current .cv-job-accent{opacity:1}.cv-job-highlight{border-color:rgba(37,99,235,.12);background:linear-gradient(135deg,rgba(37,99,235,.015),rgba(139,92,246,.015))}.cv-job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.cv-job h3{font-size:1.02rem;font-weight:700;margin-bottom:.2rem;line-height:1.3}.cv-job-company{font-size:.875rem;color:var(--primary);font-weight:500}.cv-job-date{font-size:.75rem;color:var(--text-light);white-space:nowrap;background:var(--accent);padding:.3rem .75rem;border-radius:20px;font-weight:600;display:flex;align-items:center;gap:.4rem;flex-shrink:0}.cv-job-date-dot{width:6px;height:6px;border-radius:50%;background:#94a3b8}.cv-dot-active{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.2);animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 3px rgba(34,197,94,.2)}50%{box-shadow:0 0 0 6px rgba(34,197,94,0)}}.cv-job-description{font-size:.875rem;color:var(--text-secondary);line-height:1.7;margin-bottom:.75rem}.cv-job ul{list-style:none;padding:0;margin:0 0 .5rem}.cv-job li{font-size:.84rem;line-height:1.65;padding:.25rem 0 .25rem 1.25rem;position:relative;transition:color .2s}.cv-job li,.cv-job:hover li{color:var(--text-secondary)}.cv-job li:before{content:"";position:absolute;left:0;top:.65rem;width:6px;height:6px;border-radius:2px;background:var(--primary);opacity:.5;transition:all .3s}.cv-job:hover li:before{opacity:1;border-radius:50%;transform:scale(1.2)}.cv-job li strong{color:var(--text);font-weight:600}.cv-job-tags{display:flex;flex-wrap:wrap;gap:.35rem}.cv-job-tags span{font-size:.68rem;font-weight:600;padding:.2rem .6rem;border-radius:6px;background:linear-gradient(135deg,rgba(37,99,235,.06),rgba(139,92,246,.06));color:var(--primary);border:1px solid rgba(37,99,235,.08);transition:all .25s}.cv-job-tags span:hover{background:var(--primary-glow);border-color:rgba(37,99,235,.2)}.cv-contact-section{background:linear-gradient(135deg,var(--gradient-start) 0,var(--gradient-end) 50%,#0c4a6e 100%);color:#fff;padding:5rem 2rem;position:relative;overflow:hidden}.cv-contact-inner{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:2}.cv-contact-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem 1rem;border-radius:20px;background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.25);color:#4ade80;font-size:.78rem;font-weight:600;margin-bottom:1rem}.cv-contact-inner h2{font-size:2.25rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.02em}.cv-contact-inner p{color:#94a3b8;margin-bottom:2.5rem;font-size:1.05rem}.cv-contact-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.cv-contact-card{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.08);border-radius:20px;padding:2rem 1.25rem;text-decoration:none;color:#fff;display:flex;flex-direction:column;align-items:center;gap:.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .4s cubic-bezier(.16,1,.3,1)}.cv-contact-card:hover{background:hsla(0,0%,100%,.1);transform:translateY(-6px);border-color:hsla(0,0%,100%,.2);box-shadow:0 20px 60px rgba(0,0,0,.3)}.cv-contact-card svg{color:#93c5fd;margin-bottom:.25rem;transition:transform .3s}.cv-contact-card:hover svg{transform:scale(1.15)}.cv-contact-card-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.cv-contact-card-value{font-size:.9rem;font-weight:600;color:#e2e8f0}.cv-footer{padding:2.5rem 2rem;background:var(--bg-white);border-top:1px solid var(--border)}.cv-footer-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.cv-footer-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.9rem;color:var(--text)}.cv-footer-links{display:flex;gap:1.5rem}.cv-footer-links a{color:var(--text-light);text-decoration:none;font-size:.82rem;font-weight:500;transition:color .2s}.cv-footer-links a:hover{color:var(--primary)}.cv-footer-copy{color:var(--text-light);font-size:.78rem}.cv-testimonials{padding:4rem 2rem;background:linear-gradient(180deg,var(--bg),var(--bg-white))}.cv-testimonials-inner{max-width:1200px;margin:0 auto}.cv-testimonials-heading{text-align:center;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--text)}.cv-testimonials-sub{text-align:center;color:var(--text-light);font-size:.95rem;margin-bottom:2.5rem}.cv-testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.25rem;gap:1.25rem}.cv-testimonial{background:var(--bg-white);border:1px solid var(--border);border-radius:20px;padding:2rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:var(--card-shadow);transition:all .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.cv-testimonial:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),#8b5cf6,#06b6d4);opacity:0;transition:opacity .3s}.cv-testimonial:hover:before{opacity:1}.cv-testimonial:hover{transform:translateY(-6px);box-shadow:var(--card-shadow-hover);border-color:rgba(37,99,235,.1)}.cv-testimonial-stars{display:flex;gap:2px;color:#f59e0b}.cv-testimonial-text{font-size:.9rem;line-height:1.75;color:var(--text-secondary);flex-grow:1;font-style:italic}.cv-testimonial-author{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid var(--border-light)}.cv-testimonial-avatar{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;flex-shrink:0}.cv-testimonial-name{font-size:.85rem;font-weight:700;color:var(--text);margin:0}.cv-testimonial-role{font-size:.75rem;color:var(--text-light);margin:0}@media (max-width:1024px){.cv-main{grid-template-columns:1fr;gap:2.5rem}.cv-highlights-grid,.cv-testimonials-grid{grid-template-columns:repeat(2,1fr)}.cv-hero-inner{gap:2.5rem}}@media (max-width:768px){.cv-nav-links{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:center;gap:.5rem;z-index:105}.cv-nav-links-open{display:flex}.cv-nav-links-open a{font-size:1.25rem;padding:.85rem 2rem}.cv-nav-hamburger{display:flex}.cv-hero{padding:7.5rem 1.25rem 5rem;min-height:auto}.cv-hero-inner{flex-direction:column;text-align:center;gap:2rem}.cv-hero-avatar{width:110px;height:110px;border-radius:22px}.cv-hero-avatar-ring{inset:-5px;border-radius:26px}.cv-hero-info h1{font-size:2.25rem}.cv-hero-title{justify-content:center;font-size:1rem}.cv-hero-subtitle{font-size:.9rem}.cv-hero-badge,.cv-hero-subtitle{margin-left:auto;margin-right:auto}.cv-hero-contact{flex-direction:column;align-items:center}.cv-hero-btn,.cv-hero-contact{justify-content:center;width:100%}.cv-hero-btn{max-width:320px}.cv-stats{padding:2rem 1.25rem}.cv-stats-inner{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-item{padding:1.25rem .75rem;border-radius:14px}.stat-number{font-size:2rem}.cv-highlights{padding:1.5rem 1.25rem 3rem}.cv-highlights-heading{font-size:1.4rem;margin-bottom:1.5rem}.cv-highlights-grid{grid-template-columns:1fr;gap:1rem}.cv-testimonials{padding:3rem 1.25rem}.cv-testimonials-heading{font-size:1.4rem}.cv-testimonials-sub{font-size:.88rem;margin-bottom:2rem}.cv-testimonials-grid{grid-template-columns:1fr;gap:1rem}.cv-testimonial{padding:1.5rem;border-radius:14px}.cv-testimonial-text{font-size:.87rem}.cv-highlight-card{padding:1.5rem;border-radius:14px}.cv-main{padding:2rem 1.25rem;gap:2rem}.cv-profile-content{padding:1.25rem;border-radius:14px}.cv-profile-content p{font-size:.9rem}.cv-timeline{padding-left:22px}.cv-timeline:before{left:4px}.cv-timeline>.scroll-reveal:before{left:-22px;width:12px;height:12px;border-width:2.5px;top:1.5rem}.cv-job{padding:1.25rem;border-radius:14px}.cv-job-header{flex-direction:column;gap:.5rem}.cv-job-date{align-self:flex-start}.cv-job h3{font-size:.95rem}.cv-job li{font-size:.82rem;padding-left:1rem}.cv-job li:before{width:5px;height:5px;top:.6rem}.cv-job-tags{gap:.3rem}.cv-sidebar-card{padding:1.25rem;border-radius:14px}.cv-contact-section{padding:3.5rem 1.25rem}.cv-contact-inner h2{font-size:1.75rem}.cv-contact-inner p{font-size:.95rem;margin-bottom:2rem}.cv-contact-cards{grid-template-columns:1fr;gap:.75rem}.cv-contact-card{padding:1.5rem 1rem;border-radius:14px;flex-direction:row;gap:1rem;text-align:left}.cv-contact-card svg{margin-bottom:0;flex-shrink:0}.cv-contact-card-label{font-size:.68rem}.cv-footer{padding:2rem 1.25rem}.cv-footer-links{gap:1rem;flex-wrap:wrap;justify-content:center}.back-to-top{bottom:1.25rem;right:1.25rem;width:40px;height:40px;border-radius:12px}}@media (max-width:480px){.cv-hero{padding:7rem 1rem 4rem}.cv-hero-avatar{width:90px;height:90px;border-radius:20px}.cv-hero-avatar-ring{inset:-4px;border-radius:24px}.cv-hero-info h1{font-size:1.85rem}.cv-hero-title{font-size:.9rem;flex-wrap:wrap}.cv-hero-subtitle{font-size:.85rem}.cv-hero-btn{max-width:100%;padding:.65rem 1.25rem;font-size:.84rem}.cv-nav-brand-text{display:none}.cv-stats{padding:1.5rem 1rem}.cv-stats-inner{gap:.5rem}.stat-item{padding:1rem .5rem}.stat-number{font-size:1.75rem}.stat-label{font-size:.7rem}.cv-highlights{padding:1rem 1rem 2.5rem}.cv-highlights-heading{font-size:1.25rem}.cv-highlight-card{padding:1.25rem}.cv-highlight-card h3{font-size:.95rem}.cv-highlight-card p{font-size:.82rem}.cv-main{padding:1.5rem 1rem}.cv-profile-content{padding:1rem}.cv-profile-content p{font-size:.87rem;line-height:1.7}.cv-job{padding:1rem}.cv-job h3{font-size:.9rem}.cv-job-company{font-size:.82rem}.cv-job-date{font-size:.7rem;padding:.25rem .6rem}.cv-job li{font-size:.8rem;line-height:1.6}.cv-job-tags span{font-size:.65rem;padding:.15rem .5rem}.cv-job-description{font-size:.82rem}.cv-sidebar-card{padding:1rem}.cv-section-title{font-size:.72rem}.cv-section-icon{width:26px;height:26px}.cv-section-icon svg{width:14px;height:14px}.cv-skill-tag{font-size:.74rem;padding:.25rem .55rem}.skill-bar-label{font-size:.78rem}.cv-contact-section{padding:3rem 1rem}.cv-contact-inner h2{font-size:1.5rem}.cv-contact-inner p{font-size:.88rem}.cv-contact-card{padding:1.25rem 1rem}.cv-contact-card-value{font-size:.82rem}.cv-footer-links{gap:.75rem}.cv-footer-links a{font-size:.78rem}}@media (max-width:360px){.cv-hero-info h1{font-size:1.6rem}.cv-hero-title{font-size:.82rem}.stat-number{font-size:1.5rem}.cv-highlights-heading{font-size:1.1rem}.cv-contact-inner h2{font-size:1.35rem}}