/* QAZIIM unified typography — loaded after every department stylesheet. */
:root {
  --qaziim-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

html,
body,
body :where(h1,h2,h3,h4,h5,h6,p,a,span,strong,b,em,i,small,label,button,input,select,textarea,option,li,dt,dd,figcaption,blockquote,cite,table,th,td,legend,summary) {
  font-family: var(--qaziim-font) !important;
  font-style: normal;
}

body { font-family: var(--qaziim-font) !important; }
button,input,select,textarea { font: inherit; }

/* Keep headings consistent while retaining each page's established scale. */
body :where(h1,h2,h3,h4,h5,h6) {
  max-width: 100%;
  min-width: 0;
  font-weight: 900;
  letter-spacing: -.018em;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
  text-wrap: balance;
}

/* Prevent long translated headings from escaping hero, card, or grid frames. */
body :where(.hero-content,.articleHero,.articleHeroCopy,.detail-hero,.section-heading,
  .section-title,.patient-section-head,.programme-card,.detail-card,.content-block,
  .card,.publication-card,.year-heading) {
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 600px) {
  body :where(.hero-content,.articleHero,.articleHeroCopy,.detail-hero) h1 {
    font-size: clamp(1.9rem, 9vw, 2.75rem) !important;
    line-height: 1.08 !important;
  }

  body :where(.section-heading,.section-title,.patient-section-head,.content-block) h2 {
    font-size: clamp(1.55rem, 7vw, 2.2rem) !important;
    line-height: 1.14 !important;
  }
}

body :where(p,li,dd,figcaption) { letter-spacing: normal; }

/* Eyebrows and metadata share one compact institutional treatment. */
body :where(.eyebrow,.hero-kicker,.directory-label,.section-index,.publication-venue,.year-heading span) {
  font-family: var(--qaziim-font) !important;
  font-style: normal !important;
}

/* The logo remains an image; its adjacent name and slogan use the site family. */
.brand-copy,.brand-copy * { font-family: var(--qaziim-font) !important; }
