.testimonials {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 16px; margin-top: 40px;
}
@media (max-width: 960px) { .testimonials { grid-template-columns: 1fr; } }

.quote {
  padding: 28px; border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.01) 100%);
  border: 1px solid var(--line);
  position: relative;
  display: flex; flex-direction: column; gap: 20px;
}
.quote .mark {
  font-family: var(--f-display); font-style: italic; font-size: 64px;
  line-height: 0; height: 20px; color: var(--lilac); opacity: .35;
}
.quote p {
  font-family: var(--f-display); font-weight: 400; font-size: 20px;
  line-height: 1.3; letter-spacing: -.01em; color: var(--paper); margin: 0;
}
.quote .who { display: flex; align-items: center; gap: 12px; margin-top: auto; }
.quote .av {
  width: 40px; height: 40px; border-radius: 50%;
  display: grid; place-items: center; font-family: var(--f-display); font-size: 16px; color: #fff;
  border: 1px solid var(--line-strong);
}
.quote .nm { font-size: 14px; color: var(--paper); }
.quote .nm small { display: block; color: var(--fog); font-size: 12px; margin-top: 2px; }
