/*
 * Self-hosted fonts for the ANONYMOUS whistleblowing reporter pages
 * (whistleblowing-report.html, whistleblowing-status.html; since
 * bughunt-fixes-2 also whistleblowing-info.html and the free-channel
 * campaign pages whistleblowing-start.html/-offer.html) — #2214 owner
 * decision 7. These pages used to load Google Fonts, which hands every
 * reporter's IP address (and the page they are on) to a third party before
 * they have typed anything. Serving the same font files from our own origin
 * removes that request entirely; the CSP on both pages is `font-src 'self'`
 * so a regression back to a third-party font host is blocked by the browser
 * too (see whistleblowing-self-hosted-fonts.test.js).
 *
 * Files (public/fonts/, SIL OFL 1.1 / Apache 2.0, taken unmodified from the
 * Google Fonts CSS2 API):
 *   - Hanken Grotesk, variable weight 400–800, latin + latin-ext
 *   - Outfit, variable weight 300–800, latin + latin-ext
 *   - Material Symbols Rounded, variable axes, SUBSET to the icon names the
 *     two pages actually use (MATERIAL_SYMBOLS_SUBSET below). An icon name
 *     that is not in the subset renders as its ligature text. To add one:
 *     regenerate the file with
 *     https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&icon_names=<sorted,comma,list>
 *     and update both this list and the test.
 *
 * MATERIAL_SYMBOLS_SUBSET: attach_file,check_circle,do_not_disturb_on,error,expand_more,search,send,shield_person
 */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-latin-ext.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-latin.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: 'Outfit';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(/fonts/outfit-latin-ext.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: 'Outfit';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(/fonts/outfit-latin.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: 'Material Symbols Rounded';
  font-style: normal;
  font-weight: 100 700;
  font-display: block;
  src: url(/fonts/material-symbols-rounded-wb-subset.woff2) format('woff2');
}

.material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
