/* Bring legacy WordPress (Kapital theme) pages onto the new type system.
   Selectors use :where() so they carry almost no specificity; !important is
   needed only to beat the theme's inline font declarations. Icon-font
   elements (icomoon "icon-*", Font Awesome, jQuery UI "ui-icon") are skipped
   so their glyphs keep rendering. */

body { font-family: var(--font-sans) !important; -webkit-font-smoothing: antialiased; }

body :where(p, li, a, td, th, dd, dt, label, input, textarea, select, option, button, blockquote, figcaption,
	small, strong, em, b, i, u, span, div, address, cite, caption, legend, font):where(:not(.site-header *):not(.site-footer *):not([class*="icon"]):not(.fa):not([class*="fa-"]):not([class*="glyph"])) {
	font-family: var(--font-sans) !important;
}

body :where(h1, h2, h3, h4, h5, h6, .vc_custom_heading, .tagline-title, .widget_title, .post-title, .page-title):where(:not(.site-header *):not(.site-footer *):not([class*="icon"])),
body :where(h1, h2, h3, h4, h5, h6) :where(a, span, strong, b, em):where(:not(.site-header *):not(.site-footer *):not([class*="icon"])) {
	font-family: var(--font-display) !important;
	letter-spacing: -0.015em;
}

body :where(pre, code, kbd, samp, tt, var, .codecolorer, .codecolorer-container, .cc_code),
body :where(pre, code, .codecolorer, .codecolorer-container) * {
	font-family: var(--font-mono) !important;
}

/* Blog listing cards: the site's custom ".post-title { font-size: 50px }" was
   meant for single posts but also hits these narrow cards; size them to fit. */
.blog-post .post-body .post-title {
	font-size: 22px !important;
	line-height: 1.25 !important;
	font-weight: 700;
	overflow-wrap: normal;
}

/* The site's 50px post/page titles break mid-word on phones */
@media (max-width: 767px) {
	body .post-title, body .rich-header h1, body .page-title h1, body .single-post h2.post-title {
		font-size: clamp(28px, 7vw + 6px, 40px) !important;
		line-height: 1.12 !important;
	}
}

/* myStickymenu promo bar: keep it above page content (it ships with z-index 9)
   but just under the unified header, which site.js docks directly below it. */
.mysticky-welcomebar-fixed { z-index: 999 !important; }
