@charset "UTF-8";:root{--text-primary:#212121;--text-secondary:#424242;--text-tertiary:#616161;--link-color:#0d47a1;--link-hover:#1565c0;--background-primary:#ffffff;--background-secondary:#f5f5f5;--background-tertiary:#e0e0e0;--accent-primary:#155e6c;--accent-secondary:#0d3c46;--error:#b71c1c;--success:#1b5e20;--warning:#e65100;--info:#01579b}body{background-color:var(--background-primary);color:var(--text-primary)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);line-height:1.3}.accessible-link,a{color:var(--link-color);text-underline-offset:2px;transition:color .2s ease}[tabindex]:focus,a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:3px solid var(--accent-primary);outline-offset:2px}.btn,button{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s ease}.btn:hover,button:hover{background-color:var(--accent-secondary)}.bg-dark{background-color:var(--text-primary);color:#fff}.bg-dark a{color:#90caf9}.bg-dark a:hover{color:#bbdefb}@media (max-width:768px){body{font-size:16px}.btn,a,button{align-items:center;display:inline-flex;justify-content:center;min-height:44px;min-width:44px;padding:.6rem}}.fade-in{animation:fadeIn .3s ease-in-out}.visually-hidden{display:none;height:0;overflow:hidden;visibility:hidden;width:0}.header{left:0;min-height:0;position:fixed;top:0;transition:background-color .3s ease-in-out,box-shadow .3s ease-in-out,height .3s ease-in-out;width:100%;z-index:1000}@media (min-width:768px) and (max-width:991px){.header .container>nav{align-items:center;flex-direction:column}.header .container>nav>.navigation-wrapper{align-items:center;flex-direction:row;width:auto}.header .container>nav>.navigation-wrapper>.navigation-list{margin-bottom:0}}.header.menu-open{min-height:100vh}.header-container{align-items:center;display:flex;height:80px;justify-content:space-between}@media (min-width:768px){.header-container{height:auto;padding-bottom:.75rem;padding-top:.75rem}}@media (min-width:768px) and (max-width:991px){.header-container{padding:.75rem 1rem}.header-container .header-logo-container{justify-content:center;margin-bottom:.75rem;width:100%}.header-container .navigation{margin-top:0;width:100%}.header-container .navigation-list{justify-content:center}}@media (min-width:600px) and (max-width:767px){.header-container{flex-direction:column;padding:.5rem 1rem}.header-container .header-logo-container{justify-content:center;margin-bottom:.75rem;width:100%}.header-container .navigation{margin-top:0;width:100%}.header-container .navigation-list{justify-content:center}}@media (min-width:992px){.header-container{flex-direction:row;height:80px;padding-bottom:0;padding-top:0}}.header-logo-container{align-items:center;display:flex}@media (min-width:768px){.header-logo-container{justify-content:center;margin-bottom:.5rem;width:100%}}@media (min-width:992px){.header-logo-container{margin-bottom:0;width:auto}}.header-logo{height:40px;transition:all .3s ease}@media (min-width:768px){.header-logo{height:45px}}.header .logo-link{align-items:center;color:#374151;display:flex;overflow:hidden;position:relative;text-decoration:none}.header .logo-link img{height:30px;width:auto}@media (min-width:768px){.header .logo-link img{height:36px}}.header .mobile-nav-controls{align-items:center;display:flex;gap:.75rem}@media (min-width:768px){.header .mobile-nav-controls{display:none}}.header .mobile-menu-button{align-items:center;background:none;border:none;border-radius:4px;color:#374151;cursor:pointer;display:flex;justify-content:center;padding:.5rem}.header .mobile-menu-button:hover{background-color:#f59e0b1a}.header .mobile-menu-button.menu-open{background-color:#f59e0b1a;transform:rotate(90deg);transition:transform .3s ease-in-out,background-color .3s ease}.header .mobile-eco-toggle{border:1px solid rgba(245,158,11,.2);display:flex;font-size:1.1rem;padding:.4rem}@media (min-width:768px){.header .mobile-eco-toggle{display:none}}.header .navigation-wrapper{align-items:center;display:flex;z-index:1000}@media (max-width:767px){.header .navigation-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#f8f8fffa;flex-direction:column;height:calc(100vh - 72px);justify-content:center;left:0;position:fixed;top:72px;transition:transform .3s ease,opacity .3s ease;width:100%;z-index:1002}.header .navigation-wrapper.menu-closed{opacity:0;pointer-events:none;transform:translateY(-100%)}.header .navigation-wrapper.menu-open{opacity:1;pointer-events:auto;transform:translateY(0)}}@media (min-width:768px){.header .navigation-wrapper{align-items:center;background-color:transparent;box-shadow:none;display:flex;flex-direction:column;max-height:none;opacity:1;padding:0;position:static;transform:none;transition:none;visibility:visible;width:100%}}@media (min-width:992px){.header .navigation-wrapper{flex-direction:row;justify-content:flex-end}}.header .navigation-list{display:flex;list-style:none;margin:0;padding:0}@media (max-width:767px){.header .navigation-list{align-items:center;flex-direction:column;margin-bottom:2rem}}@media (min-width:768px){.header .navigation-list{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:.5rem}}@media (min-width:992px){.header .navigation-list{flex-wrap:nowrap;margin-bottom:0}}.header .navigation-list li{margin:0 1rem}@media (max-width:767px){.header .navigation-list li{margin:.8rem 0}}@media (min-width:768px){.header .navigation-list li{margin:0 .75rem}.header .navigation-list li:last-child{margin-right:0}}.header .navigation-list li a{color:#f59e0b;font-size:.95rem;font-weight:500;padding:.5rem 0;position:relative;text-decoration:none;transition:color .3s ease}@media (max-width:767px){.header .navigation-list li a{color:#374151;display:block;font-size:1.1rem;font-weight:600;padding:.8rem 1.5rem;text-align:center;width:100%}.header .navigation-list li a:active{background-color:#f59e0b33}.header .navigation-list li a:hover{background-color:#f59e0b1a;color:#f59e0b}}@media (min-width:768px){.header .navigation-list li a{color:#f59e0b;display:block;font-size:.9rem;font-weight:500;padding:.35rem 0;position:relative;text-decoration:none;transition:color .3s ease}}@media (min-width:992px){.header .navigation-list li a{font-size:.95rem;padding:.5rem 0}}.header .navigation-list li a:after{background-color:#f59e0b;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .2s ease;width:0}.header .navigation-list li a.active,.header .navigation-list li a:hover{color:#f59e0b}.header .navigation-list li a.active:after,.header .navigation-list li a:hover:after{width:100%}@media (min-width:768px){.header .navigation-list .nav-item-about{display:none}}@media (min-width:992px){.header .navigation-list .nav-item-about{display:block}}.header .desktop-only{display:none}@media (min-width:768px){.header .desktop-only{display:flex;justify-content:center;margin-bottom:.5rem;margin-top:0}}@media (min-width:992px){.header .desktop-only{justify-content:flex-start;margin-bottom:0;margin-left:1.5rem}}.header .toggle-buttons{align-items:center;display:flex;margin-left:1.5rem}@media (max-width:767px){.header .toggle-buttons{margin-left:0;margin-top:1rem}.header .toggle-buttons.desktop-only{display:none}}@media (min-width:768px){.header{transition:height .3s ease-in-out}.header.header-scrolled{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#f8f8fffa}.header.header-scrolled .header-container{padding-bottom:.5rem;padding-top:.5rem}}@media (min-width:992px){.header{transition:height .3s ease-in-out,box-shadow .3s ease-in-out}.header.header-scrolled{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#f8f8fff2}}.mobile-menu-overlay{background-color:#00000080;cursor:pointer;height:100vh;left:0;position:fixed;top:0;width:100%;z-index:999}@media (min-width:768px){.mobile-menu-overlay{display:none}}.mobile-menu-close{background:transparent;border:none;color:#f8f8ff;cursor:pointer;display:none;padding:.5rem;position:absolute;right:1.5rem;top:1.5rem;z-index:1001}@media (max-width:767px){.mobile-menu-close{display:block}}.mobile-menu-close:hover{color:#f59e0b}body.menu-open{height:100%;overflow:hidden;position:fixed;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.header-logo{animation:fadeIn .4s ease-out}.navigation-list li:nth-child(-n+5){animation:slideIn .4s ease-out forwards;opacity:0}.navigation-list li:nth-child(-n+5):nth-child(1){animation-delay:.14s}.navigation-list li:nth-child(-n+5):nth-child(2){animation-delay:.18s}.navigation-list li:nth-child(-n+5):nth-child(3){animation-delay:.22s}.navigation-list li:nth-child(-n+5):nth-child(4){animation-delay:.26s}.navigation-list li:nth-child(-n+5):nth-child(5){animation-delay:.3s}body.dark-mode .header{background-color:#1c1917}body.dark-mode .header-scrolled{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#1c1917e6}body.dark-mode .header .logo-link{color:#f8f8ff}body.dark-mode .header .logo-link:after{background-color:#f7b13c}body.dark-mode .header .navigation-link{color:#acacff}body.dark-mode .header .navigation-link.active,body.dark-mode .header .navigation-link:hover{color:#f8f8ff}body.dark-mode .header .navigation-link:after{background-color:#f7b13c}body.dark-mode .header .mobile-menu-button{color:#f8f8ff}body.dark-mode .header .mobile-menu-button:hover{background-color:#f59e0b26}@media (max-width:767px){body.dark-mode .header .navigation-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#1c1917fa}body.dark-mode .header .navigation-list li a{color:#f8f8ff;font-weight:600}body.dark-mode .header .navigation-list li a:hover{background-color:#f59e0b1a;color:#f59e0b}}body.dark-mode .header .mobile-menu-close{color:#f8f8ff}body.dark-mode .header .mobile-menu-close:hover{background-color:#f8f8ff1a}body.dark-mode .header .eco-notification{background-color:#1c1917f2;border:1px solid rgba(248,248,255,.1);box-shadow:0 5px 20px #0000004d}@media (min-width:768px){.mobile-eco-toggle{display:none}}.eco-notification{top:80px;z-index:1001}.eco-notification-content{border-radius:10px}.eco-notification-icon{font-size:2rem}.eco-notification-text h4{font-size:1.1rem}.eco-notification-text p{font-size:.9rem}.eco-notification-fun-fact{background-color:#d9770614;border-radius:4px;font-size:.8rem!important;font-style:italic;padding:.5rem}html.reader-mode-friendly .content,html.reader-mode-friendly article,html.reader-mode-friendly main,html.reader-mode-friendly section{margin-left:auto;margin-right:auto;max-width:70ch}.hero{align-items:center;display:flex;min-height:100vh;overflow:hidden;padding:8rem 0 5rem;position:relative}.hero-video-container{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.hero-video-background{content-visibility:auto;filter:blur(8px);height:auto;left:50%;min-height:100%;min-width:100%;-o-object-fit:cover;object-fit:cover;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto;will-change:transform;z-index:0}.hero-video-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f7ecc0b3;height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.hero-container{position:relative;z-index:2}.hero-content{align-items:center;-webkit-backdrop-filter:none;backdrop-filter:none;color:#374151;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:center;margin:0 auto;max-width:800px;position:relative;text-align:center;z-index:3}.hero-image-container{display:inline-block;margin-bottom:2rem;position:relative}.hero-image{border:3px solid #f8f8ff;border-radius:50%;box-shadow:0 8px 20px #f59e0b33;height:150px;-o-object-fit:cover;object-fit:cover;width:150px}@media (min-width:768px){.hero-image{height:180px;width:180px}}@media (min-width:992px){.hero-image{height:300px;width:300px}}.hero-status-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#f59e0b,#d97706);border:2px solid rgba(255,255,255,.2);border-radius:20px;bottom:-10px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;display:flex;font-size:.8rem;font-weight:500;gap:.5rem;left:50%;padding:.5rem 1rem;position:absolute;transform:translate(-50%);white-space:nowrap}@media (min-width:768px){.hero-status-badge{font-size:.9rem;padding:.6rem 1.2rem}}.hero .status-indicator{animation:pulse 2s infinite;background-color:#fcd34d;border-radius:50%;box-shadow:0 0 #fcd34db3;height:8px;width:8px}.hero .status-text{font-weight:500}.hero h1{color:#374151;font-size:2.5rem;font-weight:700;margin-bottom:1rem}@media (min-width:768px){.hero h1{font-size:3.5rem}}.hero-role{color:#f59e0b;font-size:1.1rem;font-weight:500;margin-bottom:1.5rem}@media (min-width:768px){.hero-role{font-size:1.25rem}}.hero-description{color:#374151;font-weight:500;line-height:1.7;margin-bottom:2rem;max-width:600px}.hero-buttons{align-items:center;display:flex;flex-direction:column;flex-wrap:wrap;gap:1rem;justify-content:center}@media (min-width:576px){.hero-buttons{flex-direction:row}}.btn{align-items:center;border-radius:50px;display:inline-flex;font-weight:500;gap:.5rem;justify-content:center;min-width:180px;padding:.75rem 1.5rem;position:relative;text-align:center;text-decoration:none;transition:all .3s cubic-bezier(.25,.8,.25,1);z-index:2}.btn-primary{background-color:#f59e0b;box-shadow:0 4px 8px #f59e0b40;color:#f8f8ff}.btn-primary:hover{background-color:#c57f08;box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.btn-secondary{background-color:transparent;border:2px solid #f59e0b;color:#f59e0b}.btn-secondary:hover{background-color:#f59e0b1a;transform:translateY(-2px)}.btn-malt{background:linear-gradient(135deg,#ff6b6b,#ff5252);box-shadow:0 4px 8px #ff6b6b40;color:#f8f8ff}.btn-malt:hover{background:linear-gradient(135deg,#ff5252,#f44);box-shadow:0 4px 12px #ff6b6b4d;transform:translateY(-2px)}.about{background-color:#f8f8ff}.about-content{display:grid;gap:3rem;grid-template-columns:1fr}@media (min-width:768px){.about-content{gap:4rem;grid-template-columns:250px 1fr}}.about-visual{align-items:center;display:flex;justify-content:center;position:relative}.about-visual:before{background-color:#f59e0b1a;border-radius:50%;content:"";height:200px;position:absolute;width:200px;z-index:0}.about-experience{align-items:center;animation:pulse 3s infinite;background:linear-gradient(135deg,#f59e0b,#dd8e09);border-radius:50%;box-shadow:0 10px 30px #f59e0b4d;color:#f8f8ff;display:flex;flex-direction:column;height:180px;justify-content:center;position:relative;width:180px;z-index:1}.about-years{font-size:3.5rem;font-weight:800;line-height:1}.about-years-text{font-size:1rem;max-width:120px;text-align:center}.about-text p{color:#a5a4a4;line-height:1.8;margin-bottom:1.5rem}.about-paragraph{position:relative}.about-paragraph .highlight{color:#f59e0b;font-weight:600;position:relative}.about-paragraph .highlight:after{background-color:#f59e0b33;bottom:0;content:"";height:3px;left:0;position:absolute;width:100%}.about-stats{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-left:auto;margin-right:auto;margin-top:2rem;max-width:600px}@media (min-width:768px){.about-stats{gap:2rem}}.about-stat{align-items:center;background-color:#f7ecc0;border-radius:10px;display:flex;flex-direction:column;justify-content:center;min-height:120px;padding:1.2rem;text-align:center;transition:transform .3s ease}.about-stat:hover{transform:translateY(-5px)}.about-stat-number{color:#d97706;font-size:2rem;font-weight:700;margin-bottom:.5rem}.about-stat-text{color:#a5a4a4;font-size:.9rem}.section-padding{padding:5rem 0}@media (min-width:768px){.section-padding{padding:7rem 0}}.section-title{color:#374151;font-size:2rem;font-weight:700;margin-bottom:3rem;position:relative;text-align:center}@media (min-width:768px){.section-title{font-size:2.5rem}}.section-title:after{background-color:#f59e0b;bottom:-15px;content:"";height:3px;left:50%;position:absolute;transform:translate(-50%);width:80px}@keyframes pulse{0%{box-shadow:0 0 #f59e0b66}70%{box-shadow:0 0 0 15px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.experience{background-color:#f8f8ff}.experience .timeline-container:before{background-color:#f59e0b}.experience .timeline-content{background-color:#f7ecc0}.experience .timeline-content.left:before,.experience .timeline-content.right:before{border-color:transparent}.experience .timeline-content.left:before{border-color:transparent transparent transparent #f7ecc0}.experience .timeline-content.right:before{border-color:transparent #f7ecc0 transparent transparent}.job-title{color:#374151;font-size:1.3rem;font-weight:700;margin-bottom:.5rem}.job-period{color:#a5a4a4;font-size:.9rem;margin-bottom:1rem}.job-description{color:#374151;line-height:1.6;margin-bottom:1rem}.job-company-name{color:#f59e0b;font-size:1.1rem;font-weight:500;margin-bottom:.5rem}.job-projects{margin-top:1rem}.job-projects-label{color:#374151;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.job-projects-list{display:flex;flex-wrap:wrap;gap:.5rem}.timeline-content.left .job-projects-list{justify-content:flex-end}.job-project-tag{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:1px solid rgba(245,158,11,.1);cursor:pointer;transition:transform .2s ease,background-color .2s ease;will-change:transform}.job-project-tag:hover{background:#f59e0b40;border:1px solid rgba(245,158,11,.3);transform:translateZ(0)}.company-name{color:#f59e0b;font-weight:500;margin-bottom:.25rem}@media (max-width:767px){.experience-timeline:before{left:30px}.timeline-item.left,.timeline-item.right{padding-left:70px;padding-right:0}.timeline-dot.left-dot,.timeline-dot.right-dot{left:22px;right:auto}.timeline-content.left:before,.timeline-content.right:before{border-color:transparent #f7ecc0 transparent transparent;border-width:10px 10px 10px 0;left:-10px;right:auto}}.timeline-container{margin:0 auto;max-width:1000px;padding:30px 0;position:relative}.timeline-container:before{background-color:#f59e0b;bottom:0;content:"";height:0;left:50%;position:absolute;top:0;transform:translate(-50%);transition:height 1.5s ease-out;width:2px}@media (max-width:767px){.timeline-container:before{left:30px;transform:none}}.timeline-container.animate:before{height:100%}.timeline-item{margin-bottom:3rem;position:relative}@media (min-width:768px){.timeline-item{width:100%}.timeline-item.left{padding-right:50%;text-align:right}.timeline-item.right{padding-left:50%;text-align:left}}@media (max-width:767px){.timeline-item{padding-left:70px}}.timeline-item:last-child{margin-bottom:0}.timeline-item:after{clear:both;content:"";display:table}.timeline-dot{background-color:#f59e0b;border:2px solid #f8f8ff;border-radius:50%;height:18px;position:absolute;top:18px;transition:transform .3s ease,box-shadow .3s ease;width:18px;z-index:1}@media (min-width:768px){.timeline-dot.left-dot,.timeline-dot.right-dot{left:calc(50% - 9px)}}@media (max-width:767px){.timeline-dot{left:22px}}.timeline-dot:hover{box-shadow:0 0 10px #f59e0b80;transform:scale(1.2)}.timeline .mobile-arrow{display:none}@media (max-width:767px){.timeline .mobile-arrow{border-color:transparent #f8f8ff transparent transparent;border-style:solid;border-width:10px 10px 10px 0;display:block;height:0;left:-10px;position:absolute;top:18px;width:0;z-index:2}}.timeline-content{background-color:#f8f8ff;border-radius:10px;box-shadow:0 5px 15px #3741510d;padding:1.5rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.timeline-content:before{border-style:solid;content:"";height:0;position:absolute;width:0}@media (min-width:768px){.timeline-content{width:90%}.timeline-content.left{float:right;margin-right:30px}.timeline-content.left:before{border-color:transparent transparent transparent #f8f8ff;border-width:10px 0 10px 15px;left:auto;right:-15px;top:20px}.timeline-content.right{float:left;margin-left:30px}.timeline-content.right:before{border-color:transparent #f8f8ff transparent transparent;border-width:10px 15px 10px 0;left:-15px;right:auto;top:20px}}@media (max-width:767px){.timeline-content:before{border-color:transparent #f8f8ff transparent transparent!important;border-style:solid!important;border-width:10px 10px 10px 0!important;content:""!important;left:-10px!important;position:absolute!important;right:auto!important;top:18px!important}.timeline-content.left:before,.timeline-content.right:before{border-color:transparent #f8f8ff transparent transparent!important;border-width:10px 10px 10px 0!important;left:-10px!important;right:auto!important}.timeline-content:before{display:none!important}.timeline-content.left,.timeline-content.right{float:none;margin-left:0;margin-right:0}.timeline-content.left:before,.timeline-content.right:before{display:none!important}}.timeline-content:hover{box-shadow:0 8px 25px #3741511a;transform:translateY(-5px)}@media (max-width:767px){.timeline .mobile-timeline-item .timeline-content{position:relative}.timeline .mobile-timeline-item .timeline-content .mobile-arrow{border-color:transparent #f8f8ff transparent transparent!important;display:block!important}}.timeline-date{color:#a5a4a4;display:block;font-size:.9rem;margin-bottom:.25rem}.timeline-organization{color:#f59e0b;display:block;font-weight:500;margin-bottom:.25rem}.timeline-title{color:#f59e0b;font-size:1.25rem;font-weight:700;margin:0 0 .75rem}.timeline-description{color:#374151;font-size:.95rem;line-height:1.6;margin:0 0 1rem}.timeline-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.timeline-content.left .timeline-tags{justify-content:flex-end}.job-project-tag,.timeline-tag{background:#f59e0b1a;border-radius:20px;color:#f59e0b;display:inline-block;font-size:.8rem;font-weight:500;padding:.3rem .7rem;transition:all .2s ease}.job-project-tag:hover,.timeline-tag:hover{background:#f59e0b33;transform:translateY(-2px)}.timeline-list{margin:1rem 0;padding-left:1.2rem}.timeline-list-item{color:#374151;font-size:.9rem;line-height:1.5;margin-bottom:.5rem;position:relative}.timeline-list-item:before{background-color:#f59e0b;border-radius:50%;content:"";height:6px;left:-1.2rem;position:absolute;top:.5rem;width:6px}.timeline-list-item:last-child{margin-bottom:0}@media (max-width:767px){.timeline-highlights,.timeline-tags{display:none}}.education{background-color:#f7ecc0}.education-highlights{margin-bottom:1.2rem;margin-top:1rem}.education-highlights .highlights-title{color:#374151;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.education-skills{margin-top:1rem}.education-skills .skills-title{color:#374151;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.education .timeline-container:before{background-color:#f59e0b}.education .timeline-content{background-color:#f8f8ff}.institution-name{color:#f59e0b;font-weight:500;margin-bottom:.25rem}.skills{background-color:#f7ecc0;padding:5rem 0}.skills-wrapper{align-items:center;display:flex;flex-direction:column;gap:2rem}.skills-grid{display:flex;flex-wrap:wrap;gap:1.75rem;justify-content:center;margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:1200px;width:100%}.skills-grid.development-grid,.skills-grid.electronics-grid,.skills-grid.fabrication-grid,.skills-grid.management-grid,.skills-grid.sysadmin-grid{margin-top:2rem}.skills-category-title{color:#f59e0b;font-size:1.75rem;font-weight:600;margin-bottom:2rem;position:relative;text-align:center}.skills-category-title:after{background-color:#f59e0b;bottom:-10px;content:"";height:3px;left:50%;position:absolute;transform:translate(-50%);width:60px}.skills-category-title.management-title{margin-top:2rem}.skills-category-title.development-title,.skills-category-title.electronics-title,.skills-category-title.fabrication-title,.skills-category-title.languages-title,.skills-category-title.sysadmin-title{margin-top:4rem}.skill-card{align-items:center;background-color:#f8f8ff;border:1px solid rgba(55,65,81,.05);border-radius:10px;box-shadow:0 5px 15px #0000000d;display:flex;flex:0 0 220px;flex-direction:column;height:220px;opacity:0;padding:1.5rem;transform:translateY(20px);transition:transform .3s ease,box-shadow .3s ease;width:220px}.skill-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.skill-card.management-card{background-color:#f59e0b08;border:1px solid rgba(245,158,11,.1)}.skill-card.management-card:hover{transform:translateY(-5px) scale(1.02)}.skill-card.management-card .skill-name{color:#c57f08}.skill-card.management-card .skill-level{background-color:#f59e0b;color:#f8f8ff}.skill-card.development-card{background-color:#fef3c708;border:1px solid rgba(254,243,199,.1)}.skill-card.development-card:hover{transform:translateY(-5px)}.skill-card.development-card .skill-name{color:#fde895}.skill-card.development-card .skill-level{background-color:#fef3c7;color:#374151}.skill-card.sysadmin-card{background-color:#2d7dd208;border:1px solid rgba(45,125,210,.1)}.skill-card.sysadmin-card:hover{transform:translateY(-5px) scale(1.01)}.skill-card.sysadmin-card .skill-name{color:#2d7dd2}.skill-card.sysadmin-card .skill-level{background-color:#2d7dd2;color:#f8f8ff}.skill-card.electronics-card{background-color:#d9770608;border:1px solid rgba(217,119,6,.1)}.skill-card.electronics-card:hover{transform:translateY(-5px) rotate(1deg)}.skill-card.electronics-card .skill-name{color:#a75c05}.skill-card.electronics-card .skill-level{background-color:#d97706;color:#f8f8ff}.skill-card.fabrication-card{background-color:#6a7c9408;border:1px solid rgba(106,124,148,.1)}.skill-card.fabrication-card:hover{transform:translateY(-5px) scale(1.03)}.skill-card.fabrication-card .skill-name{color:#556376}.skill-card.fabrication-card .skill-level{background-color:#6a7c94;color:#f8f8ff}.skill-icon{align-items:center;background-color:#f59e0b1a;border-radius:10px;color:#f59e0b;display:flex;flex-shrink:0;font-size:2rem;height:50px;justify-content:center;margin-bottom:1rem;transition:transform .3s ease;width:50px}.skill-icon svg{font-size:1.6rem}.skill-icon.management-icon{background-color:#f59e0b1a;color:#f59e0b}.skill-icon.management-icon svg{transition:transform .3s ease}.skill-card:hover .skill-icon.management-icon svg{transform:scale(1.1)}.skill-icon.development-icon{background-color:#fef3c71a;color:#fef3c7}.skill-icon.development-icon svg{transition:transform .3s ease}.skill-card:hover .skill-icon.development-icon svg{transform:translateY(-3px)}.skill-icon.sysadmin-icon{background-color:#2d7dd21a;color:#2d7dd2}.skill-icon.sysadmin-icon svg{transition:transform .3s ease,opacity .3s ease}.skill-card:hover .skill-icon.sysadmin-icon svg{opacity:.9;transform:scale(1.15)}.skill-icon.electronics-icon{background-color:#d977061a;color:#d97706}.skill-icon.electronics-icon svg{transition:transform .3s ease}.skill-card:hover .skill-icon.electronics-icon svg{transform:rotate(15deg)}.skill-icon.fabrication-icon{background-color:#6a7c941a;color:#6a7c94}.skill-icon.fabrication-icon svg{transition:transform .3s ease,opacity .3s ease}.skill-card:hover .skill-icon.fabrication-icon svg{opacity:.9;transform:scale(1.2)}.skill-logo{height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.skill-content{align-items:center;display:flex;flex:1;flex-direction:column;height:100%;justify-content:space-between;text-align:center;width:100%}.skill-name{color:#374151;font-size:1rem;font-weight:700;line-height:1.2;margin-bottom:.5rem;text-align:center}.skill-level{align-self:center;background-color:#f59e0b;border-radius:4px;color:#f8f8ff;display:inline-block;flex-shrink:0;font-size:.75rem;font-weight:600;margin-bottom:.5rem;padding:.2rem .5rem}.skill-description{align-items:center;color:#a5a4a4;display:flex;flex:1;font-size:.8rem;justify-content:center;line-height:1.4;margin:0;padding:0 .25rem;text-align:center}.languages-container{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:2rem auto;max-width:800px}.language-badge{align-items:center;background-color:#f8f8ff;border:1px solid rgba(55,65,81,.05);border-radius:8px;box-shadow:0 3px 10px #0000000d;display:inline-flex;flex-direction:column;min-width:140px;padding:1rem 1.5rem;transition:all .3s ease}.language-badge:hover{box-shadow:0 5px 15px #00000014;transform:translateY(-3px)}.language-name{color:#374151;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.language-level{background-color:#f59e0b0d;border-radius:20px;color:#a5a4a4;font-size:.8rem;padding:.2rem .6rem}.skill-card:nth-child(1){transition-delay:.05s}.skill-card:nth-child(2){transition-delay:.1s}.skill-card:nth-child(3){transition-delay:.15s}.skill-card:nth-child(4){transition-delay:.2s}.skill-card:nth-child(5){transition-delay:.25s}.skill-card:nth-child(6){transition-delay:.3s}.skill-card:nth-child(7){transition-delay:.35s}.skill-card:nth-child(8){transition-delay:.4s}.skill-card:nth-child(9){transition-delay:.45s}.skill-card:nth-child(10){transition-delay:.5s}.skill-card:nth-child(11){transition-delay:.55s}.skill-card:nth-child(12){transition-delay:.6s}.skill-card:nth-child(13){transition-delay:.65s}.skill-card:nth-child(14){transition-delay:.7s}.skill-card:nth-child(15){transition-delay:.75s}.skill-card:nth-child(16){transition-delay:.8s}.skill-card:nth-child(17){transition-delay:.85s}.skill-card:nth-child(18){transition-delay:.9s}.skill-card:nth-child(19){transition-delay:.95s}.skill-card:nth-child(20){transition-delay:1s}@media (max-width:767px){.skills-grid{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.skills-category-title{font-size:1.2rem;margin-bottom:1rem;margin-top:2rem}.skills-category-title:first-of-type{margin-top:0}.skills .frontend-backend-container{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.skills .frontend-backend-container .skills-section .skills-category-title{font-size:1.2rem;margin-bottom:1rem;margin-top:0}.skills .frontend-backend-container .skills-section .skills-grid{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;justify-content:center}.skill-card{flex:0 0 calc(50% - .25rem);height:100px;max-width:140px;min-width:calc(50% - .25rem);padding:.5rem;width:calc(50% - .25rem)}.skill-icon{height:28px;margin-bottom:.3rem;width:28px}.skill-icon svg{font-size:1rem}.skill-name{font-size:.75rem;line-height:1.1;margin-bottom:.25rem;text-align:center}.skill-level{background-color:#f59e0b;color:#f8f8ff;font-size:.6rem;margin-bottom:.2rem;padding:.15rem .3rem}.skill-description{display:none}.languages-container{gap:.75rem}.language-badge{min-width:120px;padding:.75rem 1rem}}.projects{background-color:#f7ecc0}.projects-grid{display:grid;gap:1.5rem;grid-template-columns:1fr}@media (min-width:768px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:992px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.project-card{border-radius:12px;box-shadow:0 5px 15px #3741511a;cursor:pointer;height:320px;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{box-shadow:0 15px 30px #37415126;transform:translateY(-5px)}.project-card:hover .project-overlay{opacity:1}.project-card:hover .project-image img{transform:scale(1.05)}.project-image{height:100%;left:0;position:absolute;top:0;width:100%}.project-image img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease;width:100%}.project-title-banner{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f59e0be6;background-image:linear-gradient(90deg,#f59e0bd9,#d97706e6);border-top:1px solid rgba(255,255,255,.1);bottom:0;box-shadow:0 -4px 10px #0000001a;left:0;padding:.8rem 1.2rem;position:absolute;transform:translateY(0);transition:transform .3s ease;width:100%;z-index:5}.project-title{color:#f8f8ff;font-size:1.1rem;font-weight:500;letter-spacing:.5px;margin:0;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .2s ease}.project-card:hover .project-title{transform:translateY(-2px)}.project-overlay{background:linear-gradient(180deg,#374151b3 0,#374151e6);color:#f8f8ff;display:flex;flex-direction:column;height:100%;justify-content:flex-end;left:0;opacity:0;padding:1.5rem;position:absolute;top:0;transition:opacity .3s ease,-webkit-backdrop-filter .3s ease;transition:opacity .3s ease,backdrop-filter .3s ease;transition:opacity .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;width:100%;z-index:10}@media (min-width:768px){.project-overlay{opacity:0}}.project-name{color:#f8f8ff;font-size:1.5rem;font-weight:700;margin-bottom:.8rem}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.project-tech{background:#f59e0bcc;border-radius:20px;color:#f8f8ff;display:inline-block;font-size:.7rem;font-weight:600;padding:.3rem .6rem}.project-period{font-size:.9rem;margin-bottom:1rem;opacity:.7}.project-action{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#f8f8ff33;border-radius:4px;display:inline-block;font-size:.9rem;font-weight:500;margin-top:auto;padding:.5rem 1rem;transition:background .3s ease}.project-action:hover{background:#f8f8ff4d}.project-modal{background:#f8f8ff;border-radius:12px;box-shadow:0 25px 50px #37415133;left:50%;max-height:90vh;max-width:1000px;outline:none;overflow:auto;position:fixed;top:50%;transform:translate(-50%,-50%);width:90vw;z-index:1001}.project-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#374151cc;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.project-modal-content{display:flex;flex-direction:column;height:100%}@media (min-width:768px){.project-modal-content{flex-direction:row}}.project-modal-close{align-items:center;background:#000000a6;border:none;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#f8f8ff;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:background .3s ease;width:40px;z-index:10}.project-modal-close:hover{background:#f59e0b}.project-modal-image{height:250px;width:100%}@media (min-width:768px){.project-modal-image{height:auto;width:50%}}.project-modal-image img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}@media (min-width:768px){.project-modal-image img{height:100%}}.project-modal-details{flex:1;overflow-y:auto;padding:2rem}.project-modal-name{color:#374151;font-size:2rem;font-weight:700;margin-bottom:1rem}.project-modal-period{color:#a5a4a4;font-size:1rem;margin-bottom:1.5rem}.project-modal-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.project-modal-tech{background:#f59e0b1a;border-radius:20px;color:#f59e0b;display:inline-block;font-size:.8rem;font-weight:600;padding:.4rem .8rem}.project-modal-description{color:#a5a4a4;line-height:1.8;margin-bottom:2rem}.project-modal-link{align-items:center;background:linear-gradient(135deg,#f59e0b,#dd8e09);border-radius:6px;box-shadow:0 5px 15px #f59e0b4d;color:#f8f8ff;display:inline-flex;font-weight:600;gap:.5rem;padding:.8rem 1.5rem;text-decoration:none;transition:all .3s ease}.project-modal-link:hover{box-shadow:0 8px 20px #f59e0b66;transform:translateY(-3px)}body.dark-mode .projects{background-color:#1c1917}body.dark-mode .project-card{box-shadow:0 5px 15px #0000004d}body.dark-mode .project-card:hover{box-shadow:0 15px 30px #0006}body.dark-mode .project-title-banner{background:linear-gradient(90deg,#121212f2 0,#1e1e1ee6);border-top:1px solid rgba(255,255,255,.05)}body.dark-mode .project-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(180deg,#0a0a0abf 0,#0f0f0fe6);border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff0d}body.dark-mode .project-overlay:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:-1}.project-card:hover body.dark-mode .project-overlay:before{opacity:1}body.dark-mode .project-tech{background:#f59e0b99;box-shadow:0 2px 10px #0003}body.dark-mode .project-action{background:#ffffff1a;border:1px solid rgba(255,255,255,.05)}body.dark-mode .project-action:hover{background:#ffffff26}body.dark-mode .project-modal{background:#1c1917;border:1px solid rgba(255,255,255,.05)}body.dark-mode .project-modal-overlay{background-color:#000000d9}body.dark-mode .project-modal-name{color:#f8f8ff}body.dark-mode .project-modal-period{color:#5f5fff}body.dark-mode .project-modal-tech{background:#f59e0b26;color:#f8bb54}body.dark-mode .project-modal-description{color:#9292ff}.ReactModal__Overlay{align-items:center!important;display:flex!important;justify-content:center!important;opacity:0;transition:opacity .3s ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}@media (max-width:767px){.project-card{height:300px}}@media (max-width:575px){.project-card{height:240px}.project-modal{max-height:95vh;width:95vw}.project-modal-content{flex-direction:column}.project-modal-image{height:200px;width:100%}}.project-card{transform-origin:center bottom}@media (prefers-reduced-motion:no-preference){.project-card:hover .project-image img{transform:scale(1.08);transition:transform .5s cubic-bezier(.33,1,.68,1)}.project-card:active{transform:scale(.98);transition:transform .2s ease}}.services{background-color:#f7ecc0}.services-intro{color:#a5a4a4;margin:0 auto 3rem;max-width:800px;text-align:center}.services-intro .highlight{color:#f59e0b;font-weight:600}.services-intro .price{background-color:#d9770626;border:1px solid #a75c05;border-radius:4px;color:#d97706;display:inline-block;font-weight:700;margin:.5rem .3rem;padding:.2rem .5rem}.services-intro .price-note{color:#7f7e7e;font-size:.9rem;font-style:italic}.services-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}@media (min-width:768px){.services-grid{gap:2rem}}.service-card{background:#f8f8ff;border:1px solid rgba(55,65,81,.05);border-radius:12px;box-shadow:0 8px 30px #3741510d;overflow:hidden;padding:2rem;position:relative;transition:all .3s ease}.service-card:hover{box-shadow:0 15px 40px #3741511a;transform:translateY(-5px)}.service-card:hover .service-icon-container{transform:scale(1.1)}.service-card:before{background:radial-gradient(circle at top right,rgba(245,158,11,.1),transparent 70%);border-radius:0 0 0 100%;content:"";height:100px;position:absolute;right:0;top:0;width:100px;z-index:0}.service-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.service-icon-container{align-items:center;background:#f59e0b1a;border-radius:12px;color:#f59e0b;display:flex;font-size:1.8rem;height:60px;justify-content:center;margin-right:1rem;transition:transform .3s ease;width:60px}.service-icon-svg{color:#f59e0b;font-size:1.8rem}.service-category{background:#d977061a;border-radius:20px;color:#d97706;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.4rem .8rem;text-transform:uppercase}.service-title{color:#374151;font-size:1.4rem;font-weight:700;margin-bottom:1rem}.service-description{color:#a5a4a4;font-size:.95rem;line-height:1.6;margin-bottom:1.5rem}.service-features{list-style:none;margin:0;padding:0}.service-feature{align-items:center;color:#a5a4a4;display:flex;font-size:.9rem;padding:.5rem 0}.service-feature:before{color:#f59e0b;content:"•";font-weight:700;margin-right:.5rem}@media (max-width:767px){.service-card{padding:1.25rem}.service-title{font-size:1.1rem;margin-bottom:.75rem}.service-description{display:-webkit-box;font-size:.85rem;margin-bottom:1rem;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.service-features .service-feature:nth-child(n+4){display:none}.service-feature{font-size:.8rem;padding:.3rem 0}.service-icon-container{font-size:1.4rem;height:45px;width:45px}.service-category{font-size:.7rem;padding:.3rem .6rem}}.contact{background-color:#f8f8ff}.contact-content{margin:0 auto;max-width:700px;text-align:center}.contact-intro{color:#a5a4a4;font-size:1.1rem;margin-bottom:2rem}.contact-links{align-items:center;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}@media (min-width:768px){.contact-links{flex-direction:row;flex-wrap:wrap;justify-content:center}}.contact-link{align-items:center;border-radius:50px;display:inline-flex;font-weight:500;gap:.5rem;padding:1rem 2rem;text-decoration:none;transition:all .3s ease-in-out}.contact-link i{font-size:1.5rem;margin-right:.75rem}.contact-link.linkedin-link{background-color:#0077b5;color:#f8f8ff}.contact-link.linkedin-link:hover{background-color:#00669c;transform:translateY(-3px)}.contact-link.github-link{background-color:#333;color:#f8f8ff}.contact-link.github-link:hover{background-color:#24292e;transform:translateY(-3px)}.contact-link.malt-link{background:linear-gradient(135deg,#ff6b6b,#ff5252);color:#f8f8ff}.contact-link.malt-link:hover{background:linear-gradient(135deg,#ff5252,#f44);transform:translateY(-3px)}.contact-link.email-link{background-color:#f59e0b;color:#f8f8ff}.contact-link.email-link:hover{background-color:#c57f08;transform:translateY(-3px)}.contact-location{color:#a5a4a4;font-size:1rem}body{font-size:14px;line-height:1.6}@media (min-width:576px){body{font-size:15px}}@media (min-width:992px){body{font-size:16px}}@media (min-width:1200px){.container{max-width:1280px}}html{scroll-behavior:smooth}.footer{background-color:#374151;padding:2rem}.footer-content{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:space-between}@media (min-width:768px){.footer-content{flex-direction:row}}.copyright{color:#f8f8ff;font-size:.9rem}.social-links{align-items:center;display:flex;gap:1rem}.social-link{color:#f8f8ff;font-size:1.25rem;transition:all .3s ease-in-out}.social-link:hover{color:#f59e0b;transform:translateY(-3px)}.social-link-malt:hover{color:#ff6b6b}.eco-notification{max-width:400px;position:fixed;right:20px;top:85px;z-index:9999}@media (max-width:767px){.eco-notification{left:10px;max-width:none;right:10px;top:75px}}.eco-notification-content{background-color:#f8f8ff;border-left:4px solid #f59e0b;border-radius:12px;box-shadow:0 10px 30px #37415126;display:flex;overflow:hidden;padding:1.5rem;position:relative}.eco-notification-content:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' fill='none' stroke='%2322c55e10' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10'/%3E%3Cpath d='M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12'/%3E%3C/svg%3E");background-repeat:repeat;background-size:40px;bottom:0;content:"";left:0;opacity:.1;position:absolute;right:0;top:0}@media (max-width:767px){.eco-notification-content{align-items:center;flex-direction:column;text-align:center}}.eco-notification-icon{align-items:center;background-color:#f59e0b1a;border-radius:50%;display:flex;flex-shrink:0;font-size:2.5rem;height:60px;justify-content:center;margin-right:1rem;width:60px}@media (max-width:767px){.eco-notification-icon{margin-bottom:1rem;margin-right:0}}.eco-notification-text{flex:1}.eco-notification-text h4{color:#374151;font-size:1.2rem;font-weight:600;margin:0 0 .8rem}.eco-notification-text p{color:#a5a4a4;font-size:.95rem;line-height:1.5;margin:0 0 .8rem}.eco-notification-text p:last-child{margin-bottom:0}.eco-notification-text ul{margin:.5rem 0 1rem;padding-left:1.5rem}.eco-notification-text ul li{color:#a5a4a4;font-size:.9rem;margin-bottom:.4rem}.eco-notification-close{background:transparent;border:none;color:#a5a4a4;cursor:pointer;font-size:1.2rem;line-height:.8;padding:.3rem;position:absolute;right:.5rem;top:.5rem}.eco-notification-close:hover{color:#374151}.eco-notification .eco-fact{background-color:#f59e0b1a;border-left:2px solid #f59e0b;border-radius:8px;color:#374151!important;font-size:.85rem!important;font-style:italic;margin-top:1rem!important;padding:.8rem}body.dark-mode .eco-notification-content{background-color:#292524;border-left-color:#fbbf24}body.dark-mode .eco-notification-text h4{color:#f8f8ff}body.dark-mode .eco-notification-text li,body.dark-mode .eco-notification-text p,body.dark-mode .eco-notification-close{color:#fde68a}body.dark-mode .eco-notification-close:hover{color:#f8f8ff}body.dark-mode .eco-notification .eco-fact{background-color:#fbbf2426;border-left-color:#fbbf24;color:#f8f8ff!important}body.dark-mode .eco-notification-icon{background-color:#fbbf2433}body.eco-mode .eco-notification-content{background-color:#151718!important;border:1px solid #333!important;box-shadow:none!important}body.eco-mode .eco-notification-text .eco-fact,body.eco-mode .eco-notification-text h4,body.eco-mode .eco-notification-text li,body.eco-mode .eco-notification-text p{color:#d4d4d4!important}body.eco-mode .eco-notification .eco-fact{background-color:#1a1d1e!important;border-color:#444!important}.language-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid transparent;border-radius:.5rem;color:var(--text-color);cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem .75rem;transition:all .3s ease}.language-toggle:hover{background:#fff3;border-color:var(--primary-color);transform:translateY(-2px)}.language-toggle:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.2);outline:none}.language-toggle .lang-flag{align-items:center;border-radius:.125rem;box-shadow:0 1px 3px #0003;display:flex;height:1rem;justify-content:center;overflow:hidden;width:1.5rem}.language-toggle .lang-flag svg{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.dark-mode .language-toggle{background:#0000004d;color:var(--text-color-dark)}.dark-mode .language-toggle:hover{background:#00000080}@media (max-width:768px){.language-toggle{font-size:.8rem;padding:.4rem .6rem}.language-toggle .lang-flag{height:.875rem;width:1.25rem}}.toggle-buttons{align-items:center;display:flex;gap:.75rem}.toggle-buttons .language-toggle,.toggle-buttons .mode-toggle{flex-shrink:0}@media (max-width:768px){.toggle-buttons{gap:.5rem;justify-content:center;margin-top:1rem}}.mode-toggle{align-items:center;background:transparent;border:none;border-radius:20px;color:#a5a4a4;cursor:pointer;display:flex;padding:.4rem .6rem;transition:color .3s ease,background-color .3s ease}.mode-toggle:hover{color:#374151}.mode-toggle.dark-toggle{align-items:center;background-color:#374151;border-radius:50%;box-shadow:0 2px 8px #3741511a;color:#fcd34d;display:flex;height:40px;justify-content:center;margin-left:.5rem;overflow:hidden;position:relative;transition:all .3s ease;width:40px}@media (min-width:768px){.mode-toggle.dark-toggle{height:36px;width:36px}}@media (min-width:992px){.mode-toggle.dark-toggle{height:40px;width:40px}}.mode-toggle.dark-toggle:hover{background-color:#4c596f;transform:scale(1.05)}.mode-toggle.dark-toggle.dark-active{background-color:#b45309;color:#fcd34d}.mode-toggle.dark-toggle.dark-active:hover{background-color:#e5690b;transform:scale(1.05)}.mode-toggle.dark-toggle .theme-icon{font-size:1.2rem;transition:transform .3s ease}.mode-toggle.dark-toggle:hover .theme-icon{transform:rotate(15deg)}body.dark-mode .mode-toggle.dark-toggle{box-shadow:0 2px 8px #0000004d}@media (max-width:767px){.mode-toggle.dark-toggle{height:36px;width:36px}.mode-toggle.dark-toggle .theme-icon{font-size:1.1rem}}body.dark-mode{background-color:#121212;color:#e0e0e0}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:#f5f5f5}body.dark-mode .hero-video-overlay{background:#121212e6}body.dark-mode .hero-video-background{filter:brightness(.6) blur(10px);will-change:auto}body.dark-mode .hero-description{color:#e0e0e0}body.dark-mode .contact,body.dark-mode .education,body.dark-mode .experience,body.dark-mode .hero,body.dark-mode .projects{background-color:#121212}body.dark-mode .about,body.dark-mode .services,body.dark-mode .skills{background-color:#1e1e1e}body.dark-mode .about-stat,body.dark-mode .language-badge,body.dark-mode .project-card,body.dark-mode .service-card,body.dark-mode .skill-card,body.dark-mode .timeline-content{background-color:#2d2d2d;box-shadow:0 5px 15px #0000004d}body.dark-mode .footer{background-color:#0a0a0a}body.dark-mode a{color:#e0e0e0}body.dark-mode a:hover{color:#f8f8ff}body.dark-mode .header{background-color:#121212f2}body.dark-mode .header .logo-link{color:#f5f5f5}body.dark-mode .header .logo-link img{filter:brightness(0) invert(1);will-change:auto}body.dark-mode .header .navigation-list li a{color:#e0e0e0}body.dark-mode .header .mode-toggle{border-color:#2d2d2d}body.dark-mode .header .mode-toggle:hover{background-color:#2d2d2d}body.dark-mode .education-timeline:before,body.dark-mode .experience-timeline:before{background-color:#2d2d2d}body.dark-mode .timeline-content{background-color:#2d2d2d}body.dark-mode .timeline-content:before{border-color:transparent #2d2d2d transparent transparent!important}@media (min-width:768px){body.dark-mode .timeline-content.left:before{border-color:transparent transparent transparent #2d2d2d!important}}@media (max-width:767px){body.dark-mode .timeline-content.left:before{border-color:transparent #2d2d2d transparent transparent!important}}body.dark-mode .timeline-content.right:before{border-color:transparent #2d2d2d transparent transparent!important}@media (max-width:767px){body.dark-mode .timeline .mobile-arrow,body.dark-mode .timeline .mobile-timeline-item .timeline-content .mobile-arrow{border-color:transparent #2d2d2d transparent transparent!important}}body.dark-mode .timeline-title{color:#f5f5f5}body.dark-mode .timeline-organization{color:#f59e0b}body.dark-mode .timeline-date{color:#b0b0b0}body.dark-mode .timeline-description{color:#e0e0e0}body.dark-mode .job-project-tag,body.dark-mode .timeline-tag{background:#f59e0b33;color:#f59e0b}body.dark-mode .job-project-tag:hover,body.dark-mode .timeline-tag:hover{background:#f59e0b4d}body.dark-mode .timeline-list-item{color:#e0e0e0}body.dark-mode .timeline-list-item:before{background-color:#f59e0b}body.dark-mode .education-title,body.dark-mode .job-title{color:#f5f5f5}body.dark-mode .company-name,body.dark-mode .institution-name{color:#f59e0b}body.dark-mode .education-description,body.dark-mode .education-period,body.dark-mode .job-description,body.dark-mode .job-period{color:#b0b0b0}body.dark-mode .project-card{background-color:#2d2d2d;border:1px solid rgba(255,255,255,.05)}body.dark-mode .project-card:hover{box-shadow:0 10px 20px #0000004d;transform:translateY(-5px);transition:transform .2s ease,box-shadow .2s ease}body.dark-mode .project-overlay{background:linear-gradient(180deg,#121212d9 0,#121212e6);border-top:1px solid rgba(255,255,255,.12);transition:opacity .3s ease}.project-card:hover body.dark-mode .project-overlay{opacity:1}body.dark-mode .project-name{color:#f5f5f5}body.dark-mode .project-tech{background:#f59e0b40;color:#f59e0b}body.dark-mode .project-period{color:#b0b0b0}body.dark-mode .project-action{background-color:#f59e0b33;color:#f59e0b}body.dark-mode .project-action:hover{background-color:#f59e0b59}body.dark-mode .project-modal{background-color:#2d2d2d}body.dark-mode .project-modal-overlay{background-color:#000c}body.dark-mode .project-modal-close{background:#6f6f6f66}body.dark-mode .project-modal-close:hover{background-color:#f59e0b}body.dark-mode .project-modal-name{color:#f5f5f5}body.dark-mode .project-modal-period{color:#b0b0b0}body.dark-mode .project-modal-tech{background-color:#f59e0b33;color:#f59e0b}body.dark-mode .project-modal-description{color:#e0e0e0}body.dark-mode .project-modal-link{background:#f59e0b;color:#121212}body.dark-mode .project-modal-link:hover{background-color:#f6a823}body.dark-mode .about-stat{background-color:#2d2d2d}body.dark-mode .about-stat-number{color:#fbbf24}body.dark-mode .about-stat-text{color:#b0b0b0}body.dark-mode .about-paragraph .highlight{color:#fbbf24}body.dark-mode .about-years{color:#f5f5f5}body.dark-mode .about-years-text{color:#e0e0e0}body.dark-mode .about-experience{background:linear-gradient(135deg,#f59e0b,#dd8e09)}body.dark-mode .skill-item{background-color:#2d2d2d;border:1px solid rgba(255,255,255,.05)}body.dark-mode .skill-name{color:#f5f5f5!important}body.dark-mode .skill-level{background-color:#fbbf2433;color:#fbbf24!important}body.dark-mode .skill-level .level-fill{background-color:#fbbf24}body.dark-mode .skill-description{color:#b0b0b0!important}body.dark-mode .skill-icon.development-icon,body.dark-mode .skill-icon.electronics-icon,body.dark-mode .skill-icon.fabrication-icon,body.dark-mode .skill-icon.management-icon,body.dark-mode .skill-icon.sysadmin-icon{background-color:#ffffff1a;color:#fbbf24!important}body.dark-mode .skill-card.development-card,body.dark-mode .skill-card.electronics-card,body.dark-mode .skill-card.fabrication-card,body.dark-mode .skill-card.management-card,body.dark-mode .skill-card.sysadmin-card{background-color:#2d2d2d;border:1px solid rgba(255,255,255,.05);transition:transform .2s ease,box-shadow .2s ease}body.dark-mode .skill-card.development-card:hover,body.dark-mode .skill-card.electronics-card:hover,body.dark-mode .skill-card.fabrication-card:hover,body.dark-mode .skill-card.management-card:hover,body.dark-mode .skill-card.sysadmin-card:hover{box-shadow:0 5px 15px #0003;transform:translateY(-3px)}body.dark-mode .project-title-banner{border-top:1px solid rgba(255,255,255,.15);box-shadow:0 -3px 10px #0003}body.dark-mode .job-projects-label{color:#fef3c7}body.dark-mode .job-project-tag{background:#fbbf2433;border:1px solid rgba(251,191,36,.2);color:#fbbf24}body.dark-mode .job-project-tag:hover{background:#fbbf244d}body.dark-mode .language-badge{background-color:#2d2d2d;border:1px solid rgba(255,255,255,.05);transition:box-shadow .2s ease}body.dark-mode .language-badge:hover{box-shadow:0 3px 10px #0000004d}body.dark-mode .language-name{color:#f5f5f5}body.dark-mode .language-level{background-color:#fbbf2426;color:#b0b0b0}:root{--eco-mode-transition:all .3s ease}body.eco-mode{background-color:#0e1010;color:#bbb}body.eco-mode *,body.eco-mode *:after,body.eco-mode *:before{animation:none!important;animation-delay:0s!important;animation-duration:0s!important;box-shadow:none!important;text-shadow:none!important;transform:none!important;transition:none!important;transition-delay:0s!important;transition-duration:0s!important}body.eco-mode .header .navigation-list li{animation:none!important;opacity:1!important}body.eco-mode .header .navigation-list li a:after{transition:none!important;width:0!important}body.eco-mode .header .navigation-list li a.active:after{width:100%!important}body.eco-mode .header .navigation-list li a:hover:after{transition:none!important;width:100%!important}body.eco-mode .motion-div,body.eco-mode .motion-span,body.eco-mode [data-framer-component-type],body.eco-mode [style*=animation],body.eco-mode [style*=transform],body.eco-mode [style*=transition],body.eco-mode div[style*=opacity],body.eco-mode div[style*=transform]{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}body.eco-mode .project-card,body.eco-mode .service-card,body.eco-mode .skill-card{animation:none!important;transform:none!important;transition:none!important}body.eco-mode .project-card:hover,body.eco-mode .service-card:hover,body.eco-mode .skill-card:hover{box-shadow:none!important;transform:none!important}body.eco-mode img[loading=lazy]{content-visibility:auto!important}body.eco-mode canvas,body.eco-mode iframe,body.eco-mode img,body.eco-mode video{filter:contrast(.8) brightness(.9) grayscale(1);opacity:.7}body.eco-mode div,body.eco-mode li,body.eco-mode p,body.eco-mode span{color:#bbb!important;font-size:1rem!important;letter-spacing:.01em!important;line-height:1.6!important}body.eco-mode h1,body.eco-mode h2,body.eco-mode h3,body.eco-mode h4,body.eco-mode h5,body.eco-mode h6{color:#d4d4d4!important;font-weight:400!important}body.eco-mode footer,body.eco-mode header,body.eco-mode main,body.eco-mode section{background-color:#0e1010!important;color:#fff;padding:1rem!important}body.eco-mode .experience-card,body.eco-mode .project-card,body.eco-mode .service-card,body.eco-mode .skill-card,body.eco-mode .timeline-content,body.eco-mode button{background-color:#151718!important;border:1px solid #333!important;border-radius:0!important}body.eco-mode a{color:#a9b3bc!important}body.eco-mode .header{background-color:#0e1010f2!important;border-bottom:1px solid #333!important}body.eco-mode .header .navigation-list li a{color:#d4d4d4!important}body.eco-mode .header .navigation-list li a:after{background-color:#777!important}body.eco-mode .header .navigation-list li a.active,body.eco-mode .header .navigation-list li a:hover{color:#fff!important}body.eco-mode .header .navigation-list li a.active:after,body.eco-mode .header .navigation-list li a:hover:after{background-color:#999!important}body.eco-mode .header .mobile-menu-button,body.eco-mode .header .logo-link{color:#d4d4d4!important}body.eco-mode .contact-button,body.eco-mode .eco-toggle,body.eco-mode .mode-toggle,body.eco-mode .project-modal-link,body.eco-mode a[class*=primary],body.eco-mode button[class*=primary]{background-image:none!important;box-shadow:none!important;color:#ccc!important}body.eco-mode .contact-button.eco-active,body.eco-mode .contact-button:hover,body.eco-mode .eco-toggle.eco-active,body.eco-mode .eco-toggle:hover,body.eco-mode .mode-toggle.eco-active,body.eco-mode .mode-toggle:hover,body.eco-mode .project-modal-link.eco-active,body.eco-mode .project-modal-link:hover,body.eco-mode a[class*=primary].eco-active,body.eco-mode a[class*=primary]:hover,body.eco-mode button[class*=primary].eco-active,body.eco-mode button[class*=primary]:hover{color:#fff!important}body.eco-mode .projects-grid,body.eco-mode .services-grid,body.eco-mode .skills-grid{display:grid!important;gap:1rem!important;grid-template-columns:1fr!important}body.eco-mode footer:after{color:#777;content:"🌱 Mode éco actif • Économise jusqu'à 70% d'énergie";display:block;font-size:.8rem;margin-top:1rem;padding:.5rem;text-align:center}body.eco-mode .ReactModal__Overlay{align-items:center!important;background-color:#000c!important;bottom:0!important;display:flex!important;justify-content:center!important;left:0!important;position:fixed!important;right:0!important;top:0!important;z-index:9999!important}body.eco-mode .project-modal{background-color:#151718!important;border:1px solid #333!important;left:auto!important;margin:0 auto!important;max-height:90vh!important;max-width:1000px!important;overflow:auto!important;position:relative!important;top:auto!important;transform:none!important;width:90%!important}body.eco-mode .project-modal-content{display:flex!important;flex-direction:column!important}@media (min-width:768px){body.eco-mode .project-modal-content{flex-direction:row!important}}body.eco-mode .project-modal-image{display:block!important}body.eco-mode .project-modal-image img{display:block!important;opacity:.8!important}body.eco-mode .project-modal-close{background-color:#333!important;border-radius:50%!important;color:#fff!important;cursor:pointer!important;padding:10px!important;position:absolute!important;right:10px!important;top:10px!important;z-index:100!important}body.eco-mode .eco-toggle{opacity:.8!important}body.eco-mode .eco-toggle.eco-active{opacity:1!important}body.eco-mode .eco-toggle .eco-leaf{color:#ccc!important}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;--tw-contain-size:;--tw-contain-layout:;--tw-contain-paint:;--tw-contain-style:}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / .5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;--tw-contain-size:;--tw-contain-layout:;--tw-contain-paint:;--tw-contain-style:}*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.mx-auto{margin-left:auto;margin-right:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.h-6{height:1.5rem}.w-6{width:1.5rem}.resize{resize:both}.items-center{align-items:center}.justify-between{justify-content:space-between}.px-4{padding-left:1rem;padding-right:1rem}.py-4{padding-bottom:1rem;padding-top:1rem}.lowercase{text-transform:lowercase}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
