/* One vertical rhythm for the reordered page. Card interiors stay independent. */
:root { --section-space:80px; }
:root:root :is(.process,.integrations-wall,.features,.comparison,.business-models,.support-proof,.pricing-options,.faq) { padding-block:var(--section-space); margin-block:0; }
:root:root .migration-band { padding-block:var(--section-space); }
:root:root .migration-band .migration { margin-block:0; }
:root:root .guarantee { margin-block:var(--section-space); }
/* Match the optical space on the two sides of the final call to action. */
:root:root .closing__inner { padding-block:var(--section-space); }
/* The creator wall owns a viewport-sized scroll scene rather than section padding. */
:root:root .prch.is-static .prch__stage { padding-block:var(--section-space); }
@media(max-width:760px) {
  :root { --section-space:56px; }
  :root:root .prch__stage { padding-block:var(--section-space); }
}

/* Shared backgrounds need one interval, not two full section paddings. */
:root:root .process:has(+ .integrations-wall),
:root:root .features:has(+ .migration-band),
:root:root .pricing-options:has(+ .guarantee) {
  padding-bottom:calc(var(--section-space) / 2);
}
:root:root .process + .integrations-wall,
:root:root .features + .migration-band,
:root:root .guarantee + .faq {
  padding-top:calc(var(--section-space) / 2);
}
:root:root .pricing-options + .guarantee {
  margin-top:calc(var(--section-space) / 2);
}
:root:root .guarantee:has(+ .faq) {
  margin-bottom:calc(var(--section-space) / 2);
}
