/* =================================================================
   ReefDudes — Typography
   Two faces only. Poppins does almost everything; Playfair Display
   is reserved for occasional editorial moments (long-form post
   titles, blockquotes). System UI fallbacks keep first paint fast.
   ================================================================= */

:root {
	--font-ui:        "Poppins", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--font-display:   "Playfair Display", "Iowan Old Style", "Apple Garamond", Georgia, "Times New Roman", serif;
	--font-mono:      "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
}

body.theme-uncode,
body.theme-uncode .menu-container,
body.theme-uncode input,
body.theme-uncode select,
body.theme-uncode textarea,
body.theme-uncode button {
	font-family: var(--font-ui);
	font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
}

body.theme-uncode {
	font-size: 16px;
	line-height: 1.55;
	letter-spacing: -0.005em;
	color: var(--text);
}

/* Headings — Poppins by default. Reserve Playfair for explicitly
   tagged editorial / blog title surfaces via .rd-display. */
body.theme-uncode h1,
body.theme-uncode h2,
body.theme-uncode h3,
body.theme-uncode h4,
body.theme-uncode h5,
body.theme-uncode h6,
body.theme-uncode .h1,
body.theme-uncode .h2,
body.theme-uncode .h3,
body.theme-uncode .h4,
body.theme-uncode .h5,
body.theme-uncode .h6 {
	font-family: var(--font-ui);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.15;
	text-wrap: balance;
}

body.theme-uncode .rd-display,
body.theme-uncode .single-post .post-title,
body.theme-uncode article.type-post h1.entry-title {
	font-family: var(--font-display);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.1;
}

/* Small section labels — the ONE place all-caps + tracking is OK */
body.theme-uncode .eyebrow,
body.theme-uncode .rd-eyebrow,
body.theme-uncode .section-label {
	font-family: var(--font-ui);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--accent);
}

/* Body copy in long-form posts gets a slightly looser line-height */
body.theme-uncode article .post-content,
body.theme-uncode .entry-content {
	line-height: 1.65;
}

/* Code keeps the mono stack */
body.theme-uncode code,
body.theme-uncode pre,
body.theme-uncode kbd,
body.theme-uncode samp {
	font-family: var(--font-mono);
	font-size: 0.9em;
}

/* Reduce the font-loading flash by hiding text only briefly */
@font-face {
	font-display: swap;
}
