*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{padding:0;margin:0;list-style:none}a{text-decoration:none}html:focus-within{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}button{background:none;border:none;margin:0;padding:0;cursor:pointer}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--clr-primary: hsl(240, 100%, 15%);--clr-primary-dark: hsl(240, 100%, 5%);--clr-accent: hsl(260, 80%, 50%);--clr-accent-dark: hsl(260, 80%, 30%);--clr-text: #fff;--bg: radial-gradient(ellipse at top left, hsl(260, 100%, 10%) 5%, var(--clr-primary-dark), var(--clr-primary));--bg-accent: radial-gradient(ellipse at top left, hsl(260, 100%, 12%) 5%, hsl(240, 100%, 8%), hsl(240, 100%, 20%));--gradient: linear-gradient(180deg, var(--clr-accent), var(--clr-accent-dark));--header-size: 100px;--hamburger-size: 30px;--side-space: 3rem}::-webkit-scrollbar{width:15px}::-webkit-scrollbar-track{background:hsl(240,100%,5%)}::-webkit-scrollbar-thumb{background:#fff;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ddd}.contact__wrap{width:100%;max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.contact__buttons{margin-top:1rem;display:flex;justify-content:space-between}body{font-family:Montserrat,sans-serif;color:var(--clr-text);overflow-x:hidden;overflow-y:auto}#root{display:flex;flex-direction:column;min-height:100vh;position:relative}.noselect{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}*:focus-visible{outline-offset:3px}.flex-column{display:flex;flex-direction:column;align-items:flex-start}.flex-row{display:flex;align-items:center}.display-contents{display:contents}:where(*){font-family:inherit;color:inherit}.bg{position:fixed;top:0;left:0;right:0;bottom:0;min-height:110vh;background-image:var(--bg);background-color:var(--clr-primary-dark);background-size:cover;background-repeat:no-repeat;background-position:center;z-index:-10}ul{display:flex;flex-direction:column;gap:.5rem;font-size:1.1rem;text-align:start;margin-top:1.5rem;margin-bottom:1rem;width:100%}ul>li{display:flex}.list__marker{margin-top:.2em;margin-right:.5rem;flex-shrink:0}@media only screen and (max-width: 64rem){:root{--side-space: 2rem}}@media only screen and (max-width: 40rem){:root{--side-space: 1rem}}section{padding:1rem var(--side-space);position:relative;overflow:hidden;flex:1}.section__title{font-family:Poppins,sans-serif;font-size:clamp(3rem,10vw,6rem);font-weight:800;line-height:1;position:relative;margin:0 auto .7em;width:fit-content;isolation:isolate;white-space:nowrap;--percent: 0%}.section__title:after{z-index:-1;content:"";position:absolute;left:0;right:0;bottom:-.25em;height:.32em;background-color:var(--clr-accent);clip-path:url(#clipPath)}.section__title:before{content:attr(data-text);position:absolute;top:0;left:50%;translate:-50% 0;color:transparent;-webkit-text-stroke:2px var(--clr-accent);white-space:nowrap;opacity:.15;z-index:-1;rotate:2deg;width:100vw;overflow:hidden;display:flex;justify-content:center;clip-path:polygon(calc(50% - var(--percent)) 0,calc(50% + var(--percent)) 0,calc(50% + var(--percent)) 100%,calc(50% - var(--percent)) 100%)}.section__title.small{font-size:clamp(2.5rem,7vw,3rem);text-transform:uppercase;letter-spacing:.1em}.section__bg{position:absolute;font-size:clamp(10rem,25vw,20rem);color:var(--clr-accent);opacity:.1;top:50%;translate:0 -50%;line-height:1;z-index:-1}.section__bg_left{left:var(--offset, -.35em);rotate:20deg}.section__bg_right{right:var(--offset, -.35em);rotate:-20deg;scale:-1 1}@media only screen and (max-width: 48rem){.section__bg{display:none}}#about{display:flex;flex-direction:column;padding:4rem var(--side-space)}.about__grid{display:grid;grid-template-columns:1fr 1fr;font-size:1.1rem;text-align:justify;max-width:1500px;margin:0 auto;gap:3rem}.about__grid>div{flex-grow:1;flex-shrink:1;flex-basis:100%}.about__text{font-size:1.3rem}.about__text ul{margin:0;font-size:inherit}.about__text .list__marker{margin-top:0;margin-right:.5em}.about__text .list__content{text-align:justify}.about__graphic{display:flex;justify-content:center;align-items:center;flex-direction:column}.about__graphic>img,.about__graphic>svg{max-width:30rem;overflow:visible}@media only screen and (max-width: 62rem){.about__text{font-size:1.1rem}.about__graphic>img{max-height:20rem}}@media only screen and (max-width: 48rem){.about__grid{grid-template-columns:1fr}.about__text:last-child{grid-row:3}.about__graphic>img{width:80%;max-width:25rem;object-fit:contain}}@media only screen and (max-width: 40rem){.about__text{font-size:1rem}}.button{position:relative;width:fit-content;display:flex;justify-content:center;align-items:center;padding:.6em 2em;background-image:var(--gradient);font-size:1.2rem;text-decoration:none;color:#fff;border:none;border-radius:5rem;cursor:pointer;overflow:hidden;box-shadow:0 0 #473d5cbf;filter:brightness(1);transition:box-shadow .3s,filter .3s;white-space:nowrap;min-width:max-content}.button.button-outlined{background-image:var(--bg);color:#fff;border:2px solid currentColor}.button:hover,.button:focus-visible{box-shadow:0 0 1.3em #473d5cbf;filter:brightness(1.2)}.button:after{content:"";background-color:#fff3;position:absolute;top:0;left:0;right:0;bottom:0;clip-path:polygon(40px 0,80px 0,40px 100%,0 100%);translate:-80px 0;transition:translate 0s}.button:hover:after,.button:focus-visible:after{translate:100% 0;transition:translate .8s}@media only screen and (max-width: 40rem){.button{font-size:1.1rem}}.hamburger{width:var(--hamburger-size);height:var(--hamburger-size);display:flex;flex-direction:column;justify-content:center;cursor:pointer;z-index:9999999;position:relative;transition:translate .3s}.hamburger__line{width:100%;height:3px;background-color:#fff;border-radius:5px;transition:opacity 0ms .15s,translate .15s .15s,rotate .15s}.hamburger__line1{translate:0 -7px}.hamburger__line2{width:70%}.hamburger__line3{translate:0 7px}.menu-open .hamburger .hamburger__line{transition:opacity 0ms .15s,translate .15s,rotate .15s .15s}.menu-open .hamburger .hamburger__line1{translate:0 3px;rotate:45deg}.menu-open .hamburger .hamburger__line2{rotate:45deg;opacity:0}.menu-open .hamburger .hamburger__line3{translate:0 -3px;rotate:-45deg}.header{padding:0 var(--side-space);display:flex;align-items:center;height:var(--header-size);z-index:99999999;background:var(--bg);background-size:100vw 100vh}.header.fixed{position:fixed;top:0;left:0;right:0}.header__title{display:block;padding-top:.2rem;font-size:2rem;font-weight:600;letter-spacing:.2em;font-family:Poppins,sans-serif;text-decoration:none;position:relative;z-index:999999999}.header__nav{margin-left:auto;font-size:1.1rem;display:flex;align-items:center;gap:3rem}.header__nav>ul,.mobile__nav>ul{display:contents}.nav__item>a{display:inline-block;padding:.5rem 1rem;text-decoration:none;position:relative;cursor:pointer}.nav__item>a:after{content:"";position:absolute;bottom:0;left:50%;translate:-50% 0;width:4px;height:4px;background-color:var(--clr-accent);border-radius:50%;opacity:0;transition:opacity .25s}.nav__item>a.active:after,.nav__item>a:hover:after,.nav__item>a:focus-visible:after{opacity:1}.mobile__wrap{display:none;margin-left:auto}.mobile__nav{visibility:hidden;opacity:0;position:fixed;top:0;left:0;right:0;bottom:0;padding:1rem;display:flex;flex-direction:column;justify-content:center;background-color:var(--clr-primary-dark);background-image:var(--bg);align-items:center;gap:1rem;transition:opacity .3s,visibility .3s}@supports (backdrop-filter: blur(2.5rem)){.mobile__nav{background:var(--bg-transparent);backdrop-filter:blur(2.5rem)}}.menu-open .mobile__nav{visibility:visible;opacity:1}.mobile__nav .nav__item>a{font-size:1.3rem}.mobile__nav .header__button{margin-top:.5rem;font-size:1.2rem}@media only screen and (max-width: 64rem){:root{--header-size: 90px}.header__title{font-size:1.7rem}.header__nav{gap:1.8rem;font-size:1rem}.header__nav .nav__item>a{padding:.4rem .7rem}.header__nav .header__button{font-size:1.05rem}}@media only screen and (max-width: 48rem){.header__nav{display:none}.mobile__wrap{display:block}}@media only screen and (max-width: 25rem){.header__title{font-size:1.5rem}}#hero{display:flex;min-height:100vh;padding:var(--header-size) 0;position:relative;isolation:isolate}.hero__canvas{flex:1;overflow:hidden;height:calc(100vh - 2*var(--header-size));min-height:25vw;margin-right:1rem}.hero__left{flex:1;display:flex;justify-content:center;align-items:center;padding:0 var(--side-space)}.hero__content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:1rem}.hero__title{font-size:max(2rem,5.2vw);max-width:10em}.hero__title>span{margin-left:.08em;position:relative;font-style:italic;letter-spacing:.1em;isolation:isolate}.hero__title>span:after{z-index:-1;content:"";position:absolute;left:0;right:0;bottom:-.16em;height:.32em;background-color:var(--clr-accent);clip-path:url(#clipPath)}.hero__subtitle{font-size:1.2rem}.button.hero__button{margin-top:1rem;padding:.6em 2em;font-size:1.5rem;transition:box-shadow .3s,scale .3s;scale:1}.button.hero__button:hover,.button.hero__button:focus-visible{scale:1.05}@media only screen and (max-width: 64rem){.hero__subtitle{font-size:1rem}.button.hero__button{font-size:1.1rem}}@media only screen and (max-aspect-ratio: 4/3) and (min-aspect-ratio: 3/5){#hero{position:relative}.hero__canvas{position:absolute;z-index:-1;top:calc(var(--header-size) / 2);left:5%;right:5%;bottom:0;height:100vh;max-height:calc(100vh - var(--header-size));margin:0;filter:brightness(.2)}.hero__content{align-items:center}.hero__title{font-size:max(2.5rem,9vw);max-width:10em;text-align:center}.hero__subtitle{text-align:center}.button.hero__button{font-size:1.3rem}}@media only screen and (max-aspect-ratio: 3/5){#hero{flex-direction:column-reverse}.hero__canvas{padding:0 5vw;width:100%;height:auto;flex-basis:20vh;margin:0}.hero__content{align-items:center}.hero__title{font-size:max(2.5rem,10.8vw);max-width:10em;text-align:center}.hero__subtitle{text-align:center}}@media only screen and (max-width: 40rem){.button.hero__button{font-size:1.1rem}}footer{font-size:1rem;text-align:center;width:100%;padding:1.5em var(--side-space)}.footer__socials{font-size:2em}@media only screen and (max-width: 48rem){footer{font-size:.8rem}}.text-field>input{display:block;background-color:#d9d9f21a;border:none;border-bottom:2px solid #fff;padding:.3em .7em;font-size:2rem;border-radius:.5rem;width:100%;position:relative;box-shadow:0 0 .5rem #473d5c00;transition:box-shadow .3s,border-color .2s}.text-field>input:focus-visible{outline:none;box-shadow:0 0 .5rem #473d5c80}.text-field>input::placeholder{color:#d9d9f21a;font-size:.8em;translate:0 -6%}.text-field:not(.disabled)>input[valid="1"]{border-color:#32cd32}.text-field:not(.disabled)>input[valid]:not([valid="1"]){border-color:red}.text-field>input[valid]:not([valid="1"]):not(:focus),.text-field>input.invalid{animation:shake .5s ease forwards}@media only screen and (max-width: 40rem){.text__label{font-size:.9rem}.text-field>input{font-size:1.3rem}}.text__label{font-size:1.1rem;margin-bottom:.5rem}.text-field>textarea{display:block;background-color:#d9d9f21a;border:none;border-bottom:2px solid #fff;padding:.3em .7em;font-size:2rem;border-radius:.5rem;width:100%;position:relative;box-shadow:0 0 .5rem #473d5c00;transition:box-shadow .3s,border-color .2s;resize:vertical;height:12rem}.text-field.disabled{opacity:.3}.text-field>textarea:focus-visible{outline:none;box-shadow:0 0 .5rem #473d5c80}@keyframes shake{0%{translate:0 0}20%{translate:.5rem 0}40%{translate:-.5rem 0}60%{translate:.5rem 0}80%{translate:-.5rem 0}to{translate:0 0}}.text-field:not(.disabled)>textarea[valid="1"]{border-color:#32cd32}.text-field:not(.disabled)>textarea[valid]:not([valid="1"]){border-color:red}.text-field>textarea[valid]:not([valid="1"]):not(:focus),.text-field>textarea.invalid{animation:shake .5s ease forwards}@media only screen and (max-width: 40rem){.text__label{font-size:.9rem}.text-field>textarea{font-size:1.3rem}}#notfound{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem}#notfound .section__title{margin-bottom:0}.notfound__text{font-size:clamp(1rem,5vw,1.5rem);max-width:30ch;text-align:center}.notfound__bg{position:absolute;top:50%;left:50%;translate:-50% -50%;z-index:-1;font-family:Poppins,sans-serif;font-size:20rem;font-weight:900;opacity:.02}@media only screen and (max-width: 25rem){#notfound{gap:2rem}.notfound__bg{font-size:12rem}}
