/* =========================================================
   VZVZ Public Home — tile grid
   Confluence page 3118989390 ("Public Home VZVZ")
   Complete stylesheet — replace the whole field, never append.
   Earlier drafts contained margin-left: calc(50% - 50vw);
   appending them re-breaks the horizontal placement.
   ========================================================= */

/* ---- 1. Sidebar + its toggle -------------------------- */
/* Kept in the DOM (display:none) — the theme's inline script
   queries #navigator-toggle and would throw if it vanished. */
section.article-page theme-navigator.navigator {
  display: none !important;
}

section.article-page.body {
  display: block !important;
}

section.article-page main.main-content {
  display: block !important;
  inline-size: auto !important;
  max-inline-size: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

/* ---- 2. Content width --------------------------------- */
/* Gutters come from padding here, so they stay symmetric.
   No vw units and no negative margins anywhere. */
section.article-page article#content.fb-layout-container {
  display: block !important;
  inline-size: auto !important;
  max-inline-size: 1600px !important;
  margin-inline: auto !important;
  padding-inline: 40px !important;
  box-sizing: border-box !important;
}

/* ---- 3. The tile grid --------------------------------- */
/* The original 760px came from AUTO SIDE MARGINS on
   .article-body, not from any max-width. */
section.article-page section.article-body.fb-layout-body {
  margin-inline: 0 !important;
  inline-size: auto !important;
  width: auto !important;
  max-inline-size: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 2rem !important;
  align-items: start !important;
  justify-items: stretch !important;
}

/* Clear the theme's named-line placement, which we deleted
   by replacing grid-template-columns. */
section.article-page .article-body > * {
  grid-column: auto !important;
  grid-row: auto !important;
  justify-self: stretch !important;
  align-self: start !important;
  max-width: none !important;
}

/* Full-width intro. MUST come after the reset above. */
section.article-page .article-body > h1,
section.article-page .article-body > h2,
section.article-page .article-body > h3,
section.article-page .article-body > h4,
section.article-page .article-body > hr {
  grid-column: 1 / -1 !important;
}

/* ---- 4. Cards ----------------------------------------- */
/* translate: none is essential. The theme centres tiles with
   margin-left: 50% paired with translate: -50%. Zeroing the
   margin alone leaves the translate running and drags each
   tile half its own width to the left.
   table-layout: fixed is also load-bearing: without it the
   table sizes to its 251px + 509px colgroup. */
.theme-table {
  --width: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  translate: none !important;
  transform: none !important;
  overflow: hidden !important;
  border: 1px solid #dfe1e6;
  border-radius: