/* ==========================================================================
   Customer Reviews
   Figma: Reviews container 1620px wide, 4 cards
   Card: 380.723 × 386.791px, gap 30.337px
   ========================================================================== */
.reviews {
    padding: 65px 0 80px;
}

/* Figma: 38px Bold #272727, letter-spacing 1.9px */
.reviews .section-title {
    margin-bottom: 10px;
}

/* Figma: 29.392px Regular #272727 */
.reviews__subtitle {
    font-size: 29.392px;
    margin-bottom: 45px;
}

/* Review cards container — Figma: 1620px wide, centered */
.reviews .container {
    max-width: 1640px;
}

/* Figma: card 385.424 × 391.566px, border 0.995px #d3d3d3, white bg */
.review-card {
    background: var(--white);
    border: 0.995px solid var(--gray-300);
    padding: 23.58px 22.75px;
}

/* Figma: avatar 31.445px circle + name 18.2px Bold #2a2a2a */
.review-card__header {
    gap: 14px;
    margin-bottom: 14px;
}

.review-card__avatar {
    width: 31.833px;
    height: 31.833px;
    font-size: 15.917px;
    flex-shrink: 0;
}

.review-card__author {
    font-size: 18.427px;
    color: #2a2a2a;
    line-height: 19.896px;
}

/* Figma: stars 18.671px, gap ~21.6px between star centers */
.review-card__stars {
    gap: 3px;
    margin-bottom: 14px;
}
.review-card__stars svg {
    width: 18.901px;
    height: 18.901px;
}

/* Figma: 18.427px Bold #2a2a2a */
.review-card__title {
    font-size: 18.427px;
    color: #2a2a2a;
    line-height: 19.896px;
    margin-bottom: 10px;
}

/* Figma: 16.891px Regular #4f5357, line-height 26.104px */
.review-card__text {
    font-size: 16.891px;
    line-height: 26.104px;
    margin-bottom: 18px;
    flex: 1;
}

/* Figma: date 14.76px #4f5357, dot #e1e1e3, verified 13.12px #4f5357 */
.review-card__meta {
    gap: 6px;
}

.review-card__date {
    font-size: 14.946px;
    line-height: 21.517px;
}

.review-card__dot {
    color: #e1e1e3;
    font-size: 14.946px;
}

.review-card__verified {
    gap: 4px;
    font-size: 13.285px;
    line-height: 21.517px;
}

.review-card__verified-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

/* Pagination dots */
.reviews__pagination {
    margin-top: 35px;
}

.reviews__pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: var(--gray-300);
    opacity: 1;
    margin: 0 4px;
}

.reviews__pagination .swiper-pagination-bullet-active {
    background: var(--gray-900);
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1439px) {
    .review-card__text {
        font-size: 15px;
        line-height: 23px;
    }
}

@media (max-width: 1199px) {
    .reviews__subtitle {
        font-size: 22px;
    }
    .review-card {
        padding: 20px 18px;
    }
    .review-card__title {
        font-size: 16px;
    }
    .review-card__text {
        font-size: 14px;
        line-height: 21px;
    }
}

@media (max-width: 991px) {
    .reviews {
        padding: 50px 0 60px;
    }
    .reviews__subtitle {
        font-size: 20px;
        margin-bottom: 30px;
    }
}

@media (max-width: 767px) {
    .reviews {
        padding: 43px 0 50px;
    }
    .reviews__subtitle {
        font-size: 16px;
        margin-bottom: 25px;
    }
    .review-card {
        border-width: 0.765px;
        padding: 18px;
    }
    .review-card__avatar {
        width: 24.471px;
        height: 24.471px;
        font-size: 12.235px;
    }
    .review-card__author {
        font-size: 14.165px;
        line-height: 15.294px;
    }
    .review-card__stars svg {
        width: 14.529px;
        height: 14.529px;
    }
    .review-card__title {
        font-size: 14.165px;
        line-height: 15.294px;
    }
    .review-card__text {
        font-size: 12.984px;
        line-height: 20.067px;
    }
    .review-card__date {
        font-size: 11.489px;
        line-height: 16.54px;
    }
    .review-card__verified {
        font-size: 10.213px;
        line-height: 16.54px;
    }
    .reviews .container {
        padding: 0;
        max-width: 100%;
    }
    .reviews-swiper .swiper-slide {
        width: 296px;
    }
    .reviews__pagination {
        margin-top: 10px;
    }
    .reviews__pagination .swiper-pagination-bullet {
        width: 7px;
        height: 7px;
        margin: 0 3px;
    }
}
