.mod-fadecarousel {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    isolation: isolate;
    background: #eee;
    margin: 0;
    padding: 0;
    transition: height 300ms ease-in-out;
}

.mod-fadecarousel--full-bleed {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
}

.mod-fadecarousel .fc-slide {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    object-position: center;
    opacity: 0;
    visibility: hidden;
    transition:
        opacity var(--fc-duration, 1200ms) ease-in-out,
        visibility 0s linear var(--fc-duration, 1200ms);
}

.mod-fadecarousel .fc-slide.is-active {
    opacity: 1;
    visibility: visible;
    transition:
        opacity var(--fc-duration, 1200ms) ease-in-out,
        visibility 0s;
}

@media (prefers-reduced-motion: reduce) {
    .mod-fadecarousel {
        transition: none;
    }

    .mod-fadecarousel .fc-slide,
    .mod-fadecarousel .fc-slide.is-active {
        transition: none;
    }
}