:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--text-primary:#000;--text-secondary:#333;--text-tertiary:#666;--accent-color:#000;--border-color:#e0e0e0;--shadow-color:rgba(0,0,0,.1);--overlay-bg:hsla(0,0%,100%,.95);--success:#28a745;--error:#dc3545;--warning:#ffc107;--info:#17a2b8;--font-primary:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"Consolas","JetBrains Mono","Courier New",monospace;--font-size-base:16px;--line-height-base:1.6;--text-xs:0.75rem;--text-sm:0.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-6xl:4rem;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:5rem;--container-max:1200px;--navbar-height:70px;--section-padding:80px 0;--border-radius-sm:4px;--border-radius-md:8px;--border-radius-lg:12px;--border-radius-xl:20px;--border-radius-round:50%;--border-radius-pill:50px;--transition-fast:0.15s ease;--transition-time:0.3s;--transition-base:0.3s all;--transition-slow:0.5s ease;--z-negative:-1;--z-normal:1;--z-tooltip:10;--z-sticky:100;--z-fixed:1000;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip-high:1070;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--breakpoint-xxl:1400px;--animation-duration-fast:200ms;--animation-duration-base:300ms;--animation-duration-slow:600ms;--animation-duration-slower:1000ms}body[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-tertiary:#252525;--text-primary:#fff;--text-secondary:#b0b0b0;--text-tertiary:#888;--accent-color:#0080ff;--border-color:#333;--shadow-color:rgba(0,0,0,.5);--overlay-bg:hsla(0,0%,4%,.95)}body[data-theme=hacker]{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-tertiary:#111;--text-primary:#0f0;--text-secondary:#0c0;--text-tertiary:#090;--accent-color:#0f0;--border-color:#030;--shadow-color:rgba(0,255,0,.2);--overlay-bg:rgba(0,0,0,.95)}body[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--text-primary:#212529;--text-secondary:#495057;--text-tertiary:#6c757d;--accent-color:#06c;--border-color:#dee2e6;--shadow-color:rgba(0,0,0,.1);--overlay-bg:hsla(0,0%,100%,.95)}body[data-theme=custom]{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-tertiary:#252525;--text-primary:var(--custom-color,#fff);--text-secondary:var(--custom-color,#ccc);--text-tertiary:#888;--accent-color:var(--custom-color,#f0f);--border-color:#333;--shadow-color:rgba(0,0,0,.5);--overlay-bg:hsla(0,0%,4%,.95)}@media (max-width:768px){:root{--font-size-base:14px;--text-6xl:3rem;--text-5xl:2.5rem;--text-4xl:2rem;--text-3xl:1.75rem;--section-padding:60px 0}}@media (max-width:576px){:root{--text-6xl:2.5rem;--text-5xl:2rem;--text-4xl:1.75rem;--text-3xl:1.5rem;--navbar-height:60px}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-primary);font-size:var(--text-md);line-height:var(--line-height-base);overflow-x:hidden;position:relative;transition:background-color var(--transition-time),color var(--transition-time)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:var(--space-md)}h1{font-size:var(--text-6xl)}h2{font-size:var(--text-5xl)}h3{font-size:var(--text-4xl)}h4{font-size:var(--text-3xl)}h5{font-size:var(--text-2xl)}h6{font-size:var(--text-xl)}p{margin-bottom:var(--space-md)}a{color:var(--accent-color);text-decoration:underline;transition:color var(--transition-fast)}a:hover{background-color:var(--bg-primary);color:var(--text-primary)}ol,ul{list-style:none}img{display:block;height:auto;max-width:100%}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button{background:none;border:none;cursor:pointer}table{border-collapse:collapse;width:100%}code,pre{font-family:var(--font-mono)}code{border-radius:var(--border-radius-sm);font-size:.875em;padding:.125rem .375rem}code,pre{background:var(--bg-secondary)}pre{border-radius:var(--border-radius-md);overflow-x:auto;padding:var(--space-md)}pre code{background:none;padding:0}::selection{background:var(--accent-color);color:var(--bg-primary)}::-moz-selection{background:var(--accent-color);color:var(--bg-primary)}:focus{outline:2px solid var(--accent-color);outline-offset:2px}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--border-radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.container{margin:0 auto;max-width:var(--container-max);padding:0 var(--space-lg)}.lead{color:var(--text-secondary);font-size:var(--text-xl);margin-bottom:var(--space-xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent-color)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.skip-to-content{background:var(--accent-color);color:var(--bg-primary);left:0;padding:var(--space-sm) var(--space-md);position:absolute;text-decoration:none;top:-40px;z-index:var(--z-tooltip-high)}.skip-to-content:focus{top:0}.btn{align-items:center;border:2px solid transparent;border-radius:var(--border-radius-pill);cursor:pointer;display:inline-flex;font-weight:600;gap:var(--space-sm);justify-content:center;padding:var(--space-sm) var(--space-lg);text-decoration:none;transition:var(--transition-base)}.btn-primary{background:var(--accent-color);color:var(--bg-primary)}.btn-primary:hover{box-shadow:0 10px 20px var(--shadow-color);transform:translateY(-2px)}.btn-secondary{background:transparent;border-color:var(--border-color);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--accent-color);color:var(--accent-color)}.badge,.btn-sm{font-size:var(--text-sm);padding:var(--space-xs) var(--space-md)}.badge{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-pill);display:inline-flex;font-weight:500;gap:var(--space-xs);transition:var(--transition-base)}.badge:hover{border-color:var(--accent-color);transform:translateY(-2px)}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--space-xl);transition:var(--transition-base)}.card:hover{border-color:var(--accent-color);box-shadow:0 10px 30px var(--shadow-color);transform:translateY(-5px)}.social-links{align-items:center;display:flex;gap:var(--space-lg);justify-content:center}.social-link,.social-links a{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-round);color:var(--text-secondary);display:inline-flex;height:40px;justify-content:center;transition:var(--transition-base);width:40px}.social-link:hover,.social-links a:hover{background:var(--accent-color);box-shadow:0 5px 15px var(--shadow-color);color:var(--bg-primary);transform:translateY(-3px)}.skill-tag,.tech-tag{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-pill);color:var(--text-secondary);display:inline-block;font-size:var(--text-sm);padding:var(--space-xs) var(--space-md)}.skill-tag:hover,.tech-tag:hover{background:var(--accent-color);border-color:var(--accent-color);color:var(--bg-primary)}.hero-terminal,.terminal-window{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:0 4px 20px var(--shadow-color);margin:var(--space-xl) auto;max-width:600px;overflow:hidden}.terminal-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:var(--space-sm) var(--space-md)}.terminal-controls{display:flex;gap:var(--space-sm)}.terminal-control{border-radius:var(--border-radius-round);display:inline-block;height:12px;width:12px}.terminal-control.close{background:#ff5f56}.terminal-control.minimize{background:#ffbd2e}.terminal-control.maximize{background:#27c93f}.terminal-title{color:var(--text-secondary)}.terminal-body,.terminal-title{font-family:var(--font-mono);font-size:var(--text-sm)}.terminal-body{height:370px;overflow-y:auto;padding:var(--space-md);text-align:left}.terminal-line{margin-bottom:var(--space-sm);white-space:pre-wrap}.terminal-output{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);text-align:left}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.contact-form input,.contact-form textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-primary);padding:var(--space-md);transition:var(--transition-base)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(var(--accent-color),.1);outline:none}[data-tooltip]{position:relative}[data-tooltip]:hover:before{animation:fadeIn var(--animation-duration-base) ease forwards;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);bottom:100%;color:var(--text-primary);content:attr(data-tooltip);font-size:var(--text-xs);left:50%;margin-bottom:var(--space-xs);opacity:0;padding:var(--space-xs) var(--space-sm);pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:var(--z-tooltip)}.cookie-consent{background:var(--bg-secondary);border-top:1px solid var(--border-color);bottom:0;left:0;padding:var(--space-md);position:fixed;right:0;transform:translateY(100%);transition:transform var(--transition-time);z-index:var(--z-fixed)}.cookie-consent.show{transform:translateY(0)}.cookie-content{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-xl);justify-content:space-between;margin:0 auto;max-width:var(--container-max)}.cookie-content p{color:var(--text-secondary);margin:0}.cookie-buttons{align-items:center;display:flex;gap:var(--space-md)}.privacy-link{color:var(--text-secondary);text-decoration:none}.privacy-link:hover{color:var(--accent-color)}.loading-screen{align-items:center;background:var(--bg-primary);display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;transition:opacity var(--transition-slow);width:100%;z-index:9999}.loader{height:50px;position:relative;width:50px}.loader-inner{animation:spin 1s linear infinite;border-top:3px solid var(--bg-secondary);border:3px solid var(--bg-secondary);border-radius:var(--border-radius-round);border-top-color:var(--accent-color);height:100%;width:100%}.loading-text{animation:pulse 1.5s ease infinite;color:var(--text-secondary);font-size:var(--text-sm);margin-top:var(--space-lg)}.scroll-progress{background:var(--accent-color);height:3px;left:0;position:fixed;top:0;transition:width .1s ease;width:0;z-index:var(--z-tooltip-high)}.scroll-indicator{animation:bounce 2s infinite;bottom:var(--space-xl);color:var(--text-secondary);left:50%;position:absolute;transform:translateX(-50%)}.theme-selector-wrapper{position:relative}.theme-toggle{background:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;padding:var(--space-sm);transition:var(--transition-base)}.theme-toggle:hover{border-color:var(--accent-color)}.theme-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:0 4px 20px var(--shadow-color);display:none;margin-top:var(--space-sm);min-width:200px;padding:var(--space-sm);position:absolute;right:0;top:100%;z-index:var(--z-sticky)}.theme-dropdown.show{display:block}.theme-option{align-items:center;background:transparent;border:none;border-radius:var(--border-radius-sm);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);text-align:left;transition:var(--transition-base);width:100%}.theme-option:hover{background:var(--bg-primary)}.color-picker-wrapper{border-top:1px solid var(--border-color);margin-top:var(--space-sm);padding:var(--space-md)}.color-picker-label{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-sm)}.color-samples{display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm)}.color-sample{border:2px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;height:30px;transition:var(--transition-base);width:30px}.color-sample:hover{border-color:var(--text-primary)}.color-picker{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;height:40px;width:100%}#goTopBtn{background-color:var(--bg-primary);border:none;border-radius:50%;bottom:20px;box-shadow:0 2px 6px rgba(0,0,0,.3);color:var(--text-primary);cursor:pointer;display:none;font-size:18px;left:20px;outline:none;padding:12px 16px;position:fixed;transition:background-color .3s;z-index:1000}#goTopBtn:hover{background-color:var(--accent-color);color:var(--bg-primary)}.particles-global{height:100vh;pointer-events:none;width:100vw;z-index:var(--z-negative)}.navbar,.particles-global{left:0;position:fixed;top:0}.navbar{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--overlay-bg);border-bottom:1px solid var(--border-color);height:var(--navbar-height);right:0;transition:var(--transition-base);z-index:var(--z-fixed)}.navbar.scrolled{box-shadow:0 2px 10px var(--shadow-color)}.navbar .container{align-items:center;display:flex;height:100%;justify-content:space-between}.nav-brand{display:flex;flex-direction:column}.brand-link{color:var(--text-primary);text-decoration:none}.brand-name{font-size:var(--text-xl);font-weight:700}.brand-title{color:var(--text-secondary);font-size:var(--text-sm)}.nav-links{align-items:center;display:flex;gap:var(--space-xl);list-style:none}.nav-link{color:var(--text-secondary);font-weight:500;padding:var(--space-sm) 0;text-decoration:none;transition:color var(--transition-time)}.nav-link.active,.nav-link:hover{color:var(--accent-color)}.nav-link:after{background:var(--accent-color);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--transition-time);width:0}.nav-link.active:after,.nav-link:hover:after{width:100%}.nav-toggle{cursor:pointer;display:none;flex-direction:column;gap:4px;padding:var(--space-sm)}.nav-toggle span{background:var(--text-primary);height:2px;width:25px}section{padding:var(--section-padding);position:relative}.section-title{font-size:var(--text-5xl);font-weight:700;margin-bottom:var(--space-3xl);position:relative;text-align:center}.section-title:after{background:var(--accent-color);bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:50px}.hero-section{align-items:center;display:flex;justify-content:center;min-height:100vh;padding-top:calc(var(--navbar-height) + var(--space-xl));position:relative}.matrix-rain{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.hero-container{position:relative;text-align:center;z-index:2}.hero-content{margin:0 auto;max-width:800px}.hero-badges{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center;margin-bottom:var(--space-xl)}.hero-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:700;height:5rem;line-height:1.1}.hero-subtitle,.hero-title{margin-bottom:var(--space-lg)}.hero-subtitle{color:var(--text-secondary);font-size:clamp(1.25rem,3vw,2rem);min-height:3rem}.cursor{animation:blink 1s infinite}.hero-location{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-lg);gap:var(--space-md);justify-content:center;margin-bottom:var(--space-xl)}.separator{color:var(--text-tertiary)}.hero-cta{display:flex;gap:var(--space-md);justify-content:center;margin-bottom:var(--space-xl)}.about-section{background:var(--bg-secondary)}.about-content{margin:0 auto;max-width:800px}.stats-grid{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:var(--space-3xl)}.stat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--space-xl);text-align:center;transition:var(--transition-base)}.stat-card:hover{border-color:var(--accent-color);box-shadow:0 10px 30px var(--shadow-color);transform:translateY(-5px)}.stat-number{color:var(--accent-color);font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-sm)}.stat-label{color:var(--text-secondary);font-size:var(--text-sm)}.skills-container{display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skill-category{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--space-xl);transition:var(--transition-base)}.skill-category:hover{border-color:var(--accent-color);transform:translateY(-5px)}.skill-category h3{align-items:center;color:var(--accent-color);font-size:var(--text-xl);margin-bottom:var(--space-lg)}.skill-category h3,.skill-list{display:flex;gap:var(--space-sm)}.skill-list{flex-wrap:wrap}.timeline{padding:var(--space-xl) 0;position:relative}.timeline:before{background:var(--border-color);content:"";height:100%;left:50%;position:absolute;transform:translateX(-50%);width:2px}.timeline-item{margin-bottom:var(--space-3xl);position:relative;width:45%}.timeline-item.left{left:0}.timeline-item.right{left:55%}.timeline-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--space-xl);position:relative;transition:var(--transition-base)}.timeline-content:hover{border-color:var(--accent-color);transform:translateY(-5px)}.timeline-dot{background:var(--accent-color);border-radius:var(--border-radius-round);box-shadow:0 0 10px var(--accent-color);height:20px;position:absolute;top:var(--space-xl);width:20px}.timeline-item.left .timeline-dot{right:-75px}.timeline-item.right .timeline-dot{left:-75px}.timeline-header h3{font-size:var(--text-2xl);margin-bottom:var(--space-sm)}.timeline-header h4{color:var(--accent-color);font-size:var(--text-lg);margin-bottom:var(--space-sm)}.timeline-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:var(--space-md);margin-bottom:var(--space-lg)}.timeline-period{align-items:center;display:flex;gap:var(--space-xs)}.timeline-current{background:var(--accent-color);border-radius:var(--border-radius-sm);color:var(--bg-primary);font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}.timeline-description{color:var(--text-secondary);margin-bottom:var(--space-lg)}.timeline-details h5{color:var(--text-primary);font-size:var(--text-md);margin-bottom:var(--space-sm)}.timeline-list{list-style:none;margin-bottom:var(--space-lg)}.timeline-list li{color:var(--text-secondary);padding:var(--space-sm) 0;padding-left:var(--space-lg);position:relative}.timeline-list li:before{color:var(--accent-color);content:"▸";left:0;position:absolute}.timeline-achievements{list-style:none;margin-bottom:var(--space-lg)}.timeline-achievements li{align-items:center;color:var(--text-secondary);display:flex;gap:var(--space-sm);padding:var(--space-sm) 0}.timeline-achievements li i{color:var(--success)}.timeline-tech{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.certifications-grid{display:block}.cert-section{margin-bottom:var(--space-3xl)}.cert-section-title{align-items:center;display:flex;font-size:var(--text-2xl);gap:var(--space-sm);margin-bottom:var(--space-xl)}.awards-grid,.cert-items-grid,.training-grid{display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.award-card,.cert-card,.project-card,.training-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:var(--space-xl);transition:var(--transition-base)}.award-card:hover,.cert-card:hover,.project-card:hover,.training-card:hover{border-color:var(--accent-color);box-shadow:0 10px 30px var(--shadow-color);transform:translateY(-5px)}.cert-badge{align-items:center;background:var(--accent-color);border-radius:var(--border-radius-round);color:var(--bg-primary);display:flex;font-size:var(--text-2xl);height:60px;justify-content:center;margin-bottom:var(--space-lg);width:60px}.cert-status{font-size:var(--text-sm);margin:var(--space-sm) 0}.cert-status.verified a{color:var(--success);text-decoration:none}.cert-status.in-progress{color:var(--warning)}.project-filters{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:center;margin-bottom:var(--space-3xl)}.filter-btn{background:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius-pill);color:var(--text-secondary);cursor:pointer;padding:var(--space-sm) var(--space-lg);transition:var(--transition-base)}.filter-btn.active,.filter-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.projects-grid{display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.project-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-lg)}.project-header i{color:var(--accent-color);font-size:var(--text-2xl)}.project-type{color:var(--text-secondary);font-size:var(--text-sm)}.project-tech{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin:var(--space-lg) 0}.project-achievements{margin-top:var(--space-lg)}.achievement{align-items:center;color:var(--text-secondary);display:flex;gap:var(--space-sm);margin:var(--space-sm) 0}.achievement i{color:var(--success)}.contact-content{display:grid;gap:var(--space-3xl);grid-template-columns:1fr 1fr}.contact-details{margin:var(--space-xl) 0}.contact-item{align-items:center;display:flex;gap:var(--space-md);margin:var(--space-md) 0}.contact-item i{color:var(--accent-color);width:20px}.footer{border-top:1px solid var(--border-color);color:var(--text-secondary);padding:var(--space-xl) 0;text-align:center}.footer,.privacy-section{background:var(--bg-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}@keyframes matrixFall{0%{opacity:1;transform:translateY(-100vh)}90%{opacity:1}to{opacity:0;transform:translateY(100vh)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn var(--animation-duration-base) ease}.fade-in-up{opacity:0;transform:translateY(30px);transition:opacity var(--animation-duration-slow) ease,transform var(--animation-duration-slow) ease}.fade-in-up.visible{opacity:1;transform:translateY(0)}.fade-in-up.visible:hover{transform:translateY(-2px)}.slide-in-left{opacity:0;transform:translateX(-30px);transition:opacity var(--animation-duration-slow) ease,transform var(--animation-duration-slow) ease}.slide-in-left.visible{opacity:1;transform:translateX(0)}.slide-in-right{opacity:0;transform:translateX(30px);transition:opacity var(--animation-duration-slow) ease,transform var(--animation-duration-slow) ease}.slide-in-right.visible{opacity:1;transform:translateX(0)}.scale-in{opacity:0;transform:scale(.9);transition:opacity var(--animation-duration-slow) ease,transform var(--animation-duration-slow) ease}.scale-in.visible{opacity:1;transform:scale(1)}.stagger-1{transition-delay:.1s}.stagger-2{transition-delay:.2s}.stagger-3{transition-delay:.3s}.stagger-4{transition-delay:.4s}.stagger-5{transition-delay:.5s}.stagger-6{transition-delay:.6s}.matrix-char{animation:matrixFall linear infinite;color:var(--accent-color);font-family:var(--font-mono);font-size:16px;opacity:.8;pointer-events:none;position:absolute}.hover-lift{transition:transform var(--transition-time),box-shadow var(--transition-time)}.hover-lift:hover{box-shadow:0 10px 30px var(--shadow-color);transform:translateY(-5px)}.btn{overflow:hidden;position:relative}.btn:before{background:hsla(0,0%,100%,.1);border-radius:var(--border-radius-round);content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width var(--animation-duration-slow) ease,height var(--animation-duration-slow) ease;width:0}.btn:hover:before{height:300px;width:300px}.award-card:before,.card:before,.cert-card:before,.project-card:before,.skill-category:before,.stat-card:before,.training-card:before{background:linear-gradient(45deg,var(--accent-color),transparent);border-radius:inherit;bottom:-2px;content:"";left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity var(--transition-time);z-index:-1}.award-card:hover:before,.card:hover:before,.cert-card:hover:before,.project-card:hover:before,.skill-category:hover:before,.stat-card:hover:before,.training-card:hover:before{opacity:.3}.social-link:after,.social-links a:after{background:var(--accent-color);border-radius:var(--border-radius-round);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transform:scale(0);transition:var(--transition-base);z-index:-1}.social-link:hover:after,.social-links a:hover:after{opacity:1;transform:scale(1.2)}.nav-link{position:relative}.nav-link:before{background:var(--accent-color);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--transition-time);width:0}.nav-link.active:before,.nav-link:hover:before{width:100%}.nav-toggle span{transition:var(--transition-base)}.nav-toggle.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.skill-tag,.tech-tag{cursor:default;transition:var(--transition-base)}.skill-tag:hover,.tech-tag:hover{transform:scale(1.05)}.terminal-output .typing:after{animation:blink 1s infinite;content:"▊"}.hero-title{animation:fadeInDown var(--animation-duration-slower) ease}.hero-subtitle{animation:fadeInUp var(--animation-duration-slower) ease;animation-delay:.2s;animation-fill-mode:both}.hero-badges{animation:fadeIn var(--animation-duration-slower) ease;animation-delay:.4s;animation-fill-mode:both}.hero-location{animation:fadeIn var(--animation-duration-slower) ease;animation-delay:.6s;animation-fill-mode:both}.hero-cta{animation:fadeInUp var(--animation-duration-slower) ease;animation-delay:.8s;animation-fill-mode:both}.hero-terminal{animation:scaleIn var(--animation-duration-slower) ease;animation-delay:1s;animation-fill-mode:both}.timeline-item{opacity:0;transform:translateX(-50px);transition:all var(--animation-duration-slow) ease}.timeline-item.right{transform:translateX(50px)}.timeline-item.visible{opacity:1;transform:translateX(0)}html{scroll-behavior:smooth}.loading-screen{animation:fadeOut var(--animation-duration-slow) ease forwards;animation-delay:1.5s}@keyframes fadeOut{to{opacity:0;visibility:hidden}}@media (min-width:1400px){.container{max-width:1320px}}@media (max-width:1199px){.awards-grid,.cert-items-grid,.projects-grid,.training-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:991px){.nav-toggle{display:flex}.nav-links{background:var(--bg-primary);bottom:0;box-shadow:2px 0 10px var(--shadow-color);flex-direction:column;gap:0;height:100vh;justify-content:flex-start;left:0;overflow-y:auto;padding:var(--space-xl);position:fixed;right:0;top:var(--navbar-height);transform:translateX(-100%);transition:transform var(--transition-time);z-index:999}.nav-links.active{transform:translateX(0)}.nav-links li{margin:var(--space-sm) 0;width:100%}.nav-link{display:block;font-size:var(--text-lg);padding:var(--space-md)}.theme-selector-wrapper{margin-right:var(--space-md)}.hero-badges{justify-content:center}.skills-container,.stats-grid{grid-template-columns:repeat(2,1fr)}.timeline:before{left:30px}.timeline-item{left:60px!important;margin-bottom:var(--space-xl);width:calc(100% - 60px)}.timeline-dot{left:-45px!important}.projects-grid{gap:var(--space-lg);grid-template-columns:repeat(2,1fr)}.contact-content{gap:var(--space-xl);grid-template-columns:1fr}}@media (max-width:767px){section{padding:var(--space-3xl) 0}.section-title{font-size:var(--text-4xl);margin-bottom:var(--space-xl)}.hero-section{min-height:100vh;padding:var(--space-3xl) 0}.hero-badges{gap:var(--space-xs)}.badge{font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}.hero-cta{align-items:center;flex-direction:column}.btn{justify-content:center;max-width:250px;width:100%}.hero-terminal{font-size:var(--text-sm);margin:var(--space-lg) 0}.terminal-body{height:150px;padding:var(--space-md)}.skills-container{gap:var(--space-lg);grid-template-columns:1fr}.stats-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr)}.awards-grid,.cert-items-grid,.projects-grid,.training-grid{gap:var(--space-lg);grid-template-columns:1fr}.project-filters{flex-wrap:wrap;gap:var(--space-sm)}.filter-btn{font-size:var(--text-sm);padding:var(--space-xs) var(--space-md)}.contact-details{margin:var(--space-lg) 0}.contact-item{font-size:var(--text-sm)}}@media (max-width:575px){.container{padding:0 var(--space-md)}.nav-brand{font-size:var(--text-sm)}.brand-name{font-size:var(--text-lg)}.brand-title{font-size:var(--text-xs)}.hero-location{flex-direction:column;font-size:var(--text-md);gap:var(--space-sm)}.separator{display:none}.social-links{gap:var(--space-md)}.social-links a{font-size:var(--text-sm);height:35px;width:35px}.timeline:before{left:20px}.timeline-item{left:40px!important;width:calc(100% - 40px)}.timeline-dot{height:16px;left:-30px!important;width:16px}.timeline-content{padding:var(--space-lg)}.timeline-header h3{font-size:var(--text-xl)}.timeline-meta{flex-direction:column;gap:var(--space-xs)}.award-card,.cert-card,.project-card,.skill-category,.training-card{padding:var(--space-lg)}.skill-tag,.tech-tag{font-size:var(--text-xs);padding:2px var(--space-sm)}.footer{font-size:var(--text-sm);padding:var(--space-lg) 0}}@media (max-width:399px){.section-title{font-size:var(--text-3xl)}.hero-terminal{font-size:var(--text-xs)}.terminal-body{height:120px}.stats-grid{grid-template-columns:1fr}}@media (max-width:767px) and (orientation:landscape){.hero-section{min-height:auto;padding:var(--space-xl) 0}.hero-terminal{display:none}.hero-cta{flex-direction:row;justify-content:center}.btn{width:auto}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.award-card,.card,.cert-card,.navbar,.project-card,.skill-category,.stat-card,.timeline-content,.training-card{border-width:.5px}}@media print{.contact-form,.cookie-consent,.footer,.hero-terminal,.loading-screen,.matrix-rain,.navbar,.particles-global,.scroll-indicator,.scroll-progress,.social-links,.theme-selector-wrapper{display:none!important}body{background:#fff;color:#000}section{padding:20px 0;page-break-inside:avoid}.hero-section{min-height:auto}.timeline-item{page-break-inside:avoid}a[href]:after{content:" (" attr(href) ")"}*{box-shadow:none!important;text-shadow:none!important}}body[data-theme=monochrome] .matrix-char{color:#333;opacity:.3}body[data-theme=monochrome] .particles-js-canvas-el{opacity:.5}body[data-theme=monochrome] .hero-terminal,body[data-theme=monochrome] .terminal-window{background:#f8f9fa;border-color:#e0e0e0}body[data-theme=monochrome] .terminal-header{background:#e9ecef}body[data-theme=monochrome] .terminal-output{color:#333}body[data-theme=dark] .matrix-char{color:var(--accent-color);opacity:.5}body[data-theme=dark] .hero-terminal,body[data-theme=dark] .terminal-window{background:#000;box-shadow:0 4px 20px rgba(0,128,255,.1)}body[data-theme=dark] .terminal-output{color:var(--accent-color)}body[data-theme=hacker] .matrix-char{color:#0f0;opacity:.8;text-shadow:0 0 5px #0f0}body[data-theme=hacker] .hero-terminal,body[data-theme=hacker] .terminal-window{background:#000;box-shadow:0 4px 20px rgba(0,255,0,.2)}body[data-theme=hacker] .terminal-output{color:#0f0;text-shadow:0 0 2px #0f0}body[data-theme=hacker] .terminal-header{background:#0a0a0a}body[data-theme=hacker] .cert-badge,body[data-theme=hacker] .stat-number,body[data-theme=hacker] .timeline-dot{box-shadow:0 0 20px var(--accent-color)}body[data-theme=hacker] .navbar{box-shadow:0 2px 10px rgba(0,255,0,.1)}body[data-theme=hacker] .scroll-progress{box-shadow:0 0 10px var(--accent-color)}body[data-theme=light] .matrix-char{color:var(--accent-color);opacity:.2}body[data-theme=light] .particles-js-canvas-el{opacity:.3}body[data-theme=light] .navbar{box-shadow:0 1px 3px rgba(0,0,0,.1)}body[data-theme=light] .hero-terminal,body[data-theme=light] .terminal-window{background:#fff;border:1px solid var(--border-color);box-shadow:0 2px 10px rgba(0,0,0,.05)}body[data-theme=light] .terminal-header{background:#f8f9fa}body[data-theme=light] .terminal-output{color:#495057}body[data-theme=light] .award-card,body[data-theme=light] .card,body[data-theme=light] .cert-card,body[data-theme=light] .project-card,body[data-theme=light] .skill-category,body[data-theme=light] .stat-card,body[data-theme=light] .timeline-content,body[data-theme=light] .training-card{background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.05)}body[data-theme=light] .skill-tag,body[data-theme=light] .tech-tag{background:#f8f9fa;border:1px solid #dee2e6;color:#495057}body[data-theme=light] .btn-primary{background:var(--accent-color);color:#fff}body[data-theme=light] .btn-primary:hover{box-shadow:0 5px 15px rgba(0,102,204,.3)}body[data-theme=light] .social-link,body[data-theme=light] .social-links a{background:#f8f9fa;box-shadow:0 2px 5px rgba(0,0,0,.05);color:#495057}body[data-theme=light] .social-link:hover,body[data-theme=light] .social-links a:hover{background:var(--accent-color);color:#fff}body[data-theme=custom] .matrix-char{color:var(--custom-color);opacity:.6}body[data-theme=custom] .terminal-output{color:var(--custom-color)}body[data-theme=custom] .cert-badge,body[data-theme=custom] .scroll-progress,body[data-theme=custom] .stat-number,body[data-theme=custom] .timeline-dot{background:var(--custom-color)}.award-card,.btn,.card,.cert-card,.contact-form input,.contact-form textarea,.hero-terminal,.navbar,.project-card,.skill-category,.social-link,.social-links a,.stat-card,.terminal-window,.timeline-content,.training-card,body{transition:background-color var(--transition-time),color var(--transition-time),border-color var(--transition-time),box-shadow var(--transition-time),transform var(--transition-time)}body[data-theme=monochrome] #particles-js canvas{filter:invert(1)}body[data-theme=light] #particles-js canvas{filter:opacity(.3)}body[data-theme=hacker] #particles-js canvas{filter:hue-rotate(120deg) saturate(2)}body{--accent-glow:0 0 20px var(--accent-color)}.btn-primary,.cert-badge,.contact-item i,.filter-btn.active,.filter-btn:hover,.nav-link.active,.nav-link:after,.nav-link:hover,.project-header i,.scroll-progress,.section-title:after,.skill-category h3,.stat-number,.timeline-company,.timeline-dot{transition:color var(--transition-time),background-color var(--transition-time),border-color var(--transition-time),transform var(--transition-time)}