/*------------------------------------*\
    
    Full-Width Image + Text Block Customizations - Global Styling

    The styles you add to this file will be applied to the 'Full-Width Image + Text' block. 
    If there is any reasons why you would need to style this separately,
    please create a block-specific stylesheet for it (don't forget to register that block-specific stylesheet in acf-starter-blocks.php)

\*------------------------------------*/

.full-width-image-text {
    position: relative;
    background-color: #002D62; 
    z-index: 4;
}


.full-width-image-text + .full-width-image-text{
    padding-top: 100px;
}

.full-width-image-text--light-blue {
    background-color: #EEF5FC !important;  
    z-index: 3;
    position: relative;
    display: block;
}


.full-width-image-text--light-blue .btn-primary{
    color: #fff;
}


.full-width-image-text.bg-navy .full-width-image-text__img::before{
    content: '';
    background-color: #002D62;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    opacity: 0.8;
    position: absolute;
}

.full-width-image-text--light-blue .full-width-image-text__img::before{
    content: '';
    background-color: #D1E4F7;
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    opacity: 0.8;
    position: absolute;
}

.full-width-image-text__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    z-index: 1;
    display: none;
}

.full-width-image-text__content {
    padding: 0;
    position: relative;
    z-index: 2;
}

.full-width-image-text__headline {
    margin-top: 0;
}

.full-width-image-text__description :last-child {
    margin-bottom: 0;
}

.full-width-image-text__content {
    padding: 30px 20px;
    position: relative;
    z-index: 4;
}

.full-width-image-text__content h4 {
    color: #92C0E9;
}


.full-width-image-text__wave {
    position: absolute;
    bottom: -33px;
    left: 0;
    width: 100%;
    z-index: 2;
    opacity: 0.8;
}

.full-width-image-text--light-blue h4 {
    color: #003DA6;  
}


.full-width-image-text.bg-navy{
    padding: 40px;
}


.full-width-image-text.bg-navy .container{
    margin-left: 0;
    margin-right: 0;
    padding-left: 20px;
    padding-right: 20px;
}

.full-width-image-text__wave{
    
}


.full-width-image-text--direct-overlay svg{
    width: 100%;
    height: 100%;
    object-fit: cover;
}


.full-width-image-text__wave-down{
    position: absolute;
    z-index: 100;
    bottom: -2px;
    width: 100%;
    left: 0;
    /*transform: rotateY(180deg);*/
}


.full-width-image-text__wave-up{
    position: absolute;
    z-index: 100;
    top: -3px;
    width: 100%;
    /*transform: rotateY(180deg);*/
}


@media (min-width: 768px) {

    .full-width-image-text,
    .full-width-image-text.bg-navy {
        background: transparent !important; 
        padding: 82px 0 82px;
    }

    /*
    .full-width-image-text.bg-navy .full-width-image-text__wave::before{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background-color: #002d62;
    }
    */
    


    .full-width-image-text.bg-navy img{
        height: 100%;
    }

    .full-width-image-text.bg-navy::before{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background-color: #002D62;
    }


    .full-width-image-text.full-width-image-text--light-blue::before{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        background-color: #D1E4F7;
    } 


    .full-width-image-text + .full-width-image-text{
        padding-top: 140px;
        margin-top: 0;
    }
        

    .full-width-image-text__content {
        padding: 50px;
    }

    .full-width-image-text__img {
        display: block;
        object-position: bottom;
    }

    .full-width-image-text__description {
        padding: 0 0;
        max-width: 514px;
        margin: 0 auto;
    }



    .margin-top {
        margin-top: -150px;
        padding-top: 160px;
        padding-bottom: 240px;
    }

    .full-width-image-text__content h2 {
        font-size: 28px;
    }
}

@media (min-width: 1200px) {
    .full-width-image-text {
        padding: 96px 0 96px;
    }

    .full-width-image-text.margin-top-wave{
        padding-top: 240px;
    }

    .full-width-image-text.margin-bottom-wave{
        padding-bottom: 240px;
    }

    .full-width-image-text.bg-navy .container{
        margin: 0 auto;
    }


    .full-width-image-text + .full-width-image-text{
        padding-top: 180px;
        margin-top: 0;
    }

    .full-width-image-text__wave-down{
        position: absolute;
        z-index: 100;
        bottom: -2px;
        width: 100%;
        /*transform: rotateY(180deg);*/
    }


    .full-width-image-text__wave-up{
        position: absolute;
        z-index: 100;
        top: -3px;
        width: 100%;
        /*transform: rotateY(180deg);*/
    }


    .full-width-image-text__description {
        max-width: 872px;
    }

    .full-width-image-text__description p {
        padding-bottom: 25px;
    }

    .full-width-image-text__img {
        object-fit: initial;
    }

    .full-width-image-text__content h2 {
        font-size: 30px;
    }

    .margin-top {
        margin-top: -220px;
        padding-top: 240px;
        padding-bottom: 280px;
    }
}

@media (min-width: 1500px) {
    .full-width-image-text__img {
        object-fit: cover;
    }
}


@media (min-width: 2100px) {
    .full-width-image-text__img {
        object-fit: cover;
    }
}


/* Full-Width Image + Text - Direct Text Overlay */
.full-width-image-text--direct-overlay .full-width-image-text__content {
    padding: 0 20px;
}

.full-width-image-text--direct-overlay .full-width-image-text__content {
    padding: 0 0;
}

.full-width-image-text--direct-overlay .full-width-image-text__headline,
.full-width-image-text--direct-overlay .full-width-image-text__description p {
    color: #fff;
}

.full-width-image-text--light-blue .full-width-image-text__headline,
.full-width-image-text--light-blue .full-width-image-text__description p {
    color: #091F40;
}

@media (min-width: 768px) {

    .full-width-image-text--direct-overlay:before {
        content: '';
        position: absolute;
        z-index: 2;
        top: 0;
        right: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: .80;
        background-color: #002D62; 
        display: none;
    }
}



/* Full-Width Image + Text - Text Box Overlay */
.full-width-image-text--box-overlay .full-width-image-text__content {
    background-color: #fff;
    border-radius: 4px; 
    box-shadow: 0 1px 30px 0 rgb(0 0 0 / 10%); 
}

