.m-carousel .m-carousel-inner {
    position: relative;
    display: block;
    width: 100%;
    height: fit-content;
    /*padding: var(--paddingTop) 0 var(--paddingBottom);*/
    padding:
        calc( var(--paddingTop) * var(--vwTransform) ) 
        0
        calc( var(--paddingBottom) * var(--vwTransform) );
}

.m-carousel .m-carousel-inner.hide-lg {
    display: none;
}

.m-carousel .m-carousel-inner .m-carousel-swiper {
    position: relative;
    display: block;
    width: 100%;
    height: fit-content;
    overflow: hidden;
    padding: 0 var(--lateralMargin);
    display: none !important;
}

.m-carousel .m-carousel-inner .swiper-slide {
    width: calc( ( 100% / 12 ) * var(--columns) - ( var(--gap) / 1.5 ) );
    height: auto;
}

.m-carousel .m-carousel-inner .swiper-slide .media {
    border: .57vw solid var(--beige);
}

.m-carousel .m-carousel-inner .swiper-slide .title {
    position: relative;
    display: flex;
    flex-flow: column;
    width: 100%;
    height: fit-content;
    row-gap: 1.38vw; /*24px*/
}

.m-carousel .m-carousel-inner .swiper-slide .caption {
    position: relative;
    display: block;
    width: 100%;
    height: fit-content;
}

.m-carousel .m-carousel-inner .swiper-slide img,
.m-carousel .m-carousel-inner .swiper-slide video {
    position: relative;
    display: block;
    height: auto;
    width: 100%;
}

.m-carousel .m-carousel-inner .swiper-slide .media-caption {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 1.851vw; /*32px*/
}

.m-carousel .m-carousel-inner .sm {
	display: none;
}

/***************************************************************/
/***************************************************************/
/***************************************************************/
/***************************************************************/
/***************************************************************/
/***************************************************************/

.m-carousel .m-carousel-inner .m-carousel-lg {
    position: relative;
    display: flex;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    align-items: center;
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner {
    will-change: transform; 
    display: flex;
    width: max-content;
    column-gap: var(--gap);
    padding: 0 var(--lateralMargin);
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide {
    position: relative;
    display: flex;
    transform: translateZ(0);
    width: calc( ( 100vw / 12 ) * var(--columns) - ( var(--gap) / 1.5 ) );
    height: fit-content;
    flex-shrink: 0;
    flex-flow: column;
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide .title {
    position: relative;
    display: flex;
    flex-flow: column;
    width: 100%;
    height: fit-content;
    row-gap: 1.38vw; /*24px*/
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide .caption {
    position: relative;
    display: block;
    width: 100%;
    height: fit-content;
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide a {
    width: 100%;
    height: fit-content;
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide .media {
    width: 100%;
    height: fit-content;
    border: .57vw solid var(--beige);
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide img,
.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide video {
    position: relative;
    display: block;
    height: auto;
    width: 100%;
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .slide .media-caption {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 1.851vw; /*32px*/
}

.m-carousel .m-carousel-inner .m-carousel-lg .inner .sm {
	display: none;
}



@media only screen and (max-width: 740px) {
    .m-carousel .m-carousel-inner .m-carousel-lg {
        display: none !important;
    }

    .m-carousel .m-carousel-inner .m-carousel-swiper {
        display: block !important;
    }

    .m-carousel .m-carousel-inner .lg {
        display: none;
    }

    .m-carousel .m-carousel-inner .sm {
        display: block;
    }
    
    .m-carousel .m-carousel-inner {
        padding:
            calc( var(--paddingTopSM) * var(--vwTransform) ) 
            0
            calc( var(--paddingBottomSM) * var(--vwTransform) );
    }

    .m-carousel .m-carousel-inner.hide-lg:not(.hide-sm) {
        display: block;
    }

    .m-carousel .m-carousel-inner.hide-sm {
        display: none;
    }

    .m-carousel .m-carousel-inner .swiper-slide {
        width: calc( ( 100% / 6 ) * var(--columnsSM) - ( var(--gap) / 1.5 ) );
    }

    .m-carousel .m-carousel-inner .swiper-slide .media {
        border: 2.05vw solid var(--beige); /*8px*/
    }

    .m-carousel .m-carousel-inner .swiper-slide .title {
        row-gap: 3.07vw; /*12px*/
    }

    .m-carousel .m-carousel-inner .swiper-slide .media-caption {
        padding-top: 4.35vw;
    }
}


@media only screen and (max-width: 550px) {
    .m-carousel .m-carousel-inner {
        /*
        padding:
            calc( var(--basePx) * ( var(--paddingTopSM) / 100) )
            0
            calc( var(--basePx) * ( var(--paddingBottomSM) / 100) );
        */
        padding:
            calc( var(--paddingTopSM) * 1px ) 
            0
            calc( var(--paddingBottomSM) * 1px );
    }

    .m-carousel .m-carousel-inner .swiper-slide {
        width: calc( ( 100% / 6 ) * var(--columnsSM) - ( var(--gap) / 1.5 ) );
    }

    .m-carousel .m-carousel-inner .swiper-slide .media {
        border: 8px solid var(--beige);
    }

    .m-carousel .m-carousel-inner .swiper-slide .title {
        row-gap: 12px;
    }

    .m-carousel .m-carousel-inner .swiper-slide .media-caption {
        padding-top: 19px;
    }
}