/* Shared vertical rhythm for public-facing sections. Loaded after page styles. */
:root{--rm-section-y:clamp(64px,6vw,88px);--rm-section-y-compact:clamp(40px,4vw,56px);--rm-heading-gap:clamp(28px,3vw,40px)}
main .section:not(.rm-admin-preview){padding-block:var(--rm-section-y)}
main .section.rm-proof{padding-block:clamp(18px,2.2vw,24px)}
main .section.rm-final-cta,main .section.rm-lessons-close,main .section.rm-contact-next{padding-block:var(--rm-section-y-compact)}
body[data-page] main>.rm-final-cta{padding-block:var(--rm-section-y-compact)}
main .section>.wrap{position:relative}
main .section>.wrap>:first-child{margin-top:0}
main .section>.wrap>:last-child{margin-bottom:0}
.section-heading,.rm-section-heading,.rm-gallery-heading,.rm-lessons-heading,.rm-success-heading,.rm-faq-heading{margin-bottom:var(--rm-heading-gap)}
.section-heading h2,.rm-section-heading h2,.rm-gallery-heading h2,.rm-lessons-heading h2,.rm-success-heading h2,.rm-faq-heading h2{margin-top:clamp(10px,1.2vw,16px)}
.section-heading>p:last-child,.rm-section-heading>p:last-child,.rm-gallery-heading>p:last-child,.rm-lessons-heading>p:last-child,.rm-success-heading>p:last-child,.rm-faq-heading>p:last-child{margin-bottom:0}
.rm-page-intro{padding-block:clamp(52px,5vw,76px)}
.rm-page-intro+.rm-page-marquee{margin:0}
.rm-page-marquee+main,.rm-page-marquee+.section{margin-top:0}
@media(max-width:1000px){:root{--rm-section-y:clamp(56px,7vw,72px);--rm-section-y-compact:40px;--rm-heading-gap:28px}.section-heading,.rm-gallery-heading{align-items:start}}
@media(max-width:700px){:root{--rm-section-y:54px;--rm-section-y-compact:36px;--rm-heading-gap:26px}main .section:not(.rm-admin-preview){padding-block:var(--rm-section-y)}main .section.rm-proof{padding-block:18px}.rm-page-intro{padding-block:44px}.section-heading,.rm-section-heading,.rm-gallery-heading,.rm-lessons-heading,.rm-success-heading,.rm-faq-heading{margin-bottom:var(--rm-heading-gap)}.section-heading h2,.rm-section-heading h2,.rm-gallery-heading h2,.rm-lessons-heading h2,.rm-success-heading h2,.rm-faq-heading h2{margin-top:10px}}
@media(max-width:430px){:root{--rm-section-y:48px;--rm-heading-gap:24px}}
