/* =========================================================
   09 Testimonials (Figma 292:717) — black, 1512 x 766
   All selectors prefixed .testimonials
   ========================================================= */

.testimonials { padding-bottom: calc(var(--section-pad) + 24px); }

/* Label is Suisse (not mono) with a 30% rule in this section */
.testimonials__label {
  font-family: var(--font-sans);
  font-weight: 400;
  border-bottom-color: rgba(255,255,255,.3);
}

.testimonials__grid {
  display: grid;
  grid-template-columns: minmax(0, 666px) minmax(0, 620px);
  column-gap: 60px;
  align-items: start;
}

.testimonials__lead { max-width: 553px; }
.testimonials__quote p {
  font-size: clamp(28px, 2.52vw, 38px);
  line-height: 1.16;
  letter-spacing: -0.03em;
}

.testimonials__cite {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 28px;
}
.testimonials__avatar { width: 48px; height: 48px; flex: none; border-radius: 50%; }
.testimonials__who { display: flex; flex-direction: column; gap: 6px; line-height: 1; }
.testimonials__name { line-height: 1; }
.testimonials__role { line-height: 1; color: var(--w-50); }

.testimonials__body { color: rgba(255,255,255,.55); letter-spacing: -0.02em; }
.testimonials__body p + p { margin-top: 18px; }

/* ---------- tablet / mobile ---------- */
@media (max-width: 900px) {
  .testimonials__grid { grid-template-columns: minmax(0, 1fr); row-gap: 48px; }
  .testimonials__lead { max-width: 620px; }
  .testimonials__body { max-width: 620px; }
}
@media (max-width: 720px) {
  .testimonials { padding-bottom: var(--section-pad); }
  .testimonials__body { font-size: 16px; }
  .testimonials__body p + p { margin-top: 16px; }
}
