/*
Reverie Typography Unification V1.1 — 2026-10-13
Reference: Aptelora Energy production font system (verified live 2026-10-13):
  self-hosted Open Sans variable 300–800, "Open Sans", Arial, sans-serif,
  form controls inherit.

V1.1 changes (code review closeout):
  - @font-face src is now RELATIVE to this CSS file, so the same plugin works
    on staging and production without per-domain builds;
  - heading font-weight stays at the live site's original 400 — Reverie's own
    size/weight hierarchy and high-jewellery visual are preserved; nothing is
    changed merely to imitate the Energy site. (A 600 comparison variant was
    produced for human review; if chosen, re-add one line:
    `font-weight: 600 !important;` to the heading block below.)

Why this layer exists (baseline audit 2026-10-13, evidence:
runtime/evidence-storage/website-quality/reverie-font-unification-20261013/):
  - theme site.css @imports Google Fonts Lato, but the live Additional-CSS layer
    redefines --font-body without Lato, so Lato never renders and the @import is dead weight;
  - body/buttons/forms/prices render system sans (Helvetica Neue / Arial depending on OS);
  - h1–h3, nav links and product titles hardcode Baskerville (macOS-only serif);
  - result: cross-OS inconsistency and no controlled brand font.

What this file changes: font-family declarations only.
Sizes, weights, line-heights, letter-spacing, colours, layout and all
non-typography rules are untouched.
Icon fonts: no rule here targets .star-rating or any icon-font element; the
WooCommerce "star"/"WooCommerce" faces stay untouched (verified unused on
audited templates, and asserted in the acceptance script).
CJK: Open Sans has NO CJK glyphs. Chinese advisory pages keep rendering CJK
text through the PingFang SC / Hiragino / Noto Sans CJK SC system fallbacks
listed after Open Sans; only Latin glyphs switch to Open Sans.
*/

@font-face {
	font-family: "Open Sans";
	src: url("open-sans-latin-variable.woff2") format("woff2");
	font-style: normal;
	font-weight: 300 800;
	font-display: swap;
}

/* Variable overrides. !important is required: the live Additional-CSS (wp-custom-css)
   layer prints after plugin styles and redefines --font-body at equal specificity. */
:root {
	--font-body: "Open Sans", Arial, "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Microsoft YaHei", sans-serif !important;
	--font-heading: "Open Sans", Arial, "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Microsoft YaHei", sans-serif !important;
	--rv-sans: "Open Sans", Arial, "PingFang SC", "Microsoft YaHei", sans-serif !important;
	--rv-serif: "Open Sans", Arial, "PingFang SC", "Microsoft YaHei", sans-serif !important;
	--rv-cjk-sans: "Open Sans", "PingFang SC", "Hiragino Sans", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif !important;
	--rv-cjk-serif: "Open Sans", "PingFang SC", "Songti SC", "Noto Sans CJK SC", sans-serif !important;
}

/* Direct element overrides — beat hardcoded Baskerville stacks in the live CSS layers.
   Font-family only; weights/sizes are the live site's own. */
html body,
html body button,
html body input,
html body select,
html body textarea,
html body .button,
html body a.button,
html body.woocommerce a.button,
html body.woocommerce button.button,
html body.woocommerce input.button,
html body .primary-nav a,
html body .language-toggle,
html body .menu-toggle,
html body .eyebrow,
html body .mega-menu h2,
html body .mega-menu h3,
html body .reverie-footer-seo,
html body .reverie-social-contact__label,
html body.woocommerce ul.products li.product .woocommerce-loop-product__title,
html body.woocommerce div.product .summary .price,
html body.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-family: "Open Sans", Arial, "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Microsoft YaHei", sans-serif !important;
}

/* Headings: unified family. Weight/sizes stay exactly as the live CSS layers
   define them (currently 400) — see V1.1 note above. */
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body .product_title {
	font-family: "Open Sans", Arial, "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Microsoft YaHei", sans-serif !important;
}
