/*
 * Fraunces — the invitation view's display face.
 *
 * Self-hosted on purpose. Every other font in this project still arrives from
 * Google's CDN via `templates/base.html`, which discloses each visitor's IP to a
 * third party before anything is consented to; that is logged as a defect in
 * /TODO.md and design/legal/legal_todo.md. This file is the pattern the fix
 * should follow, not an exception to a rule.
 *
 * One file covers the whole design: a two-axis variable font (optical size 9-144,
 * weight 100-900), subset to latin + latin-ext so Hungarian copy renders without
 * a second request. The SOFT and WONK axes are pinned at their defaults, which is
 * what Google's own `family=Fraunces:opsz,wght` endpoint serves.
 *
 * Regenerate with fonttools (see spec/event-design-devplan.md, Phase 0):
 *   fonttools varLib.instancer Fraunces[SOFT,WONK,opsz,wght].ttf SOFT=0 WONK=1
 *   pyftsubset <pinned> --flavor=woff2 --unicodes=<latin + latin-ext>
 *
 * Licensed under the SIL Open Font License v1.1 — see Fraunces-OFL.txt in
 * static/fonts/, which must ship alongside the font file.
 */
@font-face {
  font-family: "Fraunces";
  src: url("../fonts/Fraunces-variable-latin.2b810c1b3622.woff2") format("woff2-variations");
  /* The full weight range in one file — the design moves between roughly 380
     and 500, but a variable axis costs nothing extra to leave open. */
  font-weight: 100 900;
  font-style: normal;
  /* Text must never be invisible while the face loads: the invitation is mostly
     type, so a blocking period would leave the page blank. */
  font-display: swap;
}
