/*
 * Operetic brand faces, self-hosted.
 *
 * Files live in wp-content/uploads/fonts/ (outside the theme, so they survive
 * theme republishes) and are mirrored in brand-assets/fonts/ in the repo.
 * Latin subset only, ~97KB total.
 *
 * NAMING — read before editing:
 * The repo files are hyphenated (playfair-900.woff2) but the copies uploaded to
 * this server lost their hyphens in transit (playfair900.woff2). Rather than
 * depend on either spelling, each src lists BOTH: the browser tries them in
 * order and uses the first that resolves. Do not "tidy" this down to one URL —
 * it is what stops the whole site silently falling back to Georgia if the files
 * are ever re-uploaded under the other convention.
 *
 * font-display: swap — text paints immediately in the fallback and swaps when
 * the face arrives, rather than sitting invisible. Fallback stacks are chosen
 * for close metrics so the swap is not jarring: Georgia for Playfair, system
 * sans for DM Sans, system mono for DM Mono.
 *
 * The unicode-range matches Google's own latin subset, so the browser skips
 * downloading a face entirely if a page happens to use none of its glyphs.
 */

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/playfair900.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/playfair-900.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/playfair700.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/playfair-700.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/dmsans400.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/dmsans-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/dmsans500.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/dmsans-500.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/dmsans600.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/dmsans-600.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'DM Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/dmmono500.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/dmmono-500.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}
