/**
 * Self-hosted web font for public marketing and authentication pages.
 *
 * The font is served from this theme rather than a third-party CDN. Loading
 * fonts from a remote host exposes visitor IP addresses to that host, which
 * has been held to be unlawful under the GDPR by German and Austrian courts.
 * Self-hosting removes the third-party request entirely.
 *
 * Files are variable fonts covering the 200-800 weight axis in a single
 * binary per subset, so the whole weight range costs one download.
 *
 * Subsets: latin and latin-ext.
 *   - latin (U+0000-00FF) already covers German umlauts and eszett.
 *   - latin-ext adds Central and Eastern European letterforms, needed so
 *     customer and place names render without fallback-font substitution.
 *
 * Each face is declared with a unicode-range, so a browser downloads a file
 * only when the page actually contains characters from that range. The italic
 * faces are therefore free unless italic text is rendered.
 */

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/plus-jakarta-sans-latin-normal.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: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/plus-jakarta-sans-latin-ext-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
    U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F,
    U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}

@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/plus-jakarta-sans-latin-italic.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: 'Plus Jakarta Sans';
  font-style: italic;
  font-weight: 200 800;
  font-display: swap;
  src: url('../fonts/plus-jakarta-sans-latin-ext-italic.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
    U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F,
    U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}

:root {
  /**
   * Primary typeface token. Consume this everywhere instead of naming the
   * font family directly, so the typeface can be swapped in one place.
   *
   * The variable font supplies weights 200-800. Do not author styles at
   * weight 900: it is outside the axis range and the browser will either
   * clamp to 800 or synthesise a faux-bold. Use 800 for the heaviest text.
   */
  --font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont,
    'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

body {
  font-family: var(--font-sans);
}
