/* fix29b — force ≥30px side gutters (beats Porto 10px container pads) */
html body .page-wrapper {
  --gzs-gutter: 30px;
}

@media (min-width: 768px) {
  html body .page-wrapper > .porto-block-html-top,
  html body .gzs-topbar,
  html body .page-header.type23 .panel.wrapper,
  html body .page-header.type23 .header.content,
  html body .sections.nav-sections .navigation,
  html body .nav-sections .sw-megamenu,
  html body .breadcrumbs .items,
  html body .page-main,
  html body .columns,
  html body .column.main,
  html body .page-footer .footer.content,
  html body .gzs-footer .footer.content,
  html body .gzs-footer .container,
  html body .toolbar.toolbar-products,
  html body .category-view,
  html body .page-title-wrapper,
  html body .products.wrapper {
    padding-left: 30px !important;
    padding-right: 30px !important;
    box-sizing: border-box !important;
  }

  /* Porto often uses .container with 15px — bump to 30 */
  html body .container,
  html body .page-wrapper .container,
  html body .header.content .container,
  html body .footer .container {
    padding-left: 30px !important;
    padding-right: 30px !important;
    box-sizing: border-box !important;
  }

  /* Prevent nested double 60px: main inside page-main */
  html body .page-main > .columns,
  html body .page-main .column.main {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body .page-main {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }

  /* Topbar inner flex */
  html body .gzs-topbar__inner,
  html body .porto-block-html-top > div,
  html body .porto-block-html-top .custom-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  html body .page-main,
  html body .page-header.type23 .header.content,
  html body .porto-block-html-top,
  html body .gzs-topbar,
  html body .page-footer .footer.content {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
