/** Containers, section spacing and reusable headings. */
.container { width: min(calc(100% - 64px), var(--container)); margin-inline: auto; }
.content-width { width: min(calc(100% - 48px), var(--content)); margin-inline: auto; }
.site-main { min-height: 58vh; }
.section { padding: 88px 0; }
.section--surface { background: var(--color-surface); }
.section--white { background: var(--color-white); }
.eyebrow {
    margin: 0 0 12px; color: var(--color-secondary-text); font-size: var(--text-xs); font-weight: 800;
    letter-spacing: .13em; text-transform: uppercase;
}
.section-heading {
    max-width: 800px; margin: 0 0 24px; color: var(--color-primary); font-size: var(--text-h2);
    line-height: 1.13; letter-spacing: -.035em;
}
.section-description { max-width: 740px; margin: 0; color: var(--color-muted); font-size: var(--text-lead); line-height: 1.7; }
.section-heading-row {
    display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr); gap: 70px; align-items: end;
    margin-bottom: 42px;
}
.section-heading-row .section-heading { margin-bottom: 0; }
.section-center { max-width: 900px; margin: 0 auto 48px; text-align: center; }
.section-center .section-heading, .section-center .section-description { margin-inline: auto; }
.section-action { display: flex; justify-content: center; margin-top: 38px; }
