:root{--color-primary: #333333;--font-primary: "Outfit", sans-serif}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{height:100%;font-family:var(--font-primary);font-optical-sizing:auto;font-size:20px;line-height:1.3;color:var(--color-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;max-width:100%;overflow-x:hidden;overflow-y:scroll}@media screen and (max-width: 991px){body{font-size:16px}}img,svg,iframe{max-width:100%;display:block}button,input,textarea,select{font:inherit;background:none;border:none;outline:none}a{color:#002d59;text-decoration:none}a:hover{color:inherit;opacity:.8}h1,h2,h3,h4,h5,h6{font-weight:700}h1{font-size:3.5rem}h2{font-size:2rem}h3{font-size:1.5rem}.py-10{padding-top:10rem;padding-bottom:10rem}.text-bigger{font-size:1.4rem}.text-grey,.color-grey{color:var(--color-grey)}.color-primary{color:var(--color-primary)}.color-white{color:#fff}.gsap-reveal{opacity:0}a.return-top{position:fixed;left:30px;bottom:30px;z-index:999;transform:rotate(-90deg);background-color:var(--random-color);padding:10px;display:none}body.scrolled a.return-top{display:block}body.scrolled .scroll-disappear{transition:all .5s ease-in-out;transform:translateY(-100%);opacity:0}body.scrolled .scroll-disappear.delayed{transition-delay:.2s}body.scrolled .scroll-disappear.longer{transition-duration:1s}.reveal-up{opacity:0;animation:revealUp .6s ease-in-out forwards}.reveal-up.slow{animation-duration:2.5s}.btn{transition:background-color .3s ease;border:none;box-shadow:none;background:inherit}.btn:before{content:"";background:url(../img/arrow-ur.svg) no-repeat center center;width:20px;height:20px;display:inline-block;background-color:var(--color-primary-dark);margin-right:10px;transform:translateY(4px)}.btn.right:before{background:url(../img/arrow-r.svg) no-repeat center center}.btn.btn-primary{color:#fff}.btn.btn-primary:hover{background-color:color-mix(in srgb, var(--color-primary) 80%, var(--color-primary-dark));opacity:1;color:#fff}.btn.btn-secondary{background-color:#fff;color:var(--color-primary)}.btn.btn-secondary:hover{background-color:var(--color-primary-light);opacity:1}section.carousel{margin:30px 0}section.carousel .carousel-wrapper .carousel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}section.carousel .carousel-wrapper .carousel-item-content{background-color:var(--color-primary-light);border-radius:20px;padding:20px}section.carousel .carousel-wrapper .carousel-item-content span.category{background-color:var(--color-primary);color:#fff;text-transform:uppercase;border-radius:10px;padding:5px 10px;font-size:.8rem;letter-spacing:1px;font-weight:700}section.carousel .carousel-wrapper .carousel-item-content h3{margin:15px 0;color:#093521}.text-parallax{color:var(--color-primary);text-align:center}.text-parallax strong{font-size:5.5rem;display:block;white-space:nowrap;transition:transform .7s ease-out}.text-parallax.ios-off strong:nth-of-type(1){transform:translateX(-100vw)}.text-parallax.ios-off strong:nth-of-type(2){transform:translateX(100vw)}.text-parallax.smaller strong{font-size:3.5rem}form#contactForm{display:flex;flex-wrap:wrap;gap:0 20px}form#contactForm .half{width:calc(50% - 10px)}@media(max-width: 991px){form#contactForm .half{width:100%}}form#contactForm .full{width:100%}form#contactForm label{display:none}form#contactForm input,form#contactForm textarea{background:rgba(0,0,0,0);border:none;border-bottom:1px solid var(--color-primary);border-radius:0;color:var(--color-primary);padding:15px 0}form#contactForm input::-moz-placeholder, form#contactForm textarea::-moz-placeholder{color:rgba(0,0,0,.6)}form#contactForm input::placeholder,form#contactForm textarea::placeholder{color:rgba(0,0,0,.6)}form#contactForm input:focus,form#contactForm textarea:focus{background:rgba(0,0,0,0);border-color:var(--color-primary);box-shadow:none;color:var(--color-primary)}form#contactForm textarea{resize:none}form#contactForm button[type=submit]{margin-top:20px;color:var(--color-primary);letter-spacing:1px;padding-left:0}form#contactForm button[type=submit]:before{background-color:var(--color-primary)}section.footer-cta .wrapper{background:linear-gradient(to bottom, var(--color-primary) -50%, var(--color-primary-dark) 90%);border-radius:50px;margin-top:50px;padding:100px 30px;font-size:1.4rem}@media screen and (min-width: 992px){section.footer-cta .wrapper{padding:100px 30px 100px 33%}}section.footer-cta .wrapper .btn{background:rgba(0,0,0,0);padding-left:0}section.footer-cta .wrapper .btn:before{background-color:var(--color-primary)}.breathe{animation:breathe 20s ease-in-out infinite}@keyframes fadeDark{to{filter:brightness(0.3)}}@keyframes revealUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}@keyframes fadeIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes floatAround{0%{top:0%;left:-5%}30%{top:70%;left:85%}50%{top:0%;left:35%}80%{top:90%;left:5%}100%{top:0%;left:-5%}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes goandback{0%{transform:translateX(0)}30%{transform:translateX(100%)}60%{transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes goandback2{0%{transform:translateX(0)}30%{transform:translateX(-50%)}60%{transform:translateX(50%)}100%{transform:translateX(0)}}@keyframes background-slide{from{background-position:100% 100%}to{background-position:0% 100%}}@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}header{position:sticky;top:0;left:0;right:0;z-index:1000;font-size:.9rem}@media screen and (max-width: 991px){.menu-open header{filter:brightness(100)}}@media screen and (min-width: 992px){header{background:linear-gradient(to bottom, #fff, transparent)}}header>.container{display:flex;flex-direction:column;gap:15px;align-items:center;justify-content:center;padding:30px;margin:0 auto}@media screen and (max-width: 991px){header>.container{flex-direction:row;justify-content:space-between;align-items:center;padding:15px}}header>.container a.logo{transition:all .3s ease}header>.container a.logo:hover{opacity:1;transform:translateY(-3px)}header>.container a.logo img{width:150px;height:auto}header>.container ul.nav{display:flex;gap:24px;margin:0;padding:0;list-style:none}header>.container ul.nav>li{padding:15px 0}header>.container ul.nav>li a{color:var(--color-primary);font-weight:bold}header .menu-toggle{display:flex;flex-direction:column;gap:4px;background:rgba(0,0,0,0);border:none;cursor:pointer}header .menu-toggle span{display:block;width:24px;height:2px;background:var(--color-primary);transition:all .3s ease}.menu-open .menu-toggle span{background-color:var(--color-primary)}.menu-open .menu-toggle span:nth-child(1){transform:rotate(45deg) translate(5px, 5px)}.menu-open .menu-toggle span:nth-child(2){opacity:0}.menu-open .menu-toggle span:nth-child(3){transform:rotate(-45deg) translate(5px, -5px)}.menu-open .mobile-menu{transform:translateX(0);opacity:1;pointer-events:auto}.mobile-menu{transform:translateX(200dvw);background:linear-gradient(180deg, rgba(0, 13, 48, 0.9333333333), var(--color-primary));width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:999;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .3s ease;pointer-events:none;text-align:center}.mobile-menu a{color:#fff;font-size:2rem;margin-bottom:2rem;display:block}@media(min-width: 992px){.mobile-menu{display:none !important}}.carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin-bottom:30px}.carousel-arrow{background:url(../img/carousel-arrow-left.svg) center center no-repeat;border:none;width:48px;height:48px;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .3s ease}.carousel-arrow.carousel-next{background:url(../img/carousel-arrow-right.svg) center center no-repeat}.carousel-arrow:hover{opacity:.8;transform:scale(1.05)}.carousel-arrow:disabled{opacity:.3;cursor:not-allowed;transform:scale(1)}.carousel-wrapper{overflow:hidden;width:100%}.carousel-track{display:flex;flex-wrap:nowrap;transition:transform .5s ease}.carousel-slide{flex-shrink:0}.modal.fade .modal-dialog{transition:none;transform:translateX(100%)}.modal.fade.show .modal-dialog{animation:slideInRight .4s forwards}@keyframes slideInRight{from{transform:translateX(100%)}to{transform:translateX(0)}}body.modal-open{overflow:hidden}body.modal-open h2{font-weight:500}@media(min-width: 992px){body.modal-open #contactModal .modal-dialog{width:50%}}@media(min-width: 992px){body.modal-open #demoModal .modal-dialog{width:100%}}body.modal-open .modal-content{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark))}body.modal-open .modal-content .modal-header button{color:#fff;font-size:1.4rem}body.modal-open .modal-content .modal-body{display:flex;align-items:center;justify-content:center}body.modal-open .modal-content .modal-body .content{max-width:500px}body.modal-open .modal-content .modal-body .content p{margin-bottom:25px}body.modal-open .modal-content .modal-body .content a{color:inherit}body.modal-open .modal.fade.show{background-color:rgba(0,0,0,.3137254902)}body.modal-open .modal-body{padding:0px}body.modal-open .modal-dialog{max-width:unset;margin:0px;position:fixed;right:0px;height:100%}body.modal-open .modal-dialog .modal-content{height:inherit;overflow:auto;padding:0px 24px;padding-bottom:24px;border-radius:unset;border:0}body.modal-open .modal-dialog .modal-content .modal-header{border:unset;position:relative;justify-content:space-between;padding:40px 0px}body.modal-open .modal-dialog .modal-content .modal-header .modal-title{text-align:left;font-weight:normal}body.modal-open .modal-dialog .modal-content input,body.modal-open .modal-dialog .modal-content textarea{border:1px solid var(--color-primary-light);padding:15px}@media(min-width: 992px){body #demoModal .modal-content .modal-body{padding:0 60px 60px}}body .modal-backdrop.show{background-color:rgba(var(--color-primary), 1);opacity:.8}.home-slider{position:absolute;top:0;left:0;width:100%;height:100dvh}.home-slider .img-wrapper{position:relative;height:100dvh;overflow:hidden}.home-slider .img-wrapper img{width:100%;height:100%;position:absolute;top:0;left:0;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;opacity:0;transition:all 2s ease-in}.home-slider .img-wrapper img.active{opacity:1}section.content{padding-top:100px}section.projects .project-card{text-align:center}section.projects .project-card h3{margin-top:10px;font-size:1.2rem}section.projects .project-card img{aspect-ratio:1.5/1;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;height:auto}section.project-header{position:relative;height:calc(100dvh - 300px);overflow:hidden;z-index:1}section.project-header .primary-image{position:fixed;top:0px;left:0;width:100%;height:calc(100dvh - 450px);transition:3s opacity ease,top .5s ease-in-out;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}body.scrolled section.project-header .primary-image{opacity:.3;top:0}section.project-detail{background-color:#fff;position:relative;z-index:2}section.project-detail .project-info{padding:30px;background:#fff;padding-bottom:0;transform:translate(-30px, -50px)}section.project-detail .project-info span{display:block;opacity:.6;font-size:.9rem}section.project-detail .project-info strong{display:block;margin-bottom:15px}section.project-detail .project-info h1{font-size:2rem;margin-top:30px}