/* =========================================================
   testimonials.css
   ========================================================= */
.sb-testimonials-section { padding: var(--sb-space-16) 0 var(--sb-space-24); background: var(--sb-lighter); }

.sb-testi-stats {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: var(--sb-space-4); margin-bottom: var(--sb-space-12);
    background: var(--sb-white); border: 1px solid var(--sb-border);
    border-radius: var(--sb-radius-lg); overflow: hidden;
    box-shadow: var(--sb-shadow-sm);
}
.sb-testi-stats > div {
    display: flex; flex-direction: column; align-items: center; text-align: center;
    padding: var(--sb-space-6); gap: var(--sb-space-1);
    border-right: 1px solid var(--sb-border);
}
.sb-testi-stats > div:last-child { border-right: none; }
.sb-testi-stats strong { font-size: var(--sb-text-3xl); font-weight: var(--sb-fw-extrabold); color: var(--sb-primary); line-height: 1; }
.sb-testi-stats span { font-size: var(--sb-text-xs); color: var(--sb-muted); font-weight: var(--sb-fw-medium); }

.sb-testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sb-space-6); }

.sb-testi-card {
    background: var(--sb-white); border: 1px solid var(--sb-border);
    border-radius: var(--sb-radius-lg); padding: var(--sb-space-6);
    box-shadow: var(--sb-shadow-sm); transition: var(--sb-transition);
    display: flex; flex-direction: column; gap: var(--sb-space-4);
}
.sb-testi-card:hover { box-shadow: var(--sb-shadow-lg); border-color: var(--sb-primary-mid); transform: translateY(-3px); }

.sb-testi-card__top { display: flex; align-items: flex-start; gap: var(--sb-space-3); }
.sb-testi-card__photo img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.sb-testi-card__top > div { flex: 1; display: flex; flex-direction: column; gap: 3px; }
.sb-testi-card__top strong { font-size: var(--sb-text-base); font-weight: var(--sb-fw-bold); color: var(--sb-dark); }
.sb-testi-card__top span { font-size: var(--sb-text-xs); color: var(--sb-muted); }
.sb-testi-result { background: var(--sb-primary-light); color: var(--sb-primary); font-size: var(--sb-text-xs) !important; font-weight: var(--sb-fw-bold) !important; padding: 2px 8px; border-radius: var(--sb-radius-full); width: fit-content; }
.sb-testi-stars { font-size: 14px; line-height: 1; flex-shrink: 0; }

.sb-testi-card__quote { font-size: var(--sb-text-sm); color: var(--sb-dark-3); line-height: 1.75; font-style: italic; border-left: 3px solid var(--sb-primary-mid); padding-left: var(--sb-space-4); margin: 0; }

.sb-testi-card__video { border-radius: var(--sb-radius); overflow: hidden; aspect-ratio: 16/9; }
.sb-testi-card__video iframe { width: 100%; height: 100%; border: none; }

@media (max-width: 1024px) {
    .sb-testi-grid { grid-template-columns: 1fr 1fr; }
    .sb-testi-stats { grid-template-columns: repeat(2, 1fr); }
    .sb-testi-stats > div:nth-child(2) { border-right: none; }
}
@media (max-width: 768px) { .sb-testi-grid { grid-template-columns: 1fr; } }

/* Home reviews section */
.sb-home-reviews {
    padding: var(--sb-space-16) 0;
    background: var(--sb-lighter);
}

.sb-home-reviews__trust-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--sb-space-3);
    margin: 0 auto var(--sb-space-6);
}

.sb-home-reviews__trust-strip > div {
    background: var(--sb-white);
    border: 1px solid var(--sb-border);
    border-radius: 12px;
    padding: 0.75rem 0.8rem;
    text-align: center;
    box-shadow: var(--sb-shadow-sm);
}

.sb-home-reviews__trust-strip strong {
    display: block;
    color: var(--sb-primary);
    font-size: var(--sb-text-xl);
    line-height: 1.1;
}

.sb-home-reviews__trust-strip span {
    color: var(--sb-muted);
    font-size: var(--sb-text-xs);
}

.sb-home-reviews__marquee {
    overflow: hidden;
    mask-image: linear-gradient(to right, transparent 0%, #000 7%, #000 93%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 7%, #000 93%, transparent 100%);
}

.sb-home-reviews__marquee--full {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 0 var(--sb-space-2);
}

.sb-home-reviews__track {
    display: flex;
    gap: var(--sb-space-4);
    width: max-content;
    animation: sbHomeReviewsSlide 34s linear infinite;
}

.sb-home-reviews__marquee:hover .sb-home-reviews__track {
    animation-play-state: paused;
}

.sb-home-review-card {
    width: min(300px, 78vw);
    min-height: 210px;
    background: var(--sb-white);
    border: 1px solid var(--sb-border);
    border-radius: 10px;
    padding: 0.9rem 0.95rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    box-shadow: var(--sb-shadow-sm);
}

.sb-home-review-card__quote-icon {
    color: var(--sb-secondary);
    font-size: 2rem;
    line-height: 1;
    font-weight: var(--sb-fw-bold);
}

.sb-home-review-card__message {
    margin: 0;
    color: var(--sb-dark-2);
    font-size: 0.92rem;
    line-height: 1.52;
    flex: 1;
}

.sb-home-review-card__stars {
    color: var(--sb-secondary);
    letter-spacing: 0.08em;
    font-size: 0.76rem;
    margin-top: 4px;
}

.sb-home-review-card__meta {
    text-align: center;
    margin: 0 -0.95rem;
    padding: 0.6rem 0.85rem 0.7rem;
    background: linear-gradient(120deg, var(--sb-primary) 0%, var(--sb-primary-dark) 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.sb-home-review-card__meta strong {
    display: block;
    color: var(--sb-white);
    font-size: 0.85rem;
    font-weight: var(--sb-fw-bold);
}

.sb-home-review-card__meta span {
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.72rem;
}

@media (max-width: 1024px) {
    .sb-home-reviews__trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sb-home-reviews__track {
        animation-duration: 28s;
    }
}

@media (max-width: 768px) {
    .sb-home-reviews__trust-strip {
        grid-template-columns: 1fr 1fr;
    }
    .sb-home-review-card {
        width: min(270px, 82vw);
        min-height: 198px;
    }
    .sb-home-reviews__track {
        animation-duration: 24s;
    }
}

@keyframes sbHomeReviewsSlide {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50% - (var(--sb-space-4) / 2)));
    }
}
