/* ================================================================
   GLOBAL RESET — enforces full-bleed sections site-wide.
   Loaded first in head.php so ALL pages inherit these rules.
   Rule: sections/nav/footer are always width:100%, zero side padding.
   Only .wrap / .container / .nav-inner carry gutters.

   CRITICAL: Do NOT set overflow:hidden on html or body —
   it breaks position:sticky on all child elements.
   ================================================================ */

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}

body {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  /* overflow-x clipping is handled per-section, never on body */
}

/* Every section/footer/header/main is always full viewport width */
body > nav,
body > header,
body > section,
body > footer,
body > main {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

/* The ONLY elements that carry horizontal gutters are centring wrappers */
.wrap,
.container,
.st-container {
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
  padding-inline: 20px;
}

@media (min-width: 768px) {
  .wrap,
  .container,
  .st-container {
    padding-inline: 64px;
  }
}
