
.container { max-width: var(--container-max); margin: 0 auto; padding: 0 var(--side-padding); width: 100%; }
.container--narrow { max-width: var(--container-narrow); }
.section { padding: var(--section-pad-y) 0; }
.bg-espresso { background: var(--color-espresso); }
.bg-ivory { background: var(--color-ivory); }
.bg-parchment { background: var(--color-parchment); }
.bg-linen { background: var(--color-linen); }
.section-header { margin: 0 auto var(--space-16); max-width: 720px; text-align: center; }
.section-label { color: var(--color-caramel); display: block; font-family: var(--font-ui); font-size: 0.68rem; font-weight: 700; letter-spacing: var(--tracking-widest); margin-bottom: var(--space-3); text-transform: uppercase; }
.section-label--gold { color: var(--color-tan); }
.section-title { font-size: clamp(2rem, 4vw, 3rem); margin-bottom: var(--space-5); }
.section-title--light { color: var(--color-parchment); }
.section-subtitle { color: var(--color-sage); font-size: var(--text-md); margin: 0 auto; max-width: 660px; }
.section-subtitle--light { color: rgba(245, 236, 217, 0.72); }
.services-grid { display: grid; gap: var(--space-6); grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.services-grid--large { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.cities-grid { display: grid; gap: var(--space-5); grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.split-layout, .two-column, .contact-layout { align-items: center; display: grid; gap: var(--space-16); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.process-grid, .values-grid, .testimonials-grid, .resource-grid, .parent-link-grid { display: grid; gap: var(--space-6); grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.text-center { text-align: center; }
.button-row { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-8); }
@media (max-width: 900px) {
  .container { padding: 0 var(--side-padding-sm); }
  .section { padding: var(--space-12) 0; }
  .split-layout, .two-column, .contact-layout { grid-template-columns: 1fr; gap: var(--space-8); }
  .section-header { margin-bottom: var(--space-10); }
}
