body:not(.single-brand) .cabb-block.general-carousel {
    margin-top:-40px;
    margin-bottom:-40px;
}

body:not(.single-brand) .cabb-block:last-of-type.general-carousel {
    margin-top: var(--wp--preset--spacing--x-large);
    margin-bottom: var(--wp--preset--spacing--x-large);
}

.cabb-block.general-carousel {
    position: relative;
    width: 100%;
    max-width: 100% !important;
    flex-direction: column;
}

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

.cabb-block.general-carousel.thumbnailed .carousel-nav {
    padding: 1.5rem;
}

/* Single slide - start */
.cabb-block.general-carousel .carousel-main .carousel-cell {
    width: var(--wp--custom--cabb-block-content-size);
    height: auto;
    margin-left: calc(var(--wp--preset--spacing--small) / 2);
    margin-right: calc(var(--wp--preset--spacing--small) / 2);
    opacity: 1;
    max-width: 90%;
}

.cabb-block.general-carousel.alignwide .carousel-main .carousel-cell {
    width: var(--wp--custom--cabb-block-content-wide-size);
}

.cabb-block.general-carousel.alignfull .carousel-main .carousel-cell {
    width: 100%;
    max-width: 100%;
}

.cabb-block.general-carousel.alignfull.thumbnailed .carousel-nav .carousel-cell {
    width: 16rem;
    margin-left: .625rem;
    margin-right: .625rem;
}

.cabb-block.general-carousel .carousel-main .carousel-cell:not(.is-selected) {
    opacity: 0.1;
}

.cabb-block.general-carousel .carousel-cell a:not(.unstyled) {
    display: flex;
    transition: background-color 0.15s;
    border-radius: 4px;
}

.cabb-block.general-carousel .carousel-cell a:not(.btn-primary):hover {
    background-color: rgba(0, 0, 0, 0.1);
}

.cabb-block.general-carousel .carousel-cell a > div {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0.4));
}

.cabb-block.general-carousel.basic .carousel-cell p {
    position: absolute;
    right: 0;
    bottom: 0;
    margin: 0;
    padding-right: var(--wp--preset--spacing--x-large);
    padding-bottom: var(--wp--preset--spacing--x-large);
    padding-left: var(--wp--preset--spacing--small);
}

.cabb-block.general-carousel .carousel-main .carousel-cell img {
    position: relative;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.cabb-block.general-carousel .carousel-nav {
    display: none;
}
@media (min-width: 1024px) {
    .cabb-block.general-carousel .carousel-nav {
        display: block;
    }
}

.cabb-block.general-carousel .carousel-nav .carousel-cell img,
.cabb-block.general-carousel .carousel-nav .carousel-cell svg {
    position: relative;
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}

.cabb-block.general-carousel.thumbnailed .carousel-cell .ratio::before {
    background-color: rgba(0, 0, 0, .6);
}

.cabb-block.general-carousel.thumbnailed .carousel-cell .ratio {
    --bs-aspect-ratio: 757px;
}

.cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell img {
    position: absolute;
    left: 0;
    top: 0;
}

.cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    row-gap: 20px;
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
    max-width: 36rem;
}
@media (min-width: 640px) {
    .cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper-inner {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}
@media (min-width: 1024px) {
    .cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper-inner {
        padding-left: 3rem;
        padding-right: 3rem;
        max-width: 48rem;
    }
}

.cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper time {
    color: var(--wp--preset--color--orange);
    text-transform: uppercase;
    font-weight: 700;
    font-size: .875rem;
    line-height: 1.25rem;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell time {
    color: var(--wp--preset--color--orange);
    text-transform: uppercase;
    font-weight: 700;
    font-size: .65rem;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell h2 {
    color: rgb(163 163 163);
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    text-transform: uppercase;
}

.cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper h2 {
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0;
}
@media (min-width: 1024px) {
    .cabb-block.general-carousel.thumbnailed .carousel-main .carousel-cell .content-wrapper h2 {
        font-size: 3rem;
        line-height: 1;
    }
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell .content-wrapper {
    display: flex;
    flex-direction: column;
    padding: .75rem;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell .content-wrapper time {
    line-height: 1.5;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell .content-wrapper h2 {
    color: rgb(163 163 163);
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    text-transform: uppercase;
    margin: 0;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell {
    border-bottom: 2px solid transparent;
    cursor: pointer;
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell:not(.is-selected):hover {
    opacity: .6;
    border-color: var(--wp--preset--color--orange);
}

.cabb-block.general-carousel.thumbnailed .carousel-nav .carousel-cell.is-selected {
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    border-color: var(--wp--preset--color--orange);
}

.cabb-block.general-carousel .carousel-nav.thumb-to-post .carousel-cell.is-selected,
.cabb-block.general-carousel .carousel-nav.arrows-draggable .carousel-cell.is-selected{
    border-color: transparent;
}

.cabb-block.general-carousel .carousel-nav.thumb-to-post .carousel-cell:hover,
.cabb-block.general-carousel .carousel-nav.arrows-draggable .carousel-cell:hover {
    opacity: .6;
    border-color: var(--wp--preset--color--orange);
}

.cabb-block.general-carousel .carousel-nav.arrows-draggable{
    padding: 1.5rem 4rem;
}

.cabb-block.general-carousel .carousel-nav.arrows-draggable .flickity-prev-next-button.next{
    right:10px;
}

.cabb-block.general-carousel .carousel-nav.arrows-draggable .flickity-prev-next-button.previous{
    left:10px;
}

/* Single slide - end */

/* Slider navigation buttons - start */

.cabb-block.general-carousel .carousel-buttons.arrows-default {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%);
    width: var(--wp--custom--cabb-block-content-size);
    max-width: 90%;
    z-index: 1;
}

@media (min-width: 1024px) {
    
    .cabb-block.general-carousel .carousel-buttons.arrows-alt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%);
        width: var(--wp--custom--cabb-block-content-size);
        max-width: 90%;
        z-index: 1;
    }

    .cabb-block.general-carousel .flickity-button.previous {
        left: var(--wp--preset--spacing--small-large); 
    }

    .cabb-block.general-carousel .flickity-button.next {
        right: var(--wp--preset--spacing--small-large); 
    }

    .cabb-block.general-carousel.alignfull .carousel-buttons.arrows-alt {
        width: 100%;
        max-width: 100%;
    }

    .cabb-block.general-carousel.thumbnailed .carousel-buttons {
        top: 35%;
    }
}

.cabb-block.general-carousel.alignwide .carousel-buttons {
    width: var(--wp--custom--cabb-block-content-wide-size);
}


.cabb-block.general-carousel .flickity-button {
    z-index: 1;
    width: calc(var(--wp--preset--spacing--small) * 2);
    height: calc(var(--wp--preset--spacing--small) * 2);
    background: transparent;
    transition: background 0.15s;
}

.cabb-block.general-carousel .flickity-button:hover {
    background: rgba(255, 255, 255, 0.25);
}

.cabb-block.general-carousel .flickity-button:focus {
    border: solid 3px rgba(255, 255, 255, 0.5);
    box-shadow: none;
}

.cabb-block.general-carousel .flickity-button .flickity-button-icon {
    top: 40%;
    left: 40%;
    width: 20%;
    height: 20%;
    fill: white;
}

.cabb-block.general-carousel .video-thumbnail {
    height: 100%;
    position: relative;
    cursor: pointer;
}

.cabb-block.general-carousel .play-button {
    position: absolute;
    padding: .75rem;
    z-index: 30;
    bottom: 20px;
    left: 20px;
    cursor: pointer;
}

.cabb-block.general-carousel .video-container:hover svg {
    color: var(--wp--preset--color--orange);
}

.cabb-block.general-carousel .video-container:hover .play-button {
    border-color: var(--wp--preset--color--orange) !important;
}

.cabb-block.general-carousel.alignfull .carousel-buttons.arrows-default {
    width: 100%;
    max-width: 100%;
}

/* Slider navigation buttons - end */

@media screen and (max-width: 1024px) {

    .cabb-block.general-carousel.thumbnailed .carousel-buttons.arrows-default {
        top: 6%;
    } 

    .cabb-block.general-carousel .carousel-cell {
        width: 100%;
        max-width: 100%;
        margin-left: 2px;
        margin-right: 2px;
    }

    .cabb-block.general-carousel .carousel-cell a {
        border-radius: 0;
    }

    .cabb-block.general-carousel.basic .carousel-main .carousel-cell p {
        padding-right: var(--wp--preset--spacing--small);
        padding-bottom: var(--wp--preset--spacing--small);
        padding-left: var(--wp--preset--spacing--small);
    }

    .cabb-block.general-carousel .carousel-cell img {
        border-radius: 0;
    }

    .cabb-block.general-carousel .carousel-buttons.arrows-default {
        top: var(--wp--preset--spacing--small-large);
        right: var(--wp--preset--spacing--small);
        left: unset;
        transform: none;
    }

    .cabb-block.general-carousel .flickity-button.previous {
        padding: 0;
    }

    .cabb-block.general-carousel .flickity-button.next {
        padding: 0;
    }

    .cabb-block.general-carousel .arrows-default .flickity-button.previous {
        left: unset;
        right: var(--wp--preset--spacing--small-large);
        width: var(--wp--preset--spacing--small-large);
        height: var(--wp--preset--spacing--small-large);
    }

    .cabb-block.general-carousel .arrows-default .flickity-button.next {
        right: 0;
        width: var(--wp--preset--spacing--small-large);
        height: var(--wp--preset--spacing--small-large);
        padding: 0;
    }

    .cabb-block.general-carousel .arrows-default .flickity-button .flickity-button-icon {
        top: 30%;
        left: 30%;
        width: 40%;
        height: 40%;
    }

    .cabb-block.general-carousel .carousel-buttons.arrows-alt + .carousel.carousel-main .content-wrapper-inner {
        padding-left: 3rem;
        padding-right: 3rem;
    }
}