.testimonials { padding: 5rem 0; background: var(--blue-950); color: var(--white); }
.testimonials > header { padding: 0 max(1.25rem, calc((100vw - 1180px) / 2)) 2rem; }
.testimonials h2 { max-width: 16ch; margin: .5rem 0; font-size: clamp(2rem, 5vw, 3.75rem); line-height: 1.05; }
.testimonials__viewport { overflow: hidden; cursor: grab; touch-action: pan-y; }
.testimonials__viewport:active { cursor: grabbing; }
.testimonials__track { display: flex; gap: 1rem; width: max-content; padding-inline: 1.25rem; will-change: transform; }
.testimonial { display: grid; grid-template-columns: 82px 1fr; gap: 1rem; width: min(82vw, 470px); padding: 1.25rem; border-radius: var(--radius-md); background: var(--white); color: var(--ink); }
.testimonial img { width: 82px; height: 82px; border-radius: 50%; object-fit: cover; }
.testimonial blockquote { margin: 0 0 1rem; line-height: 1.55; }
.testimonial strong, .testimonial span { display: block; }
.testimonial span { margin-top: .25rem; color: var(--blue-800); font-size: .8rem; }
@media (max-width: 768px) { .testimonials { padding-block: 4rem; } .testimonial { grid-template-columns: 58px 1fr; } .testimonial img { width: 58px; height: 58px; } }
@media (prefers-reduced-motion: reduce) { .testimonials__viewport { overflow-x: auto; } .testimonials__track { transform: none !important; will-change: auto; } }
