/* ==================================================
   SEEKAHOST INDIA BRAND KIT : TYPOGRAPHY
   Author: Aslam Saah
   --------------------------------------------------
   FUTURE EDITS: change the --shk-brand-font line in
   :root below and swap the woff2 files. That is the
   ONLY place typography is managed on this site.
   ================================================== */

/* ===== FONT FILES (variable font: ALL weights 100-1000 in one file) ===== */
@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/dm-sans-variable.woff2') format('woff2');
  font-weight: 100 1000;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/dm-sans-italic-variable.woff2') format('woff2');
  font-weight: 100 1000;
  font-style: italic;
  font-display: swap;
}

/* ===== THE ONE PLACE YOU EVER EDIT ===== */
:root {
  --shk-brand-font: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}

/* ===== APPLY EVERYWHERE: theme, WPBakery, Elementor ===== */
body,
h1, h2, h3, h4, h5, h6,
p, a, span, li, ul, ol, blockquote,
label, small, strong, em, b, figcaption, cite,
input, textarea, select, button, optgroup,
table, th, td, caption,
div, section, article, aside, header, nav, footer,
figure, address, dt, dd, time, mark, sub, sup,
.wpb_text_column, .vc_custom_heading, .wpb_wrapper,
[class*="wpb_"], [class*="vc_"],
.elementor, .elementor-widget, .elementor-heading-title,
.elementor-button, [class*="elementor-"] {
  font-family: var(--shk-brand-font) !important;
}

/* High-specificity sweep for stubborn areas (footer widgets, late-loading
   theme CSS). Wins even against rules like `.footer-widget p { ... !important }`
   because these selectors carry more specificity AND load later. */
body footer *:not(i):not([class*="fa-"]):not([class*="eicon"]),
body .footer *:not(i):not([class*="fa-"]):not([class*="eicon"]),
body #footer *:not(i):not([class*="fa-"]):not([class*="eicon"]),
body .site-footer *:not(i):not([class*="fa-"]):not([class*="eicon"]) {
  font-family: var(--shk-brand-font) !important;
}

/* Keep code samples monospace: developers expect this, and DM Sans
   destroys code readability. */
pre, code, kbd, samp, var, tt,
pre *, code * {
  font-family: Consolas, Monaco, 'Andale Mono', 'Courier New', monospace !important;
}

/* ===== PROTECT ICON FONTS =====
   The rule above is intentionally aggressive, so icon fonts
   (Font Awesome, Elementor eicons, WPBakery icons, Dashicons)
   must be explicitly restored or icons turn into empty squares. */
.fa, .fas, .far, .fab, .fal, .fad,
[class*="fa-"]::before, [class*="fa-"]::after,
.fa::before, .fas::before, .far::before, .fab::before {
  font-family: 'Font Awesome 6 Free', 'Font Awesome 6 Brands',
               'Font Awesome 5 Free', 'Font Awesome 5 Brands',
               'FontAwesome' !important;
}

.eicon, [class*="eicon-"],
.eicon::before, [class*="eicon-"]::before {
  font-family: 'eicons' !important;
}

.dashicons, .dashicons-before::before {
  font-family: 'dashicons' !important;
}

.vc_icon_element [class*="vc_li-"],
[class*="vc-material"], .vc-material::before {
  font-family: inherit;
}

.material-icons, .material-icons-outlined {
  font-family: 'Material Icons' !important;
}

/* ===== OPTIONAL BRAND TYPE SCALE =====
   Uncomment and tune if you also want sizes/weights
   managed centrally, in this same file, later on.

:root {
  --shk-font-size-body: 16px;
  --shk-weight-heading: 700;
}
body { font-size: var(--shk-font-size-body); }
h1, h2, h3 { font-weight: var(--shk-weight-heading); }
*/
