*,*:before,*:after{margin:0;padding:0;box-sizing:inherit}:root{--clr-white: 0, 0%, 100%;--clr-black: 0, 0%, 8%;--clr-buttercup: 42, 85%, 50%;--clr-tulip-tree: 42, 85%, 60%;--clr-black-rock: 246, 90%, 11%;--clr-deep-koamaru: 245, 77%, 27%;--clr-primary-1: var(--clr-black-rock);--clr-primary-2: var(--clr-deep-koamaru);--clr-secondary-1: var(--clr-buttercup);--clr-secondary-2: var(--clr-tulip-tree);--primary-gradient: 90deg, hsl(var(--clr-primary-1)) 0%, hsl(var(--clr-primary-2)) 100%;--secondary-gradient: 90deg, hsl(var(--clr-secondary-1)) 0%, hsl(var(--clr-secondary-2)) 100%;--base-font-size: 1.6rem;--body-text-font-size: clamp( var(--base-font-size), 3vw, calc(var(--base-font-size) + .2rem) );--subtitle-font-size: clamp(1.6rem, 3vw, 2rem);--container-max-width: 140rem;--image-max-width: clamp(50rem, 48vw, 55rem);--border-radius: .5rem;--section-y-min-spacing: 7rem;--section-y-ideal-spacing: 9vw;--card-spacing: clamp(5rem, 6vw, 7rem);--card-max-width: 60rem;--icon-size: clamp(5rem, 7vw, 6rem);--icon-y-spacing: 2rem}html{box-sizing:border-box;font-size:62.5%;scroll-behavior:smooth;scroll-padding-top:9rem}body{font-size:var(--base-font-size);font-family:DM Sans,sans-serif;color:hsl(var(--clr-black));background-color:hsl(var(--clr-white))}h1,h2,h3{font-family:Poppins,sans-serif}h1,h2{font-weight:700}h2,h3{color:hsl(var(--clr-primary-2))}h1{--min-font-size: 3.2rem;font-size:clamp(var(--min-font-size),5.2vw,6.4rem);color:var(--clr-white);line-height:1.4}h2{font-size:clamp(3.2rem,4vw,4.8rem)}h3{font-size:clamp(2.2rem,4vw,2.6rem);font-weight:600}p{line-height:1.5;font-size:var(--body-text-font-size)}img{display:block;width:100%;object-fit:cover}ul{list-style:none}a,button{font-size:var(--body-text-font-size)}.hero{--navbar-height: clamp(9.5rem, 25vw, 10.6rem);--anim-duration: .6s;--anim-timing-function: ease-out;position:relative;padding-top:clamp(calc(var(--section-y-min-spacing) + var(--navbar-height)),23.5vw,calc(12rem + var(--navbar-height)));padding-bottom:clamp(15rem,20vw,18rem);background-image:linear-gradient(var(--primary-gradient));color:hsl(var(--clr-white));overflow:hidden}.hero__text-content{max-width:58.5rem;margin-bottom:6rem}.hero__tagline{font-weight:700;font-size:var(--subtitle-font-size);animation:slideInFromLeft var(--anim-duration) calc(var(--anim-duration) / 2) var(--anim-timing-function) backwards}.hero__title{margin-top:1rem;margin-bottom:4rem;animation:slideInFromLeft var(--anim-duration) var(--anim-timing-function)}.hero__subtitle{margin-bottom:4rem;font-size:var(--subtitle-font-size);opacity:.8;animation:slideInFromBelow var(--anim-duration) var(--anim-timing-function)}.hero .link-btn{animation:slideInFromBelow var(--anim-duration) calc(var(--anim-duration) / 2) var(--anim-timing-function) backwards}.hero__image{max-width:var(--image-max-width);animation:slideInFromRight var(--anim-duration) var(--anim-timing-function)}.hero__wave-container{position:absolute;bottom:0;left:0;width:100%;overflow:hidden;line-height:0;transform:rotate(180deg)}.hero__wave-container svg{position:relative;display:block;width:calc(125% + 1.3px);height:clamp(5rem,12vw,20rem)}.hero__wave-container .shape-fill{fill:#fff}.services__grid{display:grid;gap:var(--card-spacing);grid-template-columns:repeat(auto-fit,minmax(min(100%,32rem),1fr))}.service .icon{margin-bottom:var(--icon-y-spacing)}.service__title{margin-bottom:1rem}.service__description{max-width:37ch}.features{--features-spacing: clamp(3rem, 6vw, 4rem);background-color:hsl(var(--clr-primary-1))}.features .section__title{color:hsl(var(--clr-white))}.features__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,48rem),1fr));gap:var(--features-spacing)}.feature{padding:var(--features-spacing);border-radius:var(--border-radius);background-color:#181249}.feature .two-col-card__title{color:hsl(var(--clr-white))}.feature__description{color:hsl(var(--clr-white));opacity:.7}.about__text-content{margin-bottom:6rem}.about__image{max-width:50rem}.about .two-col-card{max-width:clamp(54rem,70vw,var(--card-max-width))}.about .two-col-card:not(:last-child){margin-bottom:var(--card-spacing)}.process{counter-reset:process-counter}.process__steps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,45rem),1fr));gap:var(--card-spacing)}.step{max-width:var(--card-max-width)}.step:before{counter-increment:process-counter;content:counter(process-counter);display:flex;justify-content:center;align-items:center;width:var(--icon-size);height:var(--icon-size);background-image:linear-gradient(var(--secondary-gradient));border-radius:10rem;font-size:clamp(3rem,5vw,3.6rem);color:hsl(var(--clr-white))}@media only screen and (min-width: 23.475em){h1{--min-font-size: 3.8rem;line-height:1.3}}@media only screen and (min-width: 62.5em){.hero .restrictive-container{display:flex;justify-content:space-between}.hero__text-content{margin-bottom:0;margin-right:4rem}}@media only screen and (min-width: 74em){.about__content{display:flex;justify-content:space-between}.about__text-content{margin-bottom:0;margin-right:4rem}.about__image{max-width:var(--image-max-width)}}@media only screen and (min-width: 112.5em){html{font-size:82%}}@media only screen and (min-width: 156.25em){html{font-size:100%}}@media only screen and (hover: hover) and (pointer: fine){.link-btn:hover{transform:translateY(-3px) scale(1.05)}.link-btn:hover:before{opacity:1}}header{--full-bar-width: 4rem;--bar-border-radius: 1rem;position:fixed;width:100%;padding:2rem 0;box-shadow:0 6px 30px hsla(var(--clr-primary-2),.12);background-color:hsl(var(--clr-white));z-index:1}header .restrictive-container{display:flex;justify-content:space-between;align-items:center}.logo{width:clamp(10rem,25vw,13rem)}.nav__list{--nav-item-spacing: 2.5rem;background-color:hsl(var(--clr-white));position:fixed;top:0;left:0;width:100vw;height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translate(100%);opacity:0;transition:transform .5s ease-in-out,opacity .5s;z-index:9}.nav__item:not(:last-child){margin-bottom:var(--nav-item-spacing)}.nav__link{--transition-duration: .2s;display:inline-block;font-weight:500;transition:transform var(--transition-duration) ease-in-out,color var(--transition-duration) ease-in-out}.nav__link,.nav__link:hover,.nav__link:active,.nav__link:visited{text-decoration:none;color:hsl(var(--clr-black))}#nav__hamburger-btn{border:none;background-color:transparent;display:flex;flex-direction:column;position:relative;z-index:10}#nav__hamburger-btn>*:not(:last-child){margin-bottom:.8rem}.half-bar-container{display:flex}.bar{display:inline-block;height:calc(var(--full-bar-width) / 7);background-color:hsl(var(--clr-primary-2));transition:transform .4s,opacity .8s}.bar--full{width:var(--full-bar-width);border-radius:var(--bar-border-radius)}.bar--half{width:calc(var(--full-bar-width) / 2)}.bar--left{border-radius:var(--bar-border-radius) 0 0 var(--bar-border-radius)}.bar--right{border-radius:0 var(--bar-border-radius) var(--bar-border-radius) 0}@media only screen and (min-width: 62.5em){.nav__list{all:unset;list-style:none;display:flex;align-items:center}.nav__item:not(:last-child){margin-bottom:0;margin-right:var(--nav-item-spacing)}#nav__hamburger-btn{display:none}}@media only screen and (hover: hover) and (pointer: fine){.nav__link:hover{color:hsl(var(--clr-primary-2));transform:translateY(-3px)}}footer{background-color:hsl(var(--clr-primary-1));color:hsl(var(--clr-white))}.footer__content{padding:clamp(var(--section-y-min-spacing),var(--section-y-ideal-spacing),9rem) 0}.footer__logo{object-fit:contain;max-width:clamp(25rem,30vw,38rem);margin-bottom:6rem}.footer__contact-title{color:hsl(var(--clr-white));margin-bottom:.5rem}.footer__contact-subtitle{margin-bottom:4rem;font-weight:600;font-size:var(--subtitle-font-size)}.footer__contact-info{font-style:normal}.footer__contact-info>*{display:flex;align-items:center}.footer__contact-info>*:not(:last-child){margin-bottom:2rem}.footer__contact-info a{text-decoration:none}.footer__contact-info a:hover{text-decoration:underline}.footer__contact-info a,.footer__contact-info:hover,.footer__contact-info:visited,.footer__contact-info:active{color:hsl(var(--clr-white))}.footer__contact-icon{width:2.6rem;margin-right:1.3rem}.footer__copyright{padding:3rem 0;text-align:center;border-top:1px solid hsla(var(--clr-primary-2),.8)}.footer__copyright small{opacity:.7}@media only screen and (min-width: 62.5em){.footer__content{display:flex;justify-content:space-between}.footer__logo{margin-bottom:0}}.restrictive-container{width:89%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto}.section{padding-top:clamp(var(--section-y-min-spacing),var(--section-y-ideal-spacing),9rem);padding-bottom:clamp(calc(var(--section-y-min-spacing) + 2rem),var(--section-y-ideal-spacing),11rem);opacity:0;transform:translateY(15%);transition:transform .7s ease-out,opacity 1s;overflow:hidden}.section__title{margin-bottom:clamp(5rem,5vw,7rem)}.fadeIntoView{opacity:1;transform:translateY(0)}.link-btn{position:relative;display:inline-block;padding:.7em 1.3em;font-weight:500;background-image:linear-gradient(var(--secondary-gradient));border-radius:var(--border-radius);transition:transform .2s ease-in-out}.link-btn:before{position:absolute;content:"";width:100%;height:100%;top:0;left:0;border-radius:var(--border-radius);box-shadow:0 .5rem 2rem 1px #00000026;opacity:0;transition:opacity .2s}.link-btn,.link-btn:hover,.link-btn:active,.link-btn:visited{text-decoration:none;color:hsl(var(--clr-white))}.icon{width:var(--icon-size);height:var(--icon-size)}.secondary-gradient-text{color:transparent;background-image:linear-gradient(var(--secondary-gradient));-webkit-background-clip:text;background-clip:text}.two-col-card__title{margin-bottom:1.2rem}.two-col-card .icon,.two-col-card:before{margin-bottom:var(--icon-y-spacing)}.visible{display:block}.rotate-down{transform:translateY(1.3rem) rotate(45deg)}.rotate-up{transform:translateY(-1.3rem) rotate(-45deg)}.disappear-to-left{opacity:0;transform:translate(-1.5rem)}.disappear-to-right{opacity:0;transform:translate(1.5rem)}.enter-screen-from-right{opacity:1;transform:translate(0)}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-50%)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(50%)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromBelow{0%{opacity:0;transform:translateY(150%)}to{opacity:1;transform:translateY(0)}}@media only screen and (min-width: 31.25em){.two-col-card{display:flex}.two-col-card .icon,.two-col-card:before{flex-shrink:0;margin-bottom:0;margin-right:2.5rem}}
