/* ── about.css ─────────────────────────────── */

.about-hero {
  background: var(--warm-white);
  padding: calc(var(--header-h) + 1rem) 0 4rem;
}
.about-hero h1 {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3.5rem);
  color: var(--ink);
  margin-bottom: 1.25rem;
  line-height: 1.1;
}
.about-hero__lead { color: var(--grey-mid); font-size: 1.1rem; max-width: 600px; line-height: 1.7; }

.about-story__grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2xl); align-items: center; }
.about-story__content p { color: var(--grey-mid); margin-bottom: 1rem; line-height: 1.8; }
.about-story__content h2 { font-family: var(--font-display); font-size: clamp(1.5rem,3vw,2.25rem); margin: 0.75rem 0 1.25rem; line-height: 1.2; }
.about-story__image { position: relative; }
.about-story__image img { width: 100%; border-radius: var(--radius-xl); aspect-ratio: 4/5; object-fit: cover; }
.about-story__image-caption {
  font-size: 0.8rem; color: var(--grey-mid); text-align: center;
  margin-top: 0.75rem; font-style: italic;
}

.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); margin-top: var(--space-xl); }
.value-card { background: var(--warm-white); border-radius: var(--radius-lg); padding: var(--space-lg); border: 1px solid var(--grey-pale); }
.value-card__icon { font-size: 2rem; margin-bottom: var(--space-sm); }
.value-card h3 { font-family: var(--font-display); font-size: 1.2rem; margin-bottom: 0.5rem; }
.value-card p { font-size: 0.9rem; color: var(--grey-mid); line-height: 1.7; }

.about-stats { background: var(--ink); }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-lg); text-align: center; }
.stat-item__number { font-family: var(--font-display); font-size: clamp(2.5rem,5vw,4rem); font-weight: 700; color: var(--coral); line-height: 1; }
.stat-item__label { color: rgba(255,255,255,0.6); font-size: 0.9rem; margin-top: 0.5rem; }

.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-lg); margin-top: var(--space-xl); }
.team-card { background: var(--warm-white); border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--grey-pale); }
.team-card__photo img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.team-card__info { padding: var(--space-lg); }
.team-card__info h3 { font-family: var(--font-display); font-size: 1.35rem; margin-bottom: 0.25rem; }
.team-card__role { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--coral); font-weight: 600; display: block; margin-bottom: 0.75rem; }
.team-card__info p { font-size: 0.875rem; color: var(--grey-mid); line-height: 1.7; }

.certs-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-lg); margin-top: var(--space-xl); }
.cert-item { display: flex; align-items: center; gap: 1rem; padding: var(--space-md); border-radius: var(--radius-md); border: 1px solid var(--grey-pale); background: var(--warm-white); }
.cert-item__badge { width: 52px; height: 52px; border-radius: var(--radius-md); background: var(--coral); color: white; font-weight: 700; font-size: 0.8rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0; letter-spacing: 0.05em; }
.cert-item__text strong { display: block; font-size: 0.9rem; color: var(--ink); }
.cert-item__text span { font-size: 0.8rem; color: var(--grey-mid); }

.section--coral-pale { background: var(--coral-pale); }
.text-centre { text-align: center; }
.text-centre h2 { font-family: var(--font-display); font-size: clamp(1.75rem,3vw,2.5rem); margin-bottom: 1rem; }

@media (max-width: 900px) {
  .about-story__grid { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: 1fr; }
  .certs-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .values-grid { grid-template-columns: 1fr; }
  .certs-grid { grid-template-columns: 1fr; }
}
