/* Testimonials */

.testimonials {
  overflow: hidden;
}

.testimonials > div {
  display: grid;
  gap: var(--gap-block);
  grid-template-columns: 1fr;
}

@media (min-width: 45rem) {
  .testimonials > div {
    grid-template-columns: repeat(auto-fit, minmax(min(18rem, 100%), 1fr));
  }
}

.testimonials blockquote {
  padding: var(--padding-card);
  background: var(--color-bg);
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  transition: transform var(--transition), box-shadow var(--transition);
}

.testimonials blockquote:hover {
  transform: translateY(-0.125rem);
  box-shadow: var(--shadow-lg);
}

.testimonials blockquote p {
  font-style: italic;
  color: var(--color-text);
  margin-block-end: var(--gap-inline);
}

/* Typografische Anführungszeichen umschließen den Quote-Text — „ vorne, " hinten.
   Unicode U+201E (low double quote, deutsch unten) und U+201C (left double quote, oben). */
.testimonials blockquote p::before { content: '\201E'; }
.testimonials blockquote p::after  { content: '\201C'; }

.testimonials cite {
  font-style: normal;
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text-muted);
  align-self: flex-end;
  text-align: right;
}
