.navigation{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--nav-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav-accent{height:4px;background:var(--accent-primary);width:0%;transition:width .1s ease-out;position:absolute;top:0;left:0;z-index:10}.nav-container{max-width:1280px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:70px}.nav-brand{display:flex;align-items:center;gap:1rem}.nav-logo{font-size:1.375rem;color:var(--accent-primary);letter-spacing:-.02em}.nav-contact-buttons{display:flex;align-items:center;gap:.5rem}.nav-contact-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:var(--accent-primary);background:transparent}.dark .nav-logo,.dark .nav-contact-btn{color:#fff}.nav-contact-btn:hover{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:var(--shadow-sm)}.nav-menu{display:none;align-items:center;gap:2rem}.nav-links{display:flex;align-items:center;gap:.5rem;height:40px}.nav-link{padding:.5rem 1rem;font-size:.95rem;color:var(--text-secondary);letter-spacing:-.011em;transition:all .2s ease;border-radius:6px;position:relative}.nav-link:after{content:"";position:absolute;bottom:2px;left:1rem;width:0;height:2px;background:var(--accent-primary);transition:width .2s ease}.nav-link:hover{color:var(--accent-primary)}.nav-link:hover:after{width:calc(100% - 2rem)}.nav-actions{display:flex;align-items:center;gap:.5rem;height:40px}.nav-mobile-toggle{display:flex;align-items:center;gap:.75rem}.mobile-menu-btn{padding:.5rem;color:var(--text-primary);cursor:pointer;border-radius:8px;transition:background .3s ease}.mobile-menu-btn svg{width:24px;height:24px}.mobile-menu-btn svg.hidden{display:none}.mobile-menu{display:none;background:var(--bg-elevated);border-top:1px solid var(--border-color);padding:1rem}.mobile-menu.open{display:block}.mobile-menu-links{display:flex;flex-direction:column;gap:.5rem}.mobile-menu-link{padding:.75rem 1rem;color:var(--text-secondary);font-size:1rem;letter-spacing:-.011em;border-radius:8px;transition:all .3s ease}.mobile-menu-link:hover{color:var(--accent-primary);background:var(--bg-tertiary)}@media(min-width:768px){.nav-menu{display:flex}.nav-mobile-toggle{display:none}.mobile-menu{display:none!important}}@media(max-width:768px){.nav-container{padding:0 1rem}.nav-logo{font-size:1.25rem}}.skills-slider{position:relative;display:inline-flex;align-items:flex-start;overflow:visible;--row-gap: 20px;width:100%}.skills-slider .skill-icons svg{width:36px;height:36px}.skills-slider-window{position:relative;display:inline-block;width:100%;min-height:110px;overflow:hidden}.skills-slider-measure{position:absolute;left:-9999px;top:-9999px;visibility:hidden;pointer-events:none;width:auto}.skills-slider-item{position:absolute;left:0;top:0;right:0;display:flex;flex-direction:column;gap:.5rem;width:max-content;transition:transform .52s cubic-bezier(.22,.9,.28,1);pointer-events:none;will-change:transform;overflow:visible}.skills-slider-item.active{transform:translateY(0);pointer-events:auto;z-index:40;overflow:visible;opacity:1;visibility:visible}.skills-slider-item.outgoing{transition:transform .42s cubic-bezier(.2,.8,.2,1),opacity .42s cubic-bezier(.2,.8,.2,1),visibility .42s cubic-bezier(.2,.8,.2,1);z-index:15;opacity:1;visibility:visible}.skills-slider-item:not(.active){opacity:0;visibility:hidden;pointer-events:none}.skills-slider-item:not(.active) .skill-icon img,.skills-slider-item:not(.active) .skill-placeholder{opacity:.5;transform:none}.dir-up .skills-slider-item{transform:translateY(calc(100% + var(--row-gap)))}.dir-up .skills-slider-item.active{transform:translateY(0)}.dir-up .skills-slider-item.outgoing,.dir-down .skills-slider-item{transform:translateY(calc(-100% - var(--row-gap)))}.dir-down .skills-slider-item.active{transform:translateY(0)}.dir-down .skills-slider-item.outgoing{transform:translateY(calc(100% + var(--row-gap)))}.dir-up .skills-slider-item:not(.active):not(.outgoing){transform:translateY(calc(100% + var(--row-gap)));transition:none!important}.dir-down .skills-slider-item:not(.active):not(.outgoing){transform:translateY(calc(-100% - var(--row-gap)));transition:none!important}.skills-slider-item .skill-group-label{font-size:.813rem;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:.5rem}.skills-slider-controls{display:inline-flex;flex-direction:column;gap:.25rem;margin-left:18px;margin-top:25px;align-self:flex-start}.slider-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:transform .12s ease,color .12s ease;transform:translateZ(0);will-change:transform,color;padding:0}.slider-btn:hover{color:var(--accent-primary)}.slider-btn.up:hover{transform:translate3d(0,-2px,0)}.slider-btn.down:hover{transform:translate3d(0,2px,0)}.slider-btn svg{display:block;width:1.7rem;height:1.7rem}.skills-slider .skills-slider-controls{z-index:50}.skill-icon{display:inline-flex;align-items:center;justify-content:center;padding:0 .6rem;background:transparent;border-radius:8px;transition:transform .14s ease,box-shadow .14s ease;position:relative;z-index:60;transform-origin:center center}.skill-icon img{width:48px;height:48px;display:block}.skill-icon:hover{transform:translateY(-4px)}.skill-placeholder{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 .4rem;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:8px;font-weight:600;position:relative;z-index:60}.skill-placeholder:hover{transform:translateY(-4px)}.skills-slider-item.active .skill-icon:hover,.skills-slider-item.active .skill-placeholder:hover{z-index:120}.skills-slider-item:not(.active) .skill-icon:hover,.skills-slider-item:not(.active) .skill-placeholder:hover{transform:none;z-index:60}@media(max-width:767px){.skills-slider-controls{right:0}}.profile-section{padding:6rem 1.5rem 4rem;background:linear-gradient(135deg,#2563eb0d,#0891b214,#7c3aed0d),var(--bg-primary);min-height:80vh;display:flex;align-items:center;position:relative;overflow:hidden}.profile-section:before{content:"";position:absolute;top:-10%;right:-5%;width:40%;height:60%;background:radial-gradient(circle,rgba(37,99,235,.15) 0%,transparent 70%);border-radius:50%;animation:float 20s ease-in-out infinite;pointer-events:none}.profile-section:after{content:"";position:absolute;bottom:-10%;left:-5%;width:35%;height:55%;background:radial-gradient(circle,rgba(8,145,178,.12) 0%,transparent 70%);border-radius:50%;animation:float 25s ease-in-out infinite reverse;pointer-events:none}.dark .profile-section{background:linear-gradient(135deg,#43b2ff0d,#00638414,#43b2ff08),var(--bg-primary)}.dark .profile-section:before{background:radial-gradient(circle,rgba(67,178,255,.15) 0%,transparent 70%)}.dark .profile-section:after{background:radial-gradient(circle,rgba(0,99,132,.12) 0%,transparent 70%)}.profile-container{max-width:1600px;margin:0 auto;width:100%;position:relative;z-index:1}.profile-inner{display:flex;justify-content:center;padding:0 1rem}.profile-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;text-align:left;width:100%;max-width:1100px;align-items:start}.profile-photo-col{position:relative;display:flex;justify-content:flex-end}.profile-photo{width:12rem;height:12rem;border-radius:150px;object-fit:contain;box-shadow:0 4px 14px #0000001f}.profile-content-col{max-width:56rem;flex:1;padding:.25rem 0}.profile-name{font-size:2.75rem;font-weight:400;margin:0;color:var(--text-primary);letter-spacing:-.025em;line-height:1.1;display:inline-block}.profile-title{font-size:1.5rem;font-weight:400;margin:.5rem 0 0;color:var(--accent-primary);opacity:.9;letter-spacing:-.015em}.profile-location{font-size:.938rem;color:var(--text-tertiary);margin:.75rem 0 1.25rem;display:flex;align-items:center;gap:.375rem}.profile-about{text-align:justify;margin:0rem 0 1.75rem}.skills-title{font-size:.813rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 1rem}.skills-grid{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-start}.skills-icons-only{display:flex;gap:.5rem;align-items:center}.skills-icons-only>.skill-icon:first-child{padding-left:0}.skills-icons-only>.skill-icon:last-child{padding-right:0}.contact-buttons{display:flex;gap:.75rem;align-items:center}.availability-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;background-color:#0596691a;margin-bottom:2rem}.availability-dot{width:.5rem;height:.5rem;border-radius:50%;background-color:var(--accent-success);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.availability-badge span{font-size:.875rem;color:var(--accent-success)}.profile-contact-buttons{display:flex;gap:1rem}.profile-contact-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:25%;color:#fff;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));transition:all .2s ease;box-shadow:var(--shadow-modern)}.profile-contact-btn svg{stroke-width:1.5px}.profile-contact-btn:hover{transform:translateY(-3px) scale(1.08)}.profile-contact-btn:active{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.profile-contact-label{font-size:.813rem;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:1.3rem}@media(min-width:1024px){.profile-grid{grid-template-columns:320px 1fr;gap:3rem;text-align:left;align-items:start}.profile-photo{width:14rem;height:14rem}.profile-name{font-size:3rem}.profile-title{font-size:1.75rem}.profile-location{justify-content:flex-start}}@media(min-width:768px)and (max-width:1023px){.profile-section{padding:8rem 1.5rem 3rem;min-height:auto}.profile-grid{grid-template-columns:200px 1fr;gap:2rem}.profile-photo{width:11rem;height:11rem}.profile-name{font-size:2.5rem}.profile-title{font-size:1.35rem}}@media(max-width:767px){.profile-about{text-align:center}.profile-section{padding:8rem 1rem 3rem;min-height:auto}.profile-grid{text-align:center}.profile-photo-col{justify-content:center;margin-bottom:1rem}.profile-photo{width:10rem;height:10rem}.profile-name{font-size:2rem}.profile-title{font-size:1.125rem}.profile-location,.contact-buttons{justify-content:center}.availability-badge{margin-left:auto;margin-right:auto}.skills-grid{justify-content:center}.skill-group-label{text-align:left}.profile-contact-buttons,.skills-slider{justify-content:center}}@media(max-width:488px){.availability-dot{display:none}.profile-location svg{display:none!important}}.toggle-wrapper{display:flex;justify-content:center;background:var(--bg-primary);padding:3rem 0}.toggle-inner{display:inline-flex;position:relative;border-radius:12px;background:var(--bg-elevated);padding:0;box-shadow:var(--shadow-modern)}.toggle-slider{position:absolute;top:0;left:0;height:100%;width:50%;border-radius:12px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));transition:transform .4s cubic-bezier(.4,0,.2,1);z-index:0}.toggle-slider.slide-right{transform:translate(100%)}.toggle-btn{padding:.75rem 1.75rem;border-radius:12px;border:none;background:transparent;color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:color .4s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.toggle-btn.active{color:#fff}.toggle-btn:hover:not(.active){color:var(--text-primary)}.toggle-btn:focus{outline:none}.toggle-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.skill-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .875rem;background-color:var(--bg-badge);border-radius:6px;font-size:.813rem;font-weight:500;color:var(--text-secondary);transition:all .2s ease}.skill-badge:hover{background-color:unset;transform:translateY(-1px);color:var(--text-primary)}.skill-badge img{width:1.125rem;height:1.125rem;object-fit:contain}.skill-placeholder{display:inline-flex;align-items:center;justify-content:center;border-radius:4px;background-color:var(--bg-badge);color:var(--text-primary);font-weight:600;line-height:1;flex:0 0 auto}#timeline-wrapper{background-color:var(--bg-primary);position:relative;overflow:hidden}#timeline-wrapper:before{content:"";position:absolute;top:-10%;right:-5%;width:30%;height:60%;background:radial-gradient(circle,rgba(67,178,255,.08) 0%,transparent 70%);pointer-events:none;border-radius:50%}.achievements-title,.courses-title{margin-bottom:.7rem;font-size:1rem}.timeline-container{max-width:1200px;margin:0 auto}.timeline-container .section-title{margin:0 0 3.5rem;width:100%}.section-title{text-align:center;font-weight:400}.timeline-grid{display:flex;flex-direction:column;gap:4rem;position:relative}@media(min-width:1024px){.timeline-grid:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:linear-gradient(180deg,transparent 0%,var(--border-color) 10%,var(--border-color) 90%,transparent 100%);transform:translate(-50%)}}.timeline-card-wrapper{width:100%}@media(min-width:1024px){.timeline-grid>.scroll-reveal{width:100%}.timeline-grid>.scroll-reveal:nth-child(odd){margin-right:auto}.timeline-grid>.scroll-reveal:nth-child(2n){margin-left:auto}.timeline-grid>.scroll-reveal:nth-child(odd) .timeline-card-wrapper{animation:slideInLeft .6s ease-out;animation-fill-mode:both}.timeline-grid>.scroll-reveal:nth-child(2n) .timeline-card-wrapper{animation:slideInRight .6s ease-out;animation-fill-mode:both}}.timeline-card{background:var(--bg-elevated);border-radius:16px;padding:2rem;position:relative;transition:transform .4s cubic-bezier(.4,0,.2,1);width:100%;box-shadow:var(--shadow-modern)}.timeline-card:hover{transform:translateY(-8px) scale(1.02)}.org-logo{width:4rem;height:4rem;object-fit:cover;border-radius:8px;background-color:var(--bg-tertiary);padding:0;flex-shrink:0;transition:all .3s ease}.timeline-card:hover .org-logo{transform:scale(1.15)}.card-header{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border-color)}.card-info{flex:1;min-width:0}.org-name{font-size:1.375rem;color:var(--text-primary);line-height:1.2}.org-sub{font-size:1rem;color:var(--accent-primary)}.card-description{margin-bottom:.9rem;line-height:1.7;font-size:.938rem;font-weight:800;color:var(--text-secondary)}.responsibilities,.achievements-list,.courses-list{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.75rem}.responsibility-item,.achievement-item,.course-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;color:var(--text-secondary);line-height:1.6;border-radius:8px}.responsibility-item:hover,.achievement-item:hover,.course-item:hover{transform:scale(1.01);transition:transform .2s ease}.card-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--border-color)}.period-badge{position:absolute;top:1.5rem;right:1.5rem;display:inline-flex;align-items:center;padding:.375rem .875rem;border-radius:12px;font-size:1rem;font-weight:400;color:var(--accent-primary)}@media(max-width:1023px){.timeline-card{padding:2.5rem 1.5rem 1.5rem;position:relative}.period-badge{position:absolute;top:2rem;right:1rem;margin:0;width:auto}.card-header{flex-wrap:wrap}.org-logo{width:3rem;height:3rem}}.projects-section{padding:3.5rem 1.5rem;background:linear-gradient(180deg,var(--bg-primary) 0%,var(--section-alt-bg) 50%,var(--bg-primary) 100%);position:relative}.projects-container{max-width:1400px;margin:0 auto}.projects-header{text-align:center;margin-bottom:3.5rem;position:relative}.projects-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.projects-grid{grid-template-columns:repeat(2,1fr);gap:2.5rem}}.project-card-wrapper{animation:fadeInScale .6s ease-out;animation-fill-mode:both;height:100%}.project-card{position:relative;border-radius:16px;overflow:hidden;background:var(--bg-elevated);transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;height:100%;box-shadow:var(--shadow-modern)}.project-card-wrapper:nth-child(1){animation-delay:.1s}.project-card-wrapper:nth-child(2){animation-delay:.2s}.project-card-wrapper:nth-child(3){animation-delay:.3s}.project-card-wrapper:nth-child(4){animation-delay:.4s}.project-card-wrapper:nth-child(5){animation-delay:.5s}.project-card-wrapper:nth-child(6){animation-delay:.6s}.project-card:hover{transform:translateY(-4px) scale(1.02)}@keyframes fadeIn{0%{opacity:.01}to{opacity:1}}.project-media-wrapper{position:relative;overflow:hidden;width:100%;height:280px;flex-shrink:0}@media(min-width:768px){.project-media-wrapper{height:320px}}@media(min-width:1200px){.project-media-wrapper{height:350px}}.project-media,.project-media-wrapper-gallery{background:#0000001a;width:100%;height:100%;position:relative}.project-image{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .3s ease}.project-card:hover .project-image{transform:scale(1.02)}.github-overlay{position:absolute;top:1rem;right:1rem;z-index:30;width:2.75rem;height:2.75rem;border-radius:50%;background:#0006;backdrop-filter:none;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .22s ease;cursor:pointer;border:none}.github-overlay svg{stroke-width:1.5px;width:1.6rem;height:1.6rem}.github-overlay:hover{transform:scale(1.2);transition:all .1s ease;background:#0009}.gallery-nav-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:25;width:4.2rem;height:4.2rem;border-radius:50%;background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,opacity .22s ease;opacity:0;border:none}.gallery-nav-btn svg{width:2rem;height:2rem;transition:transform .18s ease,width .18s ease,height .18s ease;transform-origin:center center;filter:drop-shadow(0 0 1px rgba(0,0,0,.2)) drop-shadow(0 0 1px rgba(0,0,0,.2))}.project-media-wrapper:hover .gallery-nav-btn,.project-media-wrapper-gallery:hover .gallery-nav-btn{opacity:1;transform:translateY(-50%) scale(1)}.gallery-nav-btn:hover{background:transparent;transform:translateY(-50%) scale(1.3)}.gallery-nav-btn:hover svg{transform:scale(1.45);transition:all .1s ease}.gallery-nav-btn.prev{left:1rem}.gallery-nav-btn.next{right:1rem}.project-content{padding:1.75rem;background:var(--bg-elevated);flex:1;display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.project-content{padding:2rem;gap:1.25rem}}.project-name{font-size:1.375rem;font-weight:400;margin:0;color:var(--text-primary);line-height:1.2;letter-spacing:-.02em}@media(min-width:768px){.project-name{font-size:1.5rem}}@media(min-width:1200px){.project-name{font-size:1.625rem}}.project-description{font-size:.9375rem;line-height:1.7;color:var(--text-secondary);margin:0;letter-spacing:-.011em}.project-description-list{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.75rem}.project-description-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;color:var(--text-secondary);line-height:1.6;border-radius:8px;position:relative}.project-description-item:hover{transform:scale(1.01);transition:transform .2s ease}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:1.25rem;border-top:2px solid var(--border-color);margin-top:auto}.project-links{display:flex;gap:.75rem;padding-top:.75rem}.project-link.demo{display:inline-flex;align-items:center;gap:.625rem;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;font-size:.938rem;background:var(--accent-primary);color:#fff;border:1px solid transparent;transition:all .3s ease;text-decoration:none;cursor:pointer}.project-link.demo:hover{background:var(--accent-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #43b2ff4d}.project-year{display:inline-flex;align-items:center;padding:.375rem .875rem;border-radius:12px;font-size:.813rem;font-size:1.1rem;font-weight:400;color:var(--accent-primary);width:fit-content}.tech-more{display:inline-flex;align-items:center;padding:.375rem .75rem;background-color:var(--bg-badge);border-radius:6px;font-size:.75rem;font-weight:500;color:var(--text-tertiary)}@media(max-width:767px){.projects-section{padding:3rem 1rem}.project-content{padding:1.5rem}.project-media-wrapper{height:240px}}.site-footer{background:var(--bg-secondary);padding:2rem 1.5rem}.footer-container{max-width:1280px;margin:0 auto}.footer-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.footer-copyright{font-size:.875rem;color:var(--text-secondary);margin:0;font-weight:var(--fw-regular)}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.1)}20%,40%{transform:scale(1)}}@media(min-width:768px){.footer-content{flex-direction:row;justify-content:center}.footer-copyright{text-align:left}}.back-to-top{position:fixed;bottom:2.5rem;right:2.5rem;width:3rem;height:3rem;padding:0;border:none;cursor:pointer;color:#fff;z-index:9999;transition:transform .3s ease;border-radius:10%;background:#0003;backdrop-filter:none;display:flex;align-items:center;justify-content:center}:global(.dark) .back-to-top{background:#ffffff1a}.back-to-top.hidden{opacity:0;transform:translateY(4rem) scale(1);pointer-events:none}.back-to-top.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.back-to-top:hover{transform:translateY(0) scale(1.2)!important;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary))}.skill-icons{display:inline-block;line-height:1;vertical-align:middle}.skill-icon-simple svg path{fill:currentColor}.skill-icon-simple{color:var(--text-primary);display:inline-block;line-height:1}.skill-icon-simple svg{width:100%;height:100%;display:block}.skill-icon-simple svg path,.skill-icon-simple svg rect,.skill-icon-simple svg circle,.skill-icon-simple svg polygon{fill:currentColor!important}.dark .skill-icon-simple{color:var(--icon-primary)}.skill-icon-placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-muted);color:var(--text-primary);border-radius:4px;font-weight:600;line-height:1}
