/* Shared content typography for services, About and Contact.
   Layered important rules take precedence over page-specific important rules.
   Navigation, footer, icons and all non-typography properties are untouched. */
@layer papa-content-typography {
  body :is(h1, h2, h3, h4, h5, h6, p, li, label, input, textarea, select, button, summary):not(#masthead *, footer *, #colophon *)
    :where(span:not([class*="fa-"]):not([class*="icon"]), strong, em, b, a) {
    font-family: inherit !important;
  }

  body :is(h1, h2, h3, h4, h5, h6, p, li, label, input, textarea, select, button, summary):not(#masthead *, footer *, #colophon *) {
    font-family: 'DM Sans', Arial, sans-serif !important;
  }

  body :is(p, li):not(#masthead *, footer *, #colophon *) {
    font-size: 16px !important;
  }

  body :is(h1, h2, h3, h4, h5, h6, p, li):not(#masthead *, footer *, #colophon *)
    :where(span:not([class*="fa-"]):not([class*="icon"]), strong, em, b, a) {
    font-size: inherit !important;
  }

  body h1:not(#masthead *, footer *, #colophon *) { font-size: clamp(32px, 4vw, 48px) !important; }
  body#top .reels-hero h1 { font-size: clamp(24px, 2.6vw, 36px) !important; line-height: 1.1 !important; }
  body h2:not(#masthead *, footer *, #colophon *) { font-size: clamp(28px, 3vw, 36px) !important; }
  body h3:not(#masthead *, footer *, #colophon *) { font-size: 22px !important; }
  body h4:not(#masthead *, footer *, #colophon *) { font-size: 20px !important; }
  body h5:not(#masthead *, footer *, #colophon *) { font-size: 18px !important; }
  body h6:not(#masthead *, footer *, #colophon *) { font-size: 16px !important; }

  body h2#videoProjectCtaTitle {
    font-size: clamp(30px, 3.5vw, 46px) !important;
    line-height: 1.12 !important;
    margin-top: 22px !important;
  }

  /* Keep inquiry popup titles compact even when the page has oversized h2 rules. */
  body #modalOverlay h2,
  body #modalOverlay h3,
  body #consultationModal #consultationTitle {
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
  }
}
