.container {
    width: var(--container);
    margin: 0 auto;
}

.section {
    padding: var(--section-y) 0;
    scroll-margin-top: 90px;
}

.section-sm {
    padding: var(--section-y-tight) 0;
}

.section-alt {
    background: var(--sfs-soft-bg);
}

.section-heading {
    max-width: 820px;
    margin-bottom: 2.25rem;
}

    .section-heading h2 {
        font-size: clamp(2.25rem, 4vw, 3.35rem);
        line-height: 1.08;
        letter-spacing: -0.035em;
        margin-bottom: 1rem;
    }

    .section-heading p {
        max-width: 760px;
        color: var(--sfs-muted);
        font-size: 1.05rem;
        line-height: 1.85;
    }

.section-heading-compact {
    margin-bottom: 1.25rem;
}

.section-kicker,
.eyebrow {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #1f4f82;
}

.section-cta {
    margin-top: 2rem;
}

.button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 1.8rem;
}

.split-layout {
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    gap: clamp(2rem, 5vw, 4rem);
    align-items: center;
}

.detail-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.35rem;
}

.detail-item {
    padding: 1.25rem 0;
}

    .detail-item h3 {
        margin-bottom: 0.65rem;
        line-height: 1.25;
    }

    .detail-item p {
        color: var(--sfs-muted);
        line-height: 1.75;
    }

.feature-list {
    margin-top: 1.4rem;
    display: grid;
    gap: 0.85rem;
}

    .feature-list li {
        color: var(--sfs-muted);
        line-height: 1.7;
    }
