/* Vertical rhythm for marketing templates only. */
body.landing-marketing {
    --landing-space-xs: 8px;
    --landing-space-sm: 16px;
    --landing-space-md: 24px;
    --landing-space-lg: 40px;
    --landing-space-xl: 64px;
    --landing-space-2xl: 96px;
    --landing-section-space: var(--landing-space-2xl);
    --landing-content-space: var(--landing-space-lg);
}

body.landing-marketing div.section:where(:not(.footer-colls-section):not(.bottom-contacts-section)) {
    padding-top: var(--landing-section-space);
    padding-bottom: var(--landing-section-space);
}

/* These sections continue the preceding intro; keep their image/input overlap. */
body.landing-marketing div.section:is(.mok-features-list-section, .help-section) {
    padding-top: 0;
}

body.landing-marketing .section :is(.custom-title-1, .custom-title-3, .custom-title-4, .custom-title-5) {
    margin-top: 0;
    margin-bottom: var(--landing-space-sm);
}

body.landing-marketing .section .container > .page-module {
    margin-top: 0;
    margin-bottom: var(--landing-content-space);
}

body.landing-marketing div.packages-list {
    margin-top: var(--landing-content-space);
    margin-bottom: var(--landing-content-space);
}

body.landing-marketing div.packages-list > div {
    padding-top: var(--landing-content-space);
    padding-bottom: var(--landing-content-space);
}

body.landing-marketing div.packages-list :is(h2, h3),
body.landing-marketing div.mok-features-list .custom-title-1 {
    margin-top: 0;
    margin-bottom: var(--landing-space-sm);
}

body.landing-marketing :is(.packages-list .descr, .page-module) > p {
    margin-top: 0;
    margin-bottom: var(--landing-space-sm);
}

body.landing-marketing :is(.packages-list .descr, .page-module) > :last-child {
    margin-bottom: 0;
}

body.landing-marketing :is(.packages-list, .page-module, .section.grey-bg) ul:not([class]) {
    margin-top: var(--landing-space-sm);
    margin-bottom: var(--landing-space-sm);
}

body.landing-marketing :is(.packages-list, .page-module, .section.grey-bg) ul:not([class]) > li + li {
    margin-top: var(--landing-space-xs);
}

body.landing-marketing div.packages-list .action {
    margin-top: var(--landing-content-space);
}

body.landing-marketing div.features-list {
    margin-top: var(--landing-content-space);
    margin-bottom: var(--landing-content-space);
    row-gap: var(--landing-content-space);
}

body.landing-marketing div.features-list > div {
    margin-top: 0;
}

body.landing-marketing div.mok-features-list > div > div:first-child {
    padding-top: var(--landing-content-space);
    padding-bottom: var(--landing-content-space);
}

body.landing-marketing div.prices-container {
    margin-bottom: var(--landing-content-space);
}

body.landing-marketing div.news-list {
    margin-top: 0;
}

body.landing-marketing div.news-list > div {
    margin-top: 0;
}

body.landing-marketing div.news-list > div + div {
    margin-top: var(--landing-content-space);
}

body.landing-marketing div.news-list .cont {
    padding-top: var(--landing-content-space);
    padding-bottom: var(--landing-content-space);
}

body.landing-marketing div.news-list .cont > * + * {
    margin-top: var(--landing-space-sm);
}

body.landing-marketing div.index-promo-container-content h1 {
    margin-top: 0;
    margin-bottom: var(--landing-space-md);
}

body.landing-marketing div.index-promo-container-content .cont > p {
    margin-top: 0;
    margin-bottom: var(--landing-space-md);
}

body.landing-marketing div.index-promo-container-content .action {
    margin-top: var(--landing-content-space);
}

@media (max-width: 767px) {
    body.landing-marketing {
        --landing-section-space: var(--landing-space-xl);
        --landing-content-space: var(--landing-space-md);
    }

    body.landing-marketing div.mok-features-list > div + div {
        margin-top: var(--landing-content-space);
    }

    /* The legacy pricing intro uses !important at both breakpoints. */
    body.landing-marketing .section.padd-bot-280 {
        padding-bottom: var(--landing-section-space) !important;
    }
}
