/*
 * Home Page Reviews Carousel
 * All rules are scoped under .home-page-review-carousel so this stylesheet
 * cannot leak into or override Mountis template elements, articles, or
 * other components on the page.
 */

.home-page-review-carousel {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    /* padding: 0 44px; */
    padding: 0 56px;
    box-sizing: border-box;
}

.home-page-review-carousel,
.home-page-review-carousel * {
    box-sizing: border-box;
}

.home-page-review-carousel .hpr-heading {
    text-align: center;
    font-weight: 700;
    margin: 0 0 12px;
    font-size: 1.75rem;
    line-height: 1.3;
}

.home-page-review-carousel .hpr-subheading {
    text-align: center;
    margin: 0 auto 28px;
    max-width: 720px;
    color: #6b6b6b;
    line-height: 1.6;
}

.home-page-review-carousel .hpr-swiper {
    width: 100%;
    padding-bottom: 44px;
    overflow: hidden;
}

.home-page-review-carousel .swiper-wrapper {
    align-items: stretch;
}

.home-page-review-carousel .hpr-slide {
    height: auto;
    display: flex;
    flex-direction: column;
    background: transparent;
}

.home-page-review-carousel .hpr-slide__inner {
    flex: 1 1 auto;
    overflow: hidden;
    border-radius: 8px;
}

/* Preserve the review author's own HTML/design untouched; only constrain
   media so a stray large image cannot break the slide's box. */
.home-page-review-carousel .hpr-slide__inner img {
    max-width: 100%;
    height: auto;
    display: block;
}

.home-page-review-carousel .hpr-slide__meta {
    margin-top: 12px;
    display: flex;
    justify-content: space-between;
    gap: 8px;
    font-size: 0.85rem;
    line-height: 1.4;
    color: #6b6b6b;
}

.home-page-review-carousel .hpr-slide__author {
    font-weight: 600;
}

.home-page-review-carousel .swiper-pagination-bullet {
    opacity: 0.4;
}

.home-page-review-carousel .swiper-pagination-bullet-active {
    opacity: 1;
    background: currentColor;
}

/* .home-page-review-carousel .swiper-button-next,
.home-page-review-carousel .swiper-button-prev {
    color: inherit;
    width: 36px;
    height: 36px;
    margin-top: -18px;
}

.home-page-review-carousel .swiper-button-next::after,
.home-page-review-carousel .swiper-button-prev::after {
    font-size: 16px;
} */

.home-carousel .swiper-button-next,
.home-carousel .swiper-button-prev {
       color: inherit;
    width: 36px;
    height: 36px;
    margin-top: -18px;
}

.home-carousel .swiper-button-prev {
    left: 0;
}

.home-carousel .swiper-button-next {
    right: 0;
}

.home-carousel .swiper-button-next::after,
.home-carousel .swiper-button-prev::after {
    font-size: 16px;
    font-weight: 700;
}

.home-page-review-carousel--empty {
    text-align: center;
    padding: 40px 20px;
    color: #6b6b6b;
}

@media (max-width: 767px) {
    .home-page-review-carousel {
        padding: 0 28px;
    }

    .home-page-review-carousel .swiper-button-next,
    .home-page-review-carousel .swiper-button-prev {
        display: none;
    }
}
