/**
 * Moderat brand font -- locally hosted, replacing KnowAll's Kirki-driven
 * Roboto typography (Appearance > Customize > Typography) with no changes
 * to that Customizer configuration or to the parent theme.
 *
 * Font files: assets/fonts/moderat/, extracted from the client-supplied
 * "01 - Fonts/Moderat/" kit (the same kit's own bundled stylesheet.css
 * confirms this weight/style mapping: Regular = 400/normal,
 * Regular-Italic = 400/italic, Medium = 500/normal, Bold = 700/normal).
 * Only the weights actually used anywhere in templates.css are included --
 * Regular, Regular Italic (the .ppu-banner__caption italic treatment),
 * Medium, and Bold. No 600 (SemiBold) file exists in the supplied kit; the
 * existing `font-weight: 600` rules in templates.css are left as-is
 * deliberately (see the override block below) and are resolved by the
 * browser's own standard CSS font-weight matching to the nearest
 * available heavier face -- Bold (700) -- with no synthetic/faux-bold
 * rendering, since a real 700 face is registered.
 */

@font-face {
	font-family: 'Moderat';
	src: url('../fonts/moderat/Moderat-Regular.woff2') format('woff2'),
		url('../fonts/moderat/Moderat-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Moderat';
	src: url('../fonts/moderat/Moderat-Regular-Italic.woff2') format('woff2'),
		url('../fonts/moderat/Moderat-Regular-Italic.woff') format('woff');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Moderat';
	src: url('../fonts/moderat/Moderat-Medium.woff2') format('woff2'),
		url('../fonts/moderat/Moderat-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Moderat';
	src: url('../fonts/moderat/Moderat-Bold.woff2') format('woff2'),
		url('../fonts/moderat/Moderat-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/*
 * Override only -- font-family is the sole property touched here. Sizes,
 * line-heights, colors, spacing, and every other property Kirki also
 * outputs onto these same selectors are left completely alone.
 *
 * `!important` is required (font-family only, nowhere else in this file):
 * Kirki's own typography CSS module enqueues at wp_enqueue_scripts
 * priority 999 (module-css/src/CSS.php, ht_theme_style()/this stylesheet
 * both run at the default priority 10), so it is queued -- and therefore
 * printed -- after this stylesheet regardless of dependency wiring,
 * meaning normal cascade order alone cannot be relied on to win here.
 *
 * Selectors are copied verbatim from Kirki's own `output.element` config
 * for ht_typography_headings / ht_typography_body
 * (knowall/inc/customizer.php) so this targets exactly what Kirki targets
 * -- nothing broader. Icon fonts, SVG icons, and Heroic KB iconography
 * never use these selectors and are unaffected.
 */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Moderat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol' !important;
}

body,
input,
optgroup,
select,
textarea,
p {
	font-family: 'Moderat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol' !important;
}
