/* ─── Section base styles ────────────────────────────────── */
.section-base {
  padding: 7rem 1.5rem;
}

.section-tinted-dark {
  background: linear-gradient(180deg, #F7F4EE 0%, #F5F0EB 100%);
}

.section-tinted-light {
  background: linear-gradient(180deg, #F5F0EB 0%, #F7F4EE 100%);
}

.section-inner {
  margin-left: auto;
  margin-right: auto;
}

.section-inner--wide    { max-width: 72rem; }
.section-inner--medium  { max-width: 64rem; }
.section-inner--narrow  { max-width: 48rem; }
.section-inner--form    { max-width: 42rem; }

.section-header {
  text-align: center;
  margin-bottom: 3.5rem;
}

.section-header .section-kicker {
  margin-bottom: 1rem;
}

.section-header .section-heading {
  margin-bottom: 1.5rem;
}

.section-header .section-subheading {
  margin-bottom: 1.5rem;
}

.section-header .sprig {
  margin-bottom: 1.5rem;
}

/* ─── Custom elements: block display + scroll offset for fixed nav ── */
#main-content > * {
  display: block;
  scroll-margin-top: 60px;
}

/* ─── Flex helpers ───────────────────────────────────────── */
.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ─── Responsive padding ─────────────────────────────────── */
@media (min-width: 640px) {
  .section-base {
    padding: 9rem 1.5rem;
  }
}
