main{flex-direction:column;display:flex}.hero-image-container{justify-content:center;align-items:center;gap:1rem;display:flex}.hero-image-container img{cursor:pointer;transition:transform 1s ease-in-out}.hero-image-container img:hover{transform:scale(1.05)}#about-me{min-height:50vh}#about-me h2{color:var(--background);margin:.5rem;font-weight:600}.hero-text-container{width:var(--content-width-desktop);line-height:1.5}@keyframes bounceIn{0%{opacity:0;transform:translateY(-30px)scale(.8)}50%{transform:translateY(5px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.scroll-hint{opacity:0;visibility:hidden;pointer-events:none;justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;transition:opacity .2s ease-out,transform .2s ease-out,visibility 0s .2s;display:flex;transform:translateY(-30px)}.scroll-hint.visible{opacity:1;visibility:visible;transition:opacity .3s ease-out,transform .3s ease-out,visibility;animation:.5s ease-out bounceIn;transform:translateY(0)}.scroll-hint .scroll-emoji{font-size:2rem}.scroll-hint.visible .scroll-emoji{animation:1s ease-in-out infinite bounce}.scroll-hint .scroll-text{color:var(--highlight);font-size:1.1rem;font-weight:500}@media (max-width:768px){.hero-image-container{flex-direction:column;margin-bottom:1rem}.hero-text-container{width:var(--content-width-mobile)}.hero-text-container h1{margin:-2rem 0 3rem}#about-me{min-height:auto;padding:.5rem 0 2rem}#about-me h2{display:none}.scroll-hint{margin-top:1rem}.scroll-hint .scroll-emoji{font-size:1.5rem}.scroll-hint .scroll-text{font-size:.9rem}}
.project-carousel{width:100%;max-width:100vw}.carousel-container{cursor:pointer;position:relative}.carousel-track{width:100%;position:relative}.carousel-slide{opacity:0;visibility:hidden;width:100%;transition:opacity .6s ease-in-out,visibility .6s ease-in-out;position:absolute;top:0;left:0}.carousel-slide.active{opacity:1;visibility:visible;position:relative}.carousel-indicators{justify-content:center;gap:.5rem;margin-top:1.5rem;display:flex}.carousel-indicators .indicator{background:var(--foreground);opacity:.3;border-radius:50%;width:8px;height:8px;transition:all .3s}.carousel-indicators .indicator.active{opacity:1;background:var(--highlight);box-shadow:0 0 8px var(--highlight)}.project-item{text-align:center;padding:1rem}.project-item img{object-fit:contain;max-width:100%;height:auto;max-height:50vh}.project-description-container{width:var(--content-width-desktop);justify-content:center;align-items:center;gap:1rem;margin:0 auto;padding:.5rem;line-height:1.5;display:flex}@media (max-width:768px){.project-description-container{width:var(--content-width-mobile-wide);flex-direction:column-reverse;gap:.5rem;display:flex}}
.experience-timeline{width:100%;max-width:100vw;padding:2rem 0}.timeline-container{max-width:var(--content-width-desktop);margin:2rem auto;padding:0 1rem}.experience-item{gap:2rem;margin-bottom:2rem;display:flex;position:relative}.timeline-marker{flex-direction:column;align-items:center;display:flex;position:relative}.timeline-dot{background-color:var(--highlight);border:3px solid var(--background);width:1rem;height:1rem;box-shadow:0 0 0 2px var(--foreground);z-index:1;border-radius:50%;flex-shrink:0}.timeline-line{background-color:var(--foreground);opacity:.3;flex:1;width:2px;min-height:3rem;margin-top:.5rem}.experience-content{flex:1;padding-bottom:1rem}.experience-header{align-items:flex-start;gap:1.5rem;margin-bottom:1rem;display:flex}.company-logo{object-fit:contain;background-color:var(--background);flex-shrink:0;width:4rem;height:4rem}.experience-title{flex:1}.experience-title h3{color:var(--foreground);margin:0;font-size:1.25rem}.experience-title h4{color:var(--foreground);opacity:.8;margin:.25rem 0;font-size:1rem;font-weight:500}.experience-period{color:var(--foreground);opacity:.6;margin:.25rem 0 0;font-size:.875rem;font-style:italic}.experience-description{margin-left:5.5rem;line-height:1.6}.experience-description p{color:var(--foreground);opacity:.9;margin:0}.experience-tech{flex-wrap:wrap;gap:.5rem;margin-top:1rem;margin-left:5.5rem;display:flex}.tech-tag{background-color:var(--highlight);color:var(--background);border-radius:1rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:transform .2s;display:inline-block}.tech-tag:hover{transform:translateY(-2px)}@media (max-width:768px){.timeline-container{max-width:var(--content-width-mobile);padding:0}.experience-item{gap:1rem}.experience-header{flex-direction:column;gap:1rem}.company-logo{width:3rem;height:3rem}.experience-title h3{font-size:1.1rem}.experience-title h4{font-size:.9rem}.experience-description{margin-left:0;font-size:.9rem}.experience-tech{gap:.375rem;margin-left:0}.tech-tag{padding:.25rem .625rem;font-size:.8rem}.timeline-line{min-height:2rem}}
.scroll-progress-container{z-index:1000;background:0 0;height:4px;position:fixed;bottom:0;left:0;right:0}.scroll-progress-bar{background:var(--highlight);height:100%;box-shadow:0 0 10px var(--highlight);transition:width .1s ease-out}
.fixed-buttons-container{z-index:999;flex-direction:column;align-items:center;gap:.75rem;display:flex;position:fixed;bottom:2rem;right:2rem}@media (max-width:768px){.fixed-buttons-container{bottom:1.5rem;right:1.5rem}}.social-buttons{flex-direction:column;gap:.75rem;display:flex}.social-icon-btn,.scroll-to-top-btn{background:var(--background);border:2px solid var(--foreground);cursor:pointer;width:3rem;height:3rem;color:var(--foreground);border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.075,.82,.165,1);display:flex;box-shadow:0 4px 12px #00000026}.social-icon-btn:hover,.scroll-to-top-btn:hover{background:var(--highlight);border-color:var(--highlight);color:var(--background);transform:translateY(-4px)scale(1.1)}.social-icon-btn:hover .link-svg,.scroll-to-top-btn:hover .link-svg,.social-icon-btn:hover .linkedin-bg,.scroll-to-top-btn:hover .linkedin-bg{fill:var(--background)}.social-icon-btn:hover .linkedin-content,.scroll-to-top-btn:hover .linkedin-content{fill:var(--highlight)}.social-icon-btn .link-svg,.scroll-to-top-btn .link-svg{width:1.5rem;height:1.5rem;fill:var(--foreground)}.social-icon-btn svg,.scroll-to-top-btn svg{width:1.5rem;height:1.5rem}@media (max-width:768px){.social-icon-btn,.scroll-to-top-btn{width:2.5rem;height:2.5rem}.social-icon-btn .link-svg,.social-icon-btn svg,.scroll-to-top-btn .link-svg,.scroll-to-top-btn svg{width:1.25rem;height:1.25rem}}.scroll-to-top-btn{opacity:0;pointer-events:none;border:none;height:0;margin-top:-.75rem;padding:0;transform:translateY(20px)}.scroll-to-top-btn.visible{opacity:1;pointer-events:auto;border:2px solid var(--foreground);height:3rem;margin-top:0;transform:translateY(0)}@media (max-width:768px){.scroll-to-top-btn.visible{height:2.5rem}}.linkedin-bg{fill:var(--foreground)}.linkedin-content{fill:var(--background)}
