/**
 * Font Swapper - Global Font Application
 * Author: Charlie K. Gackowski, CORMACK ADVERTISING
 *
 * This stylesheet applies the custom font stack globally to front-end text elements only.
 * Main: Hanken Grotesk
 * Fallback: Montserrat
 * Fallback 2: Poppins
 *
 * EXCLUDES: Icon fonts, admin area, and font-based elements
 */

/* Apply to all elements EXCEPT icon fonts and specific elements */
*:not([class*="dashicons"]):not([class*="icon"]):not([class*="fa-"]):not(i),
*::before:not([class*="dashicons"]):not([class*="icon"]):not([class*="fa-"]):not(i),
*::after:not([class*="dashicons"]):not([class*="icon"]):not([class*="fa-"]):not(i) {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Ensure body and html have the font stack */
html,
body {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Apply to all heading elements */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Apply to all text elements (excluding icons) */
p, span:not([class*="dashicons"]):not([class*="icon"]):not([class*="fa-"]),
div, a, li, td, th, label, input, textarea, select, button {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Apply to WordPress specific elements */
.site-title,
.site-description,
.entry-title,
.entry-content,
.widget,
.menu,
.nav,
.comment-content,
.post-meta {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Apply to front-end Gutenberg blocks only (not admin editor) */
body:not(.wp-admin) .wp-block {
    font-family: 'Hanken Grotesk', 'Montserrat', 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif !important;
}

/* Explicitly exclude icon fonts to prevent breaking icons */
[class*="dashicons"],
[class*="icon-"],
[class*="fa-"],
i[class*="icon"],
.dashicons,
.dashicons-before:before,
span.dashicons {
    font-family: dashicons, 'Font Awesome 5 Free', 'Font Awesome 5 Brands', inherit !important;
}

/* Ensure proper font smoothing for better rendering */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
