@font-face {
  font-family: "Neue Haas Display";
  src: url("https://ik.imagekit.io/fluid/980191006/fc-assets--fonts--NeueHaasDisplay-Roman_PTvJ0DA0KR.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Display";
  src: url("https://ik.imagekit.io/fluid/980191006/fc-assets--fonts--NeueHaasDisplay-Mediu_ZkHYpSbDJE.woff") format("woff");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Display";
  src: url("https://ik.imagekit.io/fluid/980191006/fc-assets--fonts--NeueHaasDisplay-Bold_3-RHlQdX7.woff") format("woff");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root { --font-headline: "Neue Haas Display", Helvetica, Arial, sans-serif; }

h1, h2, h3, h4, h5, h6,
#section-3 .fs-art h3,
#section-3 .fs-card-caption > strong,
.application-link strong {
  font-family: var(--font-headline);
  font-synthesis: none;
}

/* Use the real Medium face for the former variable-font intermediate weights. */
.vs-section-heading h2,
.vs-value-card > h3,
.vs-resolution h3 {
  font-weight: 500;
}

/* Neue Haas has tighter natural spacing than the previous headline face. The hero headline is set in Neue Haas Bold. */
.hero h1 { font-weight: 700; letter-spacing: -.035em; }
.vs-section-heading h2 { letter-spacing: -.04em; }

/* Every headline on the site is set in Neue Haas Bold (the user's call, 2026-09-25).
   !important because the page and section stylesheets load after this file and set
   their own lighter weights; every headline face (Neue Haas Display, Mist Neue, Neue)
   has a real 700 file, so nothing is synthesized. */
h1, h2, h3, h4, h5, h6 { font-weight: 700 !important; }
