/*
 * Self-hosted brand fonts — ALL "Website look" pairings.
 *
 * Every pairing's typefaces are served from this plugin (assets/fonts/), so
 * the suite makes NO fonts.googleapis.com request anywhere — front end,
 * block editor, or the Brand-screen preview (better LCP, privacy, and no
 * third-party font connection). Latin subset, weights 400/500/600/700 +
 * true italics (matching Esselith_Tokens::FONT_AXIS), one static woff2 per
 * variant, instanced by Google's CSS2 API from the upstream families.
 * font-display:swap keeps text visible while a woff2 loads. Paths are
 * relative to this file (../fonts/), so they resolve on any domain and
 * inside the block editor iframe.
 *
 * Browsers only download the faces the active pairing actually uses —
 * declaring all pairings here costs nothing at runtime beyond this file.
 *
 * All families are SIL Open Font License: Playfair Display, Montserrat,
 * Lora, Source Serif 4, Source Sans 3, Libre Baskerville, Libre Franklin,
 * Fraunces, DM Sans, Poppins, Inter, Barlow Condensed, Merriweather.
 * Self-hosting and bundling are permitted by the OFL.
 */

/* ===== Classic — Playfair Display (display) + Montserrat (body); Montserrat is also Warm's display face ===== */

/* ---- Playfair Display ---- */
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/playfair-display-400.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/playfair-display-400i.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/playfair-display-500.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/playfair-display-500i.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/playfair-display-600.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/playfair-display-600i.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/playfair-display-700.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/playfair-display-700i.woff2') format('woff2'); }

/* ---- Montserrat ---- */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/montserrat-400.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/montserrat-400i.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/montserrat-500.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/montserrat-500i.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/montserrat-600.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/montserrat-600i.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/montserrat-700.woff2') format('woff2'); }
@font-face { font-family: 'Montserrat'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/montserrat-700i.woff2') format('woff2'); }

/* ===== Warm & Welcoming — Montserrat (above) + Lora ===== */

/* ---- Lora ---- */
@font-face { font-family: 'Lora'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/lora-400.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/lora-400i.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/lora-500.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/lora-500i.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/lora-600.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/lora-600i.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/lora-700.woff2') format('woff2'); }
@font-face { font-family: 'Lora'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/lora-700i.woff2') format('woff2'); }

/* ===== Clean & Readable — Source Serif 4 + Source Sans 3 ===== */

/* ---- Source Serif 4 ---- */
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/source-serif-4-400.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/source-serif-4-400i.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/source-serif-4-500.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/source-serif-4-500i.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/source-serif-4-600.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/source-serif-4-600i.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/source-serif-4-700.woff2') format('woff2'); }
@font-face { font-family: 'Source Serif 4'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/source-serif-4-700i.woff2') format('woff2'); }

/* ---- Source Sans 3 ---- */
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/source-sans-3-400.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/source-sans-3-400i.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/source-sans-3-500.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/source-sans-3-500i.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/source-sans-3-600.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/source-sans-3-600i.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/source-sans-3-700.woff2') format('woff2'); }
@font-face { font-family: 'Source Sans 3'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/source-sans-3-700i.woff2') format('woff2'); }

/* ===== Traditional & Trustworthy — Libre Baskerville + Libre Franklin ===== */

/* ---- Libre Baskerville ---- */
@font-face { font-family: 'Libre Baskerville'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/libre-baskerville-400.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/libre-baskerville-400i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/libre-baskerville-500.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/libre-baskerville-500i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/libre-baskerville-600.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/libre-baskerville-600i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/libre-baskerville-700.woff2') format('woff2'); }
@font-face { font-family: 'Libre Baskerville'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/libre-baskerville-700i.woff2') format('woff2'); }

/* ---- Libre Franklin ---- */
@font-face { font-family: 'Libre Franklin'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/libre-franklin-400.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/libre-franklin-400i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/libre-franklin-500.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/libre-franklin-500i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/libre-franklin-600.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/libre-franklin-600i.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/libre-franklin-700.woff2') format('woff2'); }
@font-face { font-family: 'Libre Franklin'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/libre-franklin-700i.woff2') format('woff2'); }

/* ===== Polished & Premium — Fraunces + DM Sans ===== */

/* ---- Fraunces ---- */
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/fraunces-400.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/fraunces-400i.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/fraunces-500.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/fraunces-500i.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/fraunces-600.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/fraunces-600i.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/fraunces-700.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/fraunces-700i.woff2') format('woff2'); }

/* ---- DM Sans ---- */
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/dm-sans-400.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/dm-sans-400i.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/dm-sans-500.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/dm-sans-500i.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/dm-sans-600.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/dm-sans-600i.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/dm-sans-700.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/dm-sans-700i.woff2') format('woff2'); }

/* ===== Fresh & Modern — Poppins + Inter ===== */

/* ---- Poppins ---- */
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/poppins-400.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/poppins-400i.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/poppins-500.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/poppins-500i.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/poppins-600.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/poppins-600i.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/poppins-700.woff2') format('woff2'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/poppins-700i.woff2') format('woff2'); }

/* ---- Inter ---- */
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/inter-400.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/inter-400i.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/inter-500.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/inter-500i.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/inter-600.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/inter-600i.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/inter-700.woff2') format('woff2'); }
@font-face { font-family: 'Inter'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/inter-700i.woff2') format('woff2'); }

/* ===== Bold & Confident — Barlow Condensed + Merriweather ===== */

/* ---- Barlow Condensed ---- */
@font-face { font-family: 'Barlow Condensed'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/barlow-condensed-400.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/barlow-condensed-400i.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/barlow-condensed-500.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/barlow-condensed-500i.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/barlow-condensed-600.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/barlow-condensed-600i.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/barlow-condensed-700.woff2') format('woff2'); }
@font-face { font-family: 'Barlow Condensed'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/barlow-condensed-700i.woff2') format('woff2'); }

/* ---- Merriweather ---- */
@font-face { font-family: 'Merriweather'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/merriweather-400.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: italic; font-weight: 400; font-display: swap; src: url('../fonts/merriweather-400i.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/merriweather-500.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: italic; font-weight: 500; font-display: swap; src: url('../fonts/merriweather-500i.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/merriweather-600.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: italic; font-weight: 600; font-display: swap; src: url('../fonts/merriweather-600i.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/merriweather-700.woff2') format('woff2'); }
@font-face { font-family: 'Merriweather'; font-style: italic; font-weight: 700; font-display: swap; src: url('../fonts/merriweather-700i.woff2') format('woff2'); }
