/* ── IRON & IRONS — GLOBAL BASELINE ─────────────────────────────────────────
   Loaded on every page. Rules here cannot be overridden by per-page <style>
   blocks because the per-page sheets are also in <head> (same cascade layer),
   but these declarations are explicit and intentional at the html/body level.
   ─────────────────────────────────────────────────────────────────────────── */

/* 1. Hard cap on viewport: no horizontal scroll anywhere, ever. */
html {
  overflow-x: hidden;
  max-width: 100%;
}

body {
  overflow-x: hidden;
  max-width: 100%;
}

/* 2. Universal box-sizing — each page already sets this, but the global
      file makes it a guaranteed baseline that can't be accidentally undone. */
*, *::before, *::after {
  box-sizing: border-box;
}

/* 3. Nav bar: clip instead of scroll if items don't fit at narrow widths.
      The 600px media query in each page already shrinks font/padding —
      this is the safety net for anything smaller. */
.topnav {
  overflow-x: hidden;
}

/* 4. Images and media never exceed their container. */
img, video, canvas, svg {
  max-width: 100%;
  height: auto;
}

/* 5. Tables: allow horizontal scrolling inside a wrapper, not the page. */
table {
  max-width: 100%;
}
