.google-reviews-wrapper {
    max-width: 700px;
    margin: 40px auto;
    text-align: center;
    font-family: Arial, sans-serif;
}

.google-reviews-wrapper h3 span {
    font-size: 14px;
    color: #666;
}

.review-slider {
    overflow: hidden;
    position: relative;
}

.review-slide {
    display: none;
    padding: 20px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fafafa;
}

.review-slide.active {
    display: block;
}

.review-slide strong {
    font-size: 16px;
}

.review-slide .stars {
    color: #f4b400;
    margin: 5px 0;
}

.review-slider {
    touch-action: pan-y;
    cursor: grab;
}

.review-slide {
    transition: opacity 0.4s ease;
}

.star-rating {
    --star-size: 18px;
    --star-color: #ddd;
    --star-background: #fbbc04;

    --percent: calc(var(--rating) / 5 * 100%);

    display: inline-block;
    font-size: var(--star-size);
    font-family: Times; /* ensures star shape */
    line-height: 1;
    position: relative;
}

.star-rating::before {
    content: "★★★★★";
    letter-spacing: 2px;
    background: linear-gradient(
        90deg,
        var(--star-background) var(--percent),
        var(--star-color) var(--percent)
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.star-rating {
    margin-left: 6px;
}
