/* Consistent page-level spacing between the editorial sections. */
body.home-page.cargo-page .cargo-main {
  --cargo-section-space: 72px;
  --cargo-hero-bottom-space: 40px;
}

body.home-page.cargo-page .cargo-main > section {
  margin-block: 0;
}

body.home-page.cargo-page .cargo-main > section + section {
  margin-top: var(--cargo-section-space);
}

/* The shared FAQ theme sets its outer margin with !important. */
body.home-page.cargo-page .cargo-main > .cargo-faq {
  margin-top: var(--cargo-section-space) !important;
}

/* The hero already includes bottom padding below the booking panel. */
body.home-page.cargo-page .cargo-main > .cargo-hero + .cargo-benefits {
  margin-top: calc(var(--cargo-section-space) - var(--cargo-hero-bottom-space));
}

/* Keep the closing strip joined to the footer. */
body.home-page.cargo-page .cargo-main > .cargo-tasks:last-child {
  margin-bottom: -1px;
}

@media (max-width: 1119px) {
  body.home-page.cargo-page .cargo-main { --cargo-section-space: 56px; }
}

@media (max-width: 979px) {
  body.home-page.cargo-page .cargo-main { --cargo-hero-bottom-space: 24px; }
}

@media (max-width: 719px) {
  body.home-page.cargo-page .cargo-main {
    --cargo-section-space: 40px;
  }
}

/* A shared compact column: card edges and inset heading edges each align. */
@media (max-width: 979px) {
  body.home-page.cargo-page .cargo-main > section:not(.cargo-hero) {
    box-sizing: border-box;
    width: calc(100% - 36px);
    max-width: 490px;
    margin-inline: auto;
    padding-inline: 0;
  }
  body.home-page.cargo-page .cargo-main > .cargo-faq {
    width: calc(100% - 36px) !important;
    max-width: 490px !important;
    padding-inline: 0 !important;
  }
  body.home-page.cargo-page .cargo-fleet-section > .cargo-shell { padding-inline: 0; }
  body.home-page.cargo-page .cargo-main :is(.cargo-benefits__heading, .cargo-cases-heading, .cargo-fleet-heading, .cargo-help__header, .cargo-carrying-notes__header) {
    padding-inline: 18px;
  }
  body.home-page.cargo-page .cargo-main .cargo-faq .home-faq-shell { padding-inline: 17px !important; }
  body.home-page.cargo-page .cargo-main .cargo-final-cta__panel { padding-inline: 17px; }
  body.home-page.cargo-page .cargo-main .cargo-final-cta__actions { width: calc(100% + 17px); }
  body.home-page.cargo-page .cargo-main > section.cargo-tasks { padding-inline: 17px; }
  body.home-page.cargo-page .cargo-main .home-offers { --home-offers-gutter: 0px; }
  body.home-page.cargo-page .cargo-main .home-offers-header { box-sizing: border-box; width: 100%; padding-inline: 18px; }
  body.home-page.cargo-page .cargo-main .home-offers-heading { transform: none; }
  body.home-page.cargo-page .cargo-main .home-offers-terms { max-width: none; margin-inline: 18px; }
  body.home-page.cargo-page .cargo-hero__intro { padding-inline: 18px; }
  body.home-page.cargo-page .cargo-help__options { grid-template-columns: 1fr; }
}

/* The shared offers switch to three columns at 900px, before the cargo sections. */
@media (min-width: 900px) and (max-width: 979px) {
  body.home-page.cargo-page .cargo-main > section.home-offers {
    width: 100%;
    max-width: 1300px;
    padding-inline: 5%;
  }
}

@media (max-width: 719px) {
  body.home-page.cargo-page .cargo-hero__intro { padding-inline: 28px; }
}

@media (max-width: 359px) {
  body.home-page.cargo-page .cargo-hero h1 { font-size: 33px; }
}
