/* ===== SECCIÓN ===== */
.testimonials { padding: 120px 0; background: var(--warm-gray); }

/* ===== CARD BASE ===== */
.testimonial-card {
    background: var(--white); border-radius: 20px; padding: 32px;
    border: 1px solid rgba(200,150,62,.1);
    transition: transform .3s, box-shadow .3s;
}
.testimonial-card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px var(--shadow); }
.t-stars { color: var(--gold); font-size: 16px; margin-bottom: 16px; }
.t-quote { font-size: 15px; line-height: 1.75; color: var(--ink-lt); margin-bottom: 24px; font-style: italic; }
.t-quote::before { content: '\201C'; font-family: 'Playfair Display', serif; font-size: 48px; color: var(--gold-lt); line-height: 0; vertical-align: -18px; margin-right: 4px; }
.t-author { display: flex; align-items: center; gap: 12px; }
.t-avatar { width: 44px; height: 44px; border-radius: 50%; background: var(--warm-gray); overflow: hidden; }
.t-avatar img { width: 100%; height: 100%; object-fit: cover; }
.t-name { font-weight: 600; font-size: 14px; color: var(--ink); }
.t-city { font-size: 12px; color: var(--ink-lt); }

/* ===== CARRUSEL ===== */
.t-carousel-wrap {
    overflow: hidden;
    position: relative;
    width: 100%;
    padding: 8px 0 24px;
}
.t-carousel {
    display: flex;
    gap: 24px;
    width: max-content;
    animation: tScroll 90s linear infinite;
}
.t-carousel:hover { animation-play-state: paused; }
@keyframes tScroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.t-carousel .testimonial-card {
    width: 320px;
    flex-shrink: 0;
    opacity: 1;
    transform: none;
}

/* ===== SKELETON ===== */
.t-skeleton { pointer-events: none; }
.t-sk-line {
    background: linear-gradient(90deg, var(--warm-gray) 25%, var(--cream) 50%, var(--warm-gray) 75%);
    background-size: 200% 100%;
    animation: shimmer 1.4s infinite;
    border-radius: 6px;
    margin-bottom: 8px;
}
.t-sk-avatar {
    width: 44px; height: 44px; border-radius: 50%;
    background: linear-gradient(90deg, var(--warm-gray) 25%, var(--cream) 50%, var(--warm-gray) 75%);
    background-size: 200% 100%;
    animation: shimmer 1.4s infinite;
    flex-shrink: 0;
}
@keyframes shimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ===== BADGE GOOGLE ===== */
.t-google-badge {
    display: flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 600; color: var(--ink-lt);
    margin-bottom: 10px;
}
