/* ==========================================================================
   ASK Digital Agency - High-Performance Local Web Fonts
   Eliminates external font latency, FOUT (Flash of Unstyled Text), and layout shifts.
   ========================================================================== */

/* --- DM Sans (Headings & Accents) --- */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/dm-sans-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/dm-sans-500-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/dm-sans-600-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/dm-sans-700-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/dm-sans-800-normal.woff2') format('woff2');
}

/* --- Inter (Body & UI) --- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/inter-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/inter-500-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/inter-600-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/inter-700-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/front-end/fonts/webfonts/inter-800-normal.woff2') format('woff2');
}

/* --- Immediate Global Typography Assignment (Prevents FOUT / Monospace / Code Font Flash) --- */
:root {
  --themeht-typography-body-font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --themeht-typography-secondary-font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

html, body {
  font-family: var(--themeht-typography-body-font-family) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.widget-title,
.theme-title h2,
.theme-title h3,
.theme-title h4,
.theme-title h5,
.theme-title h6 {
  font-family: var(--themeht-typography-secondary-font-family) !important;
}

p, span:not([class*="bi-"]):not([class*="flaticon-"]):not([class*="icon"]):not(.counter-suffix):not(.agency-stat-plus),
a, li, label,
button, input, select, textarea,
.btn, .themeht-btn,
.nav-item, .nav-link,
.dropdown-menu, .dropdown-item,
.main-nav, .mobile-menu,
.footer-menu, .copyright,
.service-desc, .blog-card-body,
.form-control {
  font-family: var(--themeht-typography-body-font-family);
}
