/* Important layered rules consistently override individual Elementor widgets.
   Only font families change; icon fonts and the entire heart-test page are excluded. */
@layer whitelab-typography {
  body:not(.page-id-2568) {
    --e-global-typography-primary-font-family: "Lora";
    --e-global-typography-secondary-font-family: "Lora";
    --e-global-typography-text-font-family: "Montserrat";
    --e-global-typography-accent-font-family: "Montserrat";
    font-family: "Montserrat", sans-serif !important;
  }

  body:not(.page-id-2568) :is(div, p, a, span, li, dt, dd, td, th, label, input, textarea, select, option, button, small, strong, b, em, blockquote, figcaption, summary, legend):not(:where(.fa, .fas, .far, .fab, .fal, .fad, .eicon, [class^="eicon-"], [class*=" eicon-"], [class^="jki-"], [class*=" jki-"], [class^="icon-"], [class*=" icon-"], [class*="material-icons"])) {
    font-family: "Montserrat", sans-serif !important;
  }

  body:not(.page-id-2568) :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title, .elementor-image-box-title, .elementor-icon-box-title, .elementor-post__title, .elementor-cta__title, .elementor-flip-box__layer__title, .elementor-tab-title, .e-n-accordion-item-title-text, .jkit-post-title, .wpforms-title, .entry-title),
  body:not(.page-id-2568) :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title, .elementor-image-box-title, .elementor-icon-box-title, .elementor-post__title, .elementor-cta__title, .elementor-flip-box__layer__title, .elementor-tab-title, .e-n-accordion-item-title-text, .jkit-post-title, .wpforms-title, .entry-title) :is(a, span, strong, b, em):not(:where(.fa, .fas, .far, .fab, .fal, .fad, .eicon, [class^="eicon-"], [class*=" eicon-"], [class^="jki-"], [class*=" jki-"], [class^="icon-"], [class*=" icon-"], [class*="material-icons"])) {
    font-family: "Lora", serif !important;
  }
}
