.component.featured-carousel {
    background: var(--white);
    /*padding: var(--logo-width);*/
    /* Changed by Perran as part of FE review */
    padding: 0px var(--logo-width);
    overflow: hidden;
}

/* Added by Perran to reduce padding if this component follows another white background component with no background */
.outer-wrapper:not([class*="background-"]):not([style*="background"]) + .outer-wrapper:last-child .component.featured-carousel {
    padding-top:0px;
}

.component.featured-carousel.red {
    background: var(--red01);
    color: var(--white);
    padding-top: var(--component-margin);
}

.component.featured-carousel .title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 25px;
    gap: 20px;
    /*padding: 0 80px 80px 80px;*/
    /* Changed by Perran as part of FE review */
    padding: 0 80px 50px 80px;
}

.component.featured-carousel .title .neue-haas {
    font-size: 50px;
    /*color: var(--blue01);*/
    /* Changed by Perran as part of FE review */
    color: var(--red01);
    margin: 0;
}

.component.featured-carousel.red .title .neue-haas {
    color: var(--white);
}

.component.featured-carousel .owl-carousel .owl-stage-outer {
    overflow: visible;
}

.component.featured-carousel .owl-carousel .owl-stage {
    display: flex;
}

.component.featured-carousel .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
}

.component.featured-carousel .owl-carousel .owl-dots {
    display: none;
}

.component.featured-carousel .owl-carousel .card {
    width: 100%;
    min-height: calc((1600px - 340px) / 3 * 1.15);
}

.component.featured-carousel .owl-carousel .owl-item:not(.active) .card {
    opacity: 0.5;
    cursor: default;
    transition: opacity ease 0.25s;
}

.component.featured-carousel .owl-carousel .card .more svg {
    stroke: var(--white);
}

.component.featured-carousel.red .owl-carousel .owl-dots .owl-dot span {
    border: 1px solid var(--white);
}

.component.featured-carousel.red .owl-carousel .owl-dots .owl-dot.active span,
.component.featured-carousel.red .owl-carousel .owl-dots .owl-dot:hover span {
    background: var(--white);
}

@media (max-width: 1600px) {
    .component.featured-carousel .owl-carousel .card {
        min-height: calc((100vw - 340px) / 3 * 1.15);
    }
}

@media (max-width: 1280px) {
    .component.featured-carousel {
        padding: 0px 80px;
    }

    .component.featured-carousel .title {
        padding: 0 40px 60px 40px;
    }

    .component.featured-carousel .owl-carousel .card {
        min-height: calc((100vw - 185px) / 2 * 1.15);
    }

    .component.featured-carousel .owl-carousel .owl-nav {
        display: none;
    }

    .component.featured-carousel .owl-carousel .owl-dots {
        display: block;
    }
}

@media (max-width: 768px) {
    .component.featured-carousel {
        padding: 40px;
    }

    .component.featured-carousel .title {
        padding: 0 20px 40px 20px;
    }

    .component.featured-carousel .title .neue-haas {
        font-size: 40px;
    }

    .component.featured-carousel .owl-carousel .card {
        min-height: calc((100vw - 80px) * 1.15);
    }
}

@media (max-width: 480px) {
    .component.featured-carousel {
        padding: 20px;
    }

    .component.featured-carousel .title {
        padding: 0 0 40px 0;
    }

    .component.featured-carousel .title .neue-haas {
        font-size: 30px;
    }

    .component.featured-carousel .owl-carousel .card {
        min-height: calc((100vw - 40px) * 1.15);
    }
}
