*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#2563eb;--primary-hover:#3b82f6;--primary-light:#60a5fa;--secondary-color:#1e40af;--text-primary:#1f2937;--text-secondary:#4b5563;--text-tertiary:#374151;--gradient-primary-color:#acd68b;--gradient-secondary-color:#6db56d;--language-gradient-start:#8b5cf6;--language-gradient-end:#6366f1;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-hover:#f3f4f6;--border-color:#e5e7eb;--border-hover:#d1d5db;--shadow-color:#00000014;--shadow-primary:#2563eb4d;--shadow-primary-lg:#2563eb66;--shadow-primary-sm:#3b82f626;--sidebar-width:320px;--transition:all .3s ease;color-scheme:light dark;--dark-primary-color:#3b82f6;--dark-primary-hover:#60a5fa;--dark-primary-light:#93c5fd;--dark-secondary-color:#60a5fa;--dark-text-primary:#f3f4f6;--dark-text-secondary:#d1d5db;--dark-text-tertiary:#e5e7eb;--dark-gradient-primary:#86efac;--dark-gradient-secondary:#4ade80;--dark-bg-primary:#1f2937;--dark-bg-secondary:#111827;--dark-bg-hover:#374151;--dark-border-color:#374151;--dark-border-hover:#4b5563;--dark-shadow-color:#0000004d;--dark-shadow-primary:#3b82f64d;--dark-shadow-primary-lg:#3b82f666;--dark-shadow-primary-sm:#3b82f633}[data-theme=dark]{--primary-color:var(--dark-primary-color);--primary-hover:var(--dark-primary-hover);--primary-light:var(--dark-primary-light);--secondary-color:var(--dark-secondary-color);--text-primary:var(--dark-text-primary);--text-secondary:var(--dark-text-secondary);--text-tertiary:var(--dark-text-tertiary);--gradient-primary-color:var(--dark-gradient-primary);--gradient-secondary-color:var(--dark-gradient-secondary);--bg-primary:var(--dark-bg-primary);--bg-secondary:var(--dark-bg-secondary);--bg-hover:var(--dark-bg-hover);--border-color:var(--dark-border-color);--border-hover:var(--dark-border-hover);--shadow-color:var(--dark-shadow-color);--shadow-primary:var(--dark-shadow-primary);--shadow-primary-lg:var(--dark-shadow-primary-lg);--shadow-primary-sm:var(--dark-shadow-primary-sm)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--primary-color:var(--dark-primary-color);--primary-hover:var(--dark-primary-hover);--primary-light:var(--dark-primary-light);--secondary-color:var(--dark-secondary-color);--text-primary:var(--dark-text-primary);--text-secondary:var(--dark-text-secondary);--text-tertiary:var(--dark-text-tertiary);--gradient-primary-color:var(--dark-gradient-primary);--gradient-secondary-color:var(--dark-gradient-secondary);--bg-primary:var(--dark-bg-primary);--bg-secondary:var(--dark-bg-secondary);--bg-hover:var(--dark-bg-hover);--border-color:var(--dark-border-color);--border-hover:var(--dark-border-hover);--shadow-color:var(--dark-shadow-color);--shadow-primary:var(--dark-shadow-primary);--shadow-primary-lg:var(--dark-shadow-primary-lg);--shadow-primary-sm:var(--dark-shadow-primary-sm)}}body{color:var(--text-primary);background:var(--bg-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6}.container{min-height:100vh;display:block}.page{max-width:900px;margin:0 auto;padding:0 2rem}.theme-toggle{cursor:pointer}.theme-toggle .theme-toggle-label{pointer-events:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-to-content{z-index:9999;background:var(--secondary-color);color:var(--bg-secondary);border-radius:0 0 .5rem .5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:1rem}.skip-to-content:focus{top:0}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.hidden{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.section.js-animate,.section.visible{opacity:1!important;transform:none!important}.avatar{box-shadow:0 0 20px var(--shadow-primary)!important;animation:none!important}.skill-tag:hover,.skill-category:hover,.social-link:hover,.btn-primary:hover,.btn-secondary:hover,.btn-download:hover,.back-to-top:hover,.category-filter-btn:hover{transform:none!important}}.hero{border-bottom:1px solid var(--border-color);margin-bottom:2.5rem;padding:3rem 0 2rem}.hero-top{justify-content:space-between;align-items:center;gap:2rem;display:flex}.hero-text{flex-direction:column;flex:1;display:flex}.hero-name{color:var(--text-primary);margin-bottom:.15rem;font-size:2rem;font-weight:800;line-height:1.2}.hero-title{color:var(--text-secondary);margin-bottom:.25rem;font-size:1.1rem;font-weight:500}.hero-location{color:var(--text-secondary);margin-bottom:.75rem;font-size:.85rem}.hero-contact{font-style:normal}.hero-location-link{color:var(--text-secondary);transition:var(--transition);text-decoration:none}.print-contact{display:none}.print-sep{color:#9ca3af;margin:0 .5em}.hero-location-link:hover{color:var(--primary-color)}.hero-links{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.hero-btn{white-space:nowrap;border-radius:2rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s;display:inline-flex}.hero-btn i{font-size:.9rem}.hero-btn-outline{background:var(--bg-primary);color:var(--text-primary);border:1.5px solid var(--border-color)}.hero-btn-outline:hover{border-color:var(--primary-color);color:var(--primary-color);box-shadow:0 4px 12px var(--shadow-primary-sm);transform:translateY(-2px)}.hero-btn-filled{background:var(--primary-color);color:#fff;border:1.5px solid var(--primary-color)}[data-theme=dark] .hero-btn-filled{background:#1d4ed8;border-color:#1d4ed8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-btn-filled{background:#1d4ed8;border-color:#1d4ed8}}.hero-btn-filled:hover{background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:0 4px 12px var(--shadow-primary);transform:translateY(-2px)}.hero-photo img{object-fit:cover;border:4px solid var(--primary-color);border-radius:50%;flex-shrink:0;width:120px;height:120px;animation:3s ease-in-out infinite avatarGlow}@keyframes avatarGlow{0%,to{box-shadow:0 0 20px var(--shadow-primary)}50%{box-shadow:0 0 30px var(--shadow-primary-lg)}}.languages-bar{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem 1.5rem;margin-top:1.5rem;display:grid}.language-item{flex-direction:column;gap:.2rem;display:flex}.language-item-link{transition:var(--transition);border-radius:.25rem;margin:-.2rem;padding:.2rem;text-decoration:none}.language-item-link:hover{background:var(--bg-hover)}.language-item-link:hover .language-level{color:var(--primary-color)}.language-info{justify-content:space-between;align-items:baseline;display:flex}.language-name{color:var(--text-primary);font-size:.8rem;font-weight:600}.language-level{color:var(--text-secondary);font-size:.7rem;font-weight:500}.lang-link-icon{opacity:.6;font-size:.6rem}.language-item-link:hover .lang-link-icon{opacity:1}.language-bar{background:var(--bg-secondary);border-radius:2px;height:4px;overflow:hidden}.language-progress{background:linear-gradient(90deg, var(--primary-color), var(--primary-hover));border-radius:2px;height:100%;transition:width .6s}.content{padding:0 0 3rem}@media (width<=768px){.hero-top{text-align:center;flex-direction:column-reverse;align-items:center;gap:1.25rem}.hero-links{flex-wrap:wrap;justify-content:center}.hero-photo img{width:100px;height:100px}.hero-name{font-size:1.75rem}.page{padding:0 1.25rem}.languages-bar{grid-template-columns:repeat(2,1fr)}}.section{opacity:1;margin-bottom:3.5rem;transition:opacity .6s,transform .6s;transform:none}.section.js-animate{opacity:0;transform:translateY(30px)}.section#qualifications{margin-bottom:2.5rem}.section#experience{margin-bottom:4.5rem}.section#skills{margin-top:1rem;margin-bottom:4.5rem}.section.visible{opacity:1;transform:translateY(0)}.section>*{animation:.6s fadeInSection}@keyframes fadeInSection{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.section-title{color:var(--text-primary);letter-spacing:.01em;margin-bottom:1.25rem;padding-bottom:.75rem;font-size:1.5rem;font-weight:800;line-height:1.3;position:relative}.section-title:after{content:"";background:var(--primary-color);width:80px;height:3px;position:absolute;bottom:0;left:0}.section-text{color:var(--text-secondary);margin-bottom:.75rem;font-size:1rem;line-height:1.7}.qualifications-list{gap:1rem;padding:0;list-style:none;display:grid}.qualifications-list li{color:var(--text-secondary);padding-left:2rem;font-size:1.05rem;line-height:1.8;position:relative}.qualifications-list li:before{content:"";font:var(--fa-font-solid);color:var(--primary-color);font-size:1.1rem;line-height:1.8;position:absolute;top:0;left:0}.cv-footer{border-top:1px solid var(--border-color);text-align:center;margin-top:3rem;padding-top:1.5rem}.cv-footer-text{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.cv-footer-text a{color:var(--primary-color);font-weight:500;text-decoration:none}.cv-footer-text a:hover{color:var(--primary-hover);text-decoration:underline}.cv-footer-text kbd{color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 1px 1px var(--shadow-color);border-radius:.25rem;padding:.15rem .4rem;font-family:inherit;font-size:.8rem;display:inline-block}@media print{.cv-footer{display:none!important}}.timeline-item{border-left:2px solid var(--border-color);margin-bottom:3.5rem;padding-left:2rem;position:relative}.timeline-item:before{content:"";background:var(--primary-color);z-index:1;border-radius:50%;width:10px;height:10px;position:absolute;top:.5rem;left:-6px}.timeline-item:after{content:"";background:var(--bg-secondary);z-index:0;width:2px;height:.5rem;position:absolute;top:0;left:-2px}.timeline-date{color:var(--secondary-color);margin-bottom:.5rem;font-size:.85rem;font-weight:600}.timeline-title{color:var(--text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600;line-height:1.4}.timeline-item:not(.company-group) .timeline-title{margin-top:.5rem;margin-bottom:.5rem;font-size:.95rem}.timeline-company{color:var(--text-primary);margin-bottom:0;font-size:1.05rem;font-weight:600;line-height:1.4}.timeline-location{color:var(--text-secondary);margin-top:0;margin-bottom:.75rem;font-size:.9rem;font-style:italic;line-height:1.3}.company-position{color:var(--text-primary);margin-top:0;margin-bottom:.25rem;font-size:.95rem;font-weight:600;line-height:1.3}.company-group .timeline-location{margin-top:0;margin-bottom:1rem;line-height:1.3}.timeline-project{color:var(--secondary-color);margin-top:.25rem;margin-bottom:.5rem;font-size:.95rem;font-weight:600}.timeline-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.timeline-description li{margin-bottom:.4rem;margin-left:1.25rem;line-height:1.6}.experience-section{margin-bottom:1rem;animation:.3s fadeIn}.experience-section-title{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.company-group .timeline-company{color:var(--text-primary);cursor:pointer;transition:var(--transition);border-radius:.5rem;margin-bottom:.5rem;margin-left:-.5rem;margin-right:-.5rem;padding:.5rem;font-size:1.05rem;font-weight:600}.company-group .timeline-company:hover{color:var(--primary-hover);background:var(--bg-hover)}.company-collapsed .position-timeline{display:none}.position-timeline{border-left:2px solid var(--border-color);margin-top:1rem;padding-left:1.5rem;position:relative}.position-item{margin-bottom:2rem;position:relative}.position-date{color:var(--secondary-color);margin-bottom:.5rem;font-size:.85rem;font-weight:600}.position-item .timeline-title{font-size:1rem}.position-item .timeline-title:hover{color:var(--primary-hover)}.position-item:last-child{margin-bottom:0}.collapse-chevron{color:var(--primary-color);flex-shrink:0;margin-left:.5rem;font-size:1rem;transition:transform .3s}.collapsible-header:hover .collapse-chevron{color:var(--primary-hover);transform:scale(1.15)}.position-item.collapsed .experience-section,.position-item.collapsed .details-toggle,.position-item.collapsed .timeline-project,.experience-section.summary-section{display:none}.experience-section.summary-section.visible{display:block}.collapsible-header{cursor:pointer;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.details-toggle{color:var(--primary-color);cursor:pointer;transition:var(--transition);background:0 0;border:none;align-items:center;gap:.4rem;margin-top:.5rem;padding:.25rem 0;font-size:.85rem;font-weight:500;display:inline-flex}.details-toggle:hover{color:var(--primary-hover)}.details-toggle i{font-size:.7rem}.tech-tags{flex-wrap:wrap;gap:.4rem;margin-top:.25rem;margin-bottom:1rem;padding:0;list-style:none;display:flex}.tech-tag{color:#1a56db;letter-spacing:.3px;white-space:nowrap;background:#e8f0fe;border:1px solid #c3d9f7;border-radius:1rem;padding:.2rem .6rem;font-size:.8rem;font-weight:500;display:inline-block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tech-tag{color:#93c5fd;background:#1e3a5f;border-color:#2d5a8e}}[data-theme=dark] .tech-tag{color:#93c5fd;background:#1e3a5f;border-color:#2d5a8e}.early-career{border-top:2px solid var(--border-color);margin-top:3rem;padding-top:2rem}.early-career-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.1rem;font-weight:600}.early-career-list{flex-direction:column;gap:1rem;display:flex}.early-career-item{align-items:baseline;gap:1.5rem;display:flex}.early-career-date{color:var(--secondary-color);white-space:nowrap;min-width:140px;font-size:.85rem;font-weight:600}.early-career-content{flex-wrap:wrap;align-items:baseline;gap:.25rem;display:flex}.early-career-role{color:var(--text-primary);font-size:.95rem;font-weight:600}.early-career-separator{color:var(--text-secondary);margin:0 .25rem}.early-career-company{color:var(--text-primary);font-size:.95rem}.early-career-location{color:var(--text-secondary);width:100%;margin-top:.1rem;font-size:.85rem;font-style:italic}.early-career-description{color:var(--text-secondary);width:100%;margin:.2rem 0 0;font-size:.85rem;line-height:1.5}@media (width<=768px){.early-career-item{flex-direction:column;gap:.25rem}.early-career-date{min-width:auto}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.promotion-badge{color:#fff;background:linear-gradient(135deg, var(--gradient-primary-color), var(--gradient-secondary-color));text-transform:uppercase;letter-spacing:.5px;border-radius:1rem;margin-left:.75rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;animation:2s ease-in-out infinite promotionPulse;display:inline-block;box-shadow:0 2px 8px #6cb56d4d}.promotion-indicator{color:var(--gradient-secondary-color);border:1px solid var(--gradient-secondary-color);background:#6cb56d1a;border-radius:1rem;margin-left:.5rem;padding:.25rem .75rem;font-size:.85rem;font-weight:600;display:inline-block}@keyframes promotionPulse{0%,to{box-shadow:0 2px 8px #6cb56d4d}50%{box-shadow:0 2px 16px #6cb56d80}}.skills-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;transition:grid-template-columns .3s;display:grid;container:skills-grid/inline-size}.skill-category{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:.5rem;padding:1rem;transition:all .3s;container:skill-card/inline-size}.skill-category:hover{border-color:var(--border-hover);box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.skill-category-title{color:var(--text-primary);margin-bottom:.5rem;font-size:.9rem;font-weight:600}.skill-tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.skill-tag{background:var(--bg-secondary);color:var(--text-primary);transition:var(--transition);border-radius:2rem;padding:.3rem .6rem;font-size:.85rem;font-weight:500}.skill-tag:hover{background:var(--primary-hover);color:#fff;box-shadow:0 2px 8px var(--shadow-primary);transform:translateY(-2px)}.skill-category.color-blue .skill-tag{color:#1e40af;background:#eff6ff}.skill-category.color-blue .skill-tag:hover{color:#fff;background:#2563eb}.skill-category.color-purple .skill-tag{color:#5b21b6;background:#f5f3ff}.skill-category.color-purple .skill-tag:hover{color:#fff;background:#7c3aed}.skill-category.color-green .skill-tag{color:#166534;background:#f0fdf4}.skill-category.color-green .skill-tag:hover{color:#fff;background:#16a34a}.skill-category.color-amber .skill-tag{color:#92400e;background:#fffbeb}.skill-category.color-amber .skill-tag:hover{color:#fff;background:#d97706}.skill-category.color-rose .skill-tag{color:#9f1239;background:#fff1f2}.skill-category.color-rose .skill-tag:hover{color:#fff;background:#e11d48}.skill-category.color-teal .skill-tag{color:#115e59;background:#f0fdfa}.skill-category.color-teal .skill-tag:hover{color:#fff;background:#0d9488}.skill-category.color-slate .skill-tag{color:#334155;background:#f1f5f9}.skill-category.color-slate .skill-tag:hover{color:#fff;background:#475569}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .skill-category.color-blue .skill-tag{color:#93c5fd;background:#1f3570}:root:not([data-theme=light]) .skill-category.color-purple .skill-tag{color:#c4b5fd;background:#2a2354}:root:not([data-theme=light]) .skill-category.color-green .skill-tag{color:#86efac;background:#1c3529}:root:not([data-theme=light]) .skill-category.color-amber .skill-tag{color:#fcd34d;background:#3a3020}:root:not([data-theme=light]) .skill-category.color-rose .skill-tag{color:#fda4af;background:#3d1f2a}:root:not([data-theme=light]) .skill-category.color-teal .skill-tag{color:#5eead4;background:#1b3735}:root:not([data-theme=light]) .skill-category.color-slate .skill-tag{color:#cbd5e1;background:#283040}}[data-theme=dark] .skill-category.color-blue .skill-tag{color:#93c5fd;background:#1f3570}[data-theme=dark] .skill-category.color-purple .skill-tag{color:#c4b5fd;background:#2a2354}[data-theme=dark] .skill-category.color-green .skill-tag{color:#86efac;background:#1c3529}[data-theme=dark] .skill-category.color-amber .skill-tag{color:#fcd34d;background:#3a3020}[data-theme=dark] .skill-category.color-rose .skill-tag{color:#fda4af;background:#3d1f2a}[data-theme=dark] .skill-category.color-teal .skill-tag{color:#5eead4;background:#1b3735}[data-theme=dark] .skill-category.color-slate .skill-tag{color:#cbd5e1;background:#283040}.skills-filter-container{background:var(--bg-secondary);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);z-index:10;border-radius:.5rem;flex-direction:column;gap:1rem;margin-bottom:2rem;padding:1rem;display:flex;position:sticky;top:1rem}.skills-search-box{background:var(--bg-primary);border:2px solid var(--border-color);transition:var(--transition);border-radius:.5rem;align-items:center;padding:.75rem 1rem;display:flex;position:relative}.skills-search-box:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.skills-search-box i.fa-search{color:var(--text-secondary);margin-right:.75rem;font-size:1rem}.skills-search-box input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.skills-search-box input::placeholder{color:var(--text-secondary)}.clear-search{background:var(--bg-secondary);cursor:pointer;width:24px;height:24px;color:var(--text-secondary);transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:.5rem;display:flex}.clear-search:hover{background:var(--primary-hover);color:#fff}.skills-category-filters{flex-wrap:wrap;gap:.5rem;display:flex}.category-filter-btn{background:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:.5rem;font-size:.9rem;font-weight:500;display:flex}.category-filter-btn i{font-size:.9rem}.category-filter-btn:hover{border-color:var(--primary-hover);color:var(--primary-hover);box-shadow:0 2px 8px var(--shadow-primary-sm);transform:translateY(-2px)}.category-filter-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.skills-no-results{text-align:center;color:var(--text-secondary);grid-column:1/-1;padding:3rem 2rem}.skills-no-results i{opacity:.5;margin-bottom:1rem;font-size:3rem}.skills-no-results p{font-size:1.1rem}@container skills-grid (width<=600px){.skill-category{padding:.75rem}.skill-category-title{font-size:.9rem}.skill-tag{padding:.3rem .6rem;font-size:.8rem}}@container skill-card (width<=200px){.skill-tags{gap:.35rem}.skill-tag{padding:.25rem .5rem;font-size:.75rem}}.skills-toggle-container{text-align:center;margin-top:1.5rem;display:none}.skills-show-all-btn{background:var(--bg-primary);border:2px solid var(--border-color);color:var(--primary-color);cursor:pointer;transition:var(--transition);border-radius:2rem;align-items:center;gap:.5rem;padding:.6rem 1.5rem;font-size:.9rem;font-weight:500;display:inline-flex}.skills-show-all-btn:hover{border-color:var(--primary-color);background:var(--primary-light,#2563eb0d);box-shadow:0 4px 12px var(--shadow-primary-sm);transform:translateY(-2px)}.skills-show-all-btn i{transition:transform .3s}.skills-show-all-btn[aria-expanded=true] i{transform:rotate(180deg)}.skills-grid.skills-expanded+.skills-toggle-container .skills-show-all-btn span:after{content:""}.cert-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.certification-item{border:1px solid var(--border-color);transition:var(--transition);border-radius:.5rem;align-items:center;gap:.75rem;padding:.6rem .75rem;text-decoration:none;display:flex}.certification-item:hover{background:var(--bg-hover);border-color:var(--primary-color)}.certification-item:hover .certification-link-icon{color:var(--primary-color);transform:translate(2px,-2px)}.certification-logo{object-fit:contain;flex-shrink:0;width:36px;height:36px}.certification-content{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.certification-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.certification-date{color:var(--text-secondary);font-size:.75rem;font-weight:500}.certification-link-icon{color:var(--text-secondary);transition:var(--transition);flex-shrink:0;font-size:.85rem;line-height:1}@media (width<=768px){.cert-grid{grid-template-columns:1fr}}.contact-buttons{gap:1rem;margin-top:2rem;display:flex}.btn{transition:var(--transition);text-align:center;border-radius:.5rem;padding:.875rem 2rem;font-weight:600;text-decoration:none;display:inline-block}.btn i{margin-right:.5rem}.btn-primary{background:var(--secondary-color);color:var(--bg-secondary)}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 6px 16px var(--shadow-primary-lg);transform:translateY(-2px)}.btn-secondary{color:var(--secondary-color);border:2px solid var(--secondary-color);background:0 0}.btn-secondary:hover{background:var(--secondary-color);color:var(--bg-secondary);box-shadow:0 4px 12px var(--shadow-primary);transform:translateY(-2px)}.back-to-top{background:var(--primary-color);color:#fff;cursor:pointer;opacity:0;visibility:hidden;width:50px;height:50px;box-shadow:0 4px 12px var(--shadow-primary);z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;transition:all .3s;display:flex;position:fixed;bottom:2rem;right:2rem}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:var(--primary-hover);box-shadow:0 6px 16px var(--shadow-primary-lg);transform:translateY(-4px)}.back-to-top:active{transform:translateY(-2px)}.print-modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.print-modal-overlay[hidden]{display:none}.print-modal{background:var(--bg-primary);text-align:center;border-radius:1rem;width:90%;max-width:420px;padding:2rem;position:relative;box-shadow:0 20px 60px #0000004d}.print-modal h2{color:var(--text-primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.print-modal p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem}.print-modal-actions{justify-content:center;gap:.75rem;display:flex}.print-modal-actions .btn{cursor:pointer;border:none;padding:.75rem 1.5rem;font-size:.9rem}.print-modal-actions .btn-secondary{border:2px solid var(--secondary-color);cursor:pointer}.print-modal-close{color:var(--text-secondary);cursor:pointer;width:32px;height:32px;transition:var(--transition);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;top:.75rem;right:.75rem}.print-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}@media (width>=1920px){.skills-grid{grid-template-columns:repeat(4,1fr)}}@media (width>=769px) and (width<=1024px){.skills-grid{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (width<=1024px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.section-title{font-size:1.75rem}.skills-grid,.cert-grid{grid-template-columns:1fr}.contact-buttons{flex-direction:column}.btn{width:100%}.back-to-top{width:45px;height:45px;font-size:1.1rem;bottom:1rem;right:1rem}.skills-filter-container{padding:.75rem;position:static}}@media (width<=480px){.section-title{font-size:1.5rem}.section-text{font-size:1rem}.timeline-item{padding-left:1.5rem}.cert-grid{grid-template-columns:1fr}}@media (width<=768px){.skills-category-filters{max-height:200px;overflow-y:auto}.category-filter-btn{padding:.4rem .75rem;font-size:.8rem}}@media print{@page{size:portrait;margin:8mm}*,:before,:after{box-shadow:none!important;text-shadow:none!important;transition:none!important;animation:none!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:10pt;line-height:1.4;color:#1f2937!important;background:#fff!important}.hero-photo,.hero-btn,.back-to-top,.details-toggle,.collapse-chevron,.skills-filter-container,.skills-toggle-container,.skip-to-content,.theme-toggle,.cv-footer,.print-modal-overlay,.collapsible-header .collapse-chevron,.promotion-badge,.lang-link-icon{display:none!important}.page{max-width:100%!important;margin:0!important;padding:0!important}.content{padding:0!important}.hero{border-bottom:none!important;margin-bottom:10pt!important;padding:0 0 8pt!important}.hero-top{gap:0!important}.hero-name{color:#000!important;margin-bottom:2pt!important;font-size:18pt!important;font-weight:800!important}.hero-title{color:#333!important;margin-bottom:4pt!important;font-size:11pt!important;font-weight:500!important}.hero-contact{color:#444!important;font-size:9pt!important}.hero-location{margin-bottom:0!important;font-size:9pt!important}.hero-location-link{color:#444!important;text-decoration:none!important}nav.hero-links{display:none!important}.print-contact{color:#444!important;margin-top:3pt!important;font-size:9pt!important;display:block!important}.languages-bar{flex-wrap:wrap;justify-content:center!important;gap:4pt 16pt!important;margin-top:6pt!important;display:flex!important}.language-item,.language-item-link{flex-direction:row!important;align-items:center!important;gap:4pt!important;margin:0!important;padding:0!important}.language-item-link{color:inherit!important;text-decoration:none!important}.language-info{gap:4pt!important}.language-name{font-size:8.5pt!important;font-weight:600!important}.language-level{color:#666!important;font-size:8pt!important}.language-bar{display:none!important}.section{page-break-inside:auto;opacity:1!important;margin-bottom:12pt!important;transform:none!important}.section.js-animate{opacity:1!important;transform:none!important}.section>*{animation:none!important}.section-title{page-break-after:avoid;break-after:avoid;color:#000!important;border-bottom:1.5pt solid #000!important;margin-bottom:8pt!important;padding-bottom:4pt!important;font-size:13pt!important;font-weight:700!important}.section-title:after{display:none!important}.section-text{color:#333!important;margin-bottom:4pt!important;font-size:9.5pt!important;line-height:1.5!important}#experience{page-break-inside:auto}#experience .section-title{page-break-after:avoid;break-after:avoid}#experience .timeline-item:first-of-type{page-break-before:avoid;break-before:avoid;page-break-inside:auto}.timeline-item{page-break-inside:auto;border-left:none!important;margin-bottom:14pt!important;padding-left:0!important}.timeline-item:before,.timeline-item:after{display:none!important}.timeline-date,.position-date{color:#333!important;margin-bottom:1pt!important;font-size:8.5pt!important;font-weight:600!important}.timeline-company{color:#000!important;cursor:default!important;margin-bottom:1pt!important;margin-left:0!important;padding:0!important;font-size:10.5pt!important;font-weight:700!important}.timeline-company:hover{color:#000!important;background:0 0!important}.company-position{color:#333!important;margin-bottom:1pt!important;font-size:9.5pt!important}.position-item .timeline-title{color:#000!important;margin-bottom:0!important;font-size:9.5pt!important;font-weight:600!important;display:inline!important}.position-item .timeline-project{color:#333!important;margin-bottom:3pt!important;font-size:9pt!important;display:inline!important}.position-item .timeline-project:before{content:" — "!important}.timeline-title{color:#000!important;margin-bottom:2pt!important;font-size:9.5pt!important;font-weight:600!important}.timeline-location{color:#666!important;margin-bottom:4pt!important;font-size:8.5pt!important;font-style:italic!important}.timeline-project{color:#333!important;margin-bottom:3pt!important;font-size:9pt!important}.timeline-description{color:#333!important;font-size:9pt!important;line-height:1.4!important}.timeline-description li{margin-bottom:2pt!important;margin-left:12pt!important;line-height:1.4!important}.position-timeline{border-left:1pt solid #ccc!important;margin-top:6pt!important;padding-left:10pt!important}.position-item{page-break-inside:auto;margin-bottom:8pt!important}.position-item.collapsed .timeline-project{opacity:1!important;visibility:visible!important;height:auto!important;display:inline!important;overflow:visible!important}.company-collapsed .position-timeline{display:block!important}.experience-section.summary-section{display:none!important}.experience-section{margin-bottom:4pt!important;display:none!important}.experience-section.experience-results{margin-bottom:4pt!important;display:block!important}.experience-section.experience-results>.experience-section-title{display:none!important}.tech-tags{gap:0!important;margin-top:2pt!important;margin-bottom:4pt!important;padding:0!important;display:block!important}.tech-tags:before{content:"Technologies: "!important;color:#333!important;font-size:8.5pt!important;font-weight:600!important}.tech-tag{color:#333!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important;font-size:8.5pt!important;font-weight:400!important;display:inline!important}.tech-tag:after{content:", "!important}.tech-tag:last-child:after{content:""!important}.early-career{border-top:1pt solid #ccc!important;margin-top:12pt!important;padding-top:8pt!important}.early-career-title{margin-bottom:4pt!important;font-size:10pt!important}.early-career-list{gap:2pt!important}.early-career-item{flex-direction:row!important;align-items:baseline!important;gap:8pt!important;margin-bottom:0!important;display:flex!important}.early-career-date{white-space:nowrap!important;color:#333!important;min-width:85pt!important;font-size:8pt!important}.early-career-content{display:inline!important}.early-career-role{font-size:9pt!important}.early-career-separator{font-size:0!important}.early-career-separator:before{content:" — "!important;font-size:9pt!important}.early-career-company{font-size:9pt!important}.early-career-location,.early-career-description{display:none!important}#education .timeline-item{margin-bottom:0!important}#education .timeline-item>.timeline-date,#education .timeline-item>.timeline-company,#education .timeline-item>.timeline-location{display:none!important}#education .position-timeline{border-left:none!important;margin-top:0!important;padding-left:0!important}#education .position-item{margin-bottom:2pt!important}#education .position-date{font-size:8pt!important;display:inline!important}#education .position-date:after{content:" — "!important}#education .timeline-title{font-size:8.5pt!important;display:inline!important}#education .timeline-title:after{content:", National Aviation University"!important;color:#555!important;font-size:8pt!important;font-weight:400!important}#education .timeline-item:not(.company-group)>.timeline-date{font-size:8pt!important;display:inline!important}#education .timeline-item:not(.company-group)>.timeline-date:after{content:" — "!important}#education .timeline-item:not(.company-group)>.timeline-title{font-size:8.5pt!important;display:inline!important}#education .timeline-item:not(.company-group)>.timeline-title:after{content:", National Aviation University"!important;color:#555!important;font-size:8pt!important;font-weight:400!important}#education .timeline-item:not(.company-group)>.timeline-location{display:none!important}.cert-grid{flex-direction:column!important;gap:3pt!important;display:flex!important}.certification-item{color:inherit!important;border:none!important;border-radius:0!important;flex-direction:row!important;align-items:baseline!important;gap:0!important;padding:0!important;text-decoration:none!important;display:flex!important}.certification-logo{display:none!important}.certification-content{display:inline!important}.certification-title{-webkit-line-clamp:unset!important;-webkit-box-orient:unset!important;font-size:8.5pt!important;font-weight:500!important;line-height:1.4!important;display:inline!important;overflow:visible!important}.certification-title:after{content:" — "!important;font-weight:400!important}.certification-date{color:#555!important;white-space:nowrap!important;font-size:8.5pt!important;display:inline!important}.certification-link-icon{display:none!important}#skills{page-break-inside:auto}.skills-extra{display:block!important}.skills-grid{flex-direction:column!important;gap:3pt!important;display:flex!important}.skill-category{background:0 0!important;border:none!important;border-radius:0!important;padding:0!important;display:block!important}.skill-category:hover{box-shadow:none!important;transform:none!important}.skill-category-title{color:#000!important;margin-bottom:0!important;font-size:8.5pt!important;font-weight:700!important;display:inline!important}.skill-category-title:after{content:":"!important;margin-left:-.3em!important;font-weight:400!important}.skill-category-title i{display:none!important}#skills .skill-tags{gap:0!important;margin:0!important;padding:0!important;display:inline!important}#skills .skill-tag{color:#333!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important;font-size:8.5pt!important;font-weight:400!important;display:inline!important}#skills .skill-tag:after{content:", "!important}#skills .skill-tag:last-child:after{content:""!important}a[href^=http]:after,a[href^=mailto]:after{content:none!important}a{color:#000!important;text-decoration:none!important}h2,h3,h4,h5{page-break-after:avoid;break-after:avoid}.section:first-child{page-break-before:avoid}}