/* ==========================================================================
   Simple content pages — loaded in addition to styles.css on
   /about/, /contact/, /partners/, /terms/, /privacy/
   ========================================================================== */

.page-hero {
  padding-block: clamp(2.5rem, 1.8rem + 3vw, 4.5rem) clamp(1.5rem, 1rem + 2vw, 2.5rem);
  text-align: center;
}
.page-hero__inner { max-width: 42rem; margin-inline: auto; }

/* ---- Legal prose (Privacy / Terms) ---------------------------------------- */
.legal-prose {
  max-width: 42rem;
  margin-inline: auto;
  padding-bottom: clamp(2.5rem, 2rem + 2vw, 4rem);
  font-size: var(--text-base);
  line-height: 1.75;
  color: var(--text);
}
.legal-prose > * + * { margin-top: 1.25rem; }
.legal-prose--wide { max-width: 52rem; }
.legal-prose--center { text-align: center; }
.legal-prose h2 { font-size: var(--text-2xl); margin-top: 2.5rem; margin-bottom: 0.25rem; }
.legal-prose h2:first-child { margin-top: 0; }
.legal-prose h3 { font-size: var(--text-lg); margin-top: 1.75rem; margin-bottom: 0.25rem; color: var(--heading); }
.legal-prose p { margin-top: 1rem; }
.legal-prose a { color: var(--link); text-decoration: underline; text-underline-offset: 3px; }

/* ---- Team grid (About) ---------------------------------------------------- */
.team-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 40rem) { .team-grid { grid-template-columns: repeat(2, minmax(0, 22rem)); justify-content: center; } }
.team-card {
  text-align: center;
  padding: 1.5rem;
  background: var(--bg-box);
  border-radius: var(--radius-lg);
}
.team-card__photo {
  width: 8rem;
  height: 8rem;
  margin: 0 auto 1rem;
  border-radius: 999px;
  overflow: hidden;
}
.team-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.team-card h3 { margin-bottom: 0.15rem; }
.team-card__role { font-size: var(--text-sm); color: var(--text-muted); margin-bottom: 0.5rem; }
.team-card__email { font-size: var(--text-sm); }

/* ---- Support grid (Contact) ------------------------------------------------ */
.support-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 40rem) { .support-grid { grid-template-columns: repeat(3, 1fr); } }
