.testimonials__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-3);
  margin-top: var(--sp-6);
}

.testimonial {
  position: relative;
  background: var(--slate);
  border: 1px solid var(--hairline);
  padding: var(--sp-4);
  display: flex;
  flex-direction: column;
  gap: var(--sp-3);
  transition: border-color 300ms ease, box-shadow 300ms ease;
}
.testimonial:hover {
  border-color: var(--param-cyan);
  box-shadow: 0 0 24px rgba(111, 227, 210, 0.12);
}

.testimonial__quote-mark {
  position: absolute;
  top: 0.4rem;
  left: var(--sp-3);
  font-family: var(--ff-display);
  font-size: 4rem;
  color: var(--param-cyan);
  line-height: 1;
  opacity: 0.7;
}

.testimonial__quote {
  font-family: var(--ff-display);
  font-style: italic;
  font-weight: 400;
  font-size: var(--fs-lg);
  color: var(--bone);
  line-height: 1.4;
  margin-top: var(--sp-4);
}

.testimonial__divider {
  height: 1px;
  background: var(--hairline);
  width: 24px;
}

.testimonial__attribution {
  font-family: var(--ff-mono);
  font-size: var(--fs-mono-xs);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ash);
  line-height: 1.5;
}

.testimonial__date {
  font-family: var(--ff-mono);
  font-size: var(--fs-mono-xs);
  letter-spacing: 0.15em;
  color: var(--param-cyan);
  margin-top: auto;
}

@media (max-width: 900px) { .testimonials__grid { grid-template-columns: 1fr; } }
