.page-hero-carousel{
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}

.page-hero-carousel.alignfull{
    width: 100%;
    max-width: 100%;
}

.page-hero-carousel-swiper .swiper-slide{
    height: auto;
}

.page-hero-carousel-slide{
    position: relative;
	padding: var(--block-margin) 0;
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.page-hero-carousel .page-hero-carousel-media{
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.page-hero-carousel :is(.page-hero-carousel-image, .page-hero-carousel-video-player, .page-hero-carousel-video-player iframe){
    width: 100%;
    height: 100%;
}

.page-hero-carousel-image img,
.page-hero-carousel-video-player img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-hero-carousel-video-player iframe{
    display: block;
    border: none;
}

.page-hero-carousel .page-hero-carousel-video-player iframe{
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    aspect-ratio: 16/9;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.page-hero-carousel[data-color-scheme|="light"] :is(.page-hero-carousel-image img, .page-hero-carousel-video-player iframe){
    opacity: 0.2;
}

.page-hero-carousel:is([data-color-scheme|="medium"], [data-color-scheme|="dark"]) :is(.page-hero-carousel-image img, .page-hero-carousel-video-player iframe){
    opacity: 0.5;
}

.page-hero-carousel-wrapper{
    margin: 0 auto;
    position: relative;
}

.page-hero-carousel[data-content-width="centered-half"] .page-hero-carousel-wrapper{
    width: var(--wide-width);
}

.page-hero-carousel-inner>*:last-child{
    margin-bottom: 0;
}

.page-hero-carousel-breadcrumbs{
    padding: 0;
    margin: 0 0 calc(1em * var(--secondary-line-height));
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--item-column-gap);
    row-gap: var(--item-row-gap);
}

.page-hero-carousel-breadcrumbs li{
    display: flex;
    list-style: none;
    column-gap: var(--item-column-gap);
    align-items: center;
}

.page-hero-carousel-breadcrumbs li:not(:first-child):before{
    content: '';
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    margin: 0 0.8rem;
    border-top: 0.2rem solid;
    border-right: 0.2rem solid;
    transform: rotateZ(45deg);
}

.page-hero-carousel-breadcrumbs li a{
    text-decoration: none;
    color: var(--text-color);
}

.page-hero-carousel-breadcrumbs li:last-child{
    font-weight: 700;
}

.page-hero-carousel-content{
    margin-bottom: calc(1em * var(--secondary-line-height));
}

.page-hero-carousel-buttons{
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--item-column-gap);
    row-gap: var(--item-row-gap);
    align-items: center;
}

.page-hero-carousel-navigation{
    display: flex;
    align-items: center;
    column-gap: var(--row-gap);
    position: absolute;
    bottom: var(--page-padding);
    left: var(--page-padding);
    z-index: 10;
}

.page-hero-carousel-navigation-prev,
.page-hero-carousel-navigation-next{
    display: block;
}

:is(.page-hero-carousel-navigation-prev, .page-hero-carousel-navigation-next) svg{
    width: 4.8rem;
    height: auto;
}

:is(.page-hero-carousel-navigation-prev, .page-hero-carousel-navigation-next) svg *{
    transition: all 0.3s ease;
    stroke: var(--link-color);
}

:is(.page-hero-carousel-navigation-prev, .page-hero-carousel-navigation-next):is(:hover, :focus, :active) svg *{
    stroke: var(--hover-link-color);
}

.page-hero-carousel-pagination{
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: var(--item-column-gap);
    max-width: var(--wide-width);
    position: absolute;
    bottom: var(--page-padding);
    left: 50%!important;
    transform: translateX(-50%);
    z-index: 2;
    pointer-events: none;
}

.page-hero-carousel-pagination .swiper-pagination-bullet{
    opacity: 1;
    background-color: var(--link-color);
}

.page-hero-carousel-pagination .swiper-pagination-bullet-active{
    opacity: 1;
    background-color: var(--accent-color);
}

@media (max-width: 767px){
    .page-hero-carousel-navigation ~ * .page-hero-carousel-slide{
        padding-bottom: calc(var(--block-margin) + 4.8rem + var(--page-padding));
    }
}

@media (min-width: 768px){
    .page-hero-carousel.alignwide .page-hero-carousel-slide{
        padding-left: calc((var(--page-padding)*2) + 4.8rem);
        padding-right: calc((var(--page-padding)*2) + 4.8rem);
    }

    .page-hero-carousel-navigation{
        position: static;
    }

    .page-hero-carousel-navigation-prev,
    .page-hero-carousel-navigation-next{
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
    }

    .page-hero-carousel-navigation-prev{
        left: var(--page-padding);
    }

    .page-hero-carousel-navigation-next{
        right: var(--page-padding);
    }
}

@media (min-width: 992px){
    .page-hero-carousel:is([data-content-width="centered-half"], [data-content-width="half"]) .page-hero-carousel-inner{
        width: 50%;        
    }
}