/* Explicit content gutters, independent of --bn-max and generic plugin containers.
   Full-width section backgrounds are intentional; their content stays centered. */
body .bn-container,
body .site-header > .container,
body main > section > .container,
body main > .container.entry-content,
body .site-footer > .container {
  box-sizing: border-box;
  width: 88% !important;
  max-width: 1200px !important;
  min-width: 0;
  margin-left: auto !important;
  margin-right: auto !important;
}
body .bn-container.entry-content { max-width: 1040px !important; }
body.single-post .bn-container.entry-content { max-width: 800px !important; }
body.woocommerce-page .bn-container.entry-content { max-width: 1200px !important; }
body .bn-container.bn-hero-content { max-width: 830px !important; }
/* Product archives must fill their container, not inherit prose list widths. */
body.woocommerce .entry-content ul.products {
  width: 100% !important;
  max-width: none !important;
  clear: both;
}
body .bn-section-heading h2 { font-size: clamp(36px, 4vw, 56px); }
body .bn-header-inner { grid-template-columns: minmax(140px,190px) minmax(0,1fr) auto; gap: 20px; }
body .main-navigation ul { flex-wrap: wrap; gap: 12px 18px; }
body .main-navigation a { font-size: 13px; padding: 20px 0; }
@media (max-width: 1080px) {
  body .bn-header-inner { grid-template-columns: minmax(0,1fr) auto; gap: 12px; }
  body .main-navigation a { padding: 13px 0; }
}
@media (max-width: 600px) {
  body .bn-container,
  body .site-header > .container,
  body main > section > .container,
  body main > .container.entry-content,
  body .site-footer > .container { width: calc(100% - 40px) !important; }
  body .bn-header-inner { gap: 8px; }
}
