.mainbanner-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

@media(max-width:1438.98px) {
    .mainbanner-full {
        margin-bottom: -1px
    }
}

.mainbanner-full .common-image-component {
    border-radius: 0
}

.mainbanner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    z-index: 0;
    height: 43vw;
    min-height: 500px;
    max-height: 700px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media(max-width:1438.98px) {
    .mainbanner {
        height: 29vw;
        min-height: 300px;
        max-height: 450px
    }
}

@media(max-width:990.98px) {
    .mainbanner {
        height: 75vh;
        min-height: 0;
        max-height: none;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        text-align: center;
        padding-bottom: 40px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media(min-width:991px) {
    .mainbanner-thin {
        height: 33vw;
        min-height: 0;
        max-height: 370px
    }
}

@media(min-width:991px) {
    .mainbanner-content {
        max-width: 450px
    }

    .alignment-left .row {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .alignment-left .row .col-lg-6 {
        padding-right: 0
    }

    .alignment-left .row .mainbanner-content {
        padding-right: 0;
        padding-left: 0
    }

    .alignment-right .row {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .alignment-right .row .col-lg-6 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .alignment-right .row .mainbanner-content {
        padding-right: 0
    }

    .alignment-center .row {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center
    }

    .alignment-center .row .mainbanner-content {
        max-width: 700px;
        padding: 0
    }
}

.gradient-dark:after,
.gradient-light:after {
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    opacity: .5
}

.mainbanner {
    height: calc(100svh - var(--sticky-nav-height) - var(--sticky-promo-banner-height));
    min-height: calc(100svh - var(--sticky-nav-height) - var(--sticky-promo-banner-height));
    min-height: 100%;
    max-height: none;
    max-width: none;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.no-promo-banner .mainbanner {
    height: calc(100svh - var(--sticky-nav-height));
    min-height: calc(100svh - var(--sticky-nav-height))
}

@media(min-width:991px) {
    .mainbanner {
        height: calc(100vh - var(--sticky-nav-height) - var(--sticky-promo-banner-height));
        min-height: calc(100vh - var(--sticky-nav-height) - var(--sticky-promo-banner-height));
        padding-bottom: 80px;
        padding-left: 80px;
        padding-right: 80px
    }
}

.mainbanner.mainbanner-thin {
    max-height: 33vw;
    min-height: 350px
}


@media(min-width:991px) {
    .mainbanner .col-lg-6 {
        max-width: none;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.mainbanner .mainbanner-content {
    max-width: 510px
}

@media(max-width:990.98px) {
    .mainbanner .mainbanner-content {
        padding: 0;
        max-width: none
    }
}

.mainbanner .title-text {
    margin: 0 0 15px
}

.experience-component .mainbanner .cta-wrapper {
    margin-top: 30px
}

.gradient-dark:after {
    background-image: -webkit-gradient(linear, left bottom, left top, from(black), color-stop(50%, transparent));
    background-image: linear-gradient(0deg, black 0%, transparent 50%)
}

.gradient-light:after {
    background-image: -webkit-gradient(linear, left bottom, left top, from(white), color-stop(50%, transparent));
    background-image: linear-gradient(0deg, white 0%, transparent 50%)
}

@media(min-width:991px) {

    .alignment-right .row .mainbanner-content,
    .alignment-right .row .col-lg-6 {
        padding-left: 0
    }
}