/* v107 — Global title/content edge-spacing consistency
   Standardises horizontal safe area for every top-level page section
   without changing the full-width section backgrounds. */
main > section {
  padding-left: 7vw !important;
  padding-right: 7vw !important;
  box-sizing: border-box;
}

/* Prevent large display headings from touching or clipping against the viewport. */
main > section h1,
main > section h2 {
  overflow-wrap: anywhere;
}

/* Keep common title blocks consistent when page-specific styles remove margins. */
main > section > .section-head,
main > section > .clone-postal-intro,
main > section > .case-gallery-intro,
main > section > .case-video-intro,
main > section > .enquiry-form-intro,
main > section > .remap-online-heading,
main > section > .sgtm-calc-head {
  box-sizing: border-box;
}

/* Tablet/mobile follows the site's established 6vw page gutter. */
@media (max-width: 900px) {
  main > section {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }
}

/* Small phones need a practical minimum gutter even on narrow screens. */
@media (max-width: 520px) {
  main > section {
    padding-left: max(20px, 5vw) !important;
    padding-right: max(20px, 5vw) !important;
  }
}
