/* Homepage rhythm: each section contributes one edge of breathing room.
   Adjacent standalone panels therefore receive two edges; interiors are unchanged. */
:root{--site-section-space:96px;--section-entry-gap:var(--site-section-space);--offering-section-gap:calc(2 * var(--site-section-space))}
.products-page{gap:var(--offering-section-gap)}
.services-overview{display:flex;flex-direction:column;gap:var(--offering-section-gap)}
.services-overview>.section{padding-block:0;margin-block:0;border-top:0}
body .services-landing-hero+.services-overview,
body .products-hero+.products-page{padding-top:var(--site-section-space)}
body .services-landing-hero+.services-overview>.section:first-child,
body .products-hero+.products-page>.section:first-child{padding-top:0}
body .service-hero+main.service-page{padding-top:var(--site-section-space)}
html body main.service-page{row-gap:var(--offering-section-gap)}
html body main.service-page>.section:nth-child(n){margin-block:0}
html body main.service-page>.section:first-child{padding-bottom:0}
body .advisor-section,
body .about-hero:not(.service-hero)+main.container.page>.section{padding-block:var(--site-section-space)}
body .about-hero:not(.service-hero)+main.container>.section:first-child,
body .products-hero+.advisor-section{padding-top:var(--site-section-space)}
@media(max-width:760px){:root{--site-section-space:64px}.products-page{gap:var(--offering-section-gap)}}
/* Service detail pages are a continuous reading flow, not homepage chapters. */
html body main.service-page{--service-section-space:72px;row-gap:var(--service-section-space)}
body .service-hero+main.service-page{padding-top:72px}
@media(max-width:760px){
  html body main.service-page{--service-section-space:48px}
  body .service-hero+main.service-page{padding-top:48px}
}
