/* Frontend rescue: keep this layer intentionally small.
   Page-specific CSS owns layout, hero proportions, cards, grids, and navigation. */
:root {
  --mf-v5-rescue: 1;
}

html {
  scroll-padding-top: calc(var(--mf-ux-nav-height, 50px) + 0.75rem);
}

body {
  overflow-x: hidden;
}

main > section:empty,
main > article:empty,
main > aside:empty {
  display: none !important;
}

img,
video,
iframe {
  max-width: 100%;
}

.mf-seo-updated,
.mf-last-verified,
[data-refresh-status]:empty,
[data-source-line]:empty {
  display: none !important;
}

.site-footer,
.mf-footer,
footer {
  padding-block: clamp(1.25rem, 2vw, 2rem);
}

.site-footer .stl-container,
.mf-footer .stl-container,
footer .stl-container {
  gap: 1rem;
}

@media (max-width: 760px) {
  .site-footer,
  .mf-footer,
  footer {
    padding-block: 1rem 1.25rem;
  }
}
