/*
 * Global font override
 * Scope: typography only (no layout/colors)
 */

/* Base body/text typography */
html,
body {
  font-family: 'Inter', sans-serif !important;
}

/*
 * Hard text override across theme + Elementor + plugin output.
 * Exclude icon/font-symbol classes to avoid breaking icon fonts.
 */
body *:not(i):not(code):not(pre):not(kbd):not(samp):not(svg):not(path):not([class^="eicon"]):not([class*=" eicon"]):not([class^="fa"]):not([class*=" fa"]):not(.dashicons):not([class^="dashicons-"]):not([class*=" dashicons-"]) {
  font-family: 'Inter', sans-serif !important;
}

/* Elementor-specific hard fallback */
.elementor *:not(i):not(code):not(pre):not(kbd):not(samp):not(svg):not(path):not([class^="eicon"]):not([class*=" eicon"]):not([class^="fa"]):not([class*=" fa"]):not(.dashicons):not([class^="dashicons-"]):not([class*=" dashicons-"]) {
  font-family: 'Inter', sans-serif !important;
}

/* Keep technical text as monospace */
code,
pre,
kbd,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

/* Force heading/display typography at the very end */
h1,
h2,
h3,
h4,
h5,
h6,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
.wp-block-heading,
.elementor-heading-title,
.site-title,
.site-title-exact,
.footer-logo-text,
.hero-content h1,
.cta-content h2,
.feature-card-title,
.step-title,
.stat-value-main,
.elementor-widget-heading .elementor-heading-title,
.entry-title,
.widget-title {
  font-family: 'Orbitron', sans-serif !important;
}

/* Re-assert headings inside Elementor after generic text rule */
.elementor h1,
.elementor h2,
.elementor h3,
.elementor h4,
.elementor h5,
.elementor h6,
.elementor .elementor-heading-title {
  font-family: 'Orbitron', sans-serif !important;
}

/* Common button-like text should stay in Inter */
button,
input,
textarea,
select,
.button,
.btn,
.wp-element-button,
.elementor-button,
.elementor-button-text,
.elementor-nav-menu a {
  font-family: 'Inter', sans-serif !important;
}