.Hero-module__JgYmMq__hero{color:#fff;text-align:center;background:radial-gradient(circle,#0b0f1a 10%,#090d1a 40%,#05080f 85%) fixed;justify-content:center;align-items:center;width:100%;height:100vh;padding:0 5%;display:flex;position:relative;overflow:hidden}@keyframes Hero-module__JgYmMq__nebulaMovement{0%{background-position:0 0}50%{background-position:100% 100%}to{background-position:0 0}}.Hero-module__JgYmMq__hero:before{content:"";opacity:.2;pointer-events:none;background-color:#0000;background-image:radial-gradient(circle,#0078ff1a,#0000),radial-gradient(circle at 20% 80%,#ff00ff14,#0000),radial-gradient(circle at 80% 20%,#ffff0014,#0000);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;width:100%;height:100%;animation:30s linear infinite alternate Hero-module__JgYmMq__nebulaMovement;position:absolute}.Hero-module__JgYmMq__heroGlow{filter:blur(180px);background:#0078ff33;border-radius:50%;width:380px;height:380px;transition:transform 1.2s ease-out;animation:10s ease-in-out infinite alternate Hero-module__JgYmMq__glowPulse;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)}.Hero-module__JgYmMq__heroGlowSecondary{filter:blur(150px);background:#00b4ff26;border-radius:50%;width:280px;height:280px;transition:transform 1.3s ease-out;animation:12s ease-in-out infinite alternate Hero-module__JgYmMq__glowPulse;position:absolute;top:38%;left:54%;transform:translate(-50%,-50%)}@keyframes Hero-module__JgYmMq__glowPulse{0%{opacity:.6;transform:translate(-50%,-50%)scale(1)}to{opacity:.3;transform:translate(-50%,-50%)scale(1.12)}}.Hero-module__JgYmMq__container{text-align:center;max-width:900px;padding:0 1.5rem}.Hero-module__JgYmMq__heroTitle{letter-spacing:-1px;text-transform:uppercase;color:#0000;background:linear-gradient(90deg,#fff 20%,#b3b3b3 50%,#fff 80%) 0 0/700%;-webkit-background-clip:text;background-clip:text;margin-bottom:1.2rem;font-size:clamp(3rem,6vw,4.2rem);font-weight:800;line-height:1.1}@keyframes Hero-module__JgYmMq__glassReflection{0%{background-position:-700% 0}to{background-position:700% 0}}.Hero-module__JgYmMq__subtitle{letter-spacing:.5px;margin-bottom:2.8rem;font-size:1.35rem;font-weight:400}.Hero-module__JgYmMq__jobTitle{color:#00c6ff}.Hero-module__JgYmMq__ctaWrapper{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.6rem;display:flex}.Hero-module__JgYmMq__cta,.Hero-module__JgYmMq__ctaOutline{text-transform:uppercase;border-radius:8px;padding:.85rem 1.2rem;font-size:1.15rem;font-weight:600;transition:transform .5s ease-in-out;position:relative;overflow:hidden}.Hero-module__JgYmMq__cta3D{transition:transform .6s ease-out}.Hero-module__JgYmMq__cta3D:hover{transform:perspective(800px)rotateX(3deg)scale(1.06)}.Hero-module__JgYmMq__cta{color:#fff;background:linear-gradient(45deg,#0078ff,#00c6ff);box-shadow:0 6px 20px #0078ff66}.Hero-module__JgYmMq__cta:after{content:"";background:linear-gradient(90deg,#ffffff26,#0000);width:240%;height:100%;transition:left 1.2s ease-in-out;position:absolute;top:0;left:-120%;transform:skew(-15deg)}.Hero-module__JgYmMq__cta:hover:after{left:120%}.Hero-module__JgYmMq__cta:hover{transform:perspective(800px)rotateX(3deg)scale(1.08);box-shadow:0 8px 26px #0078ff8c}.Hero-module__JgYmMq__ctaOutline{color:#0078ff;background:0 0;border:2px solid #0078ff}.Hero-module__JgYmMq__ctaOutline:hover{color:#00c6ff;background:#0078ff33;border-color:#00c6ff}@media (max-width:768px){.Hero-module__JgYmMq__heroTitle{letter-spacing:-.3px;max-width:90%;margin:0 auto 1.5rem;font-size:2.6rem;line-height:1.2}.Hero-module__JgYmMq__subtitle{max-width:85%;margin:0 auto 1.8rem;font-size:1.15rem}.Hero-module__JgYmMq__ctaWrapper{flex-direction:column;gap:1.2rem}.Hero-module__JgYmMq__cta,.Hero-module__JgYmMq__ctaOutline{border-radius:6px;width:80%;max-width:300px;padding:.7rem 1.5rem;font-size:1rem}.Hero-module__JgYmMq__heroGlow{filter:blur(100px);width:220px;height:220px}.Hero-module__JgYmMq__heroGlowSecondary{filter:blur(90px);width:160px;height:160px}}.Hero-module__JgYmMq__socialIcons{gap:15px;display:flex;position:absolute;top:20px;right:20px}.Hero-module__JgYmMq__githubIcon{transition:transform .3s ease-in-out;animation:3s ease-in-out infinite Hero-module__JgYmMq__wiggle}.Hero-module__JgYmMq__githubIcon:hover{transform:scale(1.1)}.Hero-module__JgYmMq__linkedinIcon{transition:transform .3s ease-in-out;animation:2s ease-in-out infinite Hero-module__JgYmMq__bounce}.Hero-module__JgYmMq__linkedinIcon:hover{transform:scale(1.1)}@keyframes Hero-module__JgYmMq__wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}50%{transform:rotate(10deg)}75%{transform:rotate(-10deg)}}@keyframes Hero-module__JgYmMq__bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width:768px){.Hero-module__JgYmMq__socialIcons{top:10px;right:10px}}@media (max-width:1024px){.Hero-module__JgYmMq__ctaWrapper{flex-wrap:wrap;justify-content:center;gap:1.2rem}.Hero-module__JgYmMq__ctaWrapper>*{width:45%;min-width:140px;max-width:300px}}@media (max-width:500px){.Hero-module__JgYmMq__ctaWrapper>*{width:100%}}
.Projects-module__T_D1Ca__projectsSection{background-blend-mode:normal, overlay;background:linear-gradient(#0006,#0000004d),url(/projectsBackground.png) 50%/cover no-repeat,radial-gradient(circle,#05080f 0%,#090d1a 50%,#0b0f1a 100%);flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;max-height:100vh;display:flex;position:relative;overflow:hidden}.Projects-module__T_D1Ca__container{text-align:center;max-width:100%;position:relative}.Projects-module__T_D1Ca__title{color:#0000;text-transform:uppercase;letter-spacing:1px;background-image:linear-gradient(90deg,#fff,#c7c7c7);-webkit-background-clip:text;background-clip:text;margin-bottom:2rem;font-family:Quicksand,sans-serif;font-size:3rem;font-weight:700}.Projects-module__T_D1Ca__scrollContainer{cursor:grab;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;flex-direction:row;width:fit-content;display:flex}.Projects-module__T_D1Ca__scrollContainer::-webkit-scrollbar{display:none}.Projects-module__T_D1Ca__projectSlide{scroll-snap-align:center;flex:none;justify-content:center;display:flex}.Projects-module__T_D1Ca__projectSlide:active{cursor:grabbing}@media (max-width:849px){.Projects-module__T_D1Ca__projectSlide:first-child{margin-left:calc(50vw - 200px)}}.Projects-module__T_D1Ca__canScroll:after{content:"";pointer-events:none;background:linear-gradient(270deg,#05080fe6,#05080f00);width:84px;height:320px;animation:1.8s ease-in-out infinite Projects-module__T_D1Ca__edgePulse;position:absolute;top:4.8rem;right:0}.Projects-module__T_D1Ca__swipeHint{color:#fff;letter-spacing:.02em;text-shadow:0 0 12px #00c6ff59;margin-top:10px;font-family:Quicksand,sans-serif;font-weight:700}.Projects-module__T_D1Ca__hintArrow{margin-left:.3rem;animation:1.1s ease-in-out infinite Projects-module__T_D1Ca__arrowNudge;display:inline-block}.Projects-module__T_D1Ca__backButton{color:#fff;cursor:pointer;background:linear-gradient(45deg,#0078ff,#00c6ff);border:none;border-radius:8px;margin-top:2rem;padding:.9rem 1.8rem;font-size:1.1rem;font-weight:700;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out;position:relative;overflow:hidden;box-shadow:0 4px 12px #0078ff66}.Projects-module__T_D1Ca__backButton:after{content:"";background:linear-gradient(90deg,#fff3,#0000);width:200%;height:100%;transition:left 1s ease-in-out;position:absolute;top:0;left:-100%;transform:skew(-15deg)}.Projects-module__T_D1Ca__backButton:hover:after{left:100%}@media (min-width:768px){.Projects-module__T_D1Ca__canScroll:after{height:360px;top:6.2rem}}@keyframes Projects-module__T_D1Ca__arrowNudge{0%,to{opacity:.8;transform:translate(0)}50%{opacity:1;transform:translate(8px)}}@keyframes Projects-module__T_D1Ca__edgePulse{0%,to{opacity:.55}50%{opacity:.95}}
.ProjectCard-module__RZPw0W__card{aspect-ratio:4/3;flex-direction:column;justify-content:center;align-items:center;max-width:400px;margin-right:1rem;display:flex;position:relative;overflow:hidden}.ProjectCard-module__RZPw0W__card:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(155deg,#08142857,#0308128f);position:absolute;inset:0}.ProjectCard-module__RZPw0W__backgroundImage{z-index:1;object-fit:cover;position:absolute;inset:0}.ProjectCard-module__RZPw0W__content{z-index:3;padding:40px;position:relative}.ProjectCard-module__RZPw0W__image{border-radius:10px;max-width:90%;height:auto}.ProjectCard-module__RZPw0W__title,.ProjectCard-module__RZPw0W__subtitle,.ProjectCard-module__RZPw0W__description{text-align:left;color:#fff;font-family:Quicksand,sans-serif;font-weight:400}@supports ((-webkit-background-clip:text)) and (not (-webkit-text-fill-color:inherit)){.ProjectCard-module__RZPw0W__title,.ProjectCard-module__RZPw0W__subtitle,.ProjectCard-module__RZPw0W__description{color:#fff}}.ProjectCard-module__RZPw0W__title{font-size:20px;font-weight:800}.ProjectCard-module__RZPw0W__subtitle,.ProjectCard-module__RZPw0W__description{margin-left:5px}.ProjectCard-module__RZPw0W__subtitle{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;margin-bottom:10px;font-size:15px;font-weight:600;display:-webkit-box;overflow:hidden}.ProjectCard-module__RZPw0W__description{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;display:-webkit-box;overflow:hidden}
.ProjectModal-module__r7uHCW__overlay{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle at 20% 15%,#007aff24,#0000 45%),#060a12c7;place-items:center;padding:10px;display:grid;position:fixed;inset:0}.ProjectModal-module__r7uHCW__modal{color:#f2f6ff;background:linear-gradient(165deg,#121824f2,#0a0e18f2);border:1px solid #ffffff1f;border-radius:16px;width:100%;max-height:93dvh;padding:14px;position:relative;overflow-y:auto;box-shadow:0 24px 60px #00000073,inset 0 2px #ffffff14}.ProjectModal-module__r7uHCW__modal:focus{outline:none}.ProjectModal-module__r7uHCW__closeButton{float:right;color:#f2f6ff;cursor:pointer;z-index:2;background:#0a0f18e0;border:1px solid #ffffff3d;border-radius:999px;width:38px;height:38px;margin-left:auto;font-size:1.05rem;line-height:1;transition:transform .16s,background .16s,border-color .16s;position:sticky;top:0}.ProjectModal-module__r7uHCW__closeButton:hover{background:#162336f2;border-color:#8ac0ffa6;transform:scale(1.06)}.ProjectModal-module__r7uHCW__closeButton:focus-visible{outline-offset:2px;outline:2px solid #7db7ff}.ProjectModal-module__r7uHCW__mediaArea{margin-top:10px}.ProjectModal-module__r7uHCW__imageLink{text-decoration:none;display:block}.ProjectModal-module__r7uHCW__imageFrame{background:radial-gradient(circle,#22314bbf,#0b1019f2);border:1px solid #ffffff24;border-radius:16px;width:100%;height:clamp(210px,40vh,380px);position:relative;overflow:hidden}.ProjectModal-module__r7uHCW__image{object-fit:contain;object-position:top center;padding:10px}.ProjectModal-module__r7uHCW__title{letter-spacing:.01em;margin:14px 0 8px;font-size:clamp(1.3rem,2.6vw,2rem);line-height:1.18}.ProjectModal-module__r7uHCW__contentArea{justify-items:center;gap:14px;margin-top:8px;display:grid}.ProjectModal-module__r7uHCW__textSection{gap:8px;width:min(100%,72ch);margin-inline:auto;display:grid}.ProjectModal-module__r7uHCW__sectionLabel{letter-spacing:.1em;text-transform:uppercase;color:#bad3f2d6;text-align:left;width:100%;margin:0;font-size:.73rem;font-weight:700}.ProjectModal-module__r7uHCW__projectOverview{text-align:left;background:#ffffff0b;border:1px solid #ffffff1f;border-radius:14px;width:100%;margin:0;padding:13px}.ProjectModal-module__r7uHCW__overviewItem{color:#e4ecf7e6;margin:0;font-size:clamp(.96rem,1.2vw,1.02rem);line-height:1.75}.ProjectModal-module__r7uHCW__overviewItem+.ProjectModal-module__r7uHCW__overviewItem{border-top:1px solid #ffffff17;margin-top:12px;padding-top:12px}.ProjectModal-module__r7uHCW__overviewItem strong{color:#d1e6fff5}.ProjectModal-module__r7uHCW__term{color:#dae9fcfa;text-underline-offset:.14em;font-weight:560;-webkit-text-decoration:underline #8abcf873;text-decoration:underline #8abcf873;text-decoration-thickness:1px}.ProjectModal-module__r7uHCW__description{color:#d2deeedb;background:#ffffff0a;border:1px solid #ffffff24;border-radius:14px;width:min(100%,72ch);margin:4px auto 0;padding:12px;font-size:clamp(.95rem,1.3vw,1rem);line-height:1.6}.ProjectModal-module__r7uHCW__techCard{background:#ffffff09;border:1px solid #ffffff1f;border-radius:14px;gap:10px;width:min(100%,72ch);margin:4px auto 0;padding:10px;display:grid}.ProjectModal-module__r7uHCW__techLogoGrid{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.ProjectModal-module__r7uHCW__techLogoItem{background:#ffffff24;border:1px solid #8ac0ff4d;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:72px;min-height:86px;padding:7px 5px;display:inline-flex}.ProjectModal-module__r7uHCW__techLogo{object-fit:contain;width:30px;height:30px}.ProjectModal-module__r7uHCW__fallbackLogo{color:#ebf5fffa;background:#8fbdf547;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.94rem;font-weight:700;line-height:1;display:inline-flex}.ProjectModal-module__r7uHCW__techCaption{text-align:center;color:#e7f1fff5;overflow-wrap:anywhere;max-width:60px;font-size:.66rem;line-height:1.15}.ProjectModal-module__r7uHCW__expandTechButton{color:#dcecfff2;cursor:pointer;background:#81b2f51a;border:1px solid #9ac9ff66;border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:700;line-height:1.2}.ProjectModal-module__r7uHCW__expandTechButton:hover{background:#81b2f52e}.ProjectModal-module__r7uHCW__expandTechButton:focus-visible{outline-offset:2px;outline:2px solid #8bc2ff}.ProjectModal-module__r7uHCW__projectLink{color:#fff;letter-spacing:.01em;background:linear-gradient(120deg,#1f71db,#41a0ff);border:1px solid #6aaeffb3;border-radius:999px;justify-content:center;align-items:center;min-height:44px;margin-top:16px;padding:12px 20px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.ProjectModal-module__r7uHCW__projectLink:hover{transform:translateY(-1px);box-shadow:0 10px 24px #257de661}.ProjectModal-module__r7uHCW__projectLink:focus-visible{outline-offset:3px;outline:2px solid #8bc2ff}@media (min-width:768px){.ProjectModal-module__r7uHCW__overlay{padding:18px}.ProjectModal-module__r7uHCW__modal{border-radius:20px;width:min(780px,92vw);max-height:min(92dvh,860px);padding:20px}.ProjectModal-module__r7uHCW__closeButton{width:40px;height:40px}.ProjectModal-module__r7uHCW__imageFrame{height:clamp(260px,44vh,460px)}.ProjectModal-module__r7uHCW__title{margin-top:18px}.ProjectModal-module__r7uHCW__projectOverview{padding:16px 18px}.ProjectModal-module__r7uHCW__description{padding:14px 16px}.ProjectModal-module__r7uHCW__techCard{padding:12px}.ProjectModal-module__r7uHCW__techLogoGrid{gap:8px}.ProjectModal-module__r7uHCW__techLogoItem{width:84px;min-height:96px;padding:8px 6px}.ProjectModal-module__r7uHCW__techLogo{width:36px;height:36px}.ProjectModal-module__r7uHCW__techCaption{max-width:70px;font-size:.72rem}.ProjectModal-module__r7uHCW__expandTechButton{padding:6px 10px;font-size:.82rem}}@media (min-width:1200px){.ProjectModal-module__r7uHCW__modal{width:min(940px,90vw);padding:24px}.ProjectModal-module__r7uHCW__imageFrame{height:clamp(280px,50vh,520px)}}@media (prefers-reduced-motion:reduce){.ProjectModal-module__r7uHCW__closeButton,.ProjectModal-module__r7uHCW__projectLink{transition:none}}
.StarFieldCanvas-module__YTsdna__canvas{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}
.ContactCard-module__-wkb8W__wrap{z-index:1;place-items:center;min-height:100vh;padding:24px 16px;display:grid;position:relative}.ContactCard-module__-wkb8W__card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#0f111aa6;border:1px solid #ffffff14;border-radius:16px;width:100%;max-width:560px;padding:28px 22px;box-shadow:0 14px 36px #00000073}.ContactCard-module__-wkb8W__title{text-align:center;margin:0 0 6px;font-size:2rem;font-weight:800}.ContactCard-module__-wkb8W__subtitle{color:#ffffffd9;text-align:center;margin:0 0 22px;font-size:1rem}.ContactCard-module__-wkb8W__form{gap:14px;display:grid}.ContactCard-module__-wkb8W__input{color:#fff;background:#00000040;border:1px solid #ffffff29;border-radius:10px;outline:none;width:100%;padding:12px 14px}.ContactCard-module__-wkb8W__textarea{resize:vertical;color:#fff;background:#00000040;border:1px solid #ffffff29;border-radius:10px;outline:none;width:100%;min-height:140px;padding:12px 14px}.ContactCard-module__-wkb8W__submit{cursor:pointer;color:#fff;background:linear-gradient(45deg,#0078ff,#00c6ff);border:none;border-radius:10px;padding:12px 16px;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s}.ContactCard-module__-wkb8W__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #0078ff66}.ContactCard-module__-wkb8W__submit:disabled{opacity:.6;cursor:not-allowed}.ContactCard-module__-wkb8W__success{color:#74ffb0;margin-top:12px}.ContactCard-module__-wkb8W__error{color:#ff6b6b;margin-top:12px}.ContactCard-module__-wkb8W__back{color:#9fc6ff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:10px;width:100%;margin-top:16px;padding:10px 14px;transition:background .2s,transform .2s}.ContactCard-module__-wkb8W__back:hover{background:#ffffff14;transform:translateY(-1px)}@media (min-width:769px){.ContactCard-module__-wkb8W__card{border-radius:18px;padding:40px 32px}.ContactCard-module__-wkb8W__title{font-size:2.4rem}.ContactCard-module__-wkb8W__subtitle{font-size:1.05rem}}@media (min-width:1024px){.ContactCard-module__-wkb8W__card{border-radius:20px;max-width:680px;padding:48px 40px}.ContactCard-module__-wkb8W__title{font-size:2.8rem}}
.Contact-module__Bs3a0a__bg{z-index:0;background:radial-gradient(circle,#0b0f1a 10%,#090d1a 40%,#05080f 85%);position:fixed;inset:0;overflow:hidden}.Contact-module__Bs3a0a__vignette{pointer-events:none;background:radial-gradient(60% 60%,#0000 55%,#00000059 100%);position:absolute;inset:-8%}
.clientApp-module__G0XpLa__container{width:100vw;height:100vh;position:relative;overflow:hidden}.clientApp-module__G0XpLa__section{width:100%;height:100%;transition:opacity .5s ease-in-out,transform .5s ease-in-out;position:absolute}.clientApp-module__G0XpLa__active{opacity:1;pointer-events:auto;transform:scale(1)}.clientApp-module__G0XpLa__hidden{opacity:0;pointer-events:none;transform:scale(.95)}
