main{
    margin: 20px;
}

body{
    max-width: 100%;
    overflow-x: hidden;
}

@media(max-width: 500px){
    h1.smaller-h1{
        font-size: 3rem;
    }
}

* {
    --h1-size: 50px;
    --h2-size: 40px;
    --h3-size: 30px;
    --h4-size: 1em;
    --h5-size: 0.83em;
    --h6-size: 0.67em;
    --p-size: 18px;
    --text-25: 25px;
    --text-22: 22px;
    --text-20: 20px;
    --text-18: 18px;
    --text-16: 16px;
    --text-14: 14px;

    --richtext-h1-size: 50px;
    --richtext-h2-size: 40px;
    --richtext-h3-size: 30px;
    --richtext-h4-size: 1em;
    --richtext-h5-size: 0.83em;
    --richtext-h6-size: 0.67em;
    --richtext-p-size: 1.125em;

    --max-w-full: 1360px;
    --md-w-full: 1100px;
    --light-black: #1c1c1c;
    --light-gray: #929292;
    --light-blue: #187fba;
    --dark-blue: #051f31;

    scroll-behavior: smooth;
}

.line-link, .line-link span{
    font-size: 25px;
}


.grid-image{
    border-bottom-right-radius: 30px;
    border-top-right-radius: 30px;
}

.text-btn{
    font-size: 25px;
}

.bigger-h2{
    font-size: 65px;
    font-weight: 600;
}

.richtext.smaller-h2 h2 {
    font-size: 40px;
    line-height: 1.3;
}

.large-image h2{
    font-size: 40px;
}

.z-60{
    z-index: 60;
}

@media(max-width: 767px){
    * {
        --h1-size: 30px;
        --h2-size: 25px;
        --h3-size: 20px;
        --h4-size: 1em;
        --h5-size: 0.83em;
        --h6-size: 0.67em;
        --p-size: 18px;
        --text-25: 25px;
        --text-22: 22px;
        --text-20: 20px;
        --text-18: 18px;
        --text-16: 16px;
        --text-14: 14px;

        --richtext-h1-size: 30px;
        --richtext-h2-size: 25px;
        --richtext-h3-size: 20em;
        --richtext-h4-size: 1em;
        --richtext-h5-size: 0.83em;
        --richtext-h6-size: 0.67em;
        --richtext-p-size: 1.125em;

        --max-w-full: 1360px;
        --md-w-full: 1100px;
        --light-black: #1c1c1c;
        --light-gray: #929292;
        --light-blue: #187fba;
        --dark-blue: #051f31;

        scroll-behavior: smooth;
    }

    .line-link{
        font-size: 18px;
    }

    .grid-image{
        border-radius: 30px 30px 0 0;
    }

    .text-btn{
        font-size: 20px;
    }

    .bigger-h2{
        font-size: 40px;
    }

    .richtext.smaller-h2 h2 {
        font-size: 25px;
        line-height: 30px;
    }

    .large-image h2{
        font-size: 25px;
    }

    .sm-mt-0{
        margin-top: 0;
    }

    .fui-row{
        flex-direction: column;
    }

    .fui-btn.fui-submit{
        width: 100%;
    }
}




.container-max {
    max-width: var(--max-w-full);
    margin: auto;
}

.container-md {
    max-width: var(--md-w-full);
    margin: auto;
}

@media (max-width: 1375px) {
    .container-max {
        margin-left: 5px;
        margin-right: 5px;
    }

    .container-max.no-margin {
        margin-left: 0;
        margin-right: 0;
    }
}

/*--md-w-full: 1100px;*/
@media (max-width: 1085px) {
    .container-md {
        margin-left: 35px;
        margin-right: 35px;
    }
}

@media (min-width: 1300px) {
    .lg-width-check {
        width: 110%;
    }
}

@media(max-width: 1280px){
    .container-lg{
        margin-left: 15px !important;
        margin-right: 15px !important;
    }
}

.container-md\+ {
    max-width: 1200px;
    margin: auto;
}

@media (max-width: 1185px) {
    .container-md\+ {
        margin-left: 35px;
        margin-right: 35px;
    }
}
@media(max-width: 767px) {
    .container-no-margin {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}


.container-home-title {
    max-width: 635px;
    margin: auto;
}

@media(max-width: 600px) {
    .container-home-title {
        margin-left: 15px;
        margin-right: 15px;
    }
}


/*.richtext:not(.richtext-black) h2, .richtext:not(.richtext-black) h3, .richtext:not(.richtext-black) h6, .richtext:not(.richtext-black) p {*/
/*    color: #ffffff;*/
/*}*/

/*.richtext.richtext-black h2, .richtext.richtext-black h3, .richtext.richtext-black h6, .richtext.richtext-black p, .richtext.richtext-black * {*/
/*    color: var(--light-black)*/
/*}*/

.bg-blue-gradient .richtext h1,
.bg-blue-gradient .richtext h2,
.bg-blue-gradient .richtext h3,
.bg-blue-gradient .richtext h4,
.bg-blue-gradient .richtext h5,
.bg-blue-gradient .richtext h6,
.bg-blue-gradient .richtext ul,
.richtext-white .richtext h1,
.richtext-white .richtext h2,
.richtext-white .richtext h3,
.richtext-white .richtext h4,
.richtext-white .richtext h5,
.richtext-white .richtext h6,
.richtext-white .richtext *
{
    color: #ffffff;
}

.bg-blue-gradient .bg-white .richtext h1,
.bg-blue-gradient .bg-white .richtext h2,
.bg-blue-gradient .bg-white .richtext h3,
.bg-blue-gradient .bg-white .richtext h4,
.bg-blue-gradient .bg-white .richtext h5,
.bg-blue-gradient .bg-white .richtext h6,
.bg-blue-gradient .bg-white .richtext ul,
.richtext-white .bg-white .richtext *{
    color: #051f31;
}

.richtext h1,
.richtext h2,
.richtext h3,
.richtext h4,
.richtext h5,
.richtext h6,
.richtext *{
    color: #051f31;
}

.richtext p{
    color: #929292;
}

.richtext.full-white p{
    color: #ffffff;
}

.text-light-gray{
    color: #929292;
}

.bg-light-gray{
    background-color: #929292;
}


.richtext h2, h2 {
    font-size: var(--richtext-h2-size);
    font-weight: 300;
    line-height: 1.25;
}

.richtext h3, h3 {
    font-size: var(--richtext-h3-size);
    font-weight: 700;
    line-height: 1.1;
}

.richtext h6, h6 {
    font-size: var(--richtext-h6-size);
    font-weight: 700;
    line-height: 1;
    /*color: var(--light-black)*/
}

.richtext h5, h5 {
    font-size: var(--richtext-h5-size);
    font-weight: 700;
    line-height: 1.3;
    /*color: var(--light-black)*/
}


.richtext p {
    font-size: var(--richtext-p-size);
    line-height: 28px;
    font-weight: 300;
}

.richtext strong p, .richtext p strong {
    font-weight: 500;
}

.richtext p ~ p {
    padding-top: 0.8rem;
}

.richtext.richtext-address p {
    font-weight: 300;
    line-height: 1.6;
}

.richtext.richtext-address p strong, .richtext.richtext-address strong p {
    font-weight: 700;
}


.richtext ul {
    margin-top: 1rem;
    font-size: 18px;
    line-height: 25px;
    font-weight: 300;
    list-style: url("/assets/list.svg");
    list-style-position: outside;
    margin-left: 2.75rem;
}

.richtext ul ~ h6 {
    padding-top: 2rem;
}

.richtext li {
    padding-top: 5px;
    padding-bottom: 5px;
}

.richtext a {
    color: #2d85a3;
    text-decoration: underline;
    padding-top: 5px;
    display: inline-block;
}

.richtext a.no-underline {
    text-decoration: none;
    padding-top: 0;
}

.richtext h2 + p, .richtext h2 + ul, .richtext h2 + * {
    padding-top: 0.85rem;
}

.richtext h3 + p, .richtext h3 + ul, .richtext h3 + * {
    padding-top: 0.85rem;
}

.richtext h3, .richtext h2 {
    padding-top: 2.5rem;
}

b, strong {
    font-weight: 700;
}

.richtext ul li::marker {
    padding-top: 3px;
}

.richtext h6 + p, .richtext h6 + ul, .richtext h6 + *, .richtext h6 {
    padding-top: 0.85rem;
}

.richtext h5 + p, .richtext h5 + ul, .richtext h5 + *, .richtext h5 {
    padding-top: 0.85rem;
}

.richtext p, .richtext * {
    color: var(--light-gray);
}

.richtext-black.richtext p, .richtext-black.richtext * {
    color: #1c1c1c;
}

.richtext-gray.richtext p, .richtext-gray.richtext * {
    color: #929292;
}




h1 {
    font-size: var(--h1-size);
    line-height: 1.2;
    font-weight: 300;
}

h2 {
    font-size: var(--h2-size)
}

h3 {
    font-size: var(--h3-size)
}

h4 {
    font-size: var(--h4-size)
}

h5 {
    font-size: var(--h5-size)
}

h6 {
    font-size: var(--h6-size)
}

p {
    font-size: var(--p-size)
}


.text-30 {
    font-size: 30px;
}

.text-25{
    font-size: var(--text-25);
}

.text-22{
    font-size: var(--text-22);
}

.text-20{
    font-size: var(--text-20);
}

.text-18{
    font-size: var(--text-18);
}

.text-16{
    font-size: var(--text-16);
}

.text-14{
    font-size: var(--text-14);
}

.divider .tablet {
    display: none
}

@media (max-width: 1200px) {
    .divider .desktop {
        display: none
    }
}

@media (max-width: 1200px) and (min-width: 767px) {
    .divider .tablet {
        display: block
    }
}

@media (min-width: 767px) {
    .divider .mobile {
        display: none
    }
}


.container-h1{
    max-width: 900px;
    margin: auto;
}








.max-h-check {
    max-height: 1024px;
}

@media(min-height: 1024px){

    .max-h-check {
        min-height: 1024px;
    }

}

* {
    font-family: poppins, sans-serif;
    font-weight: 300;
}

.text-20 {
    font-size: 20px;
}

@media (min-width: 767px) {

    @media (max-width: 1095px) {
        .container {
            padding-left: 15px;
            padding-right: 15px;
        }
    }

    @media (max-width: 450px) {
        .container-sm {
            padding-left: 15px;
            padding-right: 15px;
        }
    }

    @media (max-width: 1165px) {
        .container-md {
            padding-left: 15px;
            padding-right: 15px;
        }
    }

    @media(max-height: 800px) {
        .contact-format-container{
            display: flex;
            justify-content: start;
            padding-bottom: 5rem;
        }

        .contact-first-el{
            max-height: none;
            width: 100%;
            flex-shrink: 1;
            opacity: 100% !important;
            position: initial;
        }

        .contact-second-el{
            justify-content: flex-start;
        }

        .contact-second-el .contant-text-section{
            width: 75% !important;
            align-self: center;
        }

        ._contactBlock{
            padding-top: 2rem;
        }
    }

        .side-image-contain{
        min-height: auto;
        object-fit: contain;
    }

    .side-image-cover{
        min-height: 1024px;
        object-fit: cover;
    }

    .contact-height{
        height: 50vh;
    }

    .sticky-form{
        position: sticky;
        position: -webkit-sticky;
        top: 130px;
    }

    #elc-cookie-tab {
        bottom: 20px;
        right: 20px;
    }
}

.container-sideimage{
    max-width: 1300px;
    margin: auto;
}

@media (max-width: 1290px) {
    .container-sideimage{
        margin-left: 15px;
        margin-right: 15px;
    }
}

.text-30-20{
    font-size: 20px;
}

@media (max-width: 767px) {

    .side-image-contain{
        min-height: auto;
        object-fit: contain;
    }

    .side-image-cover{
        min-height: 80vh;
        object-fit: cover;
    }

    .container, .container-sm, .container-md {
        padding-left: 20px;
        padding-right: 20px;
    }

    .q-logo {
        width: 85%;
        height: min-content;
        height: intrinsic;
        margin-top: 5vh;
        opacity: 0.05;
    }

    .text-30-20{
        font-size: 30px;
    }

    #header-text{
        font-size: 30px;
        line-height: 40px;
    }

    .text-45-title{
        font-size: 25px;
        line-height: 30px;
    }
}

@media (min-width: 767px) {
    .q-logo {
    }
}

.q-logo {
    /*max-width: 990px;*/
    opacity: 0.05;
}

.container {
    max-width: 1080px;
    margin: auto;
}

.container-sm {
    max-width: 435px;
    margin: auto;
}

.container-md {
    max-width: 1150px;
    margin: auto;
}

.container-lg{
    max-width: 1280px;
    margin: auto;
}

.hover-opacity {
    opacity: 0.3;
    transition: opacity 500ms;
}

.hover\:opacity-100 {
    transition: opacity 500ms;
}

.hover-opacity:hover {
    opacity: 1;
}

.text-18, .text-18 * {
    font-size: 18px;
}


@media(max-width: 767px){

    @media(min-height: 840px){
        .mobile-padding-top{
            padding-top: 11rem;
        }
    }

    @media(min-height: 800px){
        .mobile-padding-top{
            padding-top: 10rem;
        }
    }

    @media(max-height: 800px){
        .mobile-padding-top{
            padding-top: 6rem;
        }
    }
}

.bg-blue{
    background-color: #052032;
}

.bg-dark-blue{
    background-color: #051f31;
}



.text-dark-blue{
    color: #051f31;
}

.hover\:text-dark-blue:hover{
    color: #051f31;
}

.hover\:bg-dark-blue:hover{
    background-color: #051f31;
}

.hover\:bg-light-blue:hover{
    background-color: var(--light-blue);
}

.group:hover .group-hover\:bg-dark-blue{
    background-color: #051f31;
}






.bg-blue-gradient:not(.gradient-reverse){
    background: linear-gradient(0deg, #0c425f 0%, #051f31 100%);
}

.bg-blue-gradient.gradient-reverse{
    background: linear-gradient(180deg, #0c425f 0%, #051f31 100%);
}

.bg-light-blue{
    background-color: var(--light-blue);
}

.text-45-title{
    font-size: 45px;
    line-height: 1.2;
}

.link{
    color: var(--light-blue);
    text-decoration: underline;

}

.border-bottom-ul {
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
}

.border-bottom-footer{
    border-bottom: 1px dashed rgba(255, 255, 255, 0.3);
}


.top-light-border{
    border-top: 1px solid white;
}

.rounded-top-30{
    border-radius: 30px 30px 0 0;
}

.rounded-r-30{
    border-bottom-right-radius: 30px;
    border-top-right-radius: 30px;
}

.rounded-30{
    border-radius: 30px;
}

.simpleParallax{
    height: 100%;
}

.large-image-overlay{
    opacity:0.7;
    background-color: #051f31;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}









/* Cobalt form */
.blue-form h1, .blue-form h2, .blue-form h3, .blue-form h4, .blue-form h5, .blue-form h6,  .blue-form p, .blue-form ul{
    color: white;
}

.blue-form .fui-label, .blue-form .fui-required{
    color: #828f98;
    font-weight: 300;
    text-transform: uppercase;
    font-size: 16px;
}

.blue-form .fui-checkbox-label{
    color: white;
    line-height: 25px;
    font-weight: 300;
    text-transform: uppercase;
    font-size: 16px;
}

.blue-form .fui-checkbox-label:after{
    content: '*';
}

div[data-field-type="file-upload"] label{
    display: none;
}

*{
    --fui-label-margin: 1px;
}



.blue-form input.fui-input, .blue-form textarea.fui-input{
    background-color: var(--dark-blue);
    border-color: transparent;
    color: #96c2d1;
}

.input-overlay.blue-form input.fui-input, .input-overlay.blue-form textarea.fui-input{
    background-color: #1e3646;
}

.blue-form .fui-checkbox-label::before{
    background-color: var(--dark-blue);
    border-color: white;
}

.blue-form .fui-btn-wrapper .fui-btn{
    background-color: #187FBA;
    color: white;
    text-transform: uppercase;
    font-size: 25px;
    font-weight: 500;
    border-radius: 9999px;
    padding: 10px 25px 7px 25px;
    border-color: #187FBA;
}

.blue-form .add-caret button::after{
    content: url("/assets/caret-cobalt.svg");
    margin-left: 0.5rem;
}

.bg-cobalt, button.bg-cobalt {
    background-color: var(--dark-blue);
}

.fui-checkbox label::before, .fui-radio label::before{
    border: 1px solid #1c1c1c;
}

.fui-checkbox label::before{
    border-radius: 9999px;
}

.fui-checkbox label::before, .fui-radio label::before{
    width:20px;
    height: 20px;
}

.form-light-gray .fui-checkbox label::before{
    background-color: #f1f1f1;
}

.fui-checkbox label, .fui-radio label {
    padding-top: 2px;
}

.fui-checkbox label, .fui-radio label{
    line-height: 1.75;
    font-size: 16px;
    font-weight: 500;
}

.fui-input, .fui-select{
    border: 1px solid #1c1c1c;
    border-radius: 5px;
}



.fui-submit{

}

.text-active{
    color: #506370;
}

.hover\:text-active:hover{
    color: #506370;
}

.bg-active{
    background-color: #50626f;
}

.bg-light-blue{
    /*background-color: #25536e;*/
    background-color: #187fba;
}

#body-border{
    position: fixed;
    width: 100%;
    height: 100%;
    pointer-events: none;
    border: 20px solid white;
    top: 0;
    left: 0;
    z-index: 40;
}

.home-border{
    border: 20px solid white;
}

#header-slide{
    padding-top: 25px;
    padding-left: 40px;
    padding-right: 40px;
    background-color: #051f31;
}

.stay-informed{
    top:10%;
}

@media(max-width: 767px) {
    #body-border {
        display: none;
    }

    .sm-border-bottom-none{
        border-bottom: none;
    }

    .home-border{
        border: none;
    }

    #header-slide{
        padding-top: 10px;
        padding-left: 15px;
        padding-right: 15px;
        background-color: #051f31;
    }

    main{
        margin: 0px;
    }

    .stay-informed{
        top:0;
    }

    .side-image-height{
        min-height: 80vh;
    }
}



.richtext div *:first-child{
    padding-top: 0 !important;
}



@media(min-width: 1280px){
    h2.title-h2{
        font-size: 150px;
        line-height: 1;
        font-weight: bold;
    }
}

@media(max-width: 1280px) {
    h2.title-h2{
        font-size: 80px;
        line-height: 1;
        font-weight: bold;
    }
}

.broken-line{
    display: inline-block;
}

.broken-line-container {
    display: inline-block;
    overflow: visible;
}

.js-fix-height {
    overflow: visible;
}

.richtext a, .richtext-gray.richtext a{
    color: #187FBA;
    transition-property: all;
    transition-duration: 300ms;
}

.richtext a:hover, .richtext-gray.richtext a:hover{
    color: white;
}

.bg-light-blue{
    background-color: #187fba;
}

.text-light-blue{
    color: #187fba;
}

.hover\:text-light-blue:hover{
    color: #187fba;
}

.hover\:filter-blue{
    transition-property: all;
    transition-duration: 300ms;
}

/*.hover\:text-light-blue:hover .hover\:filter-blue{*/
/*    filter: brightness(0) saturate(100%) invert(55%) sepia(86%) saturate(7125%) hue-rotate(184deg) brightness(97%) contrast(81%);*/
/*}*/

.modal-position{
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    height: 100%;
}

.contact-block-item a:hover{
    opacity: 0.75;
    transition-duration: 200ms;
    transition-property: opacity;
}

.blue-link-btn{
    font-weight: 700;
    position: relative;
}

.group:hover .blue-link-btn{
    color: white;
    transition-property: color;
    transition-duration: 300ms;
}


.blue-link-btn::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #187fba;
    transition-duration: 300ms;
    transition-property: width, color;
    content: "";
}

.group:hover .blue-link-btn::after{
    width: 100%;
    background-color: white;
}

.white-link-btn{
    font-weight: 700;
    position: relative;
}

.white-link-btn::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #187fba;
    transition-duration: 300ms;
    transition-property: width;
    content: "";
}

.group:hover .white-link-btn::after{
    width: 100%;
}

.sticky-image-mask{
    max-height: 600px;
    -webkit-mask-image: url(/assets/q-mask.png);
    -webkit-mask-size: contain;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-image: url(/assets/q-mask.png);
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
}

@media(max-height: 800px) {
    .sticky-image-mask{
        max-height: 445px;

    }
}

.contact-shadow{
    filter: drop-shadow(20px 20px 30px rgba(0, 0, 0, 0.3));
}

.safari-z-fix{
    -webkit-transform:translate3d(0,0,0);
}