/* Shared editorial type: the homepage solution heading and body pairing. */
@font-face {
  font-family: "Aktiv Grotesk";
  src: url("/assets/fonts/aktiv-grotesk-variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Corvana Serif";
  src: url("/assets/fonts/crimsonpro-var.woff2") format("woff2");
  font-weight: 200 900;
  font-style: normal;
  font-display: swap;
  size-adjust: 110%;
  ascent-override: 83.65%;
  descent-override: 25.45%;
  line-gap-override: 0%;
}
:root {
  --site-font: "Aktiv Grotesk", Arial, sans-serif;
  --site-heading-font: "Corvana Serif", Georgia, serif;
  --sans: var(--site-font);
  --serif: var(--site-heading-font);
}
@layer corvana-typography {
  body, body *, body *::before, body *::after {
    font-family: var(--site-font) !important;
  }
  body { font-weight: 440 !important; }
  h1, h2, h3, .h-xl, .h-lg, .h-md, .h-sm, .h-xs,
  .display, .section-title, .flow-intro-title, .pathways-heading {
    font-weight: 450 !important;
    font-variation-settings: normal !important;
  }
  /* Keep heading spans and animated words in the same editorial face. */
  :is(h1, h2, .h-xl, .h-lg, .h-md, .display, .section-title, .flow-intro-title, .pathways-heading),
  :is(h1, h2, .h-xl, .h-lg, .h-md, .display, .section-title, .flow-intro-title, .pathways-heading) * {
    font-family: var(--site-heading-font) !important;
  }
  :is(h1, h2, .h-xl, .h-lg, .h-md, .display, .section-title, .flow-intro-title, .pathways-heading) {
    letter-spacing: -.025em !important;
    line-height: 1.15 !important;
  }
  /* Interface labels, small card titles, and product screens retain their UI face. */
  :is(nav, .site-footer-shell, .footer-nav, .workspace-main, .feature-visual, .system-stage, .ua-example, .scenario-panel, .ui-title, .voice-film, .contact-dialog, [role="dialog"]) :is(h1, h2, h3),
  :is(nav, .site-footer-shell, .footer-nav, .workspace-main, .feature-visual, .system-stage, .ua-example, .scenario-panel, .ui-title, .voice-film, .contact-dialog, [role="dialog"]) :is(h1, h2, h3) * {
    font-family: var(--site-font) !important;
    letter-spacing: normal !important;
  }
}
/* Keep the two-part solutions headline together at phone widths. */
@media (max-width: 600px) {
  .ua-hero h1 { font-size: clamp(40px, 12vw, 60px); }
}
