@import "https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}body{color:#f1f4fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;font-family:Space Grotesk,Inter,Segoe UI,Roboto,sans-serif}button{cursor:pointer;background:0 0;border:none;font-family:inherit}button:disabled{cursor:not-allowed}input,textarea{font-family:inherit}input:focus,textarea:focus{outline:none}:root{--primary:#3b82f6;--bg:#0b0f19;--text:#f8fafc;--text-muted:#94a3b8;--glass-bg:#0f172a66;--glass-border:#ffffff14;--primary1:#3b82f6;--primary2:#8b5cf6;--trans-dur:.3s;--fg-t:#ffffff80}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:Poppins,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.loader-wrapper{background-color:var(--bg);z-index:9999;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.pl{letter-spacing:.1em;text-transform:uppercase;color:#fff;justify-content:center;align-items:center;width:14em;height:14em;font-size:clamp(.5rem,2vw,1rem);display:flex;position:relative;transform:rotateX(30deg)rotate(45deg);box-shadow:inset 2em 0 2em #0003,inset -2em 0 2em #ffffff1a}.pl,.pl__dot{border-radius:50%}.pl__dot{width:1.5em;height:1.5em;animation-name:shadow724;top:calc(50% - .75em);left:calc(50% - .75em);box-shadow:.1em .1em 0 .1em #000,.3em 0 .3em #00000080}.pl__dot,.pl__dot:before,.pl__dot:after{animation-duration:2s;animation-iteration-count:infinite;position:absolute}.pl__dot:before,.pl__dot:after{content:"";width:inherit;transition:background-color var(--trans-dur);display:block;left:0}.pl__dot:before{background-color:var(--bg);border-radius:inherit;height:inherit;z-index:1;animation-name:pushInOut1724;box-shadow:inset .05em 0 .1em #fff3}.pl__dot:after{background-color:var(--primary1);clip-path:polygon(0 75%,100% 75%,100% 100%,0 100%);transform-origin:50% 2.25em;border-radius:.75em;height:3em;animation-name:pushInOut2724;bottom:0;transform:rotate(-45deg);box-shadow:inset .1em .3em .2em #fff6,inset 0 -.4em .2em #2e3138,inset 0 -1em .25em #0000004d}.pl__dot:first-child{z-index:5;transform:rotate(0)translate(5em)rotate(0)}.pl__dot:first-child,.pl__dot:first-child:before,.pl__dot:first-child:after{animation-delay:0s}.pl__dot:nth-child(2){z-index:4;transform:rotate(-30deg)translate(5em)rotate(30deg)}.pl__dot:nth-child(2),.pl__dot:nth-child(2):before,.pl__dot:nth-child(2):after{animation-delay:-.166667s}.pl__dot:nth-child(3){z-index:3;transform:rotate(-60deg)translate(5em)rotate(60deg)}.pl__dot:nth-child(3),.pl__dot:nth-child(3):before,.pl__dot:nth-child(3):after{animation-delay:-.333333s}.pl__dot:nth-child(4){z-index:2;transform:rotate(-90deg)translate(5em)rotate(90deg)}.pl__dot:nth-child(4),.pl__dot:nth-child(4):before,.pl__dot:nth-child(4):after{animation-delay:-.5s}.pl__dot:nth-child(5){z-index:1;transform:rotate(-120deg)translate(5em)rotate(120deg)}.pl__dot:nth-child(5),.pl__dot:nth-child(5):before,.pl__dot:nth-child(5):after{animation-delay:-.666667s}.pl__dot:nth-child(6){z-index:1;transform:rotate(-150deg)translate(5em)rotate(150deg)}.pl__dot:nth-child(6),.pl__dot:nth-child(6):before,.pl__dot:nth-child(6):after{animation-delay:-.833333s}.pl__dot:nth-child(7){z-index:2;transform:rotate(-180deg)translate(5em)rotate(180deg)}.pl__dot:nth-child(7),.pl__dot:nth-child(7):before,.pl__dot:nth-child(7):after{animation-delay:-1s}.pl__dot:nth-child(8){z-index:3;transform:rotate(-210deg)translate(5em)rotate(210deg)}.pl__dot:nth-child(8),.pl__dot:nth-child(8):before,.pl__dot:nth-child(8):after{animation-delay:-1.16667s}.pl__dot:nth-child(9){z-index:4;transform:rotate(-240deg)translate(5em)rotate(240deg)}.pl__dot:nth-child(9),.pl__dot:nth-child(9):before,.pl__dot:nth-child(9):after{animation-delay:-1.33333s}.pl__dot:nth-child(10){z-index:5;transform:rotate(-270deg)translate(5em)rotate(270deg)}.pl__dot:nth-child(10),.pl__dot:nth-child(10):before,.pl__dot:nth-child(10):after{animation-delay:-1.5s}.pl__dot:nth-child(11){z-index:6;transform:rotate(-300deg)translate(5em)rotate(300deg)}.pl__dot:nth-child(11),.pl__dot:nth-child(11):before,.pl__dot:nth-child(11):after{animation-delay:-1.66667s}.pl__dot:nth-child(12){z-index:6;transform:rotate(-330deg)translate(5em)rotate(330deg)}.pl__dot:nth-child(12),.pl__dot:nth-child(12):before,.pl__dot:nth-child(12):after{animation-delay:-1.83333s}.pl__text{max-width:5rem;text-shadow:0 0 .1em var(--fg-t);font-size:.75em;position:relative;transform:rotate(-45deg)}@keyframes shadow724{0%{animation-timing-function:ease-in;box-shadow:.1em .1em 0 .1em #000,.3em 0 .3em #0000004d}25%{animation-timing-function:ease-out;box-shadow:.1em .1em 0 .1em #000,.8em 0 .8em #00000080}50%,to{box-shadow:.1em .1em 0 .1em #000,.3em 0 .3em #0000004d}}@keyframes pushInOut1724{0%{background-color:var(--bg);animation-timing-function:ease-in;transform:translate(0)}25%{background-color:var(--primary2);animation-timing-function:ease-out;transform:translate(-71%,-71%)}50%,to{background-color:var(--bg);transform:translate(0)}}@keyframes pushInOut2724{0%{background-color:var(--bg);clip-path:polygon(0 75%,100% 75%,100% 100%,0 100%);animation-timing-function:ease-in}25%{background-color:var(--primary1);clip-path:polygon(0 25%,100% 25%,100% 100%,0 100%);animation-timing-function:ease-out}50%,to{background-color:var(--bg);clip-path:polygon(0 75%,100% 75%,100% 100%,0 100%)}}.canvas-container{z-index:-1;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.glass{-webkit-backdrop-filter:blur(16px);background:#ffffff08;border:1px solid #ffffff14;box-shadow:0 4px 30px #0003}.glass-header h2{text-shadow:0 2px 10px #00000080}.navbar{z-index:1000;border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;width:100%;padding:1rem 5%;display:flex;position:fixed;top:0;left:0}.nav-logo{color:var(--text);font-size:1.5rem;font-weight:800}.nav-logo span{color:var(--primary);text-shadow:0 0 10px #3b82f680}.nav-links{gap:2rem;list-style:none;display:flex}.mobile-menu-toggle{cursor:pointer;color:var(--text);z-index:1001;display:none}.nav-links a{font-size:.9rem;font-weight:500;transition:color .3s,text-shadow .3s}.nav-links a:hover{color:var(--primary);text-shadow:0 0 8px #3b82f6cc}.nav-actions{gap:1rem;display:flex}.btn{cursor:pointer;border-radius:8px;padding:.5rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .3s}.glass-btn-primary{background:#3b82f626;border:1px solid #3b82f64d;box-shadow:0 0 15px #3b82f633}.glass-btn-primary:hover{background:#3b82f640;box-shadow:0 0 25px #3b82f666}.glass-btn{-webkit-backdrop-filter:blur(4px);background:#ffffff0d;border:1px solid #ffffff1a}.glass-btn:hover{background:#ffffff26;border-color:#fff3}.container{max-width:1200px;margin:0 auto;padding:0 2rem;scroll-margin-top:100px}section{scroll-margin-top:100px}.hero{align-items:center;min-height:100vh;padding-top:80px;display:flex;position:relative}.hero-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;display:grid}.hero-content{border-radius:24px;padding:3rem}.hero-greeting{color:var(--primary);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.wave{animation:2s ease-in-out infinite float-animation;display:inline-block}@keyframes float-animation{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.hero-title{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1.2}.hero-title span{color:var(--primary);text-shadow:0 0 20px #3b82f64d}.hero-subtitle{color:#cbd5e1;margin-bottom:1.5rem;font-size:1.1rem;font-weight:500}.hero-desc{color:var(--text-muted)}.hero-desc strong{color:var(--text)}.hero-image-container{justify-content:center;display:flex;position:relative}.hero-image{object-fit:cover;border:4px solid #ffffff1a;border-radius:50%;width:min(350px,80vw);height:min(350px,80vw);box-shadow:0 0 50px #3b82f633,inset 0 0 20px #ffffff0d}.section-header{text-align:center;margin:5rem 0 3rem}.section-header h2{font-size:2.5rem;font-weight:800}.section-header h2 span{color:var(--primary)}.about-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.about-card{border-radius:16px;padding:2.5rem}.about-card h3{color:var(--primary);margin-bottom:1rem;font-size:1.5rem}.about-card p{color:var(--text-muted);margin-bottom:2rem}.edu-timeline-section{border-radius:16px;flex-direction:column;gap:0;padding:2.5rem;display:flex;position:relative}.education-header{text-align:center;margin-bottom:1.5rem}.edu-pill{color:#000;background:#fff;border-radius:50px;align-items:center;gap:.5rem;padding:.5rem 1.5rem;font-size:.95rem;font-weight:700;display:inline-flex}.edu-tl-item{align-items:flex-start;gap:1.5rem;padding-bottom:2.5rem;padding-left:.5rem;display:flex;position:relative}.edu-tl-item:before{content:"";background:linear-gradient(#3b82f666,#8b5cf633);width:2px;height:calc(100% - 55px + .5rem);position:absolute;top:55px;left:24px}.edu-tl-item:last-child:before{display:none}.edu-tl-item:last-child{padding-bottom:0}.edu-tl-logo-wrap{z-index:2;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0006,0 0 0 3px #3b82f633}.edu-tl-logo{object-fit:cover;border-radius:50%;width:100%;height:100%;transform:scale(1.15)}.edu-tl-body{flex-direction:column;gap:.5rem;padding-top:.15rem;display:flex}.edu-tl-degree{margin-bottom:.1rem;font-size:1.25rem;font-weight:800}.edu-tl-detail{color:var(--text-muted);align-items:center;gap:.6rem;font-size:.9rem;display:flex}.edu-tl-icon{flex-shrink:0;font-size:.85rem}.edu-tl-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.edu-tl-badge{color:#fff;border:1px solid;border-radius:8px;align-items:center;gap:.4rem;width:fit-content;margin-top:.3rem;padding:.35rem .9rem;font-size:.85rem;display:inline-flex}.skills-tabs{justify-content:center;gap:1rem;margin-bottom:2rem;display:flex}.tab-btn{cursor:pointer;border-radius:50px;padding:.5rem 1.5rem;font-weight:600;transition:all .3s}.tab-btn.active{color:#60a5fa;text-shadow:0 0 8px #3b82f699;box-shadow:0 0 15px #3b82f680,0 0 30px #3b82f633,inset 0 0 8px #3b82f626;background:#3b82f633!important;border:1px solid #3b82f699!important}.skills-grid{flex-wrap:wrap;justify-content:center;gap:1.5rem;display:flex}.skill-icon{width:110px;height:110px;color:var(--text);text-align:center;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;font-size:.85rem;font-weight:600;transition:transform .3s,border-color .3s;display:flex}.skill-icon img{object-fit:contain;width:40px;height:40px}.skill-icon:hover{border-color:#3b82f680;transform:translateY(-5px);box-shadow:0 10px 20px #0003}.exp-timeline{max-width:800px;margin:0 auto;position:relative}.exp-timeline:before{content:"";background:#ffffff1a;width:2px;position:absolute;top:0;bottom:0;left:20px}.exp-card{border-radius:16px;margin-bottom:3rem;padding:2rem 2rem 2rem 5rem;position:relative}.exp-logo{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid var(--primary);width:44px;height:44px;color:var(--primary);background:#0f172acc;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex;position:absolute;top:2rem;left:12px}.exp-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.exp-title{font-size:1.3rem;font-weight:700}.exp-badge{color:var(--primary);background:#3b82f626;border:1px solid #3b82f64d;border-radius:50px;padding:.2rem .8rem;font-size:.8rem;font-weight:600}.exp-meta{color:var(--text-muted);margin-bottom:1rem;font-size:.9rem}.tech-chips{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.tech-chip{color:#fff;border-radius:50px;padding:.2rem .8rem;font-size:.8rem}.exp-focus{border-left:3px solid var(--primary);background:#ffffff08;border-radius:0 8px 8px 0;padding:1rem}.projects-showcase{flex-direction:column;gap:4rem;display:flex}.project-wrapper{perspective:2000px;justify-content:center;align-items:center;width:100%;height:600px;margin-top:2rem;display:flex;position:relative;overflow:visible}.project-inner{--w:290px;--h:300px;--translateZ:340px;--rotateX:-5deg;--perspective:1500px;width:var(--w);height:var(--h);z-index:2;transform-style:preserve-3d;will-change:transform;transition:transform .4s ease-out;position:absolute;transform:perspective(1500px)rotateX(-5deg)rotateY(0)}.project-carousel-card{transform:rotateY(calc((360deg / var(--quantity)) * var(--index))) translateZ(340px);transform-style:preserve-3d;will-change:transform;pointer-events:none;transition:transform .35s cubic-bezier(.34,1.56,.64,1),z-index .1s;position:absolute;inset:0}.project-carousel-card.card-active .project-parent .project-card-3d{transform:rotate3d(1,1,0,30deg)scale(1.06);box-shadow:30px 50px 25px -40px #3b82f680,0 25px 30px #3b82f640}.project-carousel-card.card-active .project-card-3d .project-social-button{transform:translateZ(50px)}.project-carousel-card.card-active .project-card-3d .project-logo-circles .circle2{transform:translateZ(60px)}.project-carousel-card.card-active .project-card-3d .project-logo-circles .circle3{transform:translateZ(80px)}.project-carousel-card.card-active .project-card-3d .project-logo-circles .circle4{transform:translateZ(100px)}.project-carousel-card.card-active .project-card-3d .project-logo-circles .circle5{transform:translateZ(120px)}.project-parent{perspective:1000px;pointer-events:auto;width:100%;height:100%}.project-card-3d{height:100%;transform-style:preserve-3d;cursor:pointer;background:linear-gradient(135deg,#3b82f666 0%,#8b5cf666 100%);border-radius:50px;transition:all .5s ease-in-out;box-shadow:40px 50px 25px -40px #0003,0 25px 25px -5px #0003}.project-glass{transform-style:preserve-3d;-webkit-backdrop-filter:blur(10px);background:linear-gradient(#ffffff26 0%,#ffffff0d 100%);border-bottom:1px solid #fff3;border-left:1px solid #fff3;border-radius:55px 100% 55px 55px;transition:all .5s ease-in-out;position:absolute;inset:8px;transform:translateZ(25px)}.project-content{text-align:left;padding:80px 40px 0 30px;transform:translateZ(26px)}.project-content .title{color:#fff;text-shadow:0 2px 10px #00000080;font-size:20px;font-weight:900;display:block}.project-content .text{color:#fffc;margin-top:10px;font-size:12px;line-height:1.5;display:block}.project-bottom{transform-style:preserve-3d;justify-content:space-between;align-items:center;padding:10px 12px;display:flex;position:absolute;bottom:20px;left:20px;right:20px;transform:translateZ(26px)}.project-bottom .view-more{justify-content:flex-end;align-items:center;transition:all .2s ease-in-out;display:flex}.project-bottom .view-more:hover{transform:translateZ(10px)}.project-bottom .view-more-button{color:#60a5fa;cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:bolder}.project-social-buttons{transform-style:preserve-3d;gap:10px;display:flex}.project-social-button{aspect-ratio:1;background:#ffffff1a;border:none;border-radius:50%;place-content:center;width:32px;padding:5px;transition:all .3s;display:grid;box-shadow:0 7px 5px -5px #0000004d}.project-logo-circles{transform-style:preserve-3d;position:absolute;top:0;right:0}.project-logo-circles .circle{aspect-ratio:1;-webkit-backdrop-filter:blur(5px);background:#3b82f633;border-radius:50%;transition:all .5s ease-in-out;display:block;position:absolute;top:0;right:0;box-shadow:-10px 10px 20px #0003}.project-logo-circles .circle1{width:170px;top:8px;right:8px;transform:translateZ(20px)}.project-logo-circles .circle2{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);width:140px;transition-delay:.4s;top:10px;right:10px;transform:translateZ(40px)}.project-logo-circles .circle3{width:110px;transition-delay:.8s;top:17px;right:17px;transform:translateZ(60px)}.project-logo-circles .circle4{width:80px;transition-delay:1.2s;top:23px;right:23px;transform:translateZ(80px)}.project-logo-circles .circle5{cursor:pointer;place-content:center;width:50px;transition-delay:1.6s;display:grid;top:30px;right:30px;transform:translateZ(100px)}.github-pop{background:#8b5cf680!important;transition:all .25s cubic-bezier(.34,1.56,.64,1)!important;transform:translateZ(140px)scale(1.4)!important;box-shadow:0 0 20px #8b5cf6cc,0 0 40px #3b82f666!important}.github-btn-pop{background:#8b5cf666!important;transform:translateZ(70px)scale(1.3)!important;box-shadow:0 0 15px #8b5cf699!important}.contact-section-huge{flex-direction:column;align-items:center;padding-top:5rem;padding-bottom:5rem;display:flex}.huge-contact-text{text-align:center;letter-spacing:-2px;color:var(--text);margin-bottom:4rem;font-size:clamp(3rem,8vw,8rem);font-weight:900;line-height:1.1}.huge-contact-text span{color:var(--primary);text-shadow:0 0 20px #3b82f680}.contact-social-row{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:3rem;display:flex}.social-circle{-webkit-backdrop-filter:blur(12px);background:#ffffff0d;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;text-decoration:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;box-shadow:0 8px 32px #0000004d}.tooltip-container{cursor:pointer;transition:all .2s;position:relative}.tooltip{opacity:0;pointer-events:none;z-index:10;border-radius:15px;padding:10px;transition:all .3s;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:inset 5px 5px 5px #0003,inset -5px -5px 15px #ffffff1a,5px 5px 15px #0000004d,-5px -5px 15px #ffffff1a}.tooltip-container:hover .tooltip{opacity:1;visibility:visible;pointer-events:auto;top:-130px}.profile{background:#0b0f19f2;border:1px solid #ffffff26;border-radius:10px 15px;min-width:180px;padding:10px}.tooltip-user{gap:10px;display:flex}.tooltip-img{border:2px solid var(--brand-color,#fff);color:#fff;background:#ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:flex}.tooltip-name{font-size:14px;font-weight:700}.tooltip-details{color:#fff;flex-direction:column;display:flex}.tooltip-username{color:#aaa;font-size:12px}.tooltip-about{color:#888;padding-top:5px;font-size:12px}.social-layer{border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;transition:transform .3s;display:flex;position:relative}.tooltip-container:hover .social-layer{transform:rotate(-35deg)skew(20deg)}.social-layer span{border:1px solid var(--brand-color,#fff3);border-radius:50%;width:100%;height:100%;transition:all .3s;position:absolute;top:0;left:0}.tooltip-container:hover .social-layer span{box-shadow:-1px 1px 3px var(--brand-color,#fff)}.tooltip-container:hover .social-layer span:first-child{opacity:.2}.tooltip-container:hover .social-layer span:nth-child(2){opacity:.4;transform:translate(5px,-5px)}.tooltip-container:hover .social-layer span:nth-child(3){opacity:.6;transform:translate(10px,-10px)}.tooltip-container:hover .social-layer span:nth-child(4){opacity:.8;transform:translate(15px,-15px)}.tooltip-container:hover .social-layer span:nth-child(5){opacity:1;transform:translate(20px,-20px)}.social-svg-wrap{z-index:2;justify-content:center;align-items:center;display:flex}.tooltip-container:hover .social-circle{box-shadow:0 0 20px var(--brand-color,#ffffff4d), 0 0 40px color-mix(in srgb, var(--brand-color,#fff) 50%, transparent);border-color:var(--brand-color,#ffffff4d)}.contact-quote{text-align:center;color:var(--text);margin-top:2rem;font-size:1.2rem;font-style:italic;font-weight:500}.footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--glass-border);margin-top:5rem;padding:2rem 0;font-size:.9rem}.desktop-only{display:flex}.mobile-dock-wrapper{display:none}@media (width<=900px){.hero-grid,.about-grid{text-align:center;flex-direction:column;gap:3rem;display:flex}.hero-grid>:nth-child(2){order:-1}.hero-text h1{font-size:clamp(2.5rem,8vw,4rem)}.hero-image-container{margin-top:0}.hero-image{width:min(200px,50vw)!important;height:min(200px,50vw)!important}.hero-content{text-align:center}.hero-subtitle{font-size:.9rem}.nav-actions{display:none}.mobile-menu-toggle{display:block}.navbar{padding:1rem 5%}.desktop-only{display:none!important}.mobile-dock-wrapper{opacity:0;pointer-events:none;z-index:999;flex-direction:column;justify-content:center;align-items:center;width:4.5rem;transition:all .45s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:absolute;top:75px;right:5%;transform:translateY(-20px)scale(.9)}.mobile-dock-wrapper.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.mobile-dock{border-radius:1rem;flex-direction:column;align-items:center;gap:.5rem;width:100%;padding:.5rem 0;display:flex;box-shadow:0 10px 15px -3px #00000080}.dock-item{width:100%;height:4rem;color:var(--text-muted);border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;transition:all .3s ease-in-out;display:flex;position:relative}.dock-item svg{fill:currentColor;width:28px;height:28px;transition:all .3s ease-in-out}.dock-item:hover svg,.dock-item:active svg{color:var(--primary);fill:var(--primary);transform:scale(1.25)}.project-wrapper{height:400px;margin-top:0;transform:scale(.65)}.skills-tabs{flex-wrap:wrap;justify-content:center}.about-card{text-align:left}.edu-timeline-section{text-align:left;padding:1.5rem}.education-header{text-align:center}.edu-tl-item{flex-direction:row;align-items:flex-start;gap:1rem;padding-left:0}.edu-tl-item:before{background:linear-gradient(#3b82f64d,#8b5cf626);height:calc(100% - 50px + .5rem);top:50px;left:20px}.edu-tl-logo-wrap{width:42px;height:42px}.edu-tl-degree{font-size:1.05rem}.edu-tl-detail{font-size:.8rem}.edu-tl-badge{padding:.25rem .7rem;font-size:.75rem}}@media (width<=600px){.huge-contact-text{margin-bottom:2rem!important;font-size:clamp(2.5rem,10vw,4rem)!important}.contact-social-row{gap:1rem}.social-layer{width:42px!important;height:42px!important}.social-svg-wrap svg{width:18px;height:18px}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem}.skill-card{padding:1rem}.edu-tl-degree{font-size:1.05rem}}.scroll-reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.scroll-reveal--up{transform:translateY(60px)}.scroll-reveal--left{transform:translate(-80px)}.scroll-reveal--right{transform:translate(80px)}.scroll-reveal--scale{transform:scale(.85)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)translate(0)scale(1)}
