.time-line-container>div:last-child .education__time>.education__line{display:none}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:oklch(var(--b2))}::-webkit-scrollbar-thumb{background:oklch(var(--p) / .4);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:oklch(var(--p) / .6)}::-moz-selection{background:oklch(var(--p) / .3)}::selection{background:oklch(var(--p) / .3)}:focus-visible{outline:2px solid oklch(var(--p));outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}[data-animate]{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}[data-animate].animate-visible{opacity:1;transform:translateY(0)}[data-animate-delay="1"]{transition-delay:.1s}[data-animate-delay="2"]{transition-delay:.2s}[data-animate-delay="3"]{transition-delay:.3s}[data-animate-delay="4"]{transition-delay:.4s}@media(prefers-reduced-motion:reduce){[data-animate]{opacity:1;transform:none;transition:none}.hero-orb,.typing-cursor,.icon-float,.scroll-wheel,.timeline-dot-pulse,.pulse-badge,.animate-line-grow{animation:none!important}.tilt-card{transform:none!important}}.glass{background:oklch(var(--b1) / .7);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid oklch(var(--bc) / .1)}.glass-strong{background:oklch(var(--b1) / .85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid oklch(var(--bc) / .1)}section[id]{scroll-margin-top:5rem}.card{transition:transform .2s ease,box-shadow .2s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 10px 40px -10px oklch(var(--p) / .2)}.tilt-card{transition:transform .3s ease,box-shadow .3s ease;transform-style:preserve-3d}.tilt-card:hover{transform:translateY(-4px) perspective(1000px) rotateX(2deg) rotateY(-2deg);box-shadow:0 20px 40px -15px oklch(var(--p) / .15),0 0 0 1px oklch(var(--p) / .1)}.badge{font-weight:500}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.prose{max-width:none}.prose h1,.prose h2,.prose h3,.prose h4{scroll-margin-top:5rem}a.link-hover-effect{position:relative;text-decoration:none}a.link-hover-effect:after{content:"";position:absolute;width:0;height:2px;bottom:-2px;left:0;background-color:currentColor;transition:width .3s ease}a.link-hover-effect:hover:after{width:100%}.text-gradient{background:linear-gradient(135deg,oklch(var(--p)),oklch(var(--s)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hover-glow{transition:filter .3s ease}.hover-glow:hover{filter:brightness(1.2) drop-shadow(0 0 20px oklch(var(--p) / .4))}.hero-full{min-height:calc(100vh - 5rem);display:flex;align-items:center}.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.15;pointer-events:none}.hero-orb-1{width:400px;height:400px;background:oklch(var(--p));top:-100px;right:-100px;animation:orbFloat1 8s ease-in-out infinite}.hero-orb-2{width:300px;height:300px;background:oklch(var(--s));bottom:-50px;left:-50px;animation:orbFloat2 10s ease-in-out infinite}.hero-orb-3{width:200px;height:200px;background:oklch(var(--a));top:50%;left:50%;animation:orbFloat3 12s ease-in-out infinite}@keyframes orbFloat1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-30px,20px) scale(1.1)}66%{transform:translate(20px,-30px) scale(.9)}}@keyframes orbFloat2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-20px) scale(1.05)}66%{transform:translate(-20px,30px) scale(.95)}}@keyframes orbFloat3{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.2}}@keyframes lineGrow{0%{width:0}to{width:3rem}}.animate-line-grow{animation:lineGrow .8s ease-out forwards}.typing-cursor{animation:blink 1s step-end infinite;color:oklch(var(--p));font-weight:300}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:8px;color:oklch(var(--bc) / .4);transition:color .3s}.scroll-indicator:hover{color:oklch(var(--p))}.scroll-mouse{width:24px;height:40px;border:2px solid currentColor;border-radius:12px;display:flex;justify-content:center;padding-top:8px}.scroll-wheel{width:3px;height:8px;background:currentColor;border-radius:2px;animation:scrollWheel 2s ease-in-out infinite}@keyframes scrollWheel{0%{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:0}51%{transform:translateY(-4px);opacity:0}to{transform:translateY(0);opacity:1}}.social-icon-btn{position:relative;padding:.75rem;border-radius:9999px;background:oklch(var(--bc) / .05);color:oklch(var(--bc) / .7);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.social-icon-btn:before{content:"";position:absolute;inset:0;border-radius:inherit;background:oklch(var(--p) / .2);transform:scale(0);transition:transform .3s cubic-bezier(.4,0,.2,1)}.social-icon-btn:hover{color:oklch(var(--p));transform:translateY(-2px);box-shadow:0 4px 12px oklch(var(--p) / .2)}.social-icon-btn:hover:before{transform:scale(1)}.social-icon-btn:active{transform:translateY(0) scale(.95)}.social-icon-btn svg{position:relative;z-index:1}.skill-tag-interactive{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.8125rem;font-weight:500;background:oklch(var(--bc) / .05);border:1px solid oklch(var(--bc) / .1);border-radius:.5rem;cursor:default;transition:all .25s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none}.skill-tag-interactive:hover{background:oklch(var(--p) / .1);border-color:oklch(var(--p) / .4);color:oklch(var(--p));transform:translateY(-2px);box-shadow:0 4px 8px oklch(var(--p) / .1)}.skill-tag-interactive:active{transform:translateY(0) scale(.95)}.icon-float{animation:iconFloat 3s ease-in-out infinite}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.timeline-dot-pulse{position:relative}.timeline-dot-pulse:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid oklch(var(--p) / .4);animation:dotPulse 2s ease-in-out infinite}@keyframes dotPulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.3);opacity:0}}.pulse-badge{position:relative}.pulse-badge:after{content:"";position:absolute;top:50%;left:4px;width:6px;height:6px;border-radius:50%;background:oklch(var(--pc));transform:translateY(-50%);animation:pulseDot 2s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1}50%{opacity:.3}}.magnetic-btn{transition:all .25s cubic-bezier(.4,0,.2,1)}.magnetic-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px oklch(var(--p) / .25)}.magnetic-btn:active{transform:translateY(0) scale(.98)}.navbar-hidden{transform:translateY(-100%)}.navbar-visible{transform:translateY(0)}.nav-link{position:relative}.nav-link.active:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:oklch(var(--p));border-radius:50%}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,oklch(var(--p)),oklch(var(--s)));z-index:100;transition:width .1s linear;border-radius:0 2px 2px 0}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
