body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000!important;color:#fff;font-family:Poppins,Sans-serif;margin:0}html{scroll-behavior:smooth}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:900px){.navbar.blur-background{background:rgba(24,24,27,.279);border-bottom:none!important;box-shadow:none!important}.about-section,.hero-bg{border-top:none!important;margin-top:0!important;padding-top:4.5rem!important}}@media (max-width:600px){.about-section,.hero-bg{padding-top:3.2rem!important}}.hero-bg{align-items:center;background-image:url(/static/media/section-2.8f8c001959f76f1e74ac.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.hero-band,.hero-titles{align-items:center;display:flex;flex-direction:column}.hero-titles{text-align:center}.hero-desc,.hero-name{max-width:1020px;text-align:center;width:100%}.hero-content{align-items:center;display:flex;flex-direction:column;gap:2.5rem;justify-content:center;min-height:100vh;position:relative;width:100%;z-index:1}.hero-name{color:#fff;font-size:5.5rem;font-weight:900;letter-spacing:2px;line-height:1.1;margin-bottom:1.2rem;margin-top:0}.hero-desc{color:#fff;font-size:1.1rem;font-weight:600;letter-spacing:1.3px;margin:0}.scroll-indicator{align-items:flex-end;display:flex;height:64px;justify-content:center;margin:2.8rem auto 0;width:42px}@media (max-width:600px){.hero-band{border-radius:1.1rem;max-width:98vw;padding:1.2rem .7rem}.hero-name{font-size:2.1rem}.hero-desc{font-size:1rem}}.navbar{background:#0000;color:#fff;left:0;position:fixed;top:0;width:100%;z-index:100}.navbar.blur-background{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(5px);background-color:rgba(24,24,27,.279);box-shadow:0 4px 10px #0000001a}.navbar-content{justify-content:space-between;margin:0 auto;max-width:100em;padding:1em 2rem;position:relative}.logo,.navbar-content{align-items:center;display:flex}.logo{gap:.7rem;text-decoration:none}.logo-img{background:#0000;border-radius:10%;height:32px;object-fit:contain;transition:filter .2s;width:32px}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#d3d3d3 50%,#fff 0);-webkit-background-clip:text;background-position:100% 0;background-size:200% 100%;color:#fff;cursor:pointer;font-family:Fira Mono,Roboto Mono,monospace;font-size:1.5rem;font-weight:700;letter-spacing:1px;position:relative;transition:background-position .5s cubic-bezier(.77,0,.18,1)}.logo:focus .logo-text,.logo:hover .logo-text{background-position:0 0}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a,.nav-links li{position:relative}.nav-links a{color:#fff;font-size:1.05rem;font-weight:500;letter-spacing:.5px;padding:.25rem 0;text-decoration:none;transition:color .2s}.nav-links a:after{background:#10b981;bottom:-4px;content:"";display:block;height:2px;left:0;position:absolute;transition:width .2s;width:0}.nav-links a:focus,.nav-links a:hover{color:#10b981}.nav-links a:focus:after,.nav-links a:hover:after{width:100%}.nav-hamburger{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:2rem;z-index:201}.nav-hamburger,.nav-mobile-menu,.nav-overlay{display:none}@media (max-width:900px){.navbar-content{padding:1rem 1.2rem}.nav-links{gap:1.2rem}}@media (max-width:700px){.nav-links{display:none}.nav-hamburger{background:none;border:none;color:#fff;cursor:pointer;display:block;font-size:2rem;margin-left:.5em;z-index:201}.nav-mobile-menu{align-items:start;background:#0e1611f7;box-shadow:-4px 0 24px #10b98121;display:flex;flex-direction:column;height:100vh;max-width:340px;padding:4.9rem 2.1rem 2rem 2.2rem;position:fixed;right:-100vw;top:0;transition:right .33s cubic-bezier(.5,.2,.5,1);width:82vw;z-index:200}.nav-mobile-menu.open{right:0;transition:right .35s cubic-bezier(.45,.2,.45,1)}.nav-mobile-menu ul{display:flex;flex-direction:column;gap:2.1rem;list-style:none;margin:0;padding:0;width:100%}.nav-mobile-menu a{color:#fff;display:block;font-size:1.37rem;font-weight:600;letter-spacing:.03em;padding:.05em .1em;text-decoration:none;transition:color .17s;width:100%}.nav-mobile-menu li{width:100%}.nav-mobile-menu a:active,.nav-mobile-menu a:hover{color:#10b981}.nav-overlay{background:#0a0a0c6e;bottom:0;cursor:pointer;display:block;left:0;position:fixed;right:0;top:0;transition:background .19s;z-index:101}}.about-section{background:#000;padding:15rem 10rem}.about-container{align-items:center;display:flex;flex-wrap:wrap;gap:4rem;justify-content:space-between;margin:0 auto;max-width:1100px}.about-content{display:flex;flex:1 1 350px;flex-direction:column;gap:1.7rem;max-width:640px;min-width:320px}.about-code{color:#10b981;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;opacity:.85}.about-title{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:1px;line-height:1.2}.about-highlight{color:#10b981;font-size:2.8rem}.about-desc{color:#dcdcdc;font-size:1.14rem;line-height:1.8;margin-bottom:.5rem;max-width:520px}.about-actions{flex-wrap:wrap;gap:1.6rem;margin-top:1.8rem}.about-actions,.about-btn{align-items:center;display:flex}.about-btn{background:#10b981;border:none;border-radius:8px;box-shadow:0 4px 20px -4px #fff3;color:#fff;font-size:1.06rem;font-weight:600;gap:8px;padding:.82rem 1.5rem;text-decoration:none;transition:background .23s,box-shadow .23s}.about-btn:hover{background:#059669;box-shadow:0 8px 24px -6px #10b98144}.about-socials{display:flex;gap:.7rem}.about-social-link{border-radius:50%;color:#fff;display:inline-flex;font-size:1.3rem;padding:.65rem;transition:color .2s,background .2s}.about-social-link:hover{background:#e0f2fe;color:#000}.about-img-wrapper{align-items:center;display:flex;flex:1 1 280px;justify-content:center;margin:0 auto;max-width:360px;min-width:160px;position:relative;width:260px}.about-img-bg{background:#ffffff22;border-radius:18px;inset:0;position:absolute;transition:transform .35s;z-index:1}.about-img-wrapper:hover .about-img-bg{transform:translate(12px,12px)}.about-img{border-radius:22px;box-shadow:0 18px 28px -10px #fff3;max-width:380px;min-width:180px;position:relative;transition:transform .35s;width:100%;z-index:2}.about-img-wrapper:hover .about-img{transform:translate(-12px,-12px)}@media (max-width:900px){.about-section{padding:5.5rem 1.2rem 4.4rem}.about-container{align-items:center;flex-direction:column;gap:2.65rem}.about-img-wrapper{margin:0 auto;max-width:260px;width:80vw}.about-content{align-items:center;max-width:98vw;min-width:0;min-width:auto;padding:0;text-align:center}.about-actions{align-items:center;flex-direction:column;gap:1.2rem;justify-content:center;margin-top:1.3rem;width:100%}.about-btn{font-size:1.02rem;justify-content:center;max-width:400px;padding:.72rem 0;width:90vw}}@media (max-width:600px){.about-section{padding:3.5rem .3rem 1.9rem}.about-title{font-size:1.28rem;line-height:1.13}.about-highlight{font-size:1.5rem}.about-desc{font-size:.97rem;line-height:1.54;max-width:98vw}.about-code{font-size:.82rem}.about-img-wrapper{max-width:170px;min-width:100px;width:80vw}.about-content{gap:1.05rem;max-width:100vw}.about-actions{gap:.8rem;margin-top:.7rem}.about-social-link{font-size:1.1rem;padding:.45rem}.about-btn{font-size:.97rem;max-width:260px;padding:.63rem 0;width:98vw}}.skills-section{background:#000;padding:12rem 10rem 7rem}.skills-container{align-items:flex-start;display:flex;flex-wrap:wrap;gap:4rem;justify-content:space-between;margin:0 auto;max-width:1100px}.skills-content{display:flex;flex:1 1 340px;flex-direction:column;gap:1.7rem;max-width:430px;min-width:300px}.skills-code{color:#10b981;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;opacity:.85}.skills-title{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:1px;line-height:1.2}.skills-highlight{color:#10b981;font-size:2.8rem}.skills-desc{color:#dcdcdc;font-size:1.11rem;line-height:1.65;margin-bottom:.5rem;max-width:430px}.skills-list-wrap{display:flex;flex:2 1 380px;flex-direction:column;gap:2.1rem;min-width:330px}.skills-group{margin-bottom:.12rem}.skills-group-name{color:#10b981;display:inline-block;font-family:Fira Mono,Roboto Mono,monospace;font-size:1.03rem;font-weight:600;letter-spacing:.06em;margin-bottom:.45em;opacity:.9}.skills-badges{display:flex;flex-wrap:wrap;gap:.75em;margin-top:.55em}.skills-badge{background:#131a14;border:1.5px solid #10b98155;border-radius:1.4em;color:#dcdcdc;font-family:Fira Mono,monospace;font-size:1.01rem;font-weight:500;letter-spacing:.01em;padding:.45em 1.25em;transition:background .18s,color .18s,border .13s}.skills-badge:hover{background:#10b981;border-color:#10b981;color:#052e1b}@media (max-width:1000px){.skills-section{padding:7rem 2.2rem 3rem}.skills-container{align-items:stretch;flex-direction:column;gap:3rem}.skills-content{max-width:100vw}}@media (max-width:600px){.skills-title{font-size:2rem}.skills-highlight{font-size:2.1rem}.skills-container{gap:2.2rem}.skills-badges{gap:.4em}}.custom-cursor{background:#23b7d126;border:2px solid #fff;border-radius:50%;height:24px;mix-blend-mode:difference;pointer-events:none;position:fixed;transform:translate(-50%,-50%);transition:background .2s,border .2s;width:24px;z-index:9999}.projects-section{background:#000;padding:11rem 10rem 7rem}.projects-container{display:flex;flex-direction:column;gap:2.2rem;margin:0 auto;max-width:1100px}.projects-code{color:#10b981;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;opacity:.85}.projects-title{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:1px;line-height:1.2;margin-bottom:3.2rem}.projects-highlight{color:#10b981;font-size:2.8rem}.projects-list{display:flex;flex-direction:column;gap:3.2rem}.project-group{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2.4rem}.project-category{color:#10b981;flex:0 0 120px;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;letter-spacing:.05em;margin-top:9px;min-width:120px;opacity:.85;text-align:left}.project-content{display:flex;flex:1 1 252px;flex-direction:column;gap:.3rem}.project-name{color:#fff;font-size:1.45rem;font-weight:700;margin-bottom:.22rem}.project-desc{color:#dcdcdc;font-size:1.11rem;font-weight:400;line-height:1.6;margin-bottom:.7rem}.project-stack{display:flex;flex-wrap:wrap;gap:.7em;margin-bottom:.65rem}.project-badge{background:#131a14;border:1.5px solid #10b98155;border-radius:1.4em;color:#dcdcdc;font-family:Fira Mono,monospace;font-size:1.01rem;font-weight:500;letter-spacing:.01em;padding:.37em 1.19em;transition:background .18s,color .18s,border .13s}.project-badge:hover{background:#10b981;border-color:#10b981;color:#052e1b}.project-links{display:flex;gap:1.2rem;margin-top:.12em}.project-link{background:#0000;border-bottom:2px solid #10b981;border-radius:5px;color:#10b981;font-size:1.07rem;font-weight:600;padding-bottom:2px;text-decoration:none;transition:color .17s,border .18s,background .15s}.project-link:hover{background:#10b981;border-bottom:2px solid #fff;color:#052e1b}@media (max-width:1000px){.projects-section{padding:7rem 2rem 3rem}.projects-title{font-size:2rem}.projects-list{gap:2.2rem}.project-group{flex-direction:column;gap:1.1rem}.project-category{margin-bottom:3px;min-width:0}}@media (max-width:600px){.projects-section{padding:4rem 1rem 2rem}.projects-title{font-size:1.3rem;margin-bottom:1.6rem}.project-name{font-size:1.08rem}}.experience-section{background:#000;padding:10rem 10rem 8rem}.experience-container{display:flex;flex-direction:column;gap:2.1rem;margin:0 auto;max-width:1100px}.experience-code{color:#10b981;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;opacity:.85}.experience-title{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:1px;line-height:1.2;margin-bottom:3rem}.experience-highlight{color:#10b981;font-size:2.8rem}.experience-list{gap:2.6rem}.experience-list,.experience-row{display:flex;flex-direction:column}.experience-row{background:#0000;border-left:3px solid #10b98130;padding-left:2.5rem;position:relative}.experience-header{align-items:flex-start;display:flex;gap:1.2rem;margin-bottom:.17rem}.experience-logo{background:#131a14;border:1.5px solid #10b98122;border-radius:12px;box-shadow:0 2px 12px #10b98116;height:48px;margin-right:.7rem;object-fit:contain;width:48px}.experience-role{color:#fff;display:block;font-family:Poppins,sans-serif;font-size:1.2rem;font-weight:600;letter-spacing:.02em;margin-bottom:4px}.experience-company{color:#10b981;font-family:Fira Mono,monospace;font-size:1.11rem;font-weight:500;margin-left:0}.experience-period{align-self:flex-start;color:#93e2c8;font-family:Fira Mono,monospace;font-size:1.01rem;margin-left:auto;opacity:.75}.experience-meta{color:#d2d2d2;font-family:Fira Mono,monospace;font-size:.98rem;margin-bottom:.18rem;opacity:.78}.experience-summary{color:#dcdcdc;font-size:1.08rem;line-height:1.62;margin:.18em 0 .8em;max-width:620px}.experience-techs{display:flex;flex-wrap:wrap;gap:.51em;margin-bottom:.2em}.experience-tech-badge{background:#111a14;border:1.2px solid #10b98141;border-radius:1.2em;color:#10b981;font-family:Fira Mono,monospace;font-size:.95rem;font-weight:500;letter-spacing:.01em;padding:.29em 1.1em;transition:background .18s,border .18s,color .18s}.experience-tech-badge:hover{background:#10b981;border-color:#10b981;color:#002212}@media (max-width:1000px){.experience-section{padding:6rem 2rem 3rem}.experience-title{font-size:2rem}.experience-header{font-size:1rem}.experience-row{padding-left:1rem}.experience-logo{height:40px;width:40px}}@media (max-width:600px){.experience-section{padding:3rem .6rem 2rem}.experience-title{font-size:1.16rem}.experience-row{padding-left:.7rem}.experience-header{gap:.5rem}.experience-logo{height:36px;width:36px}}.contact-section{align-items:center;background:#000;display:flex;min-height:60vh;padding:9rem 10rem 7rem}.contact-container{gap:4rem;margin:0 auto;max-width:1150px;width:100%}.contact-container,.contact-side{display:flex;justify-content:center}.contact-side{flex:1 1 360px;flex-direction:column}.contact-side-left{display:flex;flex-direction:column;gap:2.2rem;justify-content:center;max-width:440px}.contact-code{color:#10b981;font-family:Fira Mono,Roboto Mono,monospace;font-size:1rem;opacity:.85}.contact-title{color:#fff;font-size:2.35rem;font-weight:800;letter-spacing:1px;line-height:1.1;margin-bottom:1.2rem}.contact-highlight{color:#10b981;font-size:2.3rem}.contact-desc{color:#dcdcdc;font-size:1.13rem;line-height:1.5;margin:1.7rem 0 0;text-align:left}.contact-email{align-items:center;background:#10181d;border:1.5px solid #10b98155;border-radius:9px;box-shadow:0 2px 12px #10b98114;color:#10b981;display:flex;font-family:Fira Mono,monospace;font-size:1.06rem;gap:.7em;justify-content:flex-start;margin-top:1.1em;padding:.37em .95em;width:-webkit-fit-content;width:fit-content}.contact-email a{color:inherit;font-weight:500;text-decoration:none;word-break:break-all}.contact-email a:hover{text-decoration:underline}.contact-icon{color:#10b981;font-size:1.15em}.contact-form{align-items:stretch;background:#131a14;border:1.3px solid #10b9811a;border-radius:18px;box-shadow:0 12px 44px -12px #10b98125;display:flex;flex-direction:column;gap:1.15rem;max-width:410px;min-width:300px;padding:2.8rem 2.2rem 2.2rem}.contact-form-title{color:#fff;font-family:Poppins,sans-serif;font-size:1.17rem;font-weight:700;margin-bottom:.7rem}.form-input{background:#161d1a;border:1.5px solid #10b98130;border-radius:9px;color:#dcdcdc;font-family:Fira Mono,monospace;font-size:1.08rem;margin-bottom:.1em;outline:none;padding:.85em 1.1em;resize:none;transition:border .19s,background .19s,color .19s}.form-input:focus{background:#10181d;border:1.5px solid #10b981;color:#fff}.form-btn{background:linear-gradient(90deg,#10b981 80%,#13a97b);border:none;border-radius:8px;box-shadow:0 3px 12px #10b98133;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:1.08rem;font-weight:700;letter-spacing:.03em;margin-top:.6em;padding:.85em 0;transition:background .18s,box-shadow .18s}.form-btn:focus,.form-btn:hover{background:#059669;box-shadow:0 8px 32px -10px #10b98144}.form-success{color:#10b981}.form-error,.form-success{font-family:Fira Mono,monospace;font-size:1.01rem;font-weight:600;margin-top:.9em}.form-error{color:#f55}@media (max-width:900px){.contact-section{padding:3rem .5rem 2rem}.contact-container{align-items:center;flex-direction:column;gap:2.2rem;max-width:95vw;width:100%}.contact-side,.contact-side-left{align-items:center;max-width:100vw;padding:0;text-align:center;width:100vw}.contact-form{align-items:stretch;border-radius:14px;box-sizing:border-box;margin:0 auto;max-width:390px;min-width:0;padding:1.4rem .7rem;width:97vw}.form-btn,.form-input{border-radius:7px;box-sizing:border-box;font-size:1rem;margin-left:0;margin-right:0;min-width:0;width:100%}.contact-form-title{font-size:1.08rem}.contact-desc{font-size:1.01rem;margin:1.2rem 0 .5rem;padding:0 1.5vw}.contact-title{font-size:1.23rem;margin-bottom:.6rem}.contact-email{font-size:.99rem;justify-content:center;margin-top:.7em;padding:.45em .9em;width:100%}.contact-email a{margin-left:.3em;word-break:break-all}}@media (max-width:500px){.contact-section{padding:1.2rem 0 1.5rem}.contact-form{max-width:98vw;padding:1.1rem .3rem}.contact-desc{font-size:.94rem;padding:0}.contact-title{font-size:1.02rem}}.footer-section{background:#070b0d;border-top:1.5px solid #10b98122;color:#dcdcdc;padding:2.3rem 0 1.4rem}.footer-container{align-items:center;display:flex;flex-direction:column;gap:1.05rem;margin:0 auto;max-width:1020px;padding:0 1.5rem}.footer-socials{display:flex;gap:1.1rem;margin-bottom:.5rem}.footer-link{align-items:center;background:#15221a;border-radius:50%;box-shadow:0 3px 12px #10b98108;color:#10b981;display:inline-flex;font-size:1.33rem;justify-content:center;padding:.57rem;transition:background .17s,color .2s,box-shadow .18s}.footer-link:focus,.footer-link:hover{background:#10b981;box-shadow:0 8px 24px -7px #10b98122;color:#fff}.footer-credit{align-items:center;color:#dcdcdc;display:flex;flex-wrap:wrap;font-family:Fira Mono,Roboto Mono,monospace;font-size:.98rem;gap:.2em;justify-content:center;opacity:.77}.footer-dot{color:#10b981;font-size:1.13em;font-weight:700;margin:0 .32em}.footer-name{color:#10b981;font-weight:600;letter-spacing:.02em}.footer-built{font-size:.98em;letter-spacing:.02em}.footer-heart{color:#e53865;font-family:inherit;font-size:1.11em}@media (max-width:600px){.footer-section{padding:1.2rem 0 .8rem}.footer-credit{font-size:.91rem;gap:.19em}.footer-link{font-size:1.13rem;padding:.41rem}}
/*# sourceMappingURL=main.a2540e9d.css.map*/