/* Self-hosted Adobe Source Serif 4 text faces. Original OFL assets and provenance in fonts/source-serif-4/. */
@media screen {
  /* latin-ext */
  @font-face {
    font-family: 'Source Serif Reading';
    font-style: italic;
    font-weight: 400 600;
    font-display: swap;
    src: url(/fonts/source-serif-4/source-serif-4-italic-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: 'Source Serif Reading';
    font-style: italic;
    font-weight: 400 600;
    font-display: swap;
    src: url(/fonts/source-serif-4/source-serif-4-italic-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: 'Source Serif Reading';
    font-style: normal;
    font-weight: 400 600;
    font-display: swap;
    src: url(/fonts/source-serif-4/source-serif-4-roman-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: 'Source Serif Reading';
    font-style: normal;
    font-weight: 400 600;
    font-display: swap;
    src: url(/fonts/source-serif-4/source-serif-4-roman-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;
  }

  :root {
    --reader-prose-font: "Source Serif Reading", Georgia, "Times New Roman", serif;
    --reader-prose-size: 1.1875rem;
  }

  /* Match prose across document templates without changing Bradford headings or UI. */
  body :is(
    .prose p, .prose li, .prose blockquote,
    .footnotes p, .footnotes li,
    .sec-body, .sec-body p, .sec-body li, .sec-body blockquote,
    .agents-statement__body, .agents-statement__body p,
    .agents-control article > p:last-child,
    .agents-note p, .agents-questions li,
    .decision-path li p, .decision-path__note,
    .agents-board-intro, .agents-end__copy,
    .interface-doc > section p, .interface-doc > section li,
    .interface-doc > section th, .interface-doc > section td
  ) {
    font-family: var(--reader-prose-font);
    font-size: var(--reader-prose-size);
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: normal;
    font-optical-sizing: auto;
    font-synthesis: none;
  }

  body :is(.prose, .footnotes, .sec-body, .agents-statement__body, .agents-end__copy) {
    max-inline-size: 37rem;
  }
  .footnotes { --reader-prose-size: 1rem; }
  .interface-doc > section > p { max-inline-size: 37rem; }

  /* Real text styles replace the former upright/underlined emphasis treatment. */
  body :is(
    .prose, .footnotes, .sec-body,
    .agents-statement__body, .agents-control article > p:last-child, .agents-note p,
    .agents-questions li, .decision-path li p, .decision-path__note,
    .agents-board-intro, .agents-end__copy,
    .interface-doc > section p, .interface-doc > section li,
    .interface-doc > section th, .interface-doc > section td
  ) :is(strong, b) { font-weight: 600 !important; }

  body :is(
    .prose, .footnotes, .sec-body,
    .agents-statement__body, .agents-control article > p:last-child, .agents-note p,
    .agents-questions li, .decision-path li p, .decision-path__note,
    .agents-board-intro, .agents-end__copy,
    .interface-doc > section p, .interface-doc > section li,
    .interface-doc > section th, .interface-doc > section td
  ) :is(em, i, cite) {
    font-style: italic !important;
    text-decoration: none !important;
  }

  @media (min-width: 48rem) {
    :root { --reader-prose-size: 1.25rem; }
  }
}

/* Locally available, metric-adjusted Georgia limits movement while the text font loads.
   Calibrated against actual EN/DE/FR prose; no font binary is modified. */
@media screen {
  @font-face {
    font-family: "Source Serif Fallback";
    src: local("Georgia");
    font-style: normal;
    font-weight: 400 500;
    size-adjust: 107.50%;
    ascent-override: 96.37%;
    descent-override: 31.16%;
    line-gap-override: 0%;
  }
  @font-face {
    font-family: "Source Serif Fallback";
    src: local("Georgia Italic"), local("Georgia-Italic");
    font-style: italic;
    font-weight: 400 500;
    size-adjust: 96.58%;
    ascent-override: 107.27%;
    descent-override: 34.69%;
    line-gap-override: 0%;
  }
  @font-face {
    font-family: "Source Serif Fallback";
    src: local("Georgia Bold"), local("Georgia-Bold");
    font-style: normal;
    font-weight: 600 700;
    size-adjust: 93.60%;
    ascent-override: 110.68%;
    descent-override: 35.79%;
    line-gap-override: 0%;
  }
  @font-face {
    font-family: "Source Serif Fallback";
    src: local("Georgia Bold Italic"), local("Georgia-BoldItalic");
    font-style: italic;
    font-weight: 600 700;
    size-adjust: 86.41%;
    ascent-override: 119.89%;
    descent-override: 38.77%;
    line-gap-override: 0%;
  }
  :root { --reader-prose-font: "Source Serif Reading", "Source Serif Fallback", Georgia, "Times New Roman", serif; }
}
