/* Small, targeted CSS overrides for cross-browser rendering issues. */

/* Prevent Firefox-only horizontal scrollbar caused by 100vw full-bleed blocks. */
:root {
  --fp-scrollbar-width: calc(100vw - 100%);
}

.is-block-layout .entry-content > .alignfull,
.editor-styles-wrapper .wp-block-post-content > .alignfull,
.editor-styles-wrapper .is-root-container > .alignfull {
  width: calc(100vw - var(--fp-scrollbar-width));
  max-width: calc(100vw - var(--fp-scrollbar-width));
  margin-left: calc(50% - 50vw + (var(--fp-scrollbar-width) / 2));
  margin-right: calc(50% - 50vw + (var(--fp-scrollbar-width) / 2));
}

/* Contain homepage spotlight quote shape (prevents overflow and odd render artifacts in Firefox). */
.reports-spotlight {
  overflow-x: clip;
}
@supports not (overflow: clip) {
  .reports-spotlight {
    overflow-x: hidden;
  }
}
.reports-spotlight__body-quote {
  overflow: hidden;
}
.reports-spotlight__body-quote .shapes__spotlight1 {
  box-sizing: border-box;
  max-width: 100%;
}
.reports-spotlight__body-quote blockquote {
  float: none;
  max-width: 100%;
}

/* Contain newsletter subscribe section for Firefox (Mailchimp embeds sometimes overflow). */
.section__subscribe {
  overflow-x: clip;
}
@supports not (overflow: clip) {
  .section__subscribe {
    overflow-x: hidden;
  }
}

/* Article hero top spacing. Code-managed here (overrides the Customizer value)
   so it is version-controlled and deploys with the theme. */
.single .fp-post-hero {
  margin-top: 92px;
}

/* WCAG/perf Jul 2026: ensure icon font uses font-display swap */
@font-face {
  font-family: 'icomoon';
  font-display: swap;
}


