:root{--bg-color: #ffffff;--text-color: #1a1a1a;--primary-color: #1e3a8a;--secondary-color: #64748b;--card-bg: rgba(248, 250, 252, .3);--card-border: #e2e8f0;--nav-bg: rgba(255, 255, 255, .8);--hero-gradient: linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);--button-text: #ffffff;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--text-gradient: linear-gradient(to right, #1e3a8a, #06b6d4)}[data-theme=dark]{--bg-color: #050505;--text-color: #f1f5f9;--primary-color: #a855f7;--secondary-color: #cbd5e1;--card-bg: rgba(18, 18, 18, .3);--card-border: #2d2d2d;--nav-bg: rgba(5, 5, 5, .8);--hero-gradient: linear-gradient(135deg, #050505 0%, #1a1a1a 100%);--text-gradient: linear-gradient(to right, #a855f7, #312e81);--button-text: #ffffff;--shadow: 0 4px 6px -1px rgba(168, 85, 247, .2), 0 2px 4px -1px rgba(168, 85, 247, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:transparent;color:var(--text-color);transition:color .3s ease;line-height:1.6;position:relative;overflow-x:hidden;width:100%}html{background-color:transparent;overflow-x:hidden;width:100%}#bg-layer{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-color:var(--bg-color);transition:background-color .3s ease}.navbar{position:fixed;top:0;left:0;width:100%;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;background-color:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;border-bottom:1px solid var(--card-border)}.nav-left{display:flex;align-items:center;gap:2rem}.nav-right{display:flex;align-items:center;gap:1rem}.logo{font-weight:700;font-size:1.5rem;color:var(--primary-color);text-decoration:none;transition:all .3s ease}[data-theme=light] .logo.active,[data-theme=light] .logo:hover{text-shadow:0 0 10px rgba(30,58,138,.15),0 0 20px rgba(30,58,138,.1)}[data-theme=dark] .logo.active,[data-theme=dark] .logo:hover{text-shadow:0 0 10px rgba(168,85,247,.5),0 0 20px rgba(168,85,247,.4)}.nav-links{display:flex;gap:1.5rem;list-style:none}.nav-links a{color:var(--text-color);text-decoration:none;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--primary-color)}.nav-links a.active{color:var(--primary-color);font-weight:600;position:relative}.nav-links a.active:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--primary-color);border-radius:2px}#theme-toggle,#lang-toggle{background:none;border:none;cursor:pointer;color:var(--text-color);padding:.5rem;border-radius:50%;transition:background-color .2s;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;line-height:1}#lang-toggle{font-size:.875rem;margin-top:2px}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--text-color);padding:.5rem;transition:background-color .2s}.mobile-menu-toggle:hover{background-color:var(--card-border);border-radius:50%}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-menu{position:fixed;top:0;right:-300px;width:280px;height:100%;background-color:var(--nav-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:999;padding:2rem 1.5rem;transition:right .3s ease;border-left:1px solid var(--card-border)}.mobile-menu.active{right:0}.mobile-menu-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:var(--text-color);padding:.5rem;transition:background-color .2s}.mobile-menu-close:hover{background-color:var(--card-border);border-radius:50%}.mobile-nav-links{list-style:none;margin-top:3rem;display:flex;flex-direction:column;gap:1.5rem}.mobile-nav-links a{color:var(--text-color);text-decoration:none;font-weight:500;font-size:1.125rem;transition:color .2s;display:block;padding:.5rem 0}.mobile-nav-links a:hover{color:var(--primary-color)}.mobile-nav-links a.active{color:var(--primary-color);font-weight:600}.mobile-menu-header{padding-bottom:1.5rem;border-bottom:1px solid var(--card-border)}.mobile-menu-title{font-weight:600;font-size:1rem;color:var(--secondary-color);text-transform:uppercase;letter-spacing:.5px;margin:0}.mobile-menu-footer{position:absolute;bottom:2rem;left:1.5rem;right:1.5rem;padding-top:1.5rem;border-top:1px solid var(--card-border)}.mobile-social-links{display:flex;gap:1.5rem;justify-content:center}.mobile-social-links a{color:var(--text-color)}.mobile-social-links svg{width:24px;height:24px;fill:currentColor}.mobile-social-links a:first-child svg{fill:none;stroke:currentColor}#theme-toggle:hover,#lang-toggle:hover{background-color:var(--card-border)}.sun-icon{display:none}[data-theme=light] .sun-icon{display:block}:root:not([data-theme=dark]) .sun-icon{display:block}.moon-icon{display:none}[data-theme=dark] .moon-icon{display:block}.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0 1rem;z-index:1}#particles-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}main,.footer{position:relative;z-index:1}.hero-content{position:relative;z-index:2;max-width:800px}.hero-title{font-size:4rem;font-weight:800;margin-bottom:1rem;background:var(--text-gradient, linear-gradient(to right, var(--primary-color), #a855f7));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1.1}.hero-subtitle{font-size:1.5rem;color:var(--secondary-color);margin-bottom:1.5rem}.hero-description{font-size:1.125rem;margin-bottom:2rem;color:var(--text-color);opacity:.9}.cta-button{display:inline-block;padding:.75rem 2rem;background-color:var(--primary-color);color:#fff;text-decoration:none;border-radius:9999px;font-weight:600;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 14px #3b82f663;position:relative;z-index:10}.cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f63b}.about-section{padding:5rem 2rem;max-width:1200px;margin:0 auto}.about-content{max-width:800px;margin:0 auto}.about-content p{font-size:1.125rem;line-height:1.8;color:var(--text-color);margin-bottom:1.5rem;opacity:.9}.about-content p:last-child{margin-bottom:0}.about-content a{color:var(--primary-color);text-decoration:none;font-weight:600;transition:opacity .2s}.about-content a:hover{opacity:.8;text-decoration:underline}.about-greeting{font-size:1.375rem!important;font-weight:600!important;color:var(--primary-color)!important;margin-bottom:2rem!important;opacity:1!important}.experience-section{padding:5rem 2rem;max-width:1200px;margin:0 auto}.experience-timeline{display:flex;flex-direction:column;gap:2rem}.experience-card{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.5rem 2rem 2rem;transition:transform .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.experience-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--primary-color);background-color:var(--bg-color);-webkit-backdrop-filter:none;backdrop-filter:none}.company-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--card-border)}.company-info{display:flex;align-items:center;gap:1rem}.company-logo{width:48px;height:48px;object-fit:contain;border-radius:8px}[data-theme=dark] img[alt="Aivo Logo"]{filter:brightness(0) saturate(100%) invert(1)}[data-theme=dark] img[alt="Cloud Solutions Logo"]{filter:brightness(1.3) contrast(1.1)}.company-details{display:flex;flex-direction:column;gap:.25rem}.company-name{font-size:1.5rem;font-weight:700;color:var(--text-color);margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.company-url{display:inline-flex;align-items:center;color:var(--secondary-color);text-decoration:none;transition:all .2s ease;opacity:.7}.company-url:hover{opacity:1;color:var(--primary-color)}.company-url svg{width:18px;height:18px;stroke:currentColor;margin-top:3px}.current-role-badge{font-size:.65rem;font-weight:600;color:#fff;background-color:var(--primary-color);padding:.25rem .625rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.date-range{font-size:.9rem;color:var(--secondary-color);font-weight:500}.role-item{margin-bottom:1.5rem}.role-item:last-child{margin-bottom:0}.role-title{font-size:1.15rem;font-weight:600;color:var(--primary-color);margin-bottom:.5rem}.role-location{font-size:.875rem;color:var(--secondary-color);margin-bottom:.75rem}.role-description{list-style-position:outside;padding-left:1.25rem;margin:0}.role-description li{font-size:.95rem;line-height:1.6;color:var(--text-color);margin-bottom:.5rem;opacity:.9}.role-description li:last-child{margin-bottom:0}.tech-stack-section{padding:5rem 2rem;max-width:1200px;margin:0 auto}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1.5rem;text-align:center}.tech-sections{display:flex;flex-direction:column;gap:2rem}.tech-subsection .tech-section-title{text-align:left;font-size:1.25rem;font-weight:700;color:var(--primary-color);margin-bottom:1rem}.tech-item{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:.75rem;padding:.75rem 1rem;transition:all .3s ease;display:flex;flex-direction:row;align-items:center;gap:.75rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.tech-item:hover{transform:translateY(-5px);border-color:var(--primary-color);box-shadow:var(--shadow);background-color:var(--bg-color);-webkit-backdrop-filter:none;backdrop-filter:none}.tech-icon{font-size:1.4rem;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background-color:#00000008;color:var(--primary-color);object-fit:contain}img[alt=GitHub]{filter:brightness(0) saturate(100%)}[data-theme=dark] img[alt=GitHub]{filter:brightness(0) saturate(100%) invert(1)}[data-theme=dark] .elasticsearch-grey,[data-theme=dark] .kibana-dark{fill:#fff}.tech-name{font-weight:600;font-size:1rem}.projects-section{padding:5rem 2rem;max-width:1200px;margin:0 auto;overflow:hidden;width:100%}.projects-filters{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2.5rem}.filter-btn{padding:.5rem 1.25rem;background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:9999px;color:var(--text-color);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.filter-btn:hover{border-color:var(--primary-color);background-color:var(--bg-color);transform:translateY(-2px)}.filter-btn.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:3rem;text-align:center}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:100%}@media(min-width:769px){.projects-grid{grid-template-columns:repeat(3,1fr);max-width:1200px}}.carousel-container{position:relative;overflow:hidden;display:none;padding:0 1rem;width:100%;max-width:100vw}.carousel-track{display:flex;gap:1rem;transition:transform .3s ease;align-items:stretch;overflow:visible;width:100%;will-change:transform}.carousel-track .project-card.hidden{display:none}.carousel-track .project-card{min-width:80%;max-width:80%;flex-shrink:0;transition:opacity .3s ease,transform .3s ease}.carousel-track .project-card:active{opacity:.9}.carousel-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.carousel-dot{width:8px;height:8px;border-radius:50%;background-color:var(--card-border);border:none;cursor:pointer;transition:all .3s ease;padding:0}.carousel-dot.active{background-color:var(--primary-color);width:24px;border-radius:4px}.project-card{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease,opacity .3s ease;display:flex;flex-direction:column;height:100%;opacity:1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.project-card.hidden{display:none}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--primary-color);background-color:var(--bg-color);-webkit-backdrop-filter:none;backdrop-filter:none}.project-name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--primary-color)}.project-desc{color:var(--secondary-color);margin-bottom:1.5rem;flex-grow:1;font-size:.95rem}.project-meta{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--text-color);opacity:.9;margin-top:auto}.project-lang{display:flex;align-items:center;gap:.5rem}.lang-dot{width:10px;height:10px;border-radius:50%;background-color:var(--primary-color)}.project-link{text-decoration:none;color:var(--text-color);border:1px solid var(--card-border);padding:.25rem .75rem;border-radius:.5rem;transition:all .2s}.project-link:hover{background-color:var(--card-border)}.cv-section{padding:4rem 2rem;max-width:800px;margin:0 auto;text-align:center}.cv-description{color:var(--secondary-color);margin-bottom:2rem;font-size:1.1rem}.cv-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background-color:var(--primary-color);color:#fff;text-decoration:none;border-radius:9999px;font-weight:600;font-size:1.1rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 14px #3b82f663;position:relative;z-index:10}.cv-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f63b}.cv-button svg{width:24px;height:24px;stroke:currentColor}.footer{text-align:center;padding:3rem 1rem;border-top:1px solid var(--card-border);color:var(--secondary-color);background-color:transparent;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.social-links{margin-top:1rem;display:flex;justify-content:center;gap:1.5rem}.social-links a{color:var(--text-color);text-decoration:none;transition:color .2s}.social-icon{width:24px;height:24px;fill:currentColor}.social-icon path{fill:currentColor}.email-icon{width:24px;height:24px;fill:none;stroke:currentColor}.email-icon path,.email-icon polyline{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media(max-width:768px){.hero-title{font-size:2.5rem}.projects-grid{display:none}.carousel-container{display:block}.company-header{flex-direction:column;align-items:flex-start;gap:.75rem}.company-info{flex-direction:row;align-items:center}.nav-links{display:none}.mobile-menu-toggle{display:flex!important}}
