/* -------------------------------------------------------------------------
   NSD Page Frame Mobile Gutter Harmonization 20260629-191500
   One shared mobile content frame for collection, eventdetail and club pages.
   Desktop is intentionally unchanged. No party-data styling is changed.
   ------------------------------------------------------------------------- */
body.nsd #body-wrapper > .container.ns-page-frame {
  box-sizing: border-box;
}

@media (max-width: 767px) {
  body.nsd #body-wrapper > .container.ns-page-frame {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-left: max(10px, env(safe-area-inset-left)) !important;
    padding-right: max(10px, env(safe-area-inset-right)) !important;
  }

  body.nsd #body-wrapper > .container.ns-page-frame > article.ns-container,
  body.nsd #body-wrapper > .container.ns-page-frame > main.ns-container,
  body.nsd #body-wrapper > .container.ns-page-frame > section.ns-container,
  body.nsd #body-wrapper > .container.ns-page-frame > .ns-container {
    width: 100%;
    max-width: 100% !important;
    box-sizing: border-box;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.nsd #body-wrapper > .container.ns-page-frame > article.ns-container > *,
  body.nsd #body-wrapper > .container.ns-page-frame > main.ns-container > *,
  body.nsd #body-wrapper > .container.ns-page-frame > section.ns-container > * {
    box-sizing: border-box;
    max-width: 100%;
  }
}

@media (max-width: 380px) {
  body.nsd #body-wrapper > .container.ns-page-frame {
    padding-left: 8px !important;
    padding-right: 8px !important;
    padding-left: max(8px, env(safe-area-inset-left)) !important;
    padding-right: max(8px, env(safe-area-inset-right)) !important;
  }
}
/* NSD Page Frame Mobile Gutter Harmonization 20260629-191500 END */
