@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500&family=Mitr:wght@200;300;400;500;600;700&family=Titillium+Web:wght@400;600;800&display=swap";.logo{position:relative;display:inline-block;font-size:1.5rem;font-family:Mitr,sans-serif;font-weight:600;color:var(--text-400)}.logo:hover span{color:var(--primary-100)}.logo:hover span:first-child{left:-.25em}.logo:hover span:last-child{left:.25em}.logo span{display:inline-block;position:relative;left:0;transition:left .2s ease-in-out,color .2s ease-in-out}.button{position:relative;display:inline-block;border-radius:var(--radius-200);color:var(--bg-100);font-family:Titillium Web,sans-serif;font-size:inherit;font-weight:600;padding:.375rem 1.5rem;cursor:pointer;transition:background-color .15s ease-in-out,border .15s ease-in-out,box-shadow .15s ease-in-out,top .15s ease-in-out}.button__primary{background:var(--primary-gradient);box-shadow:var(--shadow-100);top:0}.button__primary:hover,.button__primary:focus{box-shadow:var(--shadow-200);top:-3px}.button__primary:active{box-shadow:var(--shadow-100);top:-1px}.button__primary--form svg{position:relative;left:0;transition:left .2s ease-in-out}.button__primary--form:hover,.button__primary--form:focus{top:0}.button__primary--form:hover svg,.button__primary--form:focus svg{left:.25rem}.button__secondary{color:var(--primary-100);border:solid .115em var(--primary-100);padding:0;overflow:hidden;z-index:1;transition:color .3s ease-in-out}.button__secondary:before{content:"";position:absolute;top:50%;left:50%;translate:-50% -50%;rotate:45deg;width:0;height:15rem;z-index:-1;background:var(--primary-gradient);transition:width .3s ease-in-out}.button__secondary span{display:inline-block;padding:.25rem 1.5rem}.button__secondary:hover,.button__secondary:focus{box-shadow:var(--shadow-200);color:var(--bg-100)}.button__secondary:hover:before,.button__secondary:focus:before{width:125%}.button__secondary:active{box-shadow:var(--shadow-100)}.button__tertiary{color:var(--text-400);font-weight:400;border:solid .115em var(--bg-400);background-color:var(--opaque-light-100);transition:color .15s ease-in-out}.button__tertiary:hover,.button__tertiary:focus{background-color:var(--bg-300);color:var(--text-300)}.button__tertiary:active{background-color:var(--bg-200)}.social__list{width:max-content}.social__list:hover .social__item,.social__list:focus-within .social__item{margin-left:0;opacity:1;scale:1}.social__item{position:relative;font-size:1.5em;padding:.25em}.social__item:hover .social__item--link,.social__item:focus-within .social__item--link{color:var(--primary-100);bottom:-.15em}.social__item:hover .social__item--link svg,.social__item:focus-within .social__item--link svg{scale:.925}.social__item:hover .social__item--name,.social__item:focus-within .social__item--name{top:-80%;opacity:1;visibility:visible}.social__item:not(:first-child){margin-left:-2.25em;opacity:0;scale:.75;transition:margin-left .2s ease-in-out,opacity .2s ease-in-out,scale .2s ease-in-out}@media (hover: none){.social__item:not(:first-child){margin-left:0;opacity:1;scale:1}}.social__item:first-child{z-index:3}.social__item:nth-child(2){z-index:2}.social__item:last-child{z-index:1;transition-delay:.1s}.social__item--link{position:relative;bottom:0;color:currentColor;transition:bottom .2s ease-in-out}.social__item--link svg{transition:scale .2s ease-in-out}.social__item--name{position:absolute;top:0;left:50%;translate:-50% 0;width:max-content;font-size:.5em;font-weight:600;color:var(--text-200);opacity:0;visibility:hidden;transition:top .2s ease-in-out,opacity .2s ease-in-out}.nav{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:translate .3s ease-in-out}@media (min-width: 43.75em){.nav{background-color:var(--bg-100)}}.nav.hidden{translate:0 -100%}@media (min-width: 43.75em){.nav__content{position:relative;display:flex}.nav__content:before{content:"";position:absolute;left:0;bottom:0;background-color:var(--opaque-100);width:100%;height:.125em;border-radius:5rem}}.nav__menu{text-align:center}@media (min-width: 43.75em){.nav__menu{display:flex;padding:1.5rem 0}}.nav__menu-toggle{flex-direction:column;gap:.25rem;border-radius:var(--radius-100);background-color:transparent}.nav__menu-toggle--stroke{position:relative;display:inline-block;height:.45rem;width:2.75rem;background:var(--primary-gradient);border-radius:var(--radius-pill);border:solid 2px var(--text-100)}.nav__menu-toggle--stroke:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--bg-100);border-radius:inherit;opacity:1;transition:opacity .15s ease-in-out}@media (min-width:){.nav__menu-toggle{display:none}}.nav__menu-toggle:hover .nav__menu-toggle--stroke:before{opacity:0}.nav__menu--settings{margin:0 0 .25em auto;width:max-content;background-color:var(--bg-200);border-radius:var(--radius-200)}.nav__menu--settings .social__list{padding:0 .25em;gap:.5em}.nav__menu--settings .social__list li{margin:0;opacity:1;scale:1}.nav__menu--settings .social__list li span{text-shadow:-1px -1px 0 var(--bg-200),1px -1px 0 var(--bg-200),-1px 1px 0 var(--bg-200),1px 1px 0 var(--bg-200)}.nav__menu--settings__separator{width:.15em;height:1.5em;background-color:var(--opaque-100)}.nav__menu--settings__content{position:relative;font-size:1em}.nav__menu--settings__button{font-size:1.75em;color:inherit;transition:color .15s ease-in-out,rotate .3s ease-in-out}.nav__menu--settings__button:hover,.nav__menu--settings__button:focus-visible{color:var(--primary-100)}.nav__menu--settings__button.open{rotate:45deg}.nav__menu--settings__popup{position:absolute;right:0;top:105%;width:max-content;border-radius:var(--radius-200);background-color:var(--opaque-300);border:solid .125em var(--opaque-200);z-index:1}.nav__menu li{position:relative;border-radius:var(--radius-200);background-color:var(--bg-200)}.nav__menu li:not(:first-child){margin-top:.25rem}@media (max-width: 43.6875em){.nav__menu li:last-child{background-color:transparent}.nav__menu li:last-child .button{width:100%;padding:.5em;font-size:1.25em}}@media (min-width: 43.75em){.nav__menu li{background-color:transparent;margin-top:0!important}}.nav__menu-item a{display:block;color:var(--text-400);cursor:pointer;letter-spacing:3.5px;transition:color .1s ease-in-out,background-color .1s ease-in-out}.nav__menu-item a:hover{color:var(--text-100);background-color:var(--bg-300)}.nav__menu-item a:active{color:var(--text-400);background-color:var(--bg-400)}@media (max-width: 43.6875em){.nav__menu-item a{font-size:1.25rem}}@media (min-width: 43.75em){.nav__menu-item a{padding:.5rem;font-size:clamp(.75em,2.5vw,1em)}.nav__menu-item a:before{content:"";position:absolute;left:0;bottom:1em;width:.1875em;height:.1875em;background-color:var(--primary-100);opacity:0;border-radius:10px 10px 0 0;transition:bottom .2s ease-in-out,opacity .2s ease-in-out,width .2s .2s ease-in-out}.nav__menu-item a:hover{color:var(--text-100);background-color:transparent}.nav__menu-item a:hover:before{opacity:1;height:.1rem;width:100%;bottom:-1.5em;background-color:var(--text-100)}.nav__menu-item a:active{color:var(--text-100);background-color:transparent}}.nav.open .nav__menu-toggle--stroke{border:solid 2px var(--text-200);transition:opacity 0ms .1s ease-in-out,top .1s ease-in-out,rotate .1s .2s ease-in-out}.nav.open .nav__menu-toggle--stroke-top{top:11px;rotate:45deg}.nav.open .nav__menu-toggle--stroke-mid{opacity:0}.nav.open .nav__menu-toggle--stroke-bottom{top:-11px;rotate:-45deg}.nav.closed .nav__menu-toggle--stroke{transition:opacity .1s .1s ease-in-out,top .1s .3s ease-in-out,rotate .1s ease-in-out}.nav.closed .nav__menu-toggle--stroke-top{top:0;rotate:0}.nav.closed .nav__menu-toggle--stroke-mid{opacity:1}.nav.closed .nav__menu-toggle--stroke-bottom{top:0;rotate:0}.nav__theme-toggle{padding:0;font-size:.675rem;position:relative;border:solid .15rem var(--bg-300);border-radius:var(--radius-pill);background-color:var(--bg-300);outline:solid .1rem transparent;cursor:pointer;transition:outline .1s ease-in-out}.nav__theme-toggle:hover{outline:solid .1rem var(--opaque-200)}.nav__theme-toggle .light,.nav__theme-toggle .dark{display:inline-block;padding:.25rem 1rem;color:var(--text-400)}.nav__theme-toggle--slider{position:absolute;padding:.25rem .5rem;top:0;left:0;border-radius:1rem;color:var(--text-300);background-color:var(--bg-100);box-shadow:0 0 5px #ffffff26;transition:left .1s ease-in-out}.nav__theme-toggle--slider.lightmode{box-shadow:var(--shadow-100);left:3.25rem}.home__section{background-color:var(--bg-100)}.home__section .title{font-size:clamp(2.75rem,6.5vw,4.5rem);font-weight:500;margin-bottom:0}.home__section .title__greeting{display:block;font-size:clamp(.35em,2.5vw,.375em);font-weight:200}.home__section .title__name{background:var(--primary-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.home__content{position:relative;height:clamp(30em,100vh,60em);text-align:center;background-repeat:no-repeat;background-size:cover}.home__content:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,var(--hero-opaque-bg-200) 65%,var(--bg-200))}@media (min-width: 43.75em){.home__content{text-align:left;background-size:contain;background-position:right}.home__content:before{background:linear-gradient(90deg,var(--bg-100) 55%,var(--hero-opaque-bg-100),var(--bg-100))}}.home__group{position:relative}@media (min-width: 43.75em){.home__group{padding:0 3em}}.home__description{max-width:25em;margin:auto;font-size:1.15em}@media (min-width: 43.75em){.home__description{margin:0}}.project__section{background-color:var(--bg-200)}.project__section .section__subtitle{margin-bottom:5em}.project__tech--item{gap:.25em;padding:.5em;font-size:.75em;border:solid .125em var(--opaque-400);color:var(--bg-300);background-color:var(--text-300);border-radius:var(--radius-200);cursor:default}.project__tech--item svg{color:var(--opaque-light-200);transition:color .15s ease-in-out}@media (hover: none){.project__tech--item svg{color:var(--text-300)}}.project__card--container{--height-hover: 20em;--logo-dimension: 2.5em;position:relative;height:calc(var(--logo-dimension) * 2);border-radius:var(--radius-300);background-color:var(--bg-400);background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;transition:height .3s ease-in-out,flex .3s ease-in-out}@media (min-width: 43.75em){.project__card--container{--height-hover: 25em;height:var(--height-hover);flex:1}}.project__card--container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;transition:background-color .5s .2s linear}.project__card--container.active{height:var(--height-hover);outline:solid .175em var(--bg-300);outline-offset:-1px}.project__card--container.active:before{background-color:var(--opaque-light-100)}@media (min-width: 43.75em){.project__card--container.active{flex:7}}.project__card--container.active .project__card--container__content--text{background-color:var(--bg-300);border-radius:var(--radius-300) var(--radius-300) 0 0;box-shadow:0 0 1em .25em #00000013}.project__card--container.active .project__card--container__content--text__body{height:calc(var(--height-hover) * .6);overflow:visible;opacity:1}@media (min-width: 30em){.project__card--container.active .project__card--container__content--text__body{height:calc(var(--height-hover) * .35)}}@media (min-width: 43.75em){.project__card--container.active .project__card--container__content--text__body{height:calc(var(--height-hover) * .275)}}.project__card--container__content{position:relative;width:100%}.project__card--container__content--text{padding-bottom:calc(var(--logo-dimension) / 2);transition:background-color 50ms linear}.project__card--container__content--text__title--logo>img{width:var(--logo-dimension);height:var(--logo-dimension);border-radius:var(--radius-round);outline:solid .125em var(--bg-300);margin-right:.5em}.project__card--container__content--text__title--name{margin:0}.project__card--container__content--text__body{height:0;overflow:hidden;padding-bottom:.25em;opacity:0;transition:height .5s .3s ease-in-out,opacity .3s .3s ease-in-out}.project__card--container__content--text__body--description{margin:1em 0}.project__card--container__button{font-size:.85em}.project__card--container__button button span{padding-left:.75em;padding-right:.75em}.project__modal{position:fixed;top:5%;right:5%;bottom:5%;left:5%;max-width:55em;min-width:16.5625rem;margin:0 auto;z-index:1010}.project__modal--container{height:100%}.project__modal--header__close-button{position:absolute;padding:0;top:-.5em;right:-.5em;font-size:2em;color:var(--text-200);border-radius:var(--radius-round);background:radial-gradient(circle,var(--bg-200) 30%,transparent 30%);transition:color .15s ease-in-out}.project__modal--header__close-button:hover{color:#d32121}.project__modal--header h2{margin:0;text-shadow:-1px -1px 0 var(--bg-200),1px -1px 0 var(--bg-200),-1px 1px 0 var(--bg-200),1px 1px 0 var(--bg-200)}.project__modal--header__buttons{font-size:.8em}.project__modal--body{flex:1;overflow-y:auto;border-radius:var(--radius-200)}.project__modal--body__image{margin-bottom:.25em;aspect-ratio:16/10;background-color:var(--opaque-light-100);border-radius:var(--radius-200)}@media (min-width: 43.75em){.project__modal--body__image{aspect-ratio:16/8}}.project__modal--body__image img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.project__modal--body__text{border-radius:var(--radius-200);background-color:var(--bg-100);grid-template-columns:1fr;grid-template-areas:"overview" "tech" "problem" "features" "summary"}@media (min-width: 43.75em){.project__modal--body__text{grid-template-columns:repeat(6,1fr);grid-template-areas:"overview overview overview overview tech tech" "problem problem problem problem problem problem" "features features features features features features" "summary summary summary summary summary summary"}}.project__modal--body__text--overview{grid-area:overview}.project__modal--body__text--problem{grid-area:problem}.project__modal--body__text--features{grid-area:features}.project__modal--body__text--features ul{list-style:disclosure-closed;margin-bottom:1rem}.project__modal--body__text--features ul span{font-weight:700;color:var(--text-200)}.project__modal--body__text--summary{grid-area:summary}.project__modal--body__text--tech{grid-area:tech}.tab__header{width:100%}@media (min-width: 30em){.tab__header{width:90%}}@media (min-width: 43.75em){.tab__header{width:70%}}@media (min-width:){.tab__header{width:50%}}.tab__list{border-radius:var(--radius-200)}.tab__list li{flex:1}.tab__button{border-radius:var(--radius-200);color:var(--opaque-200);font-family:Mitr,sans-serif;font-size:1em;width:100%;transition:color .15s ease}.tab__button--active{color:var(--text-200)}.tab__button:hover,.tab__button:focus{color:var(--text-200)}.tab__indicator{position:relative;left:0;background:var(--primary-gradient);height:.125em;width:25%;border-radius:var(--radius-pill);transition:left .2s ease}.tab__indicator.all{left:0}.tab__indicator.front-end{left:25%}.tab__indicator.back-end{left:50%}.tab__indicator.tools{left:75%}.tab__content{position:relative;margin-top:1.5em}.about__section{background-color:var(--bg-300)}.about__section section{padding-bottom:4em}.about__subtitle{margin:1em auto;text-align:center;font-size:2em;font-weight:200}@media (min-width: 56.25em){.about__subtitle{margin:1em 0;text-align:left}}.about__bio{display:grid;grid-template-columns:1fr;grid-template-areas:"image" "subtitle" "description"}@media (min-width: 56.25em){.about__bio{grid-template-columns:auto min-content;grid-template-areas:"subtitle subtitle" "description image"}}.about__bio .about__subtitle{grid-area:subtitle;max-width:20em}@media (min-width: 56.25em){.about__bio .about__subtitle{margin-top:0}}.about__bio--info{--dimension: 21em;position:relative}@media (hover: none){.about__bio--info{--dimension: 100%;max-width:25em;margin:0 auto}.about__bio--info .about__container:hover .about__bio--info__image,.about__bio--info .about__container:focus-within .about__bio--info__image{rotate:y 0deg}.about__bio--info .about__bio--info__image img{position:relative;height:10em;width:10em;left:50%;translate:-50% 0;bottom:-5em;background:var(--primary-gradient);border-radius:var(--radius-round);z-index:1}.about__bio--info .about__bio--info__contact{margin-top:0;padding-top:5em}.about__bio--info .about__bio--info__contact--quote__button{display:grid}.about__bio--info .about__bio--info__buttons{max-width:18em;margin:.75em auto 0}}@media (hover: none) and (min-width: 56.25em){.about__bio--info{--dimension: 21em;max-width:100%}.about__bio--info .about__bio--info__image img{bottom:5em}.about__bio--info .about__bio--info__contact{top:-10em}.about__bio--info .about__bio--info__buttons{margin-top:-9em;max-width:100%}}.about__bio--info__container{position:relative;width:var(--dimension);perspective:1000px}.about__bio--info__container:hover .about__bio--info__image,.about__bio--info__container:focus-within .about__bio--info__image{rotate:y 180deg}.about__bio--info__container:hover .about__bio--info__contact,.about__bio--info__container:focus-within .about__bio--info__contact{opacity:1;visibility:visible}.about__bio--info__image{grid-area:image;aspect-ratio:1/1;position:relative;transition:rotate 1s ease}.about__bio--info__image img{display:grid;width:100%;height:100%;object-fit:cover;border:dashed .125em var(--opaque-200);background-color:var(--bg-300);border-radius:var(--radius-200)}.about__bio--info__contact{display:grid;place-items:center;text-align:center;position:absolute;top:-2px;left:-2px;width:calc(100% + 3px);height:calc(var(--dimension) + 3px);border-radius:var(--radius-200);background-color:var(--bg-400);visibility:hidden;opacity:0;transition:visibility 0ms .3s ease,opacity .1s .2s ease,rotate 1s ease}@media (hover: none){.about__bio--info__contact{position:relative;width:100%;height:auto;rotate:y 0deg;inset:auto;visibility:visible;opacity:1;margin-top:.5em;border:solid .125em var(--bg-300)}.about__bio--info__contact .about__bio--info__contact--content{rotate:y 0deg}}.about__bio--info__contact--content{rotate:y 180deg}.about__bio--info__contact--name{color:var(--text-200);font-size:1.75em;font-weight:700;margin-bottom:0}.about__bio--info__contact--title{margin-bottom:0}.about__bio--info__contact--socials .social__item{margin-left:0;opacity:1;scale:1}.about__bio--info__contact--socials svg{background-color:var(--bg-400)}.about__bio--info__contact--quote{margin-top:1em;position:relative;border:solid .125em var(--bg-400);border-radius:var(--radius-200);background-color:var(--opaque-20);overflow:hidden}.about__bio--info__contact--quote blockquote{margin:.5em 0;font-size:.95em}.about__bio--info__contact--quote cite{font-size:.75em;color:var(--text-200)}.about__bio--info__contact--quote .quotation{position:absolute;font-size:2.5em;rotate:-20deg;color:var(--opaque-20);z-index:-1}.about__bio--info__contact--quote .quotation__open{bottom:-.25em;left:-.25em}.about__bio--info__contact--quote .quotation__close{top:-.25em;right:-.25em}.about__bio--info__contact--quote__button{--dimension: 1.75em;border:0;position:absolute;bottom:.5em;right:.5em;z-index:1;width:var(--dimension);height:var(--dimension);display:none;place-items:center;font-size:1.25em;border:solid .075em var(--opaque-20);border-radius:var(--radius-round);color:inherit;background-color:var(--opaque-20);transition:transform .3s ease,color .3s ease,background-color .3s ease}.about__bio--info__contact--quote__button:hover{transform:rotate(90deg);color:var(--text-200);background-color:var(--opaque-40)}.about__bio--info__buttons{margin-top:.5em}.about__bio--info__buttons a:first-child{flex:1}.about__bio--info__buttons a:last-child{font-size:1.25em;border-color:var(--opaque-40)}.about__bio--info__buttons a:last-child:hover{background-color:var(--bg-400)}.about__bio--description{grid-area:description;position:relative}@media (min-width: 56.25em){.about__bio--description{flex:min-content;order:-1}}.about__soft-skills{margin-top:1em}.about__soft-skills--list{margin-top:2em}.about__soft-skills--list__item{position:relative;grid-column:span 12;border:solid .125em var(--opaque-20);border-radius:var(--radius-200);background-color:var(--opaque-20)}@media (min-width: 43.75em){.about__soft-skills--list__item{grid-column:span 6}}.about__soft-skills--list__item h4{margin-bottom:.25em;padding-bottom:.25em;color:var(--text-200);font-size:1.25em;border-bottom:solid .105em var(--opaque-40)}.about__soft-skills--list__item h4 svg{color:var(--primary-gradient)}.about__soft-skills--list__item p{margin:0}.about__tech--content{position:relative}.about__tech--list__item{position:relative;background-color:var(--opaque-10);border:solid .105em var(--opaque-40);border-radius:var(--radius-200);cursor:default}.about__tech--list__item svg{font-size:1.5em}.about__tech--list__item h4{font-size:1em;margin-bottom:.15em}.about__tech--list__item--tooltip{position:absolute;top:130%;left:50%;translate:-50% 0;width:max-content;max-width:10em;padding:.5em;text-align:center;border:solid .105em var(--opaque-100);border-radius:var(--radius-200);background-color:var(--bg-300);box-shadow:0 8px 20px #00000040;z-index:1}.about__tech--list__item--tooltip:before{content:"";position:absolute;top:-.5em;left:50%;translate:-50% 0;rotate:45deg;width:1em;height:1em;border-top:solid .105em var(--opaque-100);border-left:solid .105em var(--opaque-100);background-color:var(--bg-300);border-radius:var(--radius-100)}.about__tech--list__item--tooltip p{font-size:.75em;margin:0}.contact__section .container{position:relative;background:center/cover no-repeat}@media (min-width: 56.25em){.contact__section .container{display:flex;gap:2em}}.contact__section .container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,var(--bg-200),var(--contact-opaque-bg-100),var(--bg-200))}.contact__text{position:relative;text-align:center}@media (min-width: 56.25em){.contact__text{flex:1;text-align:left}}.contact__title{order:2;margin-bottom:0;font-size:clamp(3.5em,13vw,4.275em);font-weight:700;-webkit-text-fill-color:var(--contact-opaque-bg-100);-webkit-text-stroke:thin var(--primary-100)}@media (min-width: 56.25em){.contact__title{order:unset}}.contact__description{order:1;max-width:40em;margin:0 auto;letter-spacing:.05em;font-size:1.15em}.contact__social{order:3}.contact__form{max-width:40em;margin:2em auto 0}@media (min-width: 56.25em){.contact__form{margin:0;flex:1}}.contact__form:invalid button{background:var(--opaque-200);box-shadow:none}.contact__form:invalid button:focus,.contact__form:invalid button:hover{top:0}.contact__form:invalid button:focus svg,.contact__form:invalid button:hover svg{left:0}.contact__form:invalid button svg:first-child{display:none}.contact__form:invalid button svg:last-child{display:block}.contact__form button svg{left:0}.contact__form button svg:last-child{display:none}.form-field{--valid: hsl(120, 100%, 50%);position:relative;grid-column:span 12}.form-field:not(:first-child){margin-top:.75em}.form-field:focus-within:before{opacity:0}.form-field__label{position:absolute;top:.55em;left:.55em;color:var(--opaque-100)}.form-field__label--letter{position:relative;top:0;opacity:0;transition:top .3s ease-in-out,opacity .3s ease-in-out}.form-field__label--letter:last-child{opacity:0}.form-field input,.form-field textarea,.form-field .select{margin:0;position:relative;display:block;font-family:inherit;font-size:inherit;min-width:100%;color:inherit;background-color:transparent;border:solid .125em var(--opaque-200);border-radius:var(--radius-200);transition:border-color .1s ease-in-out}.form-field input:focus,.form-field textarea:focus,.form-field .select:focus{outline:none;background-color:var(--contact-opaque-bg-100);border-color:var(--opaque-100)}.form-field input:hover,.form-field textarea:hover,.form-field .select:hover{border-color:var(--opaque-300)}.form-field input:valid,.form-field textarea:valid,.form-field .select:valid{background-color:var(--contact-opaque-bg-100)}.form-field textarea{resize:none;min-height:5em}.form-field__indicator{position:absolute;bottom:-.5px;left:50%;translate:-50%;height:.105em;margin:auto;width:0;background:var(--primary-gradient);border-radius:0 0 var(--radius-200) var(--radius-200);transition:width .3s ease}.form-field__indicator:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--valid);opacity:0;border-radius:0 0 var(--radius-200) var(--radius-200);transition:opacity .3s ease}.form-field:focus-within .form-field__label,.form-field.open .form-field__label{color:var(--text-300)}.form-field:focus-within .form-field__label--letter,.form-field.open .form-field__label--letter{top:-2em;opacity:.75}.form-field:focus-within .form-field__label:last-child,.form-field.open .form-field__label:last-child{opacity:1}.form-field:focus-within .form-field__indicator,.form-field.open .form-field__indicator{width:99.5%}.form-field.open .select__icon{rotate:180deg}.form-field__submit{grid-column:12;text-align:right}.select{cursor:pointer}.select:active{background-color:red}.select__container .hidden-input{all:unset;width:0;height:0;position:absolute}.select__placeholder{color:var(--opaque-200)}.select__icon{position:absolute;top:0;right:0;bottom:0;font-size:1.25em;color:var(--opaque-200);transition:rotate .25s ease-in-out}.select__option--list{position:absolute;top:125%;width:100%;background-color:var(--opaque-light-200);-webkit-backdrop-filter:blur(1em);backdrop-filter:blur(1em);border:solid .125em var(--opaque-200);border-radius:var(--radius-200);overflow:hidden;z-index:1;transition:max-height .3s ease-in-out}.select__option--item{padding-top:.5em;padding-bottom:.5em;cursor:pointer}.select__option--item:hover,.select__option--item:focus{color:var(--text-100);background-color:var(--opaque-100);outline:none}.footer{padding:2em 0 15em;font-size:.85em;color:var(--lower-mid-gray);background-color:var(--midnight-blue)}@media (max-width: 43.6875em){.footer{text-align:center}}.footer__author span,.footer__author svg:first-child{margin-right:-.5em}.footer__author span{cursor:default;color:var(--text-400)}.app .overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--opaque-100);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}:root{--tomato: hsl(9, 100%, 64%);--orange: hsl(32, 100%, 64%);--yellow: hsl(60, 100%, 82%);--white: hsl(0, 0%, 100%);--lightest-gray: hsl(0, 0%, 98%);--lighter-gray: hsl(0, 0%, 96%);--light-gray: hsl(0, 0%, 94%);--upper-mid-gray: hsl(0, 0%, 88%);--mid-gray: hsl(0, 1%, 64%);--lower-mid-gray: hsl(0, 1%, 48%);--deep-blue: hsl(210, 56%, 4%);--midnight-blue: hsl(213, 31%, 6%);--charcoal-blue: hsl(216, 20%, 10%);--slate-blue: hsl(220, 14%, 12%);--navy-blue: hsl(218, 16%, 14%);--dark-blue: hsl(213, 39%, 9%);--blue-gray: hsl(220, 23%, 38%);--opaque-10: hsla(0, 0%, 100%, .01);--opaque-20: hsla(0, 0%, 100%, .03);--opaque-30: hsla(0, 0%, 100%, .05);--opaque-40: hsla(0, 0%, 100%, .07);--opaque-100: hsla(0, 0%, 100%, .1);--opaque-200: hsla(0, 0%, 100%, .3);--opaque-300: hsla(0, 0%, 100%, .5);--opaque-400: hsla(0, 0%, 100%, .7);--opaque-light-100: hsla(0, 0%, 0%, .1);--opaque-light-200: hsla(0, 0%, 0%, .3);--opaque-light-300: hsla(0, 0%, 0%, .5);--opaque-light-400: hsla(0, 0%, 0%, .7);--hero-opaque-bg-100: hsla(210, 60%, 4%, .4);--hero-opaque-bg-200: hsla(210, 60%, 4%, .85);--contact-opaque-bg-100: hsla(213, 29%, 6%, .25);--shadow-100: 0px 8px 20px rgba(255, 99, 71, .55);--shadow-200: 0px 14px 36px rgba(255, 99, 71, .65)}body{--primary-100: var(--tomato);--primary-gradient: linear-gradient(65deg, var(--primary-100), var(--orange));--primary-radial-gradient: radial-gradient( circle at 50% 50%, var(--primary-100), transparent 50% );--text-100: var(--white);--text-200: var(--lighter-gray);--text-300: var(--upper-mid-gray);--text-400: var(--mid-gray);--bg-100: var(--deep-blue);--bg-200: var(--midnight-blue);--bg-300: var(--charcoal-blue);--bg-400: var(--slate-blue)}[data-theme=light]{--text-100: var(--deep-blue);--text-200: var(--dark-blue);--text-300: var(--navy-blue);--text-400: var(--blue-gray);--bg-100: var(--white);--bg-200: var(--lightest-gray);--bg-300: var(--lighter-gray);--bg-400: var(--light-gray);--opaque-10: hsla(0, 0%, 0%, .01);--opaque-20: hsla(0, 0%, 0%, .03);--opaque-30: hsla(0, 0%, 0%, .05);--opaque-40: hsla(0, 0%, 0%, .07);--opaque-100: hsla(0, 0%, 0%, .1);--opaque-200: hsla(0, 0%, 0%, .3);--opaque-300: hsla(0, 0%, 0%, .5);--opaque-400: hsla(0, 0%, 0%, .7);--opaque-light-100: hsla(0, 0%, 100%, .1);--opaque-light-200: hsla(0, 0%, 100%, .3);--opaque-light-300: hsla(0, 0%, 100%, .5);--opaque-light-400: hsla(0, 0%, 100%, .7);--hero-opaque-bg-100: hsla(0, 0%, 100%, .4);--hero-opaque-bg-200: hsla(0, 0%, 100%, .85);--contact-opaque-bg-100: hsla(0, 0%, 100%, .25);--shadow-100: 0px 8px 20px hsla(0, 0%, 0%, .25);--shadow-200: 0px 14px 36px hsla(0, 0%, 0%, .35)}:root{--radius-100: .15rem;--radius-200: .25rem;--radius-300: .5rem;--radius-round: 50%;--radius-pill: 10rem}html{box-sizing:border-box;font-size:16px}*,*:before,*:after{box-sizing:inherit}body{margin:0;padding:0;font-family:Montserrat,sans-serif;font-size:clamp(.875rem,2vw,.9375rem);line-height:1.3;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;color:var(--text-400);background-color:var(--deep-blue)}.error-boundary{min-height:100vh}h1,h2,h3,h4{margin-top:0;font-family:Mitr,sans-serif;font-weight:300;color:var(--text-200);line-height:1.2}p{margin-top:0}a,a:visited,a:active{text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{--focus-outline-color: #3c83f6bf;outline:3px solid var(--focus-outline-color);outline-offset:2px;border-radius:var(--radius-200);animation:focus-pulse .5s forwards ease-in-out}@keyframes focus-pulse{0%{outline-width:3px}20%{outline-width:5px}}.link{position:relative;display:inline-flex;color:#3c83f6bf;text-decoration:none;gap:.15em;cursor:pointer;transition:color .2s ease-in-out}.link:before,.link:after{content:"";position:absolute;bottom:0;left:0;height:.075em;border-radius:var(--radius-pill)}.link:before{background:#3c83f6bf;width:100%}.link:after{transition:width .2s ease-in-out;background:var(--primary-gradient);width:0}.link svg{font-size:.75em}.link:hover:after{width:100%}button{background:none;border:none;padding:0;cursor:pointer}ul{list-style:none;padding:0;margin:0}.main{background-color:var(--bg-200)}.container{padding-left:1rem;padding-right:1rem;min-width:25em;max-width:65em;margin:0 auto}@media (min-width: 43.75em){.container{padding-left:1.5rem;padding-right:1.5rem}}.section .container{padding-top:4em;padding-bottom:8em}.section__title{margin-bottom:2em;text-align:center;font-size:1.75em;font-weight:300}.section__title--word{position:relative}.section__title--word .underlined-word{color:var(--opaque-100)}.section__title--word .underline{position:absolute;bottom:0;left:0;width:100%;height:.075em;background:var(--primary-gradient);border-radius:5px}.section__subtitle{position:relative;max-width:50em;margin:0 auto 2em}.flex{display:flex!important}.flex-inline{display:inline-flex!important}.flex-jc-sb{justify-content:space-between}.flex-jc-c{justify-content:center}.flex-jc-fs{justify-content:flex-start}.flex-jc-fe{justify-content:flex-end}.flex-ai-c{align-items:center}.flex-ai-fs{align-items:flex-start}.flex-ai-fe{align-items:flex-end}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}@media (min-width: 43.75em){.flex_md{display:flex!important}}@media (min-width: 43.75em){.flex_md-jc-sb{justify-content:space-between}}@media (min-width: 43.75em){.flex_md-jc-c{justify-content:center}}@media (min-width: 43.75em){.flex_md-jc-fs{justify-content:flex-start}}@media (min-width: 43.75em){.flex_md-jc-fe{justify-content:flex-end}}@media (min-width: 43.75em){.flex_md-ai-c{align-items:center}}@media (min-width: 43.75em){.flex_md-ai-fs{align-items:flex-start}}@media (min-width: 43.75em){.flex_md-ai-fe{align-items:flex-end}}@media (min-width: 43.75em){.flex_md-row{flex-direction:row}}@media (min-width: 43.75em){.flex_md-col{flex-direction:column}}@media (min-width: 43.75em){.flex_md-wrap{flex-wrap:wrap}}@media (min-width: 56.25em){.flex_lg{display:flex!important}}@media (min-width: 56.25em){.flex_lg-jc-sb{justify-content:space-between}}@media (min-width: 56.25em){.flex_lg-jc-c{justify-content:center}}@media (min-width: 56.25em){.flex_lg-jc-fs{justify-content:flex-start}}@media (min-width: 56.25em){.flex_lg-jc-fe{justify-content:flex-end}}@media (min-width: 56.25em){.flex_lg-ai-c{align-items:center}}@media (min-width: 56.25em){.flex_lg-ai-fs{align-items:flex-start}}@media (min-width: 56.25em){.flex_lg-ai-fe{align-items:flex-end}}@media (min-width: 56.25em){.flex_lg-row{flex-direction:row}}@media (min-width: 56.25em){.flex_lg-col{flex-direction:column}}@media (min-width: 56.25em){.flex_lg-wrap{flex-wrap:wrap}}.gap-0{gap:0}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.75rem}.gap-4{gap:2.5rem}@media (min-width: 43.75em){.gap_md{gap:0}}@media (min-width: 43.75em){.gap_md-1{gap:.5rem}}@media (min-width: 43.75em){.gap_md-2{gap:1rem}}@media (min-width: 43.75em){.gap_md-3{gap:1.75rem}}@media (min-width: 43.75em){.gap_md-4{gap:2.5rem}}@media (min-width: 56.25em){.gap_lg{gap:0}}@media (min-width: 56.25em){.gap_lg-1{gap:.5rem}}@media (min-width: 56.25em){.gap_lg-2{gap:1rem}}@media (min-width: 56.25em){.gap_lg-3{gap:1.75rem}}@media (min-width: 56.25em){.gap_lg-4{gap:2.5rem}}.p-0{padding:0}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.75rem}@media (min-width: 30em){.p_sm-0{padding:0}}@media (min-width: 30em){.p_sm-1{padding:.5rem}}@media (min-width: 30em){.p_sm-2{padding:1rem}}@media (min-width: 30em){.p_sm-3{padding:1.75rem}}@media (min-width: 43.75em){.p_md-0{padding:0}}@media (min-width: 43.75em){.p_md-1{padding:.5rem}}@media (min-width: 43.75em){.p_md-2{padding:1rem}}@media (min-width: 43.75em){.p_md-3{padding:1.75rem}}@media (min-width: 56.25em){.p_lg-0{padding:0}}@media (min-width: 56.25em){.p_lg-1{padding:.5rem}}@media (min-width: 56.25em){.p_lg-2{padding:1rem}}@media (min-width: 56.25em){.p_lg-3{padding:1.75rem}}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.5rem;padding-right:.5rem}.px-2{padding-left:1rem;padding-right:1rem}.px-3{padding-left:1.75rem;padding-right:1.75rem}@media (min-width: 30em){.px_sm-0{padding-left:0;padding-right:0}}@media (min-width: 30em){.px_sm-1{padding-left:.5rem;padding-right:.5rem}}@media (min-width: 30em){.px_sm-2{padding-left:1rem;padding-right:1rem}}@media (min-width: 30em){.px_sm-3{padding-left:1.75rem;padding-right:1.75rem}}@media (min-width: 43.75em){.px_md-0{padding-left:0;padding-right:0}}@media (min-width: 43.75em){.px_md-1{padding-left:.5rem;padding-right:.5rem}}@media (min-width: 43.75em){.px_md-2{padding-left:1rem;padding-right:1rem}}@media (min-width: 43.75em){.px_md-3{padding-left:1.75rem;padding-right:1.75rem}}@media (min-width: 56.25em){.px_lg-0{padding-left:0;padding-right:0}}@media (min-width: 56.25em){.px_lg-1{padding-left:.5rem;padding-right:.5rem}}@media (min-width: 56.25em){.px_lg-2{padding-left:1rem;padding-right:1rem}}@media (min-width: 56.25em){.px_lg-3{padding-left:1.75rem;padding-right:1.75rem}}.pl-0{padding-left:0}.pl-1{padding-left:.5rem}.pl-2{padding-left:1rem}.pl-3{padding-left:1.75rem}@media (min-width: 43.75em){.pl_md-0{padding-left:0}}@media (min-width: 43.75em){.pl_md-1{padding-left:.5rem}}@media (min-width: 43.75em){.pl_md-2{padding-left:1rem}}@media (min-width: 43.75em){.pl_md-3{padding-left:1.75rem}}@media (min-width: 56.25em){.pl_lg-0{padding-left:0}}@media (min-width: 56.25em){.pl_lg-1{padding-left:.5rem}}@media (min-width: 56.25em){.pl_lg-2{padding-left:1rem}}@media (min-width: 56.25em){.pl_lg-3{padding-left:1.75rem}}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.5rem;padding-bottom:.5rem}.py-2{padding-top:1rem;padding-bottom:1rem}.py-3{padding-top:1.75rem;padding-bottom:1.75rem}@media (min-width: 30em){.py_sm-0{padding-top:0;padding-bottom:0}}@media (min-width: 30em){.py_sm-1{padding-top:.5rem;padding-bottom:.5rem}}@media (min-width: 30em){.py_sm-2{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 30em){.py_sm-3{padding-top:1.75rem;padding-bottom:1.75rem}}@media (min-width: 43.75em){.py_md-0{padding-top:0;padding-bottom:0}}@media (min-width: 43.75em){.py_md-1{padding-top:.5rem;padding-bottom:.5rem}}@media (min-width: 43.75em){.py_md-2{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 43.75em){.py_md-3{padding-top:1.75rem;padding-bottom:1.75rem}}@media (min-width: 56.25em){.py_lg-0{padding-top:0;padding-bottom:0}}@media (min-width: 56.25em){.py_lg-1{padding-top:.5rem;padding-bottom:.5rem}}@media (min-width: 56.25em){.py_lg-2{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 56.25em){.py_lg-3{padding-top:1.75rem;padding-bottom:1.75rem}}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.5rem}.pb-2{padding-bottom:1rem}.pb-3{padding-bottom:1.75rem}@media (min-width: 43.75em){.pb_md-0{padding-bottom:0}}@media (min-width: 43.75em){.pb_md-1{padding-bottom:.5rem}}@media (min-width: 43.75em){.pb_md-2{padding-bottom:1rem}}@media (min-width: 43.75em){.pb_md-3{padding-bottom:1.75rem}}@media (min-width: 56.25em){.pb_lg-0{padding-bottom:0}}@media (min-width: 56.25em){.pb_lg-1{padding-bottom:.5rem}}@media (min-width: 56.25em){.pb_lg-2{padding-bottom:1rem}}@media (min-width: 56.25em){.pb_lg-3{padding-bottom:1.75rem}}.pt-0{padding-top:0}.pt-1{padding-top:.5rem}.pt-2{padding-top:1rem}.pt-3{padding-top:1.75rem}@media (min-width: 43.75em){.pt_md-0{padding-top:0}}@media (min-width: 43.75em){.pt_md-1{padding-top:.5rem}}@media (min-width: 43.75em){.pt_md-2{padding-top:1rem}}@media (min-width: 43.75em){.pt_md-3{padding-top:1.75rem}}@media (min-width: 56.25em){.pt_lg-0{padding-top:0}}@media (min-width: 56.25em){.pt_lg-1{padding-top:.5rem}}@media (min-width: 56.25em){.pt_lg-2{padding-top:1rem}}@media (min-width: 56.25em){.pt_lg-3{padding-top:1.75rem}}.grid{display:grid}.grid-col{grid-template-columns:repeat(12,1fr)}.grid-col-5{grid-template-columns:repeat(5,1fr)}.grid-pi-c{place-items:center}.grid-gap-0{grid-gap:0}.grid-gap-1{grid-gap:.5rem}.grid-gap-2{grid-gap:1rem}.grid-gap-3{grid-gap:1.75rem}@media (min-width: 43.75em){.grid_md{display:grid}}@media (min-width: 43.75em){.grid_md-col{grid-template-columns:repeat(12,1fr)}}@media (min-width: 43.75em){.grid_md-col-5{grid-template-columns:repeat(5,1fr)}}@media (min-width: 43.75em){.grid_md-pi-c{place-items:center}}@media (min-width: 43.75em){.grid_md-gap-0{grid-gap:0}}@media (min-width: 43.75em){.grid_md-gap-1{grid-gap:.5rem}}@media (min-width: 43.75em){.grid_md-gap-2{grid-gap:1rem}}@media (min-width: 43.75em){.grid_md-gap-3{grid-gap:1.75rem}}
