.reviews-section {
  padding: clamp(4.5rem, 8vw, 7.5rem) clamp(1rem, 4vw, 3.5rem);
  background: #eff1f0;
}

.reviews-heading {
  max-width: 1180px;
  margin: 0 auto 2.2rem;
}

.reviews-heading h2 {
  max-width: 680px;
  margin-bottom: .75rem;
  font-size: clamp(2.2rem, 4.7vw, 4.8rem);
  line-height: .98;
}

.reviews-heading > p:not(.eyebrow) {
  max-width: 530px;
  color: #6d6d6d;
  font-size: 1.06rem;
}

.reviews-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  max-width: 1180px;
  margin: 0 auto;
  background: #d9dcda;
  border: 1px solid #d9dcda;
}

.reviews-grid article {
  display: grid;
  align-content: space-between;
  min-height: 276px;
  padding: 1.45rem;
  background: #fff;
}

.reviews-grid blockquote {
  margin: 0;
  color: #3b3b3b;
  font-size: 1rem;
  line-height: 1.6;
}

.reviews-grid blockquote::before {
  display: block;
  margin-bottom: .65rem;
  color: #e30613;
  content: '“';
  font-size: 3rem;
  font-weight: 900;
  line-height: .7;
}

.reviews-grid p {
  margin: 1.5rem 0 0;
  color: #111;
  font-size: .82rem;
  font-weight: 900;
}

@media (max-width: 1020px) {
  .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

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

  .reviews-grid article {
    min-height: 0;
  }
}
