@font-face{font-family:__Mulish_9738f2;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/1ba4bcc28d9acde5-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:__Mulish_9738f2;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3cca6a2fae6396cc-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Mulish_9738f2;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/af6b7096c023fb67-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:__Mulish_9738f2;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/7d87e5ac6ec6000d-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:__Mulish_9738f2;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3be83a346553616c-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:__Mulish_Fallback_9738f2;src:local("Arial");ascent-override:96.56%;descent-override:24.02%;line-gap-override:0.00%;size-adjust:104.08%}.__className_9738f2{font-family:__Mulish_9738f2,__Mulish_Fallback_9738f2;font-style:normal}.__variable_9738f2{--font-mulish:"__Mulish_9738f2","__Mulish_Fallback_9738f2"}header{transition:all .2s linear;position:fixed;top:0;z-index:9999;width:100%;border-bottom:1px solid var(--clr-neutral-100)}header.scrolled-past-hero{color:var(--color);background-color:var(--foreground);box-shadow:0 3px 10px var(--clr-neutral-100)}header .navbar__wrapper{width:100%;max-width:1200px;padding:1rem 1.5rem;margin-inline:auto;display:flex;justify-content:space-between;align-items:center}header .navbar__wrapper nav>ul{display:flex;align-items:center;gap:4rem;list-style:none}header .navbar__wrapper nav>ul li{font-weight:600;position:relative;transition:scale .5s ease-in}header .navbar__wrapper nav>ul li:after{content:"";position:absolute;background-color:var(--yellow);width:100%;height:2px;bottom:-.375rem;left:0;scale:0;transition:scale .5s ease-in}header .navbar__wrapper nav>ul li:hover{scale:1.1}header .navbar__wrapper nav>ul li:hover:after{scale:1}header .navbar__wrapper .toggle__theme{position:relative;height:2.5rem;width:2.5rem;border-radius:50%;background-color:hsla(0,0%,46%,.5);display:flex;justify-content:center;align-items:center}header .navbar__wrapper .toggle__theme .tooltip{position:absolute;inset:0;transform:translateX(-110%);width:max-content;padding:.375rem;font-size:.625rem;background-color:var(--clr-neutral-100);visibility:hidden;display:flex;align-items:center;opacity:0;transition:opacity .3s ease-in}header .navbar__wrapper .toggle__theme:hover{background-color:#757575}header .navbar__wrapper .toggle__theme:hover .tooltip{visibility:visible;opacity:1}header .navbar__wrapper .toggle__theme:hover .tooltip:after{content:"";position:relative;height:0;width:0;right:-.73125rem;border-top:.375rem solid transparent;border-bottom:.375rem solid transparent;border-left:.375rem solid var(--clr-neutral-100)}@media(hover:hover){header .navbar__wrapper .toggle__theme:hover{background-color:#757575}header .navbar__wrapper .toggle__theme:hover .tooltip{visibility:visible;opacity:1}header .navbar__wrapper .toggle__theme:hover .tooltip:after{content:"";position:relative;height:0;width:0;right:-.73125rem;border-top:.375rem solid transparent;border-bottom:.375rem solid transparent;border-left:.375rem solid var(--clr-neutral-100)}}@media screen and (max-width:769px){header.navbar .navbar__wrapper nav{position:relative}header.navbar .navbar__wrapper nav ul{padding:6rem 2rem;flex-direction:column;justify-content:center;height:100vh;width:45vw;gap:2rem;background-color:var(--foreground);box-shadow:2px 0 10px var(--clr-neutral-100);position:absolute;left:-1.5rem;top:calc(-1.5rem + 2px);transform:translateX(-60vw);transition:transform .5s ease-out}header.navbar .navbar__wrapper nav ul.nav-active{transform:none}header.navbar .navbar__wrapper nav #mobile-nav{position:relative;color:var(--text);z-index:77;transition:all 1s ease-in}}@media screen and (min-width:769px){header.navbar .navbar__wrapper nav #mobile-nav{display:none}}.hero{position:relative;width:100%;height:100vh;overflow:hidden;padding-block:1rem;display:flex;flex-direction:column;justify-content:space-between;color:var(--hero-section-text)}.hero .hero-background{position:absolute;left:0;top:0;width:100vw;height:100vh;z-index:0}.hero .hero-background img{filter:contrast(45%)}.hero :not(.hero-background){position:relative;z-index:2}.hero__socials{-webkit-padding-before:6rem;padding-block-start:6rem}.hero__socials a:not(:first-child){-webkit-margin-start:1rem;margin-inline-start:1rem}.hero__socials a:first-child:hover{color:#0866ff}.hero__socials a:nth-child(2):hover{color:#f7109c}.hero__socials a:nth-child(3):hover{color:#000}.hero__socials a:nth-child(4):hover{color:#0a66c2}.hero__banner__subtitle{font-size:1.25rem;color:var(--hero-text-secondary);-webkit-margin-after:1rem;margin-block-end:1rem}.hero__banner__title{display:inline;font-size:2.5rem;font-weight:900;background-image:linear-gradient(90deg,#ffb400,#a200ff);color:transparent;background-repeat:no-repeat;background-size:1% 100%;-webkit-background-clip:text;background-clip:text;animation:gradient-flow 2.5s ease-in-out infinite alternate}.hero__banner__description{font-weight:500;color:var(--hero-text-secondary);max-width:50ch;-webkit-margin-before:1.5rem;margin-block-start:1.5rem;-webkit-margin-after:4rem;margin-block-end:4rem}.hero__info{display:flex;gap:4rem}.hero__info__item p:first-child{font-size:1.25rem;font-weight:800;-webkit-margin-after:.625rem;margin-block-end:.625rem}.hero__info__item p:last-child{color:var(--hero-text-secondary)}@keyframes gradient-flow{to{background-size:100% 100%}}@media screen and (max-width:610px){.hero .hero__info .hero__info__item:last-child{display:none}}@media screen and (max-width:440px){.hero .hero__info .hero__info__item:nth-child(2){display:none}}#about{-webkit-margin-before:2rem;margin-block-start:2rem;padding-block:5rem}#about .about-me{margin-block:1.5rem}#about .about-me__title{font-size:var(--heading);font-weight:800;-webkit-margin-after:1rem;margin-block-end:1rem}#about .about-me__description{color:var(--text-secondary);-webkit-margin-after:1.5rem;margin-block-end:1.5rem}#about .about-me__detail{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem;-webkit-margin-after:1.5rem;margin-block-end:1.5rem}#about .about-me__detail__item span.item__label{font-weight:800;font-size:1.15rem;color:var(--color)}#about .qualifications{display:grid;grid-template-columns:1fr 1fr;grid-gap:2rem;gap:2rem}#about .qualifications .experience{height:min-content}#about .qualifications__title{font-size:var(--heading);font-weight:800;-webkit-margin-after:1.5rem;margin-block-end:1.5rem}#about .qualifications__list .qualification{display:flex;gap:1rem;width:100%;height:100%;-webkit-margin-after:2rem;margin-block-end:2rem}#about .qualifications__list .qualification .qualification__detail__header{position:relative;-webkit-margin-after:1rem;margin-block-end:1rem}#about .qualifications__list .qualification .qualification__detail__header .qualification__detail__title{font-size:1.5rem;font-size:800;-webkit-margin-after:.5rem;margin-block-end:.5rem}#about .qualifications__list .qualification .qualification__detail__header .qualification__detail__subtitle{font-size:.75rem;display:flex;justify-content:space-between}#about .qualifications__list .qualification .qualification__detail__header span.badge{min-width:7ch;font-size:.75rem;padding:.125rem .25rem;border-radius:.25rem;background-color:var(--yellow);position:absolute;top:-2px;right:0;color:#000;transform:translate(100%,50%);text-align:center}#about .skills{-webkit-margin-before:1.5rem;margin-block-start:1.5rem;padding-inline:1.5rem}#about .skills .qualifications__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));grid-gap:2rem;gap:2rem}#about .skills .qualifications__list .card{padding:1.5rem}@media screen and (max-width:920px){#about .qualifications{grid-template-columns:1fr}}@media screen and (max-width:769px){#about .about-me__detail{grid-template-columns:1fr}#about .skills{padding-inline:0}#about .qualifications .education .icon-badge,#about .qualifications .experience .icon-badge,#about .qualifications .skills .icon-badge,#about .qualifications__list .qualification .qualification__detail__header span.badge,#about .skills .qualifications__list .card .icon-badge{display:none}}@media screen and (min-width:600px)and (max-width:731px){#about .qualifications__list .qualification .qualification__detail__header span.badge{display:block;right:3rem}}@media screen and (max-width:600px){#about .qualifications__list .qualification .qualification__detail__header span.badge{display:none}}#projects{padding-block:5rem}.projects__list{-webkit-margin-before:1.5rem;margin-block-start:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:2rem;gap:2rem}.projects__list .card{padding:1.5rem}.projects__list .project{transition:all .5s ease-out}.projects__list .project:hover{color:var(--yellow)}.projects__list .project:hover img{scale:1.05}.projects__list .project__image{position:relative;width:100%;aspect-ratio:4/3;border-radius:.75rem;overflow:hidden}.projects__list .project__image img{object-fit:cover;transition:all .5s ease-out}.projects__list .project__details{display:flex;gap:1rem;justify-content:space-between}.projects__list .project__details .project__title{font-size:1.5rem;font-weight:800;margin-block:1rem}.projects__list .project__details .project__description{color:var(--color)}.projects__list .project .link-badge{width:30px;height:30px;border-radius:50%;-webkit-margin-before:1.25rem;margin-block-start:1.25rem}.contact{margin-block:1.5rem;display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem}.contact form{width:100%}.contact form label{display:block;-webkit-margin-after:.5rem;margin-block-end:.5rem;font-weight:600;font-size:1.15rem}.contact form input,.contact form textarea{-webkit-margin-after:1rem;margin-block-end:1rem;border-radius:.375rem}.contact form button{border:none;font-size:1.15rem;font-weight:400}.contact .get-in-touch .title{font-size:var(--heading);font-weight:800;-webkit-margin-after:1.5rem;margin-block-end:1.5rem}.contact .get-in-touch .description{color:var(--text-secondary)}.contact .get-in-touch .contacts p{display:flex;align-items:center;gap:1rem;margin-block:1rem}.contact .get-in-touch .contacts p:last-of-type a:first-of-type:hover{color:#0866ff}.contact .get-in-touch .contacts p:last-of-type a:nth-of-type(2):hover{color:#f7109c}.contact .get-in-touch .contacts p:last-of-type a:nth-of-type(3):hover{color:#000}.contact .get-in-touch .contacts p:last-of-type a:nth-of-type(4):hover{color:#0a66c2}@media screen and (max-width:769px){.contact{grid-template-columns:1fr}}:root{--background:#fff;--foreground:#f5f5f5;--color:#343a40;--hero-section-text:#343a40;--hero-text-secondary:#454545;--text-secondary:#6c757d;--yellow:#ffb400;--clr-neutral-100:rgba(62,62,62,.2);--btn-radius:2rem;--heading:1.75rem;--outline-color:#717171}.dark{--background:#232323;--foreground:#1d1d1d;--color:#fff;--text-secondary:#eee;--outline-color:#3d3d3d}html{scroll-behavior:smooth}body,html{max-width:100vw;overflow-x:hidden}body{background-color:var(--background);color:var(--color);font-family:var(--font-mulish);text-wrap:pretty}*{box-sizing:border-box;padding:0;margin:0;-webkit-font-smoothing:antialiased}button{cursor:pointer}a{color:inherit;text-decoration:none}@media(prefers-color-scheme:dark){html{color-scheme:dark}}.content-wrapper{max-width:1200px;width:100%;padding-inline:1.5rem;margin-inline:auto}.icon-badge{height:40px;width:40px;padding:.5rem;border-radius:50%}.btn,.icon-badge{background-color:var(--yellow);display:flex;justify-content:center;align-items:center;color:#fff}.btn{padding:1rem 2rem;font-weight:800;gap:.875rem;width:max-content;position:relative;z-index:2}.btn,.btn:after{border-radius:var(--btn-radius)}.btn:after{content:"";position:absolute;inset:0;background-color:#343a40;z-index:-1;scale:0;transition:scale .5s ease-in}.btn:hover:after{scale:1}.section__header{position:relative}.section__header__title{font-size:2rem;font-weight:800;-webkit-margin-after:.5rem;margin-block-end:.5rem}.section__header__subtitle{color:var(--text-secondary)}.section__header:after,.section__header:before{content:"";position:absolute;width:24px;height:24px;border-radius:50%}.section__header:before{background-color:var(--yellow);left:-36px;top:10px}.section__header:after{left:-28px;top:2px;outline:1px solid var(--color);outline-offset:-1px}.card{height:100%;border-radius:.75rem;background-color:var(--foreground);padding:2rem 4rem;transition:all .3s ease-in}.card:hover{box-shadow:0 5px 10px 0 rgba(52,58,64,.1)}.floating-label-input{position:relative;width:100%;max-width:24rem}.floating-label-input__wrapper{position:relative}.floating-label-input__input{background-color:var(--foreground);width:100%;height:2.5rem;padding:.5rem .75rem;border:1px solid var(--text-secondary);border-radius:.375rem;outline:none;transition:border-color .2s ease;color:var(--color)}.floating-label-input__input::placeholder{color:transparent}.floating-label-input__input:focus{border-color:#6b7280}.floating-label-input__label{position:absolute;left:.5rem;top:-.5rem;padding:0 .25rem;font-size:.75rem;transition:all .2s ease}.floating-label-input__input:placeholder-shown+.floating-label-input__label{top:.65rem;left:.75rem;font-size:1rem}.floating-label-input__input:focus+.floating-label-input__label,.floating-label-input__input:not(:placeholder-shown)+.floating-label-input__label{top:-.5rem;left:.5rem;font-size:.75rem;background-color:var(--foreground)}.floating-label-input textarea{height:5rem}@media screen and (max-width:769px){.card{padding:1rem}}