@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&family=Roboto:wght@100;300;400;500;700;900&family=DM+Sans:opsz,wght@9..40,100..1000&display=swap');
@import url('uicons.css');

:root{
    --primary-color:#426487;
    --primary-color-rgb:66,100,135;
    --secondary-color:#ff8c00;
    --secondary-color-rgb:255,140,0;
    --alternative-color:#359BE8;
    --alternative-color-rgb:105,157,245;
    --dark-color:#070D2B;
    --light-color:#9cc4fb;
    --zeta-font:"Roboto",sans-serif;
    --zeta-theme-color-text:#777;
    --zeta-theme-color-title:var(--dark-color);
}

::selection{
    background-color:var(--dark-color);
    color:#fff;
}

::-webkit-scrollbar{width:8px;}
::-webkit-scrollbar-button{height:0;width:0;}
::-webkit-scrollbar-track{background-color:#fff;}
::-webkit-scrollbar-track-piece{background-color:#fff;}
::-webkit-scrollbar-thumb{background-color:var(--primary-color);}
::-webkit-scrollbar-corner{background-color:var(--secondary-color);}
/* ::-webkit-resizer{} */

nav{
    box-shadow:none;
    background-color:transparent;
    transition:all 0.5s ease-in-out;
}

nav.active{
    background-color:#fff;
}

/*nav > .nav-wrapper > .badge figure img{
    margin-top:1rem;
}*/

nav > .nav-wrapper > .modules{
    margin-left:0;
}

nav > .nav-wrapper > .modules > ul > li > a{
    margin:0 0.75rem;
    padding:0;
    font-weight:600;
    font-size:1rem;
    color:var(--zeta-theme-color-title);
    position:relative;
    letter-spacing:0.4rem;
}

nav > .nav-wrapper > .modules > ul > li > a > span{
    margin-top:0.35rem;
    margin-right:0.35rem;
    font-size:1.3rem;
    color:var(--secondary-color);
}

nav > .nav-wrapper > .modules > ul > li > a::after{
    content:"";
    display:block;
    width:60px;
    height:3px;
    background-color:var(--primary-color);
    position:absolute;
    right:0.25rem;
    bottom:2rem;
    z-index:-1;
    transform:scale(0,1);
    transform-origin:top left;
    transition:transform 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function:cubic-bezier(0.860, 0.000, 0.070, 1.000);
}

nav > .nav-wrapper > .modules > ul > li > a:hover,
nav > .nav-wrapper > .modules > ul > li > a:focus,
nav > .nav-wrapper > .modules > ul > li > a:active{
    background-color:transparent;
}

nav > .nav-wrapper > .modules > ul > li > a:hover::after{
    transform:scale(1,1);
    transform-origin:top right;
}

nav > .nav-wrapper > .modules > ul > li.current > a::after{
    transform:scale(1,1);
}

nav > .nav-wrapper > .bridge{
    align-items:center;
}

nav > .nav-wrapper > .bridge > a.launch-navi{
    width:65px;
    height:65px;
    border-radius:50%;
    background-color:var(--secondary-color);
}

nav > .nav-wrapper > .bridge > a.launch-navi.hyperspace::after,
nav > .nav-wrapper > .bridge > a.launch-navi.hyperspace::before,
nav > .nav-wrapper > .bridge > a.launch-navi.hyperspace > span{
    width:70%;
    height:.3rem;
}

nav > .nav-wrapper > .bridge > a.launch-navi::after{
    background-color:#fff;
}

nav > .nav-wrapper > .bridge > a.launch-navi > span{
    background-color:#fff;
}

nav > .nav-wrapper > .bridge > a.launch-navi::before{
    background-color:#fff;
}

aside{
    position:sticky;
    top:0;
}

h1,h2{
    font-family:"Oswald",sans-serif;
    font-weight:700;
}

h3,h4,h5{
    color:var(--dark-color);
}

h3{
    display:inline-block;
    width:auto;
    margin-bottom:2rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.85rem;
    position:relative;
}

h3::after{
    content:"";
    display:block;
    position:absolute;
    bottom:-.5rem;
    right:.85rem;
    width:110px;
    height:4px;
    background-color:var(--secondary-color);
}

h4{
    margin:2rem 0 1rem 0;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.65rem;
    position:relative;
}

h5{
    margin:0 0 1rem 0;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5rem;
    position:relative;
}

h6{
    margin-bottom:0.25rem;
    font-family:"DM Sans",sans-serif;
    font-size:1.1rem;
    font-weight:600;
    color:var(--alternative-color);
    text-transform:uppercase;
    letter-spacing:0.1rem;
}

figure{
    margin:0;
    padding:0;
}

p{
    font-size:1rem;
    font-weight:300;
}

map{
    display:block;
    width:100%;
    height:500px;
    background-color:#efefef;
}

form fieldset{
    padding:0;
    position:relative;
}

form fieldset:not(:has(button)):after{
    content:"";
    display:block;
    width:100%;
    height:3px;
    background-color:var(--dark-color);
    position:absolute;
    bottom:0;
    right:0;
    z-index:1;
    transform:scale(0,1);
    transform-origin:top left;
    transition:transform 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function:cubic-bezier(0.860, 0.000, 0.070, 1.000);
}

form fieldset:focus-within::after{
    transform:scale(1,1);
    transform-origin:top right;
}

form fieldset input,
form fieldset select,
form fieldset textarea{
    padding:0 1rem;
    height:70px;
    border-radius:0;
    background-color:#fff;
    border-width:2px;
    font-weight:400;
    color:var(--zeta-theme-color-text);
}

form fieldset textarea{
    padding:1rem;
}

form fieldset input.error,
form fieldset select.error,
form fieldset textarea.error{
    border-color:var(--secondary-color);
}

form fieldset label{
    margin-bottom:2rem;
    display:block;
    text-transform:uppercase;
    font-size:0.8rem;
    letter-spacing:0.4rem;
    text-align:right;
    color:var(--dark-color);
}

form fieldset label span{
    color:var(--secondary-color);
}

.radio{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:70px;
    background-color:#fff;
    cursor:pointer;
    border:2px solid var(--zeta-theme-light);
    transition:border-color 0.5s ease-in-out;
}

.radio label{
    color:var(--dark-color-alt);
    font-weight:600;
    letter-spacing:0.1rem;
}

.radio:hover,
.radio:focus,
.radio:active{
    border-color:var(--dark-color);
}

.radio.active{
    background-color:var(--primary-color);
    border-color:var(--dark-color);
}

.radio.active label{
    color:#fff;
}

.radio label{
    margin:0;
}

.radio input[type="radio"]{
    display:none;
}

.radio:first-child{
    margin-left:0;
}

.radio:last-child{
    margin-right:0;
}

.fab{
    font:var(--fa-font-brands);
}

.right-align{
    text-align:right;
}

.center-align{
    text-align:center;
}

figure.background{
    width:100%;
    height:100%;
    overflow:hidden;
    position:relative;
}

figure.background > img{
    object-fit:cover;
    object-position:center;
    width:100%;
    height:100%;
    transition:transform 0.5s ease-in-out;
}

.text-xl{
    font-size:1.4rem;
}

.bg-primary{
    background-color:var(--primary-color);
}

.bg-secondary{
    background-color:var(--secondary-color);
}

.bg-alternative{
    background-color:var(--alternative-color);
}

.bg-dark{
    background-color:var(--dark-color);
}

.bg-light{
    background-color:var(--light-color);
}

.button{
    display:inline-flex;
    padding:6px 1.8rem 0 1.8rem;
    width:auto;
    height:60px;
    justify-content:center;
    align-items:center;
    text-decoration:none;
    position:relative;
    font-size:1rem;
    font-weight:600;
    text-transform:uppercase;
    text-indent:6px;
    letter-spacing:0.1rem;
    transition:.25s ease-in-out;
}

.button > span{
    line-height:0;
}

.button::after{
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    top:6px;
    left:6px;
    transition:.25s ease-in-out;
    border:2px solid var(--dark-color);
}

.button:hover{
    padding-top:0;
    padding-bottom:6px;
}

.button:hover::after{
    top:-6px;
    left:-6px;
}

.button.primary{
    background-color:var(--primary-color);
    color:#fff;
}

.button.secondary{
    background-color:var(--secondary-color);
    color:#fff;
}

.button.alternative{
    background-color:var(--alternative-color);
    color:#fff;
}

.subtitle h2{
    font-size:calc(2.375rem + 2vw);
    line-height:1;
}

.subtitle h2 span{
    display:block;
    text-transform:uppercase;
}

.subtitle h2 span b{
    font-weight:inherit;
}

.subtitle h2 span:first-child b{
    color:var(--primary-color);
}

.subtitle h2 span:last-child b{
    color:var(--secondary-color);
}

.subtitle p{
    margin:1.5rem 0 2rem 0;
    padding:0.5rem 1rem 0.5rem 0;
    border-right:4px solid var(--dark-color);
    font-size:1.1rem;
}

.title-icon{
    display:flex;
    margin-bottom:1.5rem;
    width:80px;
    height:80px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    position:relative;
}

.title-icon::after{
    content:"";
    display:block;
    width:60%;
    height:60%;
    border-radius:inherit;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:-1;
}

.title-icon span{
    margin-top:0.5rem;
    font-size:4rem;
    line-height:0;
    color:var(--dark-color);
}

.title-icon.primary::after{
    background-color:rgba(var(--primary-color-rgb),0.5);
}

.title-icon.secondary::after{
    background-color:rgba(var(--secondary-color-rgb),0.8);
}

.title-icon.alternative::after{
    background-color:rgba(var(--alternative-color-rgb),0.5);
}

.title-icon.light::after{
    background-color:var(--light-color);
}

.box-article figure.background > img{
    filter:grayscale();
}

.box-article.md figure.background{
    height:350px;
}

.box-article.lg figure.background{
    height:600px;
}

.box-article:hover figure.background > img{
    transform:rotateZ(5deg) scale(1.2);
}

.box-event{
    border-bottom:1px solid #eee;
}

.box-event p{
    margin-bottom:0;
}

.box-event .date time{
    font-family:"Oswald",serif;
    font-size:3.2rem;
    font-weight:700;
    color:var(--secondary-color);
    line-height:1;
}

.box-event .date p{
    text-transform:uppercase;
    font-weight:600;
    color:var(--dark-color);
}

.box-team .background{
    height:400px;
}

.box-team .background > img{
    filter:grayscale();
    transition:transform 0.5s ease-in-out;
}

.box-team h2{
    margin:1.5rem 0 0.25rem 0;
    text-transform:uppercase;
    color:var(--secondary-color);
}

.box-team:hover .background > img,
.box-team:focus .background > img,
.box-team:active .background > img{
    transform:scale(1.2) rotateZ(5deg);
}

.social a{
    display:inline-flex;
    margin:0 0.25rem;
    width:40px;
    height:40px;
    align-items:center;
    justify-content:center;
    background-color:var(--primary-color);
    border:2px solid var(--dark-color);
    color:#fff;
    text-decoration:none;
    font-size:1.1rem;
    transition:all 0.5s ease-in-out;
}

.social a:hover,
.social a:focus,
.social a:active{
    background-color:transparent;
    color:var(--dark-color);
}

.sidenav{
    padding:5rem;
    width:95%;
    height:90%;
    position:fixed;
    top:5%;
    left:2.5%;
    z-index:var(--zeta-index-2);
    background-color:rgba(var(--secondary-color-rgb),0.9);
    transform:scale(0);
    opacity:0;
    visibility:hidden;
    transition:all 0.3s ease-in;
}

.sidenav.active{
    transform:scale(1);
    opacity:1;
    visibility:visible;
}

.sidenav ul{
    margin:0;
    padding:0;
    list-style-type:none;
}

.sidenav ul li a{
    display:inline-flex;
    padding:0.2rem 0;
    height:auto;
    align-items:center;
    font-size:calc(1.375rem + 1vw);;
    color:#fff;
    text-transform:uppercase;
    text-decoration:none;
    letter-spacing:0.8rem;
    position:relative;
    transition:width 0.8s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.sidenav ul li a::after{
    content:"";
    display:block;
    width:50%;
    height:3px;
    background-color:#fff;
    position:absolute;
    bottom:0.2rem;
    right:0;
    transform:scale(0,1);
    transform-origin:top left;
    transition:transform 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function:cubic-bezier(0.860, 0.000, 0.070, 1.000);
}

.sidenav ul > li > a:hover::after{
    transform:scale(1,1);
    transform-origin:top right;
}

.sidenav ul li a span{
    margin-left:0.25rem;
    line-height:0;
}

.sidenav .social{
    margin-top:2rem;
}

.sidenav .social a{
    border-color:#fff;
    background-color:transparent;
}

.sidenav .social a:hover,
.sidenav .social a:focus,
.sidenav .social a:active{
    color:#fff;
    background-color:rgba(255,255,255,0.3);
}

.sidenav figure img{
    filter:grayscale() brightness(100);
}

.sidenav > button{
    width:60px;
    height:60px;
    display:flex;
    align-items:center;
    justify-content:center;
    background-color:transparent;
    border:0;
    position:absolute;
    top:1rem;
    right:1rem;
}

.sidenav > button > span{
    line-height:0;
    font-size:2rem;
    color:#fff;
}

.window .button{
    margin-top:1rem;
}

.window .background > img{
    filter:grayscale();
}

.window .background:hover > img{
    transform:scale(1.2) rotateZ(5deg);
}

.pagination{
    display:flex;
    align-items:center;
    justify-content:center;
}

.pagination a{
    margin:0.25rem;
    width:50px;
    height:50px;
    border:2px solid var(--dark-color);
    background-color:#fff;
    font-size:1.5rem;
    color:var(--dark-color);
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

.pagination a:has(span){
    background-color:var(--alternative-color);
    color:#fff;
}

.pagination a.active{
    background-color:var(--secondary-color);
    color:#fff;
}

section.parallax{
    height:auto;
    min-height:700px;
    display:flex;
    align-items:center;
}

#homeTestimonials .parallax{
    min-height:350px;
    height:100%;
}

#homeTestimonials #carouselTestimonials{
    margin-top:3rem;
}

#carouselTestimonials .item{
    padding:1rem;
}

#carouselTestimonials .item > span{
    font-size:3rem;
    color:var(--secondary-color);
}

#carouselTestimonials .item .button{
    margin-top:1rem;
}

/*#carouselTestimonials p:last-child{
    margin-top:2rem;
    margin-bottom:0;
    text-transform:uppercase;
    text-align:right;
    letter-spacing:0.1rem;
    font-weight:500;
    color:var(--dark-color);
}*/

#carouselNews .item{
    padding:1rem;
}

#carouselGallery .item .background{
    height:250px;
}

#carouselGallery .item .background > img{
    filter:grayscale();
    transition:filter 0.5s ease-in-out;
}

#carouselGallery .item:hover .background > img,
#carouselGallery .item:focus .background > img,
#carouselGallery .item:active .background > img{
    filter:grayscale(0);
}

footer .foo-container{
    background-color:#efefef;
}

footer ul{
    margin:0;
    padding:0;
    list-style-type:none;
}

footer .foo-container figure{
    margin-bottom:1rem;
}

footer .foo-container ul.foo-menu{
    margin-bottom:1rem;
}

footer .foo-container ul.foo-menu li a{
    display:inline-block;
    width:auto;
    margin:0.4rem 0;
    font-weight:500;
    font-size:0.8rem;
    letter-spacing:0.35rem;
    text-transform:uppercase;
    text-decoration:none;
    color:var(--zeta-theme-color-title);
    position:relative;
}

footer .foo-container ul.foo-menu li a::after{
    content:"";
    display:block;
    width:40%;
    height:2px;
    background-color:var(--secondary-color);
    position:absolute;
    bottom:-1;
    right:0.4rem;
    transform:scale(0,1);
    transform-origin:top left;
    transition:transform 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function:cubic-bezier(0.860, 0.000, 0.070, 1.000);
}

footer .foo-container ul.foo-menu li a:hover::after,
footer .foo-container ul.foo-menu li a:focus::after,
footer .foo-container ul.foo-menu li a:active::after{
    transform:scale(1,1);
    transform-origin:top right;
}

footer .foo-container ul.foo-services li a{
    display:inline-block;
    width:auto;
    margin:0.4rem 0;
    font-weight:600;
    font-size:1.1rem;
    text-transform:uppercase;
    text-decoration:none;
    color:var(--zeta-theme-color-title);
    letter-spacing:0.25rem;
    position:relative;
}

footer .foo-container ul.foo-services li a::after{
    content:"";
    display:block;
    width:40%;
    height:3px;
    background-color:var(--alternative-color);
    position:absolute;
    right:0.25rem;
    bottom:-1;
    transform:scale(0,1);
    transform-origin:top left;
    transition:transform 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function:cubic-bezier(0.860, 0.000, 0.070, 1.000);
}

footer .foo-container ul.foo-services li a:hover::after,
footer .foo-container ul.foo-services li a:focus::after,
footer .foo-container ul.foo-services li a:active::after{
    transform:scale(1,1);
    transform-origin:top right;
}

footer .foo-container ul.foo-menu li:first-child a,
footer .foo-container ul.foo-services li:first-child a{
    margin-top:0;
}

footer .foo-container ul.foo-menu li:last-child a,
footer .foo-container ul.foo-services li:last-child a{
    margin-bottom:0;
}

footer .foo-container .copyright{
    margin-bottom:0;
}

footer .foo-container .copyright a{
    font-weight:600;
    color:var(--dark-color);
    text-decoration:none;
}

footer h2{
    text-transform:uppercase;
}

@media(max-width:1199px){
    .sidenav{
        padding:4rem 3rem;
    }
}

@media(max-width:991px){
    .box-event .right-align{
        text-align:left;
    }

    .box-event .button{
        margin-top:1rem;
    }

    footer .right-align{
        text-align:left;
    }
}

@media(max-width:767px){
    h3{
        letter-spacing:0.4rem;
    }
    h3::after{
        right:0.4rem;
    }

    .sidenav{
        height:95%;
        top:2.5%;
    }

    .sidenav ul li a{
        letter-spacing:0.4rem;
    }

    .box-article.lg figure.background{
        height:350px;
    }

    .window .buttons{
        text-align:right;
    }

    footer .social{
        margin-top:1rem;
    }
}

@media(max-width:575px){
    h3{
        letter-spacing:0.3rem;
    }
    h3::after{
        right:0.3rem;
    }

    .sidenav{
        padding:3rem 2rem;
    }

    .sidenav ul li a{
        letter-spacing:0.3rem;
    }

    .sidenav figure{
        margin-top:2rem;
        text-align:right;
    }

    .box-event .date{
        margin-bottom:1rem;
    }

    footer .foo-container .button{
        margin-bottom:2rem;
    }
}

@media(max-height:600px){
    .sidenav{
        overflow-y:auto;
    }
}