

.reviews__head { text-align: center; margin-bottom: 72px; }

.reviews__title {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(32px, 4vw, 48px);
  color: var(--ink);
  margin: 0;
}

.reviews__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

.review {
  background: var(--cream);
  padding: 54px 44px;
  margin: 0;
  display: flex;
  flex-direction: column;
}
.review--empty { opacity: 0.55; }

.review__stars { font-size: 14px; letter-spacing: 0.3em; color: var(--gold); margin-bottom: 28px; }

.review__quote {
  font-family: var(--display);
  font-size: 22px;
  line-height: 1.55;
  color: var(--ink);
  margin: 0 0 32px;
  text-wrap: pretty;
}

.review__placeholder { margin-bottom: 32px; }

.review__who {
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--sand);
  margin-top: auto;
}

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


@media (max-width: 600px) {
  .review { padding: 36px 26px; }
  .review__quote { font-size: 20px; }
}


.review:has(.review__quote:empty) { display: none; }
.ie-on .review:has(.review__quote:empty) { display: flex; }
