@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat Fallback;src:local("Arial");ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.00%;size-adjust:112.83%}.__className_069ab3{font-family:Montserrat,Montserrat Fallback;font-style:normal}.__variable_069ab3{--font-montserrat:"Montserrat","Montserrat Fallback"}@font-face{font-family:MonumentExtended;src:url(/fonts/Monument/MonumentExtended-Ultrabold.otf) format("opentype");font-weight:800;font-display:swap}@font-face{font-family:ClashDisplay;src:url(/fonts/fonts/ClashDisplay-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:ClashDisplay;src:url(/fonts/fonts/ClashDisplay-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:ClashDisplay;src:url(/fonts/fonts/ClashDisplay-Semibold.woff2) format("woff2");font-weight:600;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:auto}body{font-family:var(--font-montserrat),"Montserrat",sans-serif;color:white;overflow-x:hidden;position:relative}.intro-splash,body{background-color:#140224}.intro-splash{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity .8s cubic-bezier(.23,1,.32,1),visibility .8s cubic-bezier(.23,1,.32,1)}.intro-splash.hidden{opacity:0;visibility:hidden}.logo-reveal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9998;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:1;transform:scale(1);transition:opacity .5s cubic-bezier(.23,1,.32,1),transform .5s cubic-bezier(.23,1,.32,1)}.logo-reveal.exiting{opacity:0;transform:scale(.92)}.logo-reveal-svg{width:96px;height:84px}.logo-reveal-path{fill:white;fill-opacity:0;stroke:white;stroke-width:.5;stroke-dasharray:1;stroke-dashoffset:1;animation:logoStrokeDraw 1.2s cubic-bezier(.23,1,.32,1) forwards}.logo-reveal-path,.logo-reveal-path.filled{transition:fill-opacity .4s cubic-bezier(.23,1,.32,1),stroke-opacity .4s cubic-bezier(.23,1,.32,1)}.logo-reveal-path.filled{fill:white;fill-opacity:1;stroke-opacity:0}@keyframes logoStrokeDraw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.hello-container{position:relative;text-align:center}.hello-main,.hello-outline{font-family:ClashDisplay,sans-serif;font-size:clamp(4rem,10vw,8rem);font-weight:600;letter-spacing:-.02em;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1.1);opacity:0;filter:blur(10px)}.hello-main{color:white;z-index:10;animation:helloMainIn 1.2s cubic-bezier(.23,1,.32,1) .3s forwards}.hello-outline{color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.4);z-index:5}.hello-outline-1{animation:helloOutlineIn1 1.4s cubic-bezier(.23,1,.32,1) .6s forwards}.hello-outline-2{animation:helloOutlineIn2 1.4s cubic-bezier(.23,1,.32,1) .7s forwards}.hello-outline-3{animation:helloOutlineIn3 1.4s cubic-bezier(.23,1,.32,1) .8s forwards}.hello-outline-4{animation:helloOutlineIn4 1.4s cubic-bezier(.23,1,.32,1) .9s forwards}.hello-outline-5{animation:helloOutlineIn5 1.4s cubic-bezier(.23,1,.32,1) 1s forwards}.hello-outline-6{animation:helloOutlineIn6 1.4s cubic-bezier(.23,1,.32,1) 1.1s forwards}.hello-outline-7{animation:helloOutlineIn7 1.4s cubic-bezier(.23,1,.32,1) 1.2s forwards}.hello-outline-8{animation:helloOutlineIn8 1.4s cubic-bezier(.23,1,.32,1) .6s forwards}.hello-outline-9{animation:helloOutlineIn9 1.4s cubic-bezier(.23,1,.32,1) .7s forwards}.hello-outline-10{animation:helloOutlineIn10 1.4s cubic-bezier(.23,1,.32,1) .8s forwards}.hello-outline-11{animation:helloOutlineIn11 1.4s cubic-bezier(.23,1,.32,1) .9s forwards}.hello-outline-12{animation:helloOutlineIn12 1.4s cubic-bezier(.23,1,.32,1) 1s forwards}.hello-outline-13{animation:helloOutlineIn13 1.4s cubic-bezier(.23,1,.32,1) 1.1s forwards}.hello-outline-14{animation:helloOutlineIn14 1.4s cubic-bezier(.23,1,.32,1) 1.2s forwards}@keyframes helloMainIn{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(1.1)}to{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}}@keyframes helloOutlineIn1{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.7;filter:blur(0);transform:translate(-50%,-65%) scale(1)}}@keyframes helloOutlineIn2{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.6;filter:blur(0);transform:translate(-50%,-110%) scale(1)}}@keyframes helloOutlineIn3{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.5;filter:blur(0);transform:translate(-50%,-155%) scale(1)}}@keyframes helloOutlineIn4{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.4;filter:blur(0);transform:translate(-50%,-200%) scale(1)}}@keyframes helloOutlineIn5{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.35;filter:blur(0);transform:translate(-50%,-245%) scale(1)}}@keyframes helloOutlineIn6{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.3;filter:blur(0);transform:translate(-50%,-290%) scale(1)}}@keyframes helloOutlineIn7{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.25;filter:blur(0);transform:translate(-50%,-335%) scale(1)}}@keyframes helloOutlineIn8{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.7;filter:blur(0);transform:translate(-50%,-35%) scale(1)}}@keyframes helloOutlineIn9{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.6;filter:blur(0);transform:translate(-50%,10%) scale(1)}}@keyframes helloOutlineIn10{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.5;filter:blur(0);transform:translate(-50%,55%) scale(1)}}@keyframes helloOutlineIn11{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.4;filter:blur(0);transform:translate(-50%,100%) scale(1)}}@keyframes helloOutlineIn12{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.35;filter:blur(0);transform:translate(-50%,145%) scale(1)}}@keyframes helloOutlineIn13{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.3;filter:blur(0);transform:translate(-50%,190%) scale(1)}}@keyframes helloOutlineIn14{0%{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}to{opacity:.25;filter:blur(0);transform:translate(-50%,235%) scale(1)}}@keyframes helloMainOut{0%{opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.95)}}@keyframes helloOutlineOut1{0%{opacity:.7;filter:blur(0);transform:translate(-50%,-65%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut2{0%{opacity:.6;filter:blur(0);transform:translate(-50%,-110%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut3{0%{opacity:.5;filter:blur(0);transform:translate(-50%,-155%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut4{0%{opacity:.4;filter:blur(0);transform:translate(-50%,-200%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut5{0%{opacity:.35;filter:blur(0);transform:translate(-50%,-245%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut6{0%{opacity:.3;filter:blur(0);transform:translate(-50%,-290%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut7{0%{opacity:.25;filter:blur(0);transform:translate(-50%,-335%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut8{0%{opacity:.7;filter:blur(0);transform:translate(-50%,-35%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut9{0%{opacity:.6;filter:blur(0);transform:translate(-50%,10%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut10{0%{opacity:.5;filter:blur(0);transform:translate(-50%,55%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut11{0%{opacity:.4;filter:blur(0);transform:translate(-50%,100%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut12{0%{opacity:.35;filter:blur(0);transform:translate(-50%,145%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut13{0%{opacity:.3;filter:blur(0);transform:translate(-50%,190%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}@keyframes helloOutlineOut14{0%{opacity:.25;filter:blur(0);transform:translate(-50%,235%) scale(1)}to{opacity:0;filter:blur(10px);transform:translate(-50%,-50%) scale(.8)}}.content-container{opacity:0;transform:scale(1.05);transition:all 1s cubic-bezier(.23,1,.32,1)}.content-container.loaded{opacity:1;transform:scale(1)}.grid-container{width:100%;height:100%;z-index:0}.grid-container,.parallax-bg{position:fixed;top:0;left:0;pointer-events:none}.parallax-bg{width:100vw;height:auto;min-height:500vh;background-image:url(/assets/images/background.png);background-size:100% auto;background-position:top;background-repeat:no-repeat;z-index:1;will-change:transform;opacity:0;transition:opacity 1s cubic-bezier(.23,1,.32,1)}.parallax-bg.loaded{opacity:1}.overlay{left:0;width:100%;height:100%;background:rgba(20,2,36,.3);z-index:2}.overlay,.vertical-text{position:fixed;top:0;pointer-events:none}.vertical-text{right:2vw;transform:rotate(90deg);transform-origin:top right;font-family:MonumentExtended,Arial,sans-serif;font-size:clamp(30rem,37.5vw,52.5rem);font-weight:800;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.3);z-index:3;letter-spacing:-.02em;will-change:transform;white-space:nowrap;margin-top:0;opacity:0;filter:blur(8px);transition:all 1.2s cubic-bezier(.23,1,.32,1)}.vertical-text.loaded{opacity:1;filter:blur(0)}.vertical-text.entrance{transform:rotate(90deg) translateX(100vh);opacity:0;filter:blur(8px)}.name-section{position:absolute;top:50vh;left:15vw;transform:translateY(-50%);z-index:4;opacity:0;transform:translateY(-50%) scale(1.05);filter:blur(8px);transition:all 1s cubic-bezier(.23,1,.32,1)}.name-section.loaded{opacity:1;transform:translateY(-50%) scale(1);filter:blur(0)}@media (max-width:992px){.name-section{left:10vw}}@media (max-width:768px){.name-section{left:8vw}}.name-svg{max-width:480px;height:auto}.content-container{position:relative;z-index:5;min-height:100vh}.landing-section{height:100vh;position:relative}.hero-section{align-items:center;text-align:center;padding:4rem 2rem}.about-section,.hero-section{height:100vh;display:flex;justify-content:center}.about-section{padding:6rem 2rem;max-width:1200px;margin:0 auto;flex-direction:column}.projects-section{max-width:1400px}.contact-section,.projects-section{height:100vh;padding:6rem 2rem;margin:0 auto;display:flex;flex-direction:column;justify-content:center}.contact-section{text-align:center;max-width:800px}.hero-content h1{font-family:ClashDisplay,sans-serif;font-size:clamp(2.5rem,6vw,4rem);font-weight:600;margin-bottom:1rem;letter-spacing:-.02em}.hero-content p{font-size:clamp(1rem,2.5vw,1.3rem);opacity:.9;max-width:600px;margin:0 auto 2rem;line-height:1.6}.section-title{font-family:ClashDisplay,sans-serif;font-size:clamp(2rem,5vw,3rem);font-weight:600;text-align:center;margin-bottom:3rem;letter-spacing:-.02em}.about-content{display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:center}.about-text{font-size:1.1rem;line-height:1.8;opacity:.9}.about-text p{margin-bottom:1.5rem}.skills-grid-container{position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem}.skills-grid{display:flex;flex-direction:column;gap:.5rem;max-height:320px;overflow-y:auto;padding:.5rem;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;width:100%}.skills-grid::-webkit-scrollbar{display:none}.skills-scroll-btn{width:40px;height:40px;background:rgba(255,255,255,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);font-size:.9rem}.skills-scroll-btn:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:white;transform:translateY(-2px)}.skills-scroll-btn.disabled{opacity:.3;pointer-events:none}.skill-item{padding:.75rem 1rem;text-align:left;transition:all .3s cubic-bezier(.23,1,.32,1);position:relative;display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:rgba(255,255,255,.9);width:100%}.skill-item svg{font-size:1.2rem;color:rgba(255,255,255,.8);flex-shrink:0}.skill-card-glass{transition:all .3s cubic-bezier(.23,1,.32,1)}.skill-card-glass:hover{transform:translateY(-3px)}.skill-group{margin-bottom:1.5rem}.skill-group-title{font-family:ClashDisplay,sans-serif;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:.75rem;padding-left:.25rem}.skill-group-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.6rem;gap:.6rem}.skill-item:hover{color:white}.scrolling-text{position:relative;width:100%;height:1.2em;overflow:hidden}.scrolling-text span{display:inline-block;white-space:nowrap;animation:scrollText 3s linear infinite}@keyframes scrollText{0%{transform:translateX(100%)}to{transform:translateX(-100%)}}.scrolling-text:hover span{animation-play-state:paused}.projects-container{position:relative;margin-top:3rem}.projects-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);grid-auto-columns:minmax(340px,380px);grid-gap:1.5rem;gap:1.5rem;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:0 60px;margin:0 -60px;position:relative}.projects-grid::-webkit-scrollbar{display:none}.projects-scroll-btn{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;background:rgba(255,255,255,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);font-size:1.1rem;z-index:50;pointer-events:auto}.projects-scroll-left{left:10px}.projects-scroll-right{right:10px}.projects-scroll-btn:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:white;transform:translateY(-50%) scale(1.05)}.projects-scroll-btn.disabled{opacity:.3;pointer-events:none}.project-card{background:rgba(255,255,255,.05);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:2rem;transition:all .4s cubic-bezier(.23,1,.32,1);position:relative;overflow:hidden;display:flex;flex-direction:column}.project-card:hover{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);transform:translateY(-10px)}.project-logo{height:80px;display:flex;align-items:center;justify-content:flex-start;font-size:2rem;color:rgba(255,255,255,.7);overflow:hidden;margin-bottom:1.5rem;width:auto;min-width:80px;max-width:200px}.project-logo img{max-height:60px;width:auto;object-fit:contain}.project-card-content{flex:1 1;display:flex;flex-direction:column;height:100%}.project-thumbnail{width:100%;aspect-ratio:16/9;background:rgba(255,255,255,.1);border-radius:12px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);font-size:.9rem}.project-title{font-family:ClashDisplay,sans-serif;font-size:1.5rem;font-weight:600;margin-bottom:1rem;letter-spacing:-.01em}.project-description{flex:1 1;font-size:.95rem;line-height:1.6;opacity:.8;margin-bottom:1.5rem}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.tech-tag{background:rgba(134,35,169,.3);border:1px solid rgba(134,35,169,.5);border-radius:8px;padding:.3rem .8rem;font-size:.8rem;color:rgba(255,255,255,.9)}.project-actions{gap:1rem;margin-top:auto;min-height:48px}.action-btn,.project-actions{display:flex;align-items:center}.action-btn{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.8rem 1.5rem;color:white;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.23,1,.32,1);gap:.5rem}.action-btn:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);transform:translateY(-2px)}.action-icon{width:40px;height:40px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.8);transition:all .3s cubic-bezier(.23,1,.32,1);text-decoration:none}.action-icon:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:white;transform:translateY(-2px)}.contact-container{position:relative;width:100%}.contact-grid{display:grid;grid-template-columns:repeat(3,190px);justify-content:center;grid-gap:1.5rem;gap:1.5rem;padding:15px 40px;margin:3rem auto 0;max-width:800px;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth}@media (max-width:768px){.contact-grid{grid-template-columns:none;grid-template-rows:repeat(2,1fr);grid-auto-flow:column;overflow-x:auto;column-gap:1rem;row-gap:1.5rem;margin:3rem -20px 0;max-width:calc(100% + 40px);justify-content:start}}.contact-grid::-webkit-scrollbar{display:none}.contact-scroll-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);font-size:1rem;z-index:50;pointer-events:auto}.contact-scroll-left{left:-10px}.contact-scroll-right{right:-10px}.contact-scroll-btn.disabled{opacity:0;pointer-events:none}.contact-card-glass{min-width:160px;max-width:200px;flex-shrink:0;height:max-content}.projects-section{margin-top:5rem}.contact-item{padding:2rem 1rem;text-decoration:none;color:white;display:block;width:100%;word-wrap:break-word}.contact-card-glass,.contact-item{transition:all .3s cubic-bezier(.23,1,.32,1)}.contact-card-glass:hover{transform:translateY(-5px)}.contact-icon{font-size:2rem;margin-bottom:1rem;color:rgba(255,255,255,.8)}.contact-label{font-size:.9rem;opacity:.7;margin-bottom:.5rem}.contact-value{font-weight:500;font-size:.9rem}.footer{text-align:right;color:white;display:flex;align-items:center;justify-content:flex-end;opacity:0;transform:scale(1.05);filter:blur(8px);transition:all 1s cubic-bezier(.23,1,.32,1)}.footer.loaded{opacity:1;transform:scale(1);filter:blur(0)}.footer-line{height:1px;width:66vw;background:linear-gradient(270deg,rgba(134,35,169,.8),rgba(134,35,169,0));margin-right:15px}.footer-logo{opacity:.7}.footer-container{position:fixed;bottom:0;left:0;width:100%;padding:0 5vw 5vh;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none;z-index:10}.footer-copyright{font-size:.65rem;letter-spacing:1px;color:white;opacity:0;filter:blur(8px);font-weight:400;transition:all 1s cubic-bezier(.23,1,.32,1);margin-bottom:8px}.footer-copyright.loaded{opacity:.4;filter:blur(0)}.section-nav{position:fixed;left:2vw;top:50%;transform:translateY(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(-50%) scale(1.05);filter:blur(8px);transition:all 1s cubic-bezier(.23,1,.32,1)}.section-nav.loaded{opacity:1;transform:translateY(-50%) scale(1);filter:blur(0)}.nav-pill{background:rgba(255,255,255,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:50px;padding:1.5rem .8rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.nav-dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.3);border:2px solid rgba(255,255,255,.5);cursor:pointer;transition:all .4s cubic-bezier(.23,1,.32,1);position:relative}.nav-dot:hover{background:rgba(255,255,255,.5);border-color:rgba(255,255,255,.8);transform:scale(1.2)}.nav-dot.active{background:rgba(134,35,169,.8);border-color:rgba(134,35,169,1);transform:scale(1.3);box-shadow:0 0 20px rgba(134,35,169,.4)}.nav-tooltip{position:absolute;left:200%;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.5rem 1rem;font-size:.8rem;white-space:nowrap;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.23,1,.32,1);z-index:10000}.nav-dot:hover .nav-tooltip{opacity:1}@media (max-width:768px){.section-nav{left:1vw}.nav-pill{padding:1rem .6rem;gap:.8rem}.nav-dot{width:10px;height:10px}.nav-tooltip{display:none}}.scroll-hint{position:fixed;bottom:8vh;left:50%;transform:translateX(-50%);z-index:15;display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;transition:all 1s cubic-bezier(.23,1,.32,1)}.scroll-hint.loaded{opacity:.6}.scroll-hint.hidden{opacity:0;filter:blur(8px)}.scroll-hint-text{font-family:ClashDisplay,sans-serif;font-size:.75rem;color:white;letter-spacing:2px;opacity:.8;font-weight:500}.scroll-hint-icon{width:24px;height:40px;border:2px solid rgba(255,255,255,.4);border-radius:12px;position:relative;display:flex;justify-content:center;padding-top:6px}.scroll-hint-dot{width:3px;height:6px;background:rgba(255,255,255,.6);border-radius:2px;animation:scrollHintBounce 2s infinite}@keyframes scrollHintBounce{0%,to{transform:translateY(0);opacity:.6}50%{transform:translateY(12px);opacity:1}}.scroll-hint:hover{opacity:1}[data-cursor=pointer],[data-cursor=view]{cursor:pointer}[data-cursor=text]{cursor:text}[data-cursor=hover]{cursor:pointer}@media (max-width:1200px){.name-svg{max-width:400px}.vertical-text{font-size:clamp(72rem,90vw,120rem);right:2vw}}@media (max-width:992px){.about-content,.projects-grid{grid-template-columns:1fr}.name-section{left:4vw}.vertical-text{font-size:clamp(60rem,80vw,100rem);right:3vw}}@media (max-width:768px){.name-svg{max-width:300px}.vertical-text{font-size:clamp(48rem,72vw,80rem);right:2vw}.footer-line{width:40vw}.name-section{left:8vw}.skills-grid{grid-template-columns:repeat(2,1fr);max-height:240px;gap:1rem}.skills-scroll-btn{width:35px;height:35px;font-size:.8rem}.skill-item{padding:1rem .8rem;min-height:70px}.projects-grid{grid-template-columns:repeat(3,minmax(320px,1fr));gap:2rem;padding:0 50px;margin:0 -50px}.projects-scroll-btn{width:40px;height:40px;font-size:1rem}.project-card{padding:1.5rem}}@media (orientation:portrait){.parallax-bg{width:100vw;height:auto;min-height:800vh;background-size:cover;background-position:top}}@media (max-width:768px){.parallax-bg{min-height:700vh;background-size:cover;background-position:50%}}@media (max-width:480px){.parallax-bg{min-height:800vh;background-size:cover;background-position:top}}.mobile-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(20,2,36,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:2rem;opacity:1;visibility:visible;transition:all .5s cubic-bezier(.23,1,.32,1)}.mobile-popup-overlay.hidden{opacity:0;visibility:hidden;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}.mobile-popup{background:rgba(255,255,255,.1);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:2.5rem 2rem;max-width:400px;width:100%;text-align:center;position:relative;box-shadow:0 20px 40px rgba(0,0,0,.3);transform:scale(.9) translateY(20px);opacity:0;animation:popupEnter .6s cubic-bezier(.23,1,.32,1) .2s forwards}@keyframes popupEnter{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.popup-icon{width:60px;height:60px;background:linear-gradient(135deg,rgba(134,35,169,.3),rgba(134,35,169,.6));border:2px solid rgba(134,35,169,.8);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;font-size:1.5rem;color:rgba(255,255,255,.9);box-shadow:0 0 30px rgba(134,35,169,.4)}.popup-title{font-size:1.4rem;font-weight:600;margin-bottom:1rem;letter-spacing:-.01em;background:linear-gradient(135deg,#ffffff,rgba(255,255,255,.8));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.popup-text{font-size:.95rem;line-height:1.6;opacity:.85;margin-bottom:2rem;color:rgba(255,255,255,.9)}.popup-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.popup-btn{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:.8rem 1.5rem;color:white;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.23,1,.32,1);display:flex;align-items:center;gap:.5rem;cursor:pointer;font-family:inherit}.popup-btn:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);transform:translateY(-2px)}.popup-btn.primary{background:linear-gradient(135deg,rgba(134,35,169,.6),rgba(134,35,169,.8));border:1px solid rgba(134,35,169,.9);box-shadow:0 4px 20px rgba(134,35,169,.3)}.popup-btn.primary:hover{background:linear-gradient(135deg,rgba(134,35,169,.7),rgba(134,35,169,.9));border:1px solid rgba(134,35,169,1);box-shadow:0 6px 25px rgba(134,35,169,.4)}.close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);cursor:pointer;transition:all .3s cubic-bezier(.23,1,.32,1);font-size:.8rem}.close-btn:hover{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:white;transform:scale(1.1)}@media (min-width:1024px){.mobile-popup-overlay{display:none!important}}.mobile-popup-overlay.dismissing{animation:overlayFadeOut .5s cubic-bezier(.23,1,.32,1) forwards}.mobile-popup-overlay.dismissing .mobile-popup{animation:popupExit .4s cubic-bezier(.23,1,.32,1) forwards}@keyframes overlayFadeOut{0%{opacity:1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}to{opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}}@keyframes popupExit{0%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(.95) translateY(-20px);opacity:0}}@media (max-width:480px){.mobile-popup{padding:2rem 1.5rem;margin:1rem}.popup-actions{flex-direction:column;gap:.8rem}.popup-btn{padding:1rem 1.5rem;justify-content:center}}*,:after,:before{cursor:none!important}.custom-cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;mix-blend-mode:difference;opacity:1;transition:opacity .3s ease}.cursor-dot{width:8px;height:8px;background:rgba(255,255,255,.9);border-radius:50%;position:absolute;transition:all .1s ease;z-index:10001}.cursor-ring{width:40px;height:40px;border:2px solid rgba(255,255,255,.3);border-radius:50%;position:absolute;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.23,1,.32,1);z-index:10000}.custom-cursor.cursor-hover .cursor-ring{transform:scale(1.5);border-color:rgba(134,35,169,.8);background:rgba(134,35,169,.1);border-width:3px}.custom-cursor.cursor-hover .cursor-dot{background:rgba(134,35,169,1);transform:scale(1.2)}.custom-cursor.cursor-view .cursor-ring{transform:scale(4);border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.05)}.custom-cursor.cursor-view .cursor-dot{background:rgba(255,255,255,1);transform:scale(.8)}.custom-cursor.cursor-text .cursor-ring{transform:scaleX(.2) scaleY(1.8);border-radius:2px;border-color:rgba(255,255,255,.7);background:rgba(255,255,255,.1)}.custom-cursor.cursor-text .cursor-dot{opacity:0}.custom-cursor.cursor-nav .cursor-ring{transform:scale(.3);border-color:rgba(134,35,169,1);background:rgba(134,35,169,.8);border-width:4px;box-shadow:0 0 20px rgba(134,35,169,.6)}.custom-cursor.cursor-nav .cursor-dot{background:rgba(134,35,169,1);transform:scale(1.5);box-shadow:0 0 10px rgba(134,35,169,.8)}@media (hover:none) and (pointer:coarse){.custom-cursor{display:none!important}*,:after,:before{cursor:auto!important}}.nav-pill-glass{display:flex!important;flex-direction:column;align-items:center;overflow:visible!important}.nav-pill-glass .glass-surface__content{overflow:visible}.nav-dots-container{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:0;overflow:visible}.project-card-glass{min-width:340px;min-height:280px;transition:all .4s cubic-bezier(.23,1,.32,1)}.project-card-glass:hover{transform:translateY(-8px)}.project-card-inner{position:relative;width:100%;height:100%;display:flex;flex-direction:column;padding:1.5rem}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.project-header .project-logo{margin-bottom:0;height:auto}.project-actions-mini{display:flex;gap:.5rem}.action-icon-mini{width:36px;height:36px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);transition:all .3s cubic-bezier(.23,1,.32,1);text-decoration:none;font-size:.9rem}.action-icon-mini:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.4);color:white;transform:translateY(-2px)}.project-body{flex:1 1;display:flex;flex-direction:column}.project-body .project-title{font-family:ClashDisplay,sans-serif;font-size:1.4rem;font-weight:600;margin-bottom:.75rem;letter-spacing:-.01em}.project-body .project-description{font-size:.9rem;line-height:1.6;opacity:.8;margin-bottom:1rem;flex:1 1}.project-footer{margin-top:auto}.project-footer .project-tech{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:0}.project-footer .tech-tag{background:rgba(134,35,169,.25);border:1px solid rgba(134,35,169,.4);border-radius:6px;padding:.25rem .6rem;font-size:.75rem;color:rgba(255,255,255,.85)}.project-card-featured{border:1px solid rgba(134,35,169,.3)}.featured-glare{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 30% 40%,rgba(134,35,169,.25) 0,transparent 60%);opacity:0;animation:glow-pulse 5s ease-in-out infinite;pointer-events:none;z-index:1}@keyframes glow-pulse{0%,to{opacity:0}50%{opacity:1}}.curved-logo{border-radius:8px}.stasis-logo-img{max-height:36px!important}.project-text-logo{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:1.4rem;font-weight:500;color:rgba(255,255,255,.85);letter-spacing:0}.scroll-btn-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);font-size:1rem}.projects-scroll-btn.disabled .scroll-btn-inner{opacity:.3}.fluid-glass-cursor{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9998}@media (max-width:992px){.project-card-glass{min-width:300px;min-height:260px}.projects-grid{grid-auto-columns:minmax(280px,320px)}}@media (max-width:768px){.project-card-glass{min-width:280px;min-height:260px}.project-card-inner{padding:1rem}.project-body .project-title{font-size:1.2rem}.project-body .project-description{font-size:.85rem}}.glass-cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;border-radius:50%;will-change:transform,width,height;opacity:1;transition:opacity .3s ease}.glass-cursor--svg{backdrop-filter:var(--glass-cursor-filter);-webkit-backdrop-filter:var(--glass-cursor-filter);border:1px solid rgba(255,255,255,.1);box-shadow:0 0 15px rgba(0,0,0,.1)}.glass-cursor--fallback{backdrop-filter:blur(1px) brightness(1.15) saturate(1.4);-webkit-backdrop-filter:blur(1px) brightness(1.15) saturate(1.4);border:1px solid rgba(255,255,255,.1)}.glass-cursor--click{border-color:rgba(134,35,169,.5);box-shadow:0 0 15px rgba(134,35,169,.15)}.glass-cursor--nav{border-color:rgba(134,35,169,.8);box-shadow:0 0 12px rgba(134,35,169,.35)}.glass-cursor--text{background:rgba(255,255,255,.7);border:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 0 8px rgba(255,255,255,.3)}.glass-cursor--arrow{border-color:rgba(134,35,169,.5);box-shadow:0 0 15px rgba(134,35,169,.15)}.glass-cursor--arrow:before{content:"→";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);font-size:16px;color:rgba(255,255,255,.9);animation:arrow-blur-in .3s ease-out forwards}@keyframes arrow-blur-in{0%{filter:blur(4px);opacity:0}to{filter:blur(0);opacity:1}}.glass-cursor-svg{position:fixed;width:0;height:0;pointer-events:none}@media (hover:none) and (pointer:coarse){.glass-cursor{display:none!important}}