/**
 * WordPress theme overrides — load last on FAQ pages.
 * Neutralizes theme max-width / layout rules on header, footer, and hero bands.
 */

body.page-faq,
body.page-hub {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
  width: 100% !important;
  overflow-x: clip;
}

body.page-faq .site-header,
body.page-hub .site-header,
body.page-faq .site-footer,
body.page-hub .site-footer,
body.page-faq .page-hero,
body.page-hub .page-hero,
body.page-hub .hub-hero {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box;
}

body.page-faq header.site-header,
body.page-hub header.site-header,
body.page-faq footer.site-footer,
body.page-hub footer.site-footer {
  max-width: 100% !important;
  width: 100% !important;
}

body.page-faq .page-content,
body.page-hub .faq-hub,
body.page-faq .sticky-cta-mobile {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box;
}

body.page-faq .sticky-cta-mobile {
  left: 0;
  right: 0;
}

body.page-faq .read-progress {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* WordPress admin bar + sticky header */
html.admin-bar body.page-faq .site-header,
html.admin-bar body.page-hub .site-header {
  top: 32px;
}

@media screen and (max-width: 782px) {
  html.admin-bar body.page-faq .site-header,
  html.admin-bar body.page-hub .site-header {
    top: 46px;
  }
}

/* Common theme wrappers (Elementor, block themes) */
body.page-faq #page,
body.page-hub #page,
body.page-faq .site,
body.page-hub .site,
body.page-faq .site-content,
body.page-hub .site-content {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
