/*
 * Queast must-use Noria typography
 *
 * Route and component CSS applies these semantic roles rather than declaring
 * page-local typography. Contextual adaptations below are approved system API.
 */

@font-face {
  font-family: 'Instrument Serif';
  src: url('/static/fonts/instrument-serif-regular.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/static/fonts/manrope-regular.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/static/fonts/manrope-medium.ttf') format('truetype');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/static/fonts/manrope-semibold.ttf') format('truetype');
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

/* Approved Noria document base for unclassed native controls and prose. */
:root body.page.noria-theme {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.6 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* type-display · Display */
:root body.page .type-display.type-display {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: clamp(4rem, 8.6vw, 7rem) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
  text-transform: none !important;
}

/* type-page-title · Page title */
:root body.page .type-page-title.type-page-title {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: clamp(2.5rem, 4.6vw, 3.875rem) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
}

/* type-section-title · Section title */
:root body.page .type-section-title.type-section-title {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: clamp(2.375rem, 4.3vw, 3.625rem) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
}

/* type-component-title · Component title */
:root body.page .type-component-title.type-component-title {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: 1.75rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

/* type-lead · Lead */
:root body.page .type-lead.type-lead {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: 1.125rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.65 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

/* type-body · Body */
:root body.page .type-body.type-body {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.7 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* type-body-compact · Compact body */
:root body.page .type-body-compact.type-body-compact {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: .875rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* type-label · Label / eyebrow */
:root body.page .type-label.type-label {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: .75rem !important;
  font-weight: 500 !important;
  font-style: normal !important;
  line-height: 1.45 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

/* type-identifier · Identifier / metadata */
:root body.page .type-identifier.type-identifier {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: .8125rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* Sanctioned Noria adaptations of the component-title role. */
:root body.page .card-grid-widget .type-component-title.type-component-title {
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: 1.5625rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.25 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

:root body.page .fact-strip-widget .type-component-title.type-component-title {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: 2.625rem !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: -.025em !important;
  text-transform: none !important;
}

@media (max-width: 600px) {
  :root body.page .type-display.type-display {
    font-size: 3.875rem !important;
  }

  :root body.page .type-lead.type-lead {
    font-size: 1rem !important;
  }

  :root body.page .hero-note.type-identifier.type-identifier {
    font-size: .75rem !important;
  }

  :root body.page .fact-strip-widget .type-component-title.type-component-title {
    font-size: 1.875rem !important;
  }
}
