/* ------------------------------ */
/* ----------- Teaser ----------- */
/* ------------------------------ */

/* General */
.teaser__content, .teaser__media {
    position: relative;
}

.teaser__content p:last-of-type {
    margin-bottom: 0;
}

.teaser__media img {
    width: 100%;
}

.swiper {
    position: relative;
}




/* Teaser */
.section__teaser .teaser__media {
    position: relative;
    overflow: hidden;
}


/* Teaser below */
.section > .section__teaser_below {
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.section > .section__content.image--bottom + .section__teaser_below {
    margin-top: var(--spacing-11);
}

.section__teaser_below--white + .section__teaser_below {
    margin-top: 0;
}

.section__teaser_below .teaser__media__container {
    position: relative;
    z-index: 2;
    margin: 0 auto;
}

.section__teaser_below .teaser__media__container {
    max-width: var(--width-content-big);
}

.section__teaser_below .teaser__content__container {
    padding-bottom: var(--spacing-10);
}

.section:last-child .section__teaser_below:last-child .teaser__content__container {
    padding-bottom: 0;
}


/* Blue */
.section__teaser_below--blue {
    background-color: var(--brand-color);
}

.section--color .section__teaser_below--blue:first-child {
    margin-top: calc(-1 * var(--spacing-10));
}

.section__teaser_below--blue .teaser__content, .section__teaser_below--blue .teaser__content a {
    color: var(--brand-white);
}

.section--color > .section__teaser_below--blue + .section__teaser_below--blue {
    margin-top: 0 !important;
}

.section--color > .section__teaser_below--blue + .section__teaser_below--blue .teaser__media {
    padding-top: var(--spacing-10);
}

.section__teaser_below--blue .teaser__media::before, .section--color .section__teaser_below--white .teaser__media::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
}

.section__teaser_below--blue .teaser__media::before {
    height: calc(100% - var(--spacing-10));
    background-color: var(--brand-white);
}

.section--color .section__teaser_below--white .teaser__media::before {
    height: var(--spacing-10);
    background-color: var(--brand-color);
}

.section--color .section__teaser_below--blue .teaser__media::before {
    display: none;  
}

main .section__teaser_below--blue ul li::before {
    background-color: var(--brand-white) !important;
}

.section__teaser_below--blue .button--normal svg {
    fill: var(--brand-white) !important;
    stroke: var(--brand-white) !important;
}


/* White */
.section > .section__teaser_below--white {
    background-color: var(--brand-white);
}

.section--color .section__teaser_below--white, .section--color .section__teaser_below--white a {
    color: var(--brand-black);
}

.section--color .section__teaser_below--white + .section__teaser_below--white .teaser__media::before {
    display: none;
}

main .section__teaser_below--white ul li::before {
    background-color: var(--brand-black) !important;
}

.section__teaser_below--white .button--normal svg {
    fill: var(--brand-black) !important;
    stroke: var(--brand-black) !important;
}



/* ------------------------------ */
/* -------- Media Queries ------- */
/* ------------------------------ */

@media all and (min-width: 992px) {

    .section__teaser .teaser__content {
        max-width: var(--width-content-small);
    }

}


@media all and (min-width: 1240px) {

    .section > .section__teaser_below {
        margin-top: calc(var(--spacing-11) / 2);
    }

}


@media all and (min-width: 1400px) {

    .section__teaser_below .button--normal {
        margin-top: var(--spacing-4);
    }

}


@media all and (min-width: 2000px) {

    .section__teaser .row:not(.reverse) .teaser__media {
        padding-right: var(--spacing-8);
    }
    
    .section__teaser .row.reverse .teaser__media {
        padding-left: var(--spacing-8);
    }
    
    .section__teaser .teaser__content, .section__teaser_below .teaser__content__container {
        padding-top: var(--spacing-8);
    }

}


@media all and (max-width: 1999.98px) and (min-width: 1600px) {

    .section__teaser .row:not(.reverse) .teaser__media {
        padding-right: var(--spacing-7);
    }
    
    .section__teaser .row.reverse .teaser__media {
        padding-left: var(--spacing-7);
    }
    
    .section__teaser .teaser__content, .section__teaser_below .teaser__content__container {
        padding-top: var(--spacing-7);
    }

}


@media all and (max-width: 1599.98px) and (min-width: 1400px) {

    .section__teaser .row:not(.reverse) .teaser__media {
        padding-right: var(--spacing-6);
    }
    
    .section__teaser .row.reverse .teaser__media {
        padding-left: var(--spacing-6);
    }
    
    .section__teaser .teaser__content, .section__teaser_below .teaser__content__container {
        padding-top: var(--spacing-6);
    }

}


@media all and (max-width: 1399.98px) and (min-width: 1240px) {

    .section__teaser .row:not(.reverse) .teaser__media {
        padding-right: var(--spacing-7);
    }
    
    .section__teaser .row.reverse .teaser__media {
        padding-left: var(--spacing-7);
    }

    .section__teaser .teaser__content, .section__teaser_below .teaser__content__container {
        padding-top: var(--spacing-7);
    }

    .section__teaser_below .teaser__media__container, .section__teaser_below .teaser__content__container.width--big  {
        padding-left: calc(var(--spacing-6) * 2);
        padding-right: calc(var(--spacing-6) * 2);
    }

}


@media all and (max-width: 1239.98px) {

    .teaser.reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

}


@media all and (max-width: 1239.98px) and (min-width: 992px) {

    .section__teaser_below .teaser__media__container, .section__teaser_below .teaser__content   {
        padding-left: var(--spacing-6);
        padding-right: var(--spacing-6);
    }

    .section__teaser_below .teaser__content__container {
        padding-top: var(--spacing-7);
    }

    .section__teaser .teaser__content {
        padding-top: var(--spacing-6);
    }

    .section__teaser .teaser__media {
        max-width: var(--width-content-small);
    }

    .section > .section__teaser_below {
        margin-top: var(--spacing-8)
    }

}


@media all and (max-width: 991.98px) {

    .section__teaser_below .teaser__media {
        margin-bottom: var(--spacing-6);
    }

    .section__teaser .teaser__media {
        margin-bottom: var(--spacing-6);
    }

    .section__teaser .teaser__content {
        padding-right: var(--spacing-5);
        padding-left: var(--spacing-5);
    }

    .teaser_container.inside:not(.inside--small) {
        padding-left: 0;
        padding-right: 0;
    }

    .section__teaser_below .teaser__content   {
        padding-left: var(--spacing-5);
        padding-right: var(--spacing-5);
    }

    .section > .section__teaser_below {
        margin-top: var(--spacing-7)
    }

}