@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Ancizar+Serif:ital,wght@0,300..900;1,300..900&display=swap";:root{--primary-colour: #0A1E3F;--secondary-colour: #1B2C4A;--tertiary-colour: #0062d2;--highlight-1: #4D9FFF;--highlight-2: #C3D9F5;--hightlight-3: #f1f7ff;--text-colour: #F5F5F5}*,*:before,*:after{box-sizing:border-box;margin:auto 0;font-weight:400}body{min-height:100vh;overflow-x:hidden;background-color:#fff;margin:auto 0;transition:color .5s,background-color .5s;line-height:1.6;font-family:"Ancizar Serif",serif;font-optical-sizing:auto;font-style:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header{width:100%;position:relative;z-index:9999999;margin:auto;display:flex;align-items:center;padding:16px 0;justify-content:center}.header__wrapper{padding:1em 2em;width:1440px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-direction:row-reverse}@media (max-width: 600px){.header__wrapper{flex-direction:column}}.header__logo-container{color:#000;font-size:2rem;font-weight:600;gap:20px;display:flex;align-items:center;justify-content:center;cursor:pointer}.header__logo-container a{text-decoration:none;display:flex;align-items:center;justify-content:center}.header__nav{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1em;flex-wrap:wrap}.header__link{padding:5px 10px;font-size:1.25em;text-decoration:none;font-weight:500;color:#000}.header__link.active-link{text-decoration:underline;text-underline-offset:4px}.hero-banner{width:100%;display:flex;align-items:flex-start;justify-content:flex-start;position:relative;overflow:hidden;height:calc(100vh - 120px);max-height:960px;min-height:960px}@media (max-width: 600px){.hero-banner{padding-top:20px;height:fit-content;min-height:600px;align-items:center;min-height:auto;justify-content:space-between}}@media (max-width: 1000px){.hero-banner{align-items:center;justify-content:center;flex-direction:column;height:fit-content;padding:32px 0 128px;gap:30px}}.hero-banner__wrapper{display:flex;align-items:center;justify-content:flex-start;flex-direction:column;margin:0;color:var(--secondary-colour);max-width:60%;padding:20px}@media (max-width: 1000px){.hero-banner__wrapper{max-width:100vw;align-items:center;justify-content:center;padding:20px}}.hero-banner__title-wrapper{width:100%}.hero-banner__title-wrapper h1{line-height:1}.hero-banner__title-wrapper h2{opacity:0;transform:translateY(40px);animation:fadeInRise 1.25s cubic-bezier(.77,0,.175,1) forwards}@media (max-width: 1000px){.hero-banner__title-wrapper{text-align:center}.hero-banner__title-wrapper h1{font-size:4em}.hero-banner__title-wrapper h2{font-size:1em}}.hero-banner__socials-menu{width:100%;height:100%;border-radius:9999px;position:relative}@media (max-width: 1000px){.hero-banner__socials-menu{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;width:100%}}.hero-banner__social-container{border:3px solid var(--primary-colour);width:60px;height:60px;border-radius:9999px;position:absolute;z-index:2;background-color:#fff;padding:10px;cursor:pointer;offset-path:circle(400px at 50% 50%);-webkit-offset-path:circle(400px at 50% 50%);offset-rotate:0deg;offset-distance:0%;opacity:0}.hero-banner__social-container--1{top:-30px;right:350px;animation:orbit1 1s cubic-bezier(.77,0,.175,1) forwards .2s,fadeIn .6s ease-out forwards .2s}.hero-banner__social-container--2{top:30px;right:580px;animation:orbit2 1s cubic-bezier(.77,0,.175,1) forwards .4s,fadeIn .6s ease-out forwards .4s}.hero-banner__social-container--3{top:200px;right:729px;animation:orbit3 1s cubic-bezier(.77,0,.175,1) forwards .6s,fadeIn .6s ease-out forwards .6s}.hero-banner__social-container--4{top:428px;right:761px;animation:orbit4 1s cubic-bezier(.77,0,.175,1) forwards .8s,fadeIn .6s ease-out forwards .8s}.hero-banner__social-container svg{width:100%;height:100%}@media (max-width: 1000px){.hero-banner__social-container{position:relative!important;z-index:auto!important;top:auto!important;right:auto!important;animation:none!important;offset-path:none!important;offset-distance:0!important;opacity:1!important;display:flex!important}}.hero-banner__socials{position:absolute;width:800px;height:800px;top:15%;right:-135px;border:3px solid var(--primary-colour);border-radius:50%;z-index:0}.hero-banner__socials:before,.hero-banner__socials:after{content:"";position:absolute;border:1px solid var(--primary-colour);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}.hero-banner__socials:before{width:880px;height:880px}.hero-banner__socials:after{width:720px;height:720px}@media (max-width: 1000px){.hero-banner__socials{position:static;border:none;width:auto;height:auto}.hero-banner__socials:before,.hero-banner__socials:after{display:none}}.hero-banner__contents{display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;width:100%;z-index:3;opacity:0;transform:translateY(40px);animation:fadeInRise 1.25s .55s cubic-bezier(.77,0,.175,1) forwards}.hero-banner__contents>*{opacity:0;transform:translateY(40px);animation:fadeInRise 1.25s cubic-bezier(.77,0,.175,1) forwards}.hero-banner__contents>*:nth-child(1){animation-delay:.2s}.hero-banner__contents>*:nth-child(2){animation-delay:.4s}@media (max-width: 1000px){.hero-banner__contents{text-align:center;align-items:center;justify-content:center}}.hero-banner__image-container{width:30%}.hero-banner__image{position:absolute;height:auto;width:720px;right:9%;bottom:-4%;z-index:1;opacity:0;animation:fadeInRise 1.25s cubic-bezier(.77,0,.175,1) forwards;pointer-events:none}@media (max-width: 1000px){.hero-banner__image{display:none}}.hero-banner__underlay{width:720px;height:auto;position:absolute;right:-230px;top:11%;z-index:-2;animation:underlayBreath 3s cubic-bezier(.4,0,.2,1) infinite alternate;animation-delay:3064ms}.hero-banner__hero-button-container{display:flex;gap:20px;opacity:0;transform:translateY(100%);animation:fadeInRise 1.5s .6s ease-in-out forwards}@keyframes fadeInRise{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes rotateInFromRight{0%{transform:translate(300px) rotate(120deg);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}@keyframes ringFadeIn{0%{transform:translate(-50%,-50%) scale(.9);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes underlayBreath{0%{transform:scale(1) translateY(0);opacity:1}50%{transform:scale(1.04) translateY(-10px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes orbit1{to{offset-distance:75.8%}}@keyframes orbit2{to{offset-distance:66.2%}}@keyframes orbit3{to{offset-distance:57%}}@keyframes orbit4{to{offset-distance:47.7%}}@keyframes fadeIn{to{opacity:1}}.footer{width:100%}.footer__menu{padding:1rem;width:100%;display:flex;align-items:center;justify-content:center}.footer__menu a{color:var(--primary-colour)}.footer__copywrite{width:100%;background-color:#000;color:#fff;text-align:center}.technologies{width:100%;margin:auto 0 64px;display:flex;align-items:center;justify-content:center;background-color:var(--highlight-2);position:relative;overflow:hidden;color:var(--primary-colour);padding:64px}@media (max-width: 1000px){.technologies{padding:32px}}.technologies__wrapper{width:100%;max-width:1440px;gap:64px;display:flex;align-items:center;justify-content:space-between}@media (max-width: 800px){.technologies__wrapper{flex-wrap:wrap;align-items:center;justify-content:center}}.technologies__contents{width:60%}@media (max-width: 800px){.technologies__contents{width:100%}}.technologies__svg-wrapper{position:absolute;top:0;left:0}.technologies__svg-wrapper svg{width:1000px;height:auto;transform:rotate(235deg)}.technologies__grid{width:40%;display:grid;min-width:400px;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem}@media (max-width: 800px){.technologies__grid{width:100%}}.technologies__grid-item{display:flex;justify-content:center;align-items:center;border:1px solid #F7F9F9;background-color:#fff;padding:1rem;border-radius:8px;width:auto;height:100%;opacity:0;transform:translateY(40px);transition:opacity .6s ease,transform .6s ease}.technologies__grid-item.in-view{opacity:1;transform:translateY(0)}.technologies__grid-item img{max-width:100%;max-height:100%;object-fit:contain}.project-timeline-banner{width:100%;margin:auto 0 64px;display:flex;align-items:center;position:relative;justify-content:center;background-color:var(--highlight-2);color:var(--primary-colour);padding:64px;overflow:hidden}@media (max-width: 1000px){.project-timeline-banner{padding:32px}}.project-timeline-banner__wrapper{width:100%;max-width:1440px;display:flex;align-items:center;justify-content:space-between;z-index:1}.project-timeline-banner__contents{width:40%}@media (max-width: 1000px){.project-timeline-banner__contents{width:100%}}.project-timeline-banner__image{position:absolute;left:-30px;width:1500px;z-index:0;transform:rotate(344deg)}.timeline{display:flex;flex-direction:column;gap:64px}.timeline__timeline{position:relative;display:flex;flex-direction:column;padding:0 64px;gap:0}@media (max-width: 1000px){.timeline__timeline{padding:32px}}.timeline__title-container{color:var(--secondary-colour);padding:0 64px 64px}.timeline__filter-option .heading__xxlarge span{display:block;margin-top:8px}.timeline__select{width:100%;padding:12px 16px;border:2px solid var(--primary-colour);border-radius:8px;background-color:var(--highlight-2);color:var(--secondary-colour);font-size:1rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;transition:border-color .3s}.timeline__select:focus{border-color:var(--highlight-1)}.timeline__select option{color:var(--secondary-colour);background-color:var(--highlight-2)}.timeline__line-puesdo{position:absolute;top:0;left:49px;width:5px;height:0;border-radius:999px;background-color:var(--primary-colour);transition:height .3s ease;z-index:0}@media (max-width: 1000px){.timeline__line-puesdo{left:17px;top:17px}}.timeline__bulb-puesdo{position:absolute;top:-20px;left:-28px;width:30px;height:30px;background-color:var(--highlight-1);border-radius:999px;transition:background-color .3s ease}.timeline__bulb-puesdo.active{box-shadow:0 0 67px 18px var(--highlight-1);background-color:var(--highlight-1);border:5px solid var(--tertiary-colour)}.timeline__content{background-color:var(--highlight-2);padding:32px;border-radius:20px;margin-bottom:64px;opacity:0;transform:translateY(50px);transition:opacity .6s ease,transform .6s ease}.timeline__content.visible{opacity:1;transform:translateY(0)}.timeline__content *{color:var(--secondary-colour)}.timeline__content-title{display:flex}@media (max-width: 1000px){.timeline__content-date{font-size:2rem!important}}.timeline__content-description,.timeline__gallery-wrapper{margin-top:16px}.timeline__content-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media (max-width: 600px){.timeline__content-image-grid{grid-template-columns:1fr}}.timeline__content-image-grid img{width:100%;height:auto;object-fit:cover;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:transform .2s ease}.timeline__content-image-grid img:hover{transform:scale(1.03)}.timeline .timeline-enter-active,.timeline .timeline-leave-active{transition:all .5s ease}.timeline .timeline-enter-from,.timeline .timeline-leave-to{opacity:0;transform:translateY(20px)}.timeline .timeline-move{transition:transform .4s ease}.image-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:9999}.image-modal img{max-width:90%;max-height:90%;border-radius:8px;box-shadow:0 4px 16px #00000080}.image-modal .modal__close-btn{position:absolute;top:24px;right:24px;background:transparent;border:none;font-size:2rem;color:#fff;cursor:pointer}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1rem;font-size:1.5rem;border:none;border-radius:50%;background:#111;color:#fff;cursor:pointer;box-shadow:0 4px 12px #0000004d;z-index:1000;transition:opacity .3s ease}.scroll-to-top:hover{background:#333}.form-container{position:relative;display:flex;align-items:stretch;justify-content:space-between;gap:64px;padding:64px;width:100%;background:none}.form-container:before,.form-container:after{content:"";position:absolute;width:60px;height:60px;border:4px solid var(--primary-colour)}.form-container:before{top:16px;left:16px;border-right:none;border-bottom:none}.form-container:after{bottom:16px;right:16px;border-left:none;border-top:none}.form-container__column,.form-container__background-image{flex:1}.form-container__column{display:flex;flex-direction:column;gap:20px;margin:0}.form-container__content{width:100%;text-align:left}.form-container__form{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:20px}.form-container__form-item{display:flex;flex-direction:column}.form-container__form-item input,.form-container__form-item textarea{width:100%;border:none;border-bottom:1px solid var(--primary-colour);background-color:var(--highlight-2);padding:5px;font-size:var(--font-label);font-family:inherit;color:var(--primary-colour)}.form-container__form-item input::placeholder,.form-container__form-item textarea::placeholder{color:var(--text-colour-muted);font-size:var(--font-label);opacity:.7}.form-container__form-item input{height:40px}.form-container__form-item textarea{height:140px;resize:none}.form-container__background-image{display:flex}.form-container__image{width:100%;height:100%;object-fit:cover}@media (max-width: 768px){.form-container{flex-direction:column;gap:32px;padding:32px}.form-container__column,.form-container__background-image{flex:unset;width:100%}.form-container__form{gap:16px}.form-container__form-item input{height:36px}.form-container__form-item textarea{height:120px}.form-container__image{height:250px}}.about{padding:0rem 2rem 2rem}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}@media (max-width: 768px){.about__grid{grid-template-columns:1fr}}.about__text{order:1;color:var(--primary-colour)}@media (max-width: 768px){.about__text{order:2}}.about__image{order:2;display:flex;justify-content:center}.about__image img{max-width:100%;height:auto}@media (max-width: 768px){.about__image{order:2}}.social-banner{width:100%;padding:32px 64px;margin-top:64px;background-color:var(--highlight-2);display:flex;justify-content:space-between;align-items:center;color:var(--primary-colour)}.social-banner__cta{display:flex;align-items:center;justify-content:space-around;gap:20px}.social-banner__contents p{line-height:1;margin-bottom:0}.social-banner__item{background-color:#fff;border-radius:99999px;padding:10px;display:flex;align-items:center;justify-content:center;width:50px;height:50px;cursor:pointer}.main{max-width:1440px;width:100%;box-sizing:border-box;margin:auto;padding-top:64px}body{margin:auto}.heading__h1{font-size:2.5rem;line-height:1.2;margin-bottom:1rem}.heading__h2{font-size:2rem;line-height:1.3;margin-bottom:.75rem}.heading__h3{font-size:1.75rem;line-height:1.4;margin-bottom:.5rem}.heading__h4{font-size:1.5rem;line-height:1.5;margin-bottom:.25rem}.heading__h5{font-size:1.25rem;line-height:1.6;margin-bottom:.125rem}.heading__h6{font-size:1rem;line-height:1.7;margin-bottom:.0625rem}.heading__p{font-size:1rem;line-height:1.6;margin-bottom:1rem}.heading__small{font-size:.875rem;line-height:1.5;margin-bottom:.5rem}.heading__large{font-size:1.25rem;line-height:1.6;margin-bottom:1.5rem}.heading__xlarge{font-size:1.5rem;line-height:1.7;margin-bottom:2rem}.heading__xxlarge{font-size:2rem;line-height:1.8;margin-bottom:2.5rem}@media (max-width: 1000px){.heading__xxlarge{font-size:1.5em}}.heading__xxxlarge{font-size:2.5rem;line-height:1.9}.heading__huge{font-size:6rem;line-height:2}.heading__gigantic{font-size:7rem;line-height:2.1}@media (max-width: 1000px){.heading__gigantic{font-size:4em;line-height:1}}.button--primary,.button--secondary,.button--tertiary{font-family:"Ancizar Serif",serif;font-optical-sizing:auto;font-style:normal;color:#fff;padding:.5rem 1.5rem;border:none;border-radius:.25rem;cursor:pointer;transition:background-color .3s ease;font-size:1.25rem}.button--primary:hover,.button--secondary:hover,.button--tertiary:hover{background-color:var(--tertiary-colour);color:var(--text-colour)}.button--primary{background-color:var(--highlight-1)}.button--secondary{color:var(--secondary-colour);border:1px solid var(--secondary-colour);background-color:#fff}.button--secondary:hover{background-color:var(--highlight-1);border:1px solid var(--highlight-1);color:var(--text-colour)}.button--tertiary{background-color:var(--primary-colour)}.button--tertiary:hover{background-color:var(--highlight-1)}
