/* Self-hosted type system: modern, distinctive, and fully Cyrillic-capable. */
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: optional;
  src: url("/assets/fonts/sofia-sans-cyrillic-variable.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: optional;
  src: url("/assets/fonts/sofia-sans-latin-variable.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: "Sofia Sans";
  font-style: italic;
  font-weight: 300 900;
  font-display: optional;
  src: url("/assets/fonts/sofia-sans-cyrillic-italic-variable.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Sofia Sans";
  font-style: italic;
  font-weight: 300 900;
  font-display: optional;
  src: url("/assets/fonts/sofia-sans-latin-italic-variable.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: "Unbounded";
  font-style: normal;
  font-weight: 400 800;
  font-display: optional;
  src: url("/assets/fonts/unbounded-cyrillic-variable.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Unbounded";
  font-style: normal;
  font-weight: 400 800;
  font-display: optional;
  src: url("/assets/fonts/unbounded-latin-variable.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;
}

:root {
  --font-body: "Sofia Sans", "Segoe UI", sans-serif;
  --font-display: "Unbounded", "Sofia Sans", sans-serif;
  --font-sans: var(--font-body);
  --default-font-family: var(--font-body);
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--font-body);
}

body {
  font-optical-sizing: auto;
  text-rendering: optimizeLegibility;
}

h1,
h2,
h3 {
  font-family: var(--font-display);
  font-synthesis: none;
  text-wrap: balance;
}

h1,
h2 {
  font-weight: 650;
}

h3 {
  font-weight: 600;
}

/* Keep the editorial italic accents, now in the contemporary body family. */
h1 em,
h2 em,
.leadForecast {
  font-family: var(--font-body) !important;
  font-style: italic;
  font-weight: 520;
}

/* Give the site's signature figures the same geometric voice as the headings. */
.coreSphere span,
.projectMark,
.experience strong,
.f24Badge strong {
  font-family: var(--font-display);
  font-synthesis: none;
}

@media (max-width: 620px) {
  .heroV2 h1 {
    font-size: clamp(42px, 13.1vw, 68px);
  }
}
