/**
 * Self-hosted brand fonts. Single source of truth for the @font-face rules —
 * the authenticated app (app/templates/base.html) links this same file rather
 * than keeping its own copy, so a weight added here applies to both sites.
 *
 * Harmless to load globally: @font-face only triggers a fetch when the family
 * is actually used, so pages that haven't adopted `font-brand` /
 * `font-brand-logo` download nothing.
 *
 * NOTE these are served cross-origin in production (cdn.openmoove.com), and
 * font fetches are always CORS-mode even from a same-origin stylesheet. The
 * CDN must send Access-Control-Allow-Origin for woff2 or every face here
 * silently falls back to system fonts — staging can't reproduce it, because
 * nginx serves /static/ same-origin and adds the header anyway.
 */

@font-face {
  font-family: 'General Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/GeneralSans-Regular.a5eb56832538.woff2") format("woff2");
}
@font-face {
  font-family: 'General Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/GeneralSans-Medium.44306bd3e670.woff2") format("woff2");
}
@font-face {
  font-family: 'General Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/GeneralSans-Semibold.a41291516086.woff2") format("woff2");
}
@font-face {
  font-family: 'General Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/GeneralSans-Bold.3ecba833c280.woff2") format("woff2");
}

/* Logo wordmark only. woff2, not the original TTF: this is in the critical
   render path on every page of both sites, and woff2 is 17KB against 42KB.
   There is no italic face because no italic logo style exists — if you add
   one, convert it to woff2 too rather than dropping a TTF back in. */
@font-face {
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Urbanist-Bold.a9b7b8bd4dc0.woff2") format("woff2");
}

