/* Barlow family, self-hosted (mirrored from Google Fonts, latin + latin-ext).
   Regenerate with the same css2 URL if weights are ever added. */

/* latin-ext */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../assets/fonts/barlow-300-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;
}

/* latin */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../assets/fonts/barlow-300-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../assets/fonts/barlow-400-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;
}

/* latin */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../assets/fonts/barlow-400-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-500-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;
}

/* latin */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-500-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-600-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;
}

/* latin */
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-600-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-500-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-500-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-600-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-600-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-700-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-700-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-800-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(../assets/fonts/barlow-condensed-800-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-400-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-400-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-500-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-500-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;
}

/* latin-ext */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-600-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;
}

/* latin */
@font-face {
  font-family: 'Barlow Semi Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../assets/fonts/barlow-semi-condensed-600-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;
}

/* ── Metric-matched fallbacks ──
   Every face above is font-display: swap, so on a slow connection the page
   paints in the system font first and reflows when Barlow arrives. Barlow
   Condensed is far narrower than Arial — an uppercase heading is about 70% of
   the width — so that reflow re-wrapped every hero H1 and pushed the article
   down by a full line or two: Lighthouse measured a layout shift of 0.13–0.17
   on the guides (good is under 0.1), and it was the site's only Core Web
   Vitals risk.

   These faces make the fallback occupy the same space as the web font so the
   swap no longer moves anything. Each is the local system font scaled by
   size-adjust to Barlow's measured width, with the vertical metrics overridden
   to Barlow's (ascent 1000, descent 200, line gap 0 per 1000 upm; the
   overrides are divided by size-adjust because the browser scales them by it).
   One face per weight because a bolder Barlow is wider than a lighter one, and
   uppercase samples for the faces the site sets in uppercase, since Barlow's
   capitals are proportionally narrower than its lowercase.

   Arial covers Windows, macOS and iOS; Roboto covers Android. A browser without
   that local font skips the face and falls through to the next family in the
   stack, so nothing can get worse than today. Browsers too old for size-adjust
   ignore the descriptor and render plain Arial, which is what they did before.

   The numbers come from measuring real site strings in Chromium with the
   fonts in assets/fonts/ against Arial and Roboto Regular — not from the OS/2
   xAvgCharWidth table, which averages every glyph in the font and put Barlow
   Condensed ExtraBold at 99% of Arial, a value the hero disproves at a glance.
   Re-measure if a face is added or a weight changes; the brand stacks in
   css/brand.css name these families. */

@font-face {
  font-family: 'Barlow Fallback Arial';
  font-style: normal;
  font-weight: 300;
  src: local('Arial');
  size-adjust: 94.63%;
  ascent-override: 105.67%;
  descent-override: 21.13%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto');
  size-adjust: 95.86%;
  ascent-override: 104.32%;
  descent-override: 20.86%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Arial';
  font-style: normal;
  font-weight: 400;
  src: local('Arial');
  size-adjust: 95.36%;
  ascent-override: 104.87%;
  descent-override: 20.97%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto');
  size-adjust: 96.60%;
  ascent-override: 103.52%;
  descent-override: 20.70%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Arial';
  font-style: normal;
  font-weight: 500;
  src: local('Arial');
  size-adjust: 96.34%;
  ascent-override: 103.80%;
  descent-override: 20.76%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto');
  size-adjust: 97.59%;
  ascent-override: 102.47%;
  descent-override: 20.49%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Arial';
  font-style: normal;
  font-weight: 600;
  src: local('Arial');
  size-adjust: 97.17%;
  ascent-override: 102.91%;
  descent-override: 20.58%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Fallback Roboto';
  font-style: normal;
  font-weight: 600;
  src: local('Roboto');
  size-adjust: 98.43%;
  ascent-override: 101.60%;
  descent-override: 20.32%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Arial';
  font-style: normal;
  font-weight: 500;
  src: local('Arial');
  size-adjust: 66.50%;
  ascent-override: 150.38%;
  descent-override: 30.08%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto');
  size-adjust: 72.53%;
  ascent-override: 137.87%;
  descent-override: 27.57%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Arial';
  font-style: normal;
  font-weight: 600;
  src: local('Arial');
  size-adjust: 67.59%;
  ascent-override: 147.95%;
  descent-override: 29.59%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 600;
  src: local('Roboto');
  size-adjust: 73.71%;
  ascent-override: 135.67%;
  descent-override: 27.13%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Arial';
  font-style: normal;
  font-weight: 700;
  src: local('Arial');
  size-adjust: 68.95%;
  ascent-override: 145.03%;
  descent-override: 29.01%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 700;
  src: local('Roboto');
  size-adjust: 75.19%;
  ascent-override: 133.00%;
  descent-override: 26.60%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Arial';
  font-style: normal;
  font-weight: 800;
  src: local('Arial');
  /* Top of the measured 69.2–71.6% range rather than the 70.3% mean: at the
     mean, two hero H1s (trades-tax on a phone, veterans-benefits-tax on a
     desktop) wrapped one line shorter in Arial than in Barlow. At 71.6% all
     45 pages wrap identically in both. The Roboto face below gets the same
     1.8% nudge. */
  size-adjust: 71.60%;
  ascent-override: 139.66%;
  descent-override: 27.93%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 800;
  src: local('Roboto');
  size-adjust: 78.07%;
  ascent-override: 128.09%;
  descent-override: 25.62%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Arial';
  font-style: normal;
  font-weight: 400;
  src: local('Arial');
  size-adjust: 85.40%;
  ascent-override: 117.10%;
  descent-override: 23.42%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 400;
  src: local('Roboto');
  size-adjust: 86.51%;
  ascent-override: 115.59%;
  descent-override: 23.12%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Arial';
  font-style: normal;
  font-weight: 500;
  src: local('Arial');
  size-adjust: 86.91%;
  ascent-override: 115.06%;
  descent-override: 23.01%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 500;
  src: local('Roboto');
  size-adjust: 88.03%;
  ascent-override: 113.60%;
  descent-override: 22.72%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Arial';
  font-style: normal;
  font-weight: 600;
  src: local('Arial');
  size-adjust: 78.10%;
  ascent-override: 128.04%;
  descent-override: 25.61%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Barlow Semi Condensed Fallback Roboto';
  font-style: normal;
  font-weight: 600;
  src: local('Roboto');
  size-adjust: 85.18%;
  ascent-override: 117.40%;
  descent-override: 23.48%;
  line-gap-override: 0%;
}
