/* Shared section rhythm across all routes. */
:root{--section-space:96px}
#main>section.block,#main>section.cta,#main>section.hero,#main>section.home-poster{padding-top:var(--section-space);padding-bottom:var(--section-space);margin-top:0;margin-bottom:0}
/* Subpage introductions flow into content without a horizontal divider. */
#main>section.hero{border:0;background:transparent}
#main>section.hero h1{margin-top:0}
#main>section.hero .eyebrow{margin-bottom:28px}
@media(max-width:800px){:root{--section-space:64px}#main>section.hero .eyebrow{margin-bottom:24px}}

/* Hospitality: align visible heading/content gaps as well as section padding. */
#main.package-detail-page>section{padding-block:var(--section-space);margin-block:0}
#main.package-detail-page .section-head{margin-bottom:40px;padding-bottom:32px}
#main.package-detail-page .section-head h2{margin-bottom:0}
#main.package-detail-page .section-head+*{margin-top:0}
#main.package-detail-page .block>.wrap>:last-child{margin-bottom:0}
#main.package-detail-page .problem{padding-top:0}
#main.package-detail-page .steps{margin-top:32px}
#main.package-detail-page .hospitality-execution{margin-top:32px}
@media(max-width:800px){#main.package-detail-page .section-head{margin-bottom:28px;padding-bottom:24px}#main.package-detail-page .steps,#main.package-detail-page .hospitality-execution{margin-top:24px}}

#main.package-detail-page .block:has(.faq-layout) .section-head{border-bottom:0;padding-bottom:0}

/* Adjacent sections sharing a background use one shared spacing interval. */
#main>section.section-shared-top,#main.package-detail-page>section.section-shared-top{padding-top:calc(var(--section-space)/2)}
#main>section.section-shared-bottom,#main.package-detail-page>section.section-shared-bottom{padding-bottom:calc(var(--section-space)/2)}

#main.about-page .section-head{border-bottom:0}
