*{box-sizing:border-box;--dark-grey:#1c1c1cee;--dark-translucent-grey:#1c1c1ccc;--mid-translucent-grey:#3c3c3b99;--text-color:#ececec;--error:#d23;--cyan:#3cd2de;--dark-cyan:#5db7dd;--dark-lilac:#6fa4dc;--lilac:#888bdb;--highlight-gradient:linear-gradient(45deg,var(--cyan)20%,var(--dark-cyan)40%,var(--dark-lilac)60%,var(--lilac)75%)}html{font-size:12px}body{color:var(--text-color);background-image:linear-gradient(#3432c7,#101725);background-attachment:fixed;flex-direction:column;justify-content:center;min-height:100vh;margin:0;padding:6rem 1.25rem 0;line-height:1.1;display:flex}h1{margin-top:0;font-size:3rem;font-weight:700}h2{margin-top:0;font-size:2.5rem}h3{font-size:1.5rem}h4{margin:0;font-size:1.25rem}section{background-color:var(--dark-translucent-grey);border-radius:1rem;width:min(100%,1500px);margin:1.25rem auto;padding:1.25rem}section p:last-of-type,section ul:last-of-type{margin-bottom:0}.button{text-align:center;width:-moz-fit-content;width:fit-content;text-decoration:none;display:block}button,.button{color:var(--text-color);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:.25rem;padding:.5rem 1rem;font-size:1.2rem;transition:transform .5s;position:relative;overflow:hidden}button:before,.button:before{content:"";aspect-ratio:1;transform-origin:50%;background:var(--highlight-gradient);z-index:-1;width:110%;animation:5s ease-in-out infinite translate-rotate;position:absolute;top:50%;left:50%}button:after,.button:after{content:"";transform-origin:0;z-index:-1;background-color:#b2637d;width:100%;height:.25rem;transition:transform .5s;position:absolute;bottom:0;left:0;transform:translate(-100%)rotate(-45deg)}button:hover,.button:hover{transform:scale(1.1)}button:hover:after,.button:hover:after{transform:translate(100%)rotate(-45deg)}.row{flex-wrap:wrap;justify-content:space-around;gap:2rem;display:flex}.flex{display:flex}.flex-column,.flex-column-to-row{flex-direction:column}.flex-row{flex-direction:row}.flex-center{justify-content:center;align-items:center}.flex-between-center{justify-content:space-between;align-items:center}.position-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes translate-rotate{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@media (min-width:320px){html{font-size:14px}}@media (min-width:900px){html{font-size:16px}body{padding:7rem 2rem 0}section{margin:2rem auto;padding:2rem}.flex-column-to-row{flex-direction:row}}.profile-xtTfe9{z-index:2;border-radius:0 0 50% 50%;width:100%;max-width:600px;position:relative;overflow:hidden}.profile-xtTfe9:before{background:var(--highlight-gradient);content:"";aspect-ratio:1;border-radius:50%;width:95%;animation:15s ease-in-out infinite rotate-gradient-background-kZT339;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.profile-xtTfe9 img{z-index:0;max-width:100%;position:relative;bottom:-1rem}@keyframes rotate-gradient-background-kZT339{0%{transform:translate(-50%)rotate(0)}to{transform:translate(-50%)rotate(360deg)}}@media (min-width:900px){.profile-xtTfe9 img{max-width:none}}.about-kDGnFC,.about-profile-uUvUHU{align-items:center;gap:2rem;line-height:1.25rem}@media (min-width:900px){.about-kDGnFC{align-items:flex-start}.about-profile-uUvUHU{margin-top:-21%}}.background-nU32Xx{z-index:-1;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-pattern-BsRlXw,.horizontal-pattern-s0BzZY{animation-name:scroll-pattern-le7eSP;animation-timing-function:linear;animation-iteration-count:infinite}.vertical-pattern-BsRlXw{animation-duration:10s}.vertical-opaue-pattern-nDvMMR{animation-duration:15s}.vertical-group-JOvKoJ{fill:#b2627d}.horizontal-pattern-s0BzZY{animation-duration:40s}.horizontal-opaque-pattern-SYsdB6{animation-duration:60s}.horizontal-secondary-pattern-FBG6pn{animation-duration:50s}.horizontal-group-sccwXI,.horizontal-group-sccwXI rect{animation-duration:11.5s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.horizontal-group-sccwXI{fill:#3cd3de;animation-name:h-color-change-tyKtOz}.horizontal-group-sccwXI rect{transform-origin:50%}.horizontal-group-sccwXI rect:nth-of-type(odd){animation-name:h-scale-up-UcRzqs}.horizontal-group-sccwXI rect:nth-of-type(2n){animation-name:h-scale-down-UfOwMj}.horizontal-opaque-pattern-SYsdB6 .horizontal-group-sccwXI,.horizontal-opaque-pattern-SYsdB6 .horizontal-group-sccwXI rect{animation-delay:5.75s}.horizontal-secondary-pattern-FBG6pn .horizontal-group-sccwXI,.horizontal-secondary-pattern-FBG6pn .horizontal-group-sccwXI rect{animation-delay:2.87s}@keyframes h-color-change-tyKtOz{0%,48.5%,51%,to{fill:#3cd3de}50%{fill:#b2627d}}@keyframes h-scale-up-UcRzqs{0%,48.5%,51%,to{transform:scaleX(1)}50%{transform:scaleX(1.2)}}@keyframes h-scale-down-UfOwMj{0%,48.5%,51%,to{transform:scaleX(1)}50%{transform:scaleX(.8)}}@keyframes scroll-pattern-le7eSP{0%{transform:translate(0)}to{transform:translateY(-800px)}}.card-hkDMO2{background-color:var(--mid-translucent-grey);color:var(--text-color);box-shadow:.1rem .1rem .5rem .2rem var(--cyan),.4rem .4rem .5rem .25rem var(--lilac);border-radius:.5rem;margin:2rem 0;padding:1.25rem}.card-hkDMO2 h3{margin-top:0}@media (min-width:900px){.card-hkDMO2{padding:2rem}}.certificate-card-Jt9zph{align-items:center;gap:2rem;width:100%;margin:0}.certificate-images-D58v7p{background-color:var(--text-color);border-radius:.25rem;justify-content:flex-start;align-items:center;gap:.25rem;width:9.5rem;height:-moz-fit-content;height:fit-content;overflow:hidden}.img-thumbnail-AlP4qV{height:5.5rem}.img-platform-container-u26PZt{height:1.5rem;padding:0 .5rem}.img-platform-ImBWd0{max-width:100%;max-height:1.5rem}.certificate-content-uTe1kb{width:100%}.certificate-content-uTe1kb>p,.certificate-content-uTe1kb>p:last-of-type{margin:1rem 0 .5rem}p.certificate-subtitle-pqyg9o{margin-top:.5rem;font-size:.9rem}@media (min-width:600px){.certificate-card-Jt9zph{flex-direction:row}.certificate-images-D58v7p{width:12rem}}@media (min-width:900px){.certificate-card-Jt9zph{width:calc(50% - 1rem)}.certificate-images-D58v7p{width:14rem}}.certificate-modal-tj2ozg{aspect-ratio:2;width:30rem;max-width:100%;margin:1.5rem 0;transition:all .8s;position:relative;overflow:hidden}.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm{width:100%}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX{width:100%;height:auto;aspect-ratio:unset}.certificate-modal-header-OXjw5d,.certificate-modal-header-title-nIFvjC,.modal-button-container-MxfdzN,.modal-button-1IjUVV>span,.modal-button-close-aTIGo8:before,.modal-button-close-aTIGo8:after,.certificate-modal-tj2ozg .certificate-cards-UCA1b2{position:absolute}.certificate-modal-header-OXjw5d{z-index:1;text-align:center;top:0;bottom:0;left:0;right:0}.certificate-modal-header-title-nIFvjC,.modal-button-container-MxfdzN{transition:all .8s;top:50%}.certificate-modal-header-title-nIFvjC{width:calc(100% - 4rem);left:50%;transform:translate(-50%,-120%)}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-OXjw5d,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .certificate-modal-header-OXjw5d{text-align:left}.modal-button-container-MxfdzN{right:50%;transform:translate(50%,30%)}.modal-button-1IjUVV{width:10rem;height:2em;transition:all .8s}.modal-button-1IjUVV>span{opacity:1}.modal-button-close-aTIGo8:before,.modal-button-close-aTIGo8:after{content:"";background-color:var(--text-color);opacity:0;border-radius:.25rem;width:1.5rem;height:.25rem;transition:all .8s;top:50%;left:50%}.modal-button-close-aTIGo8:before{transform:translate(-50%,-50%)rotate(45deg)}.modal-button-close-aTIGo8:after{transform:translate(-50%,-50%)rotate(-45deg)}.modal-button-text-GQm8_A{width:100%;transition:all .8s;top:50%;left:50%;transform:translate(-50%,-50%)}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-1IjUVV,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-1IjUVV{width:2rem;height:2rem}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-1IjUVV:before,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-1IjUVV:before,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-1IjUVV:after,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-1IjUVV:after{width:135%}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-1IjUVV .modal-button-text-GQm8_A,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-1IjUVV .modal-button-text-GQm8_A{opacity:0}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-close-aTIGo8:before,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-close-aTIGo8:after,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-close-aTIGo8:before,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-close-aTIGo8:after{opacity:1}.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .certificate-modal-header-title-nIFvjC,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-container-MxfdzN{top:2rem;transform:translate(0)}.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .certificate-modal-header-title-nIFvjC{width:calc(100% - 6rem);left:2rem}.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-container-MxfdzN{right:2rem}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-OXjw5d,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-title-nIFvjC,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-container-MxfdzN{position:relative}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-OXjw5d{flex-direction:row;justify-content:space-between;align-items:baseline;width:100%;display:flex;position:relative}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-title-nIFvjC,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-container-MxfdzN{top:unset;left:unset;right:unset;transform:translate(0)}.certificate-modal-tj2ozg .certificate-cards-UCA1b2{opacity:0;flex-wrap:wrap;justify-content:center;gap:2rem;transition:all .4s}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-cards-UCA1b2{opacity:1;position:relative}.certificate-modal-tj2ozg.certificate-modal-close-start-LM61RJ .certificate-cards-UCA1b2{opacity:0}@media (min-width:600px){.certificate-modal-header-OXjw5d,.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .certificate-modal-header-OXjw5d,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .certificate-modal-header-OXjw5d{text-align:unset}.certificate-modal-header-title-nIFvjC,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .certificate-modal-header-title-nIFvjC{width:auto}.certificate-modal-tj2ozg.certificate-modal-open-HwfAoX .modal-button-1IjUVV,.certificate-modal-tj2ozg.certificate-modal-transitioning-L7Zdcm .modal-button-1IjUVV{top:-.75rem}}@media (min-width:900px){.certificate-modal-tj2ozg{margin:4rem 0}}.university-card-FgYsDi{max-width:-moz-fit-content;max-width:fit-content;margin:0 auto 1.5rem}.university-content-D9bnaS{align-items:center;gap:2rem}@media (min-width:900px){.university-card-FgYsDi{margin:0 auto 4rem}}.courses-F0yj46{flex-wrap:wrap;align-items:center}@media (min-width:900px){.courses-F0yj46{justify-content:space-around}}.input-label-IQBNkS{margin-bottom:.5rem;font-size:1.2rem}.input-field-RVD0O7{background-color:var(--text-color);width:100%;color:var(--dark-grey);border:.125rem solid var(--dark-grey);border-radius:.25rem;min-height:1rem;padding:.5rem}.input-field-error-rBgpLA{border-color:var(--error)}.input-error-vI2on8{color:var(--error);margin:0;font-size:.8rem}.contact-form-vmbId6,.contact-form-success-dDISV1{width:100%;max-width:40rem;margin:0 auto;position:relative}.contact-inputs-cVYwy2,.contact-full-width-juAZbZ{gap:1rem}.contact-inputs-cVYwy2{margin-bottom:1rem}.contact-form-submitting-t2psw2,.contact-form-submitting-t2psw2:before,.contact-form-submitting-t2psw2:after,.contact-form-error-zXAMZ5 a:before{position:absolute}.contact-form-submitting-t2psw2{background:var(--mid-translucent-grey);z-index:2;border-radius:.5rem;padding:1rem;top:-1rem;bottom:-1rem;left:-1rem;right:-1rem}.contact-form-submitting-t2psw2:before,.contact-form-submitting-t2psw2:after{content:"";aspect-ratio:1;border-radius:50%;top:50%;left:50%}.contact-form-submitting-t2psw2:before{border-top:.25rem solid var(--cyan);border-right:.25rem solid #0000;width:10rem;animation:1s linear infinite translate-rotate-BP8CtI}.contact-form-submitting-t2psw2:after{border-left:.25rem solid var(--lilac);border-bottom:.25rem solid #0000;width:9rem;animation:1.5s linear infinite reverse translate-rotate-BP8CtI}.contact-form-success-dDISV1{text-align:center;min-height:25rem}.contact-form-error-zXAMZ5{line-height:1.25rem}.contact-form-error-zXAMZ5 a{background:var(--highlight-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;position:relative}.contact-form-error-zXAMZ5 a:before{content:"";background:var(--highlight-gradient);border-radius:.25rem;width:0;height:.25rem;transition:width .3s;bottom:-.25rem;left:50%;transform:translate(-50%)}.contact-form-error-zXAMZ5 a:hover:before{width:100%}@media (min-width:900px){.contact-inputs-cVYwy2{flex-wrap:wrap;justify-content:space-between}.contact-inputs-cVYwy2 div{width:calc(50% - .5rem)}}.chip-elIy3z{background:var(--highlight-gradient);border-radius:1rem;padding:.25rem 1rem;font-size:.8rem}.experience-header-p4BFMw{justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.experience-list-K2HKQC{padding-inline-start:1rem;line-height:1.25rem}.experience-list-K2HKQC li{margin-bottom:1rem}.experience-list-K2HKQC li:last-of-type{margin-bottom:0}.experience-list-K2HKQC strong{font-weight:400}.strong-tech-CSDYuc{color:var(--cyan)}.strong-figure-bPnQIn{color:var(--lilac)}@media (min-width:900px){.experience-header-p4BFMw{align-items:center}.experience-header-p4BFMw h3{margin-bottom:0}}.experience-list-items-PxTk1P,.experience-list-item-bullet-zVwHfD{position:relative}.experience-list-item-sGTSuz{gap:2rem}.experience-list-item-bullet-zVwHfD{width:2rem;height:100%}.experience-list-item-bullet-zVwHfD:before,.experience-list-item-bullet-zVwHfD:after{content:"";position:absolute;left:50%;transform:translate(-50%)}.experience-list-item-bullet-zVwHfD:before{aspect-ratio:1;background:red;border-radius:50%;width:2rem;top:4rem}.experience-list-item-sGTSuz:nth-of-type(odd) .experience-list-item-bullet-zVwHfD:before{background-color:var(--cyan)}.experience-list-item-sGTSuz:nth-of-type(2n) .experience-list-item-bullet-zVwHfD:before{background-color:var(--lilac)}.experience-list-item-bullet-zVwHfD:after{background:var(--highlight-gradient);width:1rem;height:100%;top:5.75rem}.experience-list-item-sGTSuz:nth-of-type(odd) .experience-list-item-bullet-zVwHfD:after{transform:translate(-50%)rotate(180deg)}.experience-list-item-sGTSuz:last-of-type .experience-list-item-bullet-zVwHfD:after{display:none}.navbar-KhfkNT{background-color:var(--dark-translucent-grey);z-index:10;justify-content:space-between;gap:2rem;height:6rem;padding:.5rem 1.25rem;transition:all .4s .4s;position:fixed;top:0;bottom:auto;left:0;right:0;overflow:hidden}.navbar-KhfkNT.open-HcD1f5{background-color:var(--dark-grey);height:100vh;transition-delay:0s}.nav-links-DSosqh{opacity:0;gap:2rem;width:100%;height:calc(100vh - 12.5rem);transition:opacity .4s;position:absolute;top:7rem;left:0}.navbar-KhfkNT.open-HcD1f5 .nav-links-DSosqh{opacity:1;transition-delay:.4s}.nav-link-ul-TqqFb6{text-align:center;justify-content:space-around;gap:2rem;padding:0;list-style:none;display:flex}.nav-link-ul-TqqFb6:first-of-type:not(:last-of-type){flex-direction:column}@media (min-width:900px){.navbar-KhfkNT{height:7.25rem;padding:1rem 2rem}.navbar-KhfkNT.open-HcD1f5{background-color:var(--dark-translucent-grey);height:auto}.nav-links-DSosqh{top:unset;left:unset;opacity:1;gap:1.25rem;height:auto;position:relative}.nav-link-ul-TqqFb6:first-of-type:not(:last-of-type){flex-direction:row}.nav-link-ul-TqqFb6:first-of-type{width:80%}.nav-link-ul-TqqFb6:last-of-type{width:min(11rem,20%)}.nav-link-ul-TqqFb6{gap:1rem}}@media (min-width:1180px){.nav-links-DSosqh,.nav-link-ul-TqqFb6{gap:2rem}}.social-links-_Or2WX li:first-of-type .icon-huPD1D{clip-path:url(#clip-path-linkedin)}.social-links-_Or2WX li:nth-of-type(2) .icon-huPD1D{clip-path:url(#clip-path-github)}.social-links-_Or2WX li:nth-of-type(3) .icon-huPD1D{clip-path:url(#clip-path-file-download);width:1.6rem}.social-link-RxqNL_{display:block;position:relative}.icon-huPD1D{width:2rem;height:2rem;font-size:2rem;text-decoration:none;display:block;position:relative;overflow:hidden}.icon-huPD1D:before,.icon-huPD1D:after{content:"";background-color:var(--text-color);transition:opacity .3s;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.icon-huPD1D:after{background:var(--highlight-gradient);opacity:0}.social-link-RxqNL_:hover .icon-huPD1D:before{opacity:0}.social-link-RxqNL_:hover .icon-huPD1D:after{opacity:1}.icon-bottom-vd8E0p{background:var(--highlight-gradient);border-radius:.125rem;width:0;height:.25rem;transition:width .3s;position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%)}.social-link-RxqNL_:hover .icon-bottom-vd8E0p{width:2rem}.tooltip-xvFDxx{background-color:var(--mid-translucent-grey);opacity:0;color:var(--text-color);border-radius:.125rem;width:7rem;padding:.25rem;font-size:.8rem;transition:opacity .3s;position:absolute;bottom:-2.25rem}.social-links-_Or2WX li:first-of-type .tooltip-xvFDxx{left:0}.social-links-_Or2WX li:nth-of-type(2) .tooltip-xvFDxx{width:9rem;left:50%;transform:translate(-50%)}.social-links-_Or2WX li:nth-of-type(3) .tooltip-xvFDxx{right:-.25rem}.social-link-RxqNL_:hover .tooltip-xvFDxx{opacity:1}.footer-UFWznO{background-color:var(--dark-translucent-grey);text-align:center;gap:1.252rem;width:calc(100% + 2.5rem);padding:1rem 1.25rem;position:relative;left:-1.25rem;right:-1.25rem}@media (min-width:900px){.footer-UFWznO{gap:2rem;width:calc(100% + 4rem);padding:1rem 2rem;left:-2rem;right:-2rem}}.skill-logos-pYIA69,.skill-logo-RyLsw7,.skill-logo-RyLsw7 img{position:absolute}.skill-logos-pYIA69{top:0;bottom:0;left:0;right:0}.skill-logo-RyLsw7{background:var(--mid-translucent-grey);opacity:0;aspect-ratio:1;--skill-scale-start:scale(0)translate(0,0)rotate(0deg);--skill-transform-right-down-clockwise:scale(1)translate(10%,10%)rotate(10deg);--skill-transform-right-up-clockwise:scale(1)translate(10%,-10%)rotate(10deg);--skill-transform-right-down-anticlockwise:scale(1)translate(10%,10%)rotate(-10deg);--skill-transform-right-up-anticlockwise:scale(1)translate(10%,-10%)rotate(-10deg);--skill-transform-left-down-clockwise:scale(1)translate(-10%,10%)rotate(10deg);--skill-transform-left-up-clockwise:scale(1)translate(-10%,-10%)rotate(10deg);--skill-transform-left-down-anticlockwise:scale(1)translate(-10%,10%)rotate(-10deg);--skill-transform-left-up-anticlockwise:scale(1)translate(-10%,-10%)rotate(-10deg);--skill-animation:skill-opacity-FgxIu_,skill-scale-XhUWSH;height:4rem;transform:var(--skill-scale-start);border-radius:50%;padding:.25rem;animation-duration:20s;animation-timing-function:linear;animation-iteration-count:infinite}.skill-logo-RyLsw7 img{max-width:80%;max-height:60%;top:50%;left:50%;transform:translate(-50%,-50%)}#blob-skill-logo-react-Mz5L1S{animation-name:var(--skill-animation),skill-to-right-down-anticlockwise-QB3nUm;animation-delay:.6s;top:35%;left:50%}#blob-skill-logo-github-LBIxic{animation-name:var(--skill-animation),skill-to-right-up-clockwise-rMKxvc;animation-delay:0s;top:28%;left:31%}#blob-skill-logo-typescript-I1WYB8{animation-name:var(--skill-animation),skill-to-left-up-clockwise-cRHIfu;animation-delay:.3s;top:65%;left:35%}#blob-skill-logo-next-js-gVMs8G{animation-name:var(--skill-animation),skill-to-left-down-clockwise-KOIg10;animation-delay:5.6s;top:19%;left:50%}#blob-skill-logo-css-Sw3idm{animation-name:var(--skill-animation),skill-to-right-down-clockwise-DEE0XE;animation-delay:5.3s;top:37%;left:31%}#blob-skill-logo-seo-no4l_j{animation-name:var(--skill-animation),skill-to-left-up-anticlockwise-h0R1jG;animation-delay:5s;top:43%;left:59%}#blob-skill-logo-csharp-iNC7B4{animation-name:var(--skill-animation),skill-to-left-up-anticlockwise-h0R1jG;animation-delay:10s;top:18%;left:33%}#blob-skill-logo-gatsby-MMXZmJ{animation-name:var(--skill-animation),skill-to-left-up-clockwise-cRHIfu;animation-delay:10.6s;top:47%;left:45%}#blob-skill-logo-azure-V9JfZq{animation-name:var(--skill-animation),skill-to-left-down-anticlockwise-F3meHm;animation-delay:10.3s;top:11%;left:51%}#blob-skill-logo-git-n50T0K{animation-name:var(--skill-animation),skill-to-left-up-clockwise-cRHIfu;animation-delay:10.9s;top:42%;left:31%}#blob-skill-logo-javascript-cbcX8p{animation-name:var(--skill-animation),skill-to-right-up-clockwise-rMKxvc;animation-delay:15.6s;top:24%;left:39%}#blob-skill-logo-sql-AzuNAW{animation-name:var(--skill-animation),skill-to-left-up-anticlockwise-h0R1jG;animation-delay:15s;top:42%;left:32%}#blob-skill-logo-php-LJtGSU{animation-name:var(--skill-animation),skill-to-right-down-anticlockwise-QB3nUm;animation-delay:15.3s;top:30%;left:54%}@media (min-width:600px){.skill-logo-RyLsw7{height:4.5rem}#blob-skill-logo-react-Mz5L1S{top:28%;left:49%}#blob-skill-logo-github-LBIxic{top:13%;left:27%}#blob-skill-logo-typescript-I1WYB8{top:70%;left:29%}#blob-skill-logo-next-js-gVMs8G{top:25%;left:50%}#blob-skill-logo-css-Sw3idm{top:55%;left:26%}#blob-skill-logo-seo-no4l_j{top:62%;left:62%}#blob-skill-logo-csharp-iNC7B4{top:20%;left:28%}#blob-skill-logo-gatsby-MMXZmJ{top:66%;left:46%}#blob-skill-logo-azure-V9JfZq{top:15%;left:53%}#blob-skill-logo-git-n50T0K{top:57%;left:24%}#blob-skill-logo-javascript-cbcX8p{top:34%;left:39%}#blob-skill-logo-sql-AzuNAW{top:60%;left:28%}#blob-skill-logo-php-LJtGSU{top:40%;left:56%}}@media (min-width:900px){#blob-skill-logo-react-Mz5L1S{top:42%;left:35%}#blob-skill-logo-github-LBIxic{top:24%;left:13%}#blob-skill-logo-typescript-I1WYB8{top:58%;left:20%}#blob-skill-logo-html-SDa_La{animation-name:var(--skill-animation),skill-to-left-up-anticlockwise-h0R1jG;animation-delay:.9s;top:30%;left:59%}#blob-skill-logo-next-js-gVMs8G{top:30%;left:56%}#blob-skill-logo-css-Sw3idm{top:46%;left:11%}#blob-skill-logo-seo-no4l_j{top:54%;left:79%}#blob-skill-logo-mui-mAX___{animation-name:var(--skill-animation),skill-to-left-down-anticlockwise-F3meHm;animation-delay:5.9s;top:52%;left:44%}#blob-skill-logo-csharp-iNC7B4{top:28%;left:20%}#blob-skill-logo-gatsby-MMXZmJ{top:55%;left:54%}#blob-skill-logo-azure-V9JfZq{top:25%;left:62%}#blob-skill-logo-git-n50T0K{top:52%;left:13%}#blob-skill-logo-javascript-cbcX8p{top:38%;left:30%}#blob-skill-logo-sql-AzuNAW{top:53%;left:16%}#blob-skill-logo-php-LJtGSU{top:48%;left:74%}#blob-skill-logo-tailwind-rV38Dp{animation-name:var(--skill-animation),skill-to-left-down-clockwise-KOIg10;animation-delay:15.9s;top:34%;left:59%}}@media (min-width:1180px){.skill-logo-RyLsw7{height:5.5rem}#blob-skill-logo-react-Mz5L1S{top:54%;left:42%}#blob-skill-logo-github-LBIxic{top:13%;left:9%}#blob-skill-logo-typescript-I1WYB8{top:67%;left:15%}#blob-skill-logo-html-SDa_La{top:30%;left:59%}#blob-skill-logo-rest-apis-OeuTGa{animation-name:var(--skill-animation),skill-to-left-up-anticlockwise-h0R1jG;animation-delay:1.2s;top:16%;left:38%}#blob-skill-logo-next-js-gVMs8G{top:22%;left:56%}#blob-skill-logo-css-Sw3idm{top:56%;left:8%}#blob-skill-logo-seo-no4l_j{top:60%;left:79%}#blob-skill-logo-mui-mAX___{top:52%;left:44%}#blob-skill-logo-dot-net-u2UeJa{animation-name:var(--skill-animation),skill-to-left-down-anticlockwise-F3meHm;animation-delay:6.2s;top:30%;left:23%}#blob-skill-logo-csharp-iNC7B4{top:18%;left:15%}#blob-skill-logo-gatsby-MMXZmJ{top:62%;left:54%}#blob-skill-logo-azure-V9JfZq{top:11%;left:62%}#blob-skill-logo-git-n50T0K{top:56%;left:8%}#blob-skill-logo-tanstack-start-mFZwr4{animation-name:var(--skill-animation),skill-to-right-down-clockwise-DEE0XE;animation-delay:11.2s;top:38%;left:35%}#blob-skill-logo-javascript-cbcX8p{top:29%;left:28%}#blob-skill-logo-sql-AzuNAW{top:52%;left:4%}#blob-skill-logo-php-LJtGSU{top:56%;left:78%}#blob-skill-logo-tailwind-rV38Dp{top:21%;left:53%}#blob-skill-logo-astro-js-TvrTOi{animation-name:var(--skill-animation),skill-to-left-down-anticlockwise-F3meHm;animation-delay:16.2s;top:47%;left:47%}}@keyframes skill-opacity-FgxIu_{0%,18%,to{opacity:0}3%,15%{opacity:1}}@keyframes skill-scale-XhUWSH{0%,to{transform:var(--skill-scale-start)}3%{transform:scale(1)translate(0)rotate(0)}}@keyframes skill-to-right-down-clockwise-DEE0XE{15%{transform:var(--skill-transform-right-down-clockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-right-up-clockwise-rMKxvc{15%{transform:var(--skill-transform-right-up-clockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-right-down-anticlockwise-QB3nUm{15%{transform:var(--skill-transform-right-down-anticlockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-right-up-anticlockwise-g_26HC{15%{transform:var(--skill-transform-right-up-anticlockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-left-down-clockwise-KOIg10{15%{transform:var(--skill-transform-left-down-clockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-left-up-clockwise-cRHIfu{15%{transform:var(--skill-transform-left-up-clockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-left-down-anticlockwise-F3meHm{15%{transform:var(--skill-transform-left-down-anticlockwise)}18%{transform:var(--skill-scale-start)}}@keyframes skill-to-left-up-anticlockwise-h0R1jG{15%{transform:var(--skill-transform-left-up-anticlockwise)}18%{transform:var(--skill-scale-start)}}.blob-container-J4OriR{position:relative}.blob-TPV9m3{--blob-transform-origin:top center;--blob-transform:scale(.45)translateY(0)rotate(0deg);--blob-transform-rotate:scale(.45)translateY(0)rotate(5deg);--blob-transform-translate:scale(.45)translateY(15%)rotate(0deg);--blob-transform-translate-rotate:scale(.45)translateY(15%)rotate(-5deg);--blob-1-transform:scale(.45)translateY(-100%)rotate(0deg);--blob-1-transform-rotate:scale(.45)translateY(-100%)rotate(5deg);--blob-1:path("m392.448 59.136c35.28 18.48 63.168 52.416 73.248 89.712 10.08 37.632 2.016 78.96-9.408 115.584-11.424 36.624-26.208 68.88-49.056 93.072-22.848 24.528-53.76 40.656-92.736 71.232-38.64 30.912-86.016 76.272-134.736 82.656-48.72 6.048-99.12-26.88-123.312-72.576-23.856-46.032-21.504-104.496-30.912-161.952-9.408-57.792-30.24-114.24-20.16-165.312 10.08-50.736 51.408-95.76 101.136-107.52 49.392-12.096 107.52 9.072 157.92 21.504 50.064 12.096 92.736 15.12 128.016 33.6z");--blob-2:path("m400 4c24 8 24.4 38.8 64 76 40 32 89.2 80.4 114.4 128.8 25.6 48.8 10.4 112.4-34 136-44 23.6-116.4 7.6-172 2.4-55.6-5.6-94 0-144 4-49.6 3.6-110.8 5.6-157.2-20.4-46.4-26-78.4-80-64-127.2C21.6 156.4 81.6 116 124.8 87.2 168 58.4 194 40.8 220.4 34c26.4-6.4 52.8-2.4 88.4-16C344 4.4 376-4 400 4z");--blob-3:path("M276.4018 87.5717c59.309-9.2973 98.6993-98.7646 179.774-78.494 81.7192 9.1088 9.1349 156.4529 6.013 222.9289-2.7249 66.4272 13.0081 132.2001-10.1104 176.9511-22.7703 44.3052-84.3921 67.5886-141.1099 71.7317-56.2721 4.4913-108.3855-9.6632-157.8244-21.728-49.0906-12.5106-96.3493-23.2311-120.1976-53.3493C9.544 375.8422 9.0575 325.9295 16.1908 285.5592c7.182-39.9732 21.935-70.8009 20.7937-116.2003-1.1413-45.3993 2.2339-68.785 21.2669-94.2946 18.2842-23.4027 48.0958-43.1833 91.7326-32.4211 45.7438 11.511 73.569 49.4024 125.4252 45.0503Z");width:600px;height:550px;margin-bottom:-275px;animation:20s linear infinite blob-shape-KqlXjI;position:relative}.blob-TPV9m3:before{content:"";aspect-ratio:1;background:var(--highlight-gradient);animation:15s ease-in-out infinite rotate-gradient-background-D8PSER;position:absolute;top:-12%;bottom:-12%;left:-12%;right:-12%}@media (min-width:600px){.blob-TPV9m3{--blob-transform:scale(.6)translateY(0)rotate(0deg);--blob-transform-rotate:scale(.6)translateY(0)rotate(5deg);--blob-transform-translate:scale(.6)translateY(15%)rotate(0deg);--blob-transform-translate-rotate:scale(.6)translateY(15%)rotate(-5deg);--blob-1-transform:scale(.6)translateY(-70%)rotate(0deg);--blob-1-transform-rotate:scale(.6)translateY(-70%)rotate(5deg)}}@media (min-width:900px){.blob-container-J4OriR{width:390px}.blob-TPV9m3{--blob-transform-origin:center center;--blob-transform:scale(.65)translateY(0)rotate(0deg);--blob-transform-rotate:scale(.65)translateY(0)rotate(5deg);--blob-transform-translate:scale(.65)translateY(15%)rotate(0deg);--blob-transform-translate-rotate:scale(.65)translateY(15%)rotate(-5deg);--blob-1-transform:scale(.65)translateY(-30%)rotate(0deg);--blob-1-transform-rotate:scale(.65)translateY(-30%)rotate(5deg);margin-bottom:0;left:-22%}.blob-TPV9m3:before{top:-18%;bottom:-18%;left:-18%;right:-18%}}@media (min-width:1180px){.blob-container-J4OriR{width:-moz-fit-content;width:fit-content}.blob-TPV9m3{--blob-transform:translateY(0)rotate(0deg);--blob-transform-rotate:translateY(0)rotate(5deg);--blob-transform-translate:translateY(15%)rotate(0deg);--blob-transform-translate-rotate:translateY(15%)rotate(-5deg);--blob-1-transform:var(--blob-transform);--blob-1-transform-rotate:var(--blob-transform-rotate);left:0}.blob-TPV9m3:before{top:-12%;bottom:-12%;left:-12%;right:-12%}}@keyframes blob-shape-KqlXjI{0%,to{transform:var(--blob-1-transform)}0%,15%,to{clip-path:var(--blob-1);transform-origin:bottom}15%{transform:var(--blob-1-transform-rotate)}25%,40%,75%,90%{clip-path:var(--blob-2);transform-origin:var(--blob-transform-origin)}25%,90%{transform:var(--blob-transform-translate)}40%,75%{transform:var(--blob-transform-translate-rotate)}50%,65%{clip-path:var(--blob-3);transform-origin:var(--blob-transform-origin)}50%{transform:var(--blob-transform)}65%{transform:var(--blob-transform-rotate)}}@keyframes rotate-gradient-background-D8PSER{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-fsuMnD{align-items:center;overflow:hidden}@media (min-width:900px){.hero-text-jTEhhn{width:100%}}@media (min-width:1180px){.hero-text-jTEhhn{width:calc(100% - 582px)}}.hamburger-RgQTT8{height:5.25rem}.hamburger-RgQTT8 button{aspect-ratio:1;padding:.75rem}.hamburger-RgQTT8 button:before{width:140%}.hamburger-RgQTT8 button:after{width:200%}.hamburger-RgQTT8 button:hover:after{transform:translate(-100%)rotate(-45deg)}.hamburger-RgQTT8 button span,.hamburger-RgQTT8 button span:before,.hamburger-RgQTT8 button span:after{content:"";background-color:var(--text-color);border-radius:.25rem;width:1.5rem;height:.25rem;transition:transform .4s;display:block}.hamburger-RgQTT8 button span:before,.hamburger-RgQTT8 button span:after{position:absolute}.hamburger-RgQTT8 button span:before{transform:translateY(-.5rem)}.hamburger-RgQTT8 button span:after{transform:translateY(.5rem)rotate(0)}.hamburger-RgQTT8.open-bKNyui button:after{transform:translate(100%)rotate(-45deg)}.hamburger-RgQTT8.open-bKNyui button span{transform:rotate(135deg)}.hamburger-RgQTT8.open-bKNyui button span:before{transform:translateY(0)}.hamburger-RgQTT8.open-bKNyui button span:after{transform:translateY(0)rotate(90deg)}@media (min-width:900px){.hamburger-RgQTT8{display:none}}.logo-XrxtBW{height:5.25rem;font-weight:700;position:relative}.logo-XrxtBW img{width:5rem;height:5rem}.logo-text-vgnUUZ{font-family:Stalinist One,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue}.page-links-Bq62bB a{color:var(--text-color);text-decoration:none;transition:color .3s;position:relative}.page-links-Bq62bB a:before{content:"";background:var(--highlight-gradient);border-radius:.125rem;width:0;height:.25rem;transition:width .3s;position:absolute;bottom:-.25rem;left:50%;transform:translate(-50%)}.page-links-Bq62bB a:after{content:attr(data-text);background:var(--highlight-gradient);color:#0000;opacity:0;-webkit-background-clip:text;background-clip:text;transition:opacity .3s;position:absolute;top:2px;left:0}.page-links-Bq62bB a:hover,.page-links-Bq62bB a.active-XRIPlY{color:#0000}.page-links-Bq62bB a:hover:after,.page-links-Bq62bB a.active-XRIPlY:after{opacity:1}.page-links-Bq62bB a:hover:before,.page-links-Bq62bB a.active-XRIPlY:before{width:100%}.project-card-afsDhV{justify-content:space-between;width:100%;margin:0;overflow:hidden}.project-img-D0xGWa{width:calc(100% + 2.5rem);max-width:none;position:relative;top:-1.25rem;left:-1.25rem}.project-skills-wr6kjK{flex-wrap:wrap;gap:.5rem}.project-excerpt-Slug6P{height:100%;margin-bottom:1rem}.project-links-qxWVzO{gap:1rem}.project-link-N0Ob1c{gap:.5rem}.github-img-dM0CaL{max-width:2rem}@media (min-width:900px){.project-card-afsDhV{width:calc(50% - 2rem)}.project-img-D0xGWa{width:calc(100% + 4rem);top:-2rem;left:-2rem}}.project-list-NptjoP{flex-wrap:wrap;gap:4rem;margin-bottom:.5rem}.skill-KFjHMW{background-color:var(--mid-translucent-grey);text-align:center;border-radius:.5rem;row-gap:.5rem;width:7rem;padding:.5rem;font-size:.85rem}.skill-img-CyLTk8{object-fit:contain;width:5rem;height:5rem}.skill-pill-qqOfrn,.skill-pill-fill-Yvcf5k{border-radius:1rem}.skill-pill-qqOfrn{background-color:var(--dark-translucent-grey);width:100%;line-height:1.3rem;position:relative}.skill-pill-fill-Yvcf5k{background:var(--highlight-gradient);z-index:0;position:absolute;top:0;bottom:0;left:0;right:auto}.skill-pill-qqOfrn span{z-index:1;position:relative}@media (min-width:900px){.skill-KFjHMW{border-radius:1rem;width:8rem;padding:1rem}.skill-img-CyLTk8{width:6rem;height:6rem}}