.cabb-block.carousel {
    --carousel-items: 3;
    --carousel-gap: 70px;
    --carousel-gaps: calc( var(--carousel-items) - 1 );
}

@media screen and (max-width: 768px) {
    .cabb-block.carousel {
        --carousel-items: 2;
    }
}

@media screen and (max-width: 556px) {
    .cabb-block.carousel {
        --carousel-items: 1;
    }
}

.cabb-block.carousel .flickity-carousel {
    width: 100%;
}

.cabb-block.carousel .flickity-slider>* {
    --carousel-gaps: calc( var(--carousel-items) - 1 );
    width: calc((100% / var(--carousel-items)) - ((var(--carousel-gap) * var(--carousel-gaps)) / var(--carousel-items)));
    margin-right: calc(var(--carousel-gap));
    height: auto;
}

/** Editor */
.cabb-block.carousel .flickity-slider>.acf-block-preview {
    /*display: contents;*/
}

.cabb-block.carousel .carousel-spinner::after {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #ccc;
    z-index: 100;
    content: "Loading...";
}