/* Testimonial component */
.testimonial-section { --t-card-bg:#fff; --t-accent:#d97745; --t-muted:#6b7280; }
.testimonial-card-wrapper { display:grid; gap:1.75rem; }
@media (min-width:768px){ .testimonial-card-wrapper{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1200px){ .testimonial-card-wrapper{ grid-template-columns:repeat(3,minmax(0,1fr)); } }

.testimonial-card {
    background:var(--t-card-bg);
    border:1px solid rgba(0,0,0,.06);
    border-radius:14px;
    box-shadow:0 6px 20px rgba(0,0,0,.06);
    padding:28px 28px 22px;
}

.testimonial-content { margin:0; }
.review-header { display:flex; align-items:center; gap:.75rem; margin-bottom:.75rem; }
.review-author { letter-spacing:.04em; font-weight:700; text-transform:uppercase; font-size:.85rem; }
.review-source { color:var(--t-muted); font-size:.85rem; }

.review-body { font-size:1.05rem; line-height:1.7; margin:10px 0 14px; position:relative; }
.review-body:before {
    content:"\201C"; /* opening smart quote */
    color:var(--t-accent);
    font-size:2.25rem;
    line-height:0; position:relative; top:.2rem; margin-right:.25rem;
}

.review-meta { display:flex; align-items:center; gap:12px; color:var(--t-muted); }
.review-rating i { color:#f59e0b; /* amber stars */ margin-right:2px; }
.review-date { font-size:.9rem; }

/* Optional: center the section title and tighten spacing */
.section-title.text-center { letter-spacing:.02em; }