/* ==================================================================
   Guided — reviews section  (LOCAL PREVIEW ONLY)
   Styled to match the existing site: cream, ink, hairline borders.
   ================================================================== */

.gs-reviews {
  background: #F1EDE2;
  padding: 110px 40px;
  display: flex;
  justify-content: center;
}

.gs-reviews-inner {
  width: 100%;
  max-width: 1100px;
  display: grid;
  gap: 14px;
}

.gs-reviews-eyebrow {
  font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #5C5647;
}

.gs-reviews-head {
  margin: 0 0 18px;
  font-size: 48px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.025em;
  color: #111111;
}

.gs-reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.gs-review {
  margin: 0;
  background: #FFFFFF;
  border: 1px solid #E3DCCB;
  border-radius: 18px;
  padding: 28px 26px;
  display: grid;
  gap: 18px;
  align-content: start;
}

.gs-review-quote {
  margin: 0;
  font-size: 17px;
  line-height: 1.6;
  color: #2E2A22;
}

.gs-review-who { display: grid; gap: 2px; }
.gs-review-name { font-size: 15px; font-weight: 600; color: #111111; }
.gs-review-meta { font-size: 14px; color: #6B6555; }

@media (max-width: 1024px) {
  .gs-reviews { padding: 64px 22px; }
  .gs-reviews-head { font-size: 32px; }
  .gs-reviews-grid { grid-template-columns: 1fr; gap: 12px; }
  .gs-review { padding: 22px 20px; }
}

@media (max-width: 640px) {
  .gs-reviews { padding: 48px 18px; }
  .gs-reviews-head { font-size: 28px; }
}

/* ---------- avatar circles ---------- */
.gs-review-who {
  display: flex !important;
  align-items: center;
  gap: 12px;
}
.gs-review-avatar {
  width: 40px; height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center; justify-content: center;
  font-size: 16px; font-weight: 600;
  color: #FFFFFF;
  flex: 0 0 auto;
}
.gs-avatar-a { background: #7E9AAC; }
.gs-avatar-b { background: #6F9384; }
.gs-avatar-c { background: #A67A9C; }
.gs-review-lines { display: grid; gap: 1px; }

/* ------------------------------------------------------------------
   The quotes are different lengths, so with `align-content: start` the
   attribution sat directly under whatever the quote happened to end at
   — the middle card's name rode about 60px higher than the others.
   The cards are already equal height, so give the quote the flexible
   row and let the avatar and name settle on the bottom edge together.
   ------------------------------------------------------------------ */
.gs-review {
  align-content: stretch !important;
  grid-template-rows: 1fr auto;
}

.gs-review-quote { align-self: start; }
.gs-review-who   { align-self: end; }
