/* Typography — editorial, restrained.
 *
 * Display sizes are reserved for the hero only; the rest of the
 * site uses a tight three-step ramp (h2, h3, lead, body). The
 * eyebrow is a small uppercase Latin / regular Arabic marker that
 * sits above every section heading. */

h1, h2, h3, h4 {
  color: var(--text-1);
  line-height: 1.05;
  letter-spacing: -0.02em;
  font-weight: 800;
}
h1 { font-size: var(--fs-h1); }
h2 { font-size: var(--fs-h2); line-height: 1.08; }
h3 { font-size: var(--fs-h3); line-height: 1.2; letter-spacing: -0.015em; }

p { color: var(--text-2); line-height: 1.65; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: var(--fs-eyebrow);
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--brand);
}
[lang="ar"] .eyebrow { letter-spacing: 0.04em; text-transform: none; }
.eyebrow::before {
  content: "";
  width: 24px;
  height: 1px;
  background: var(--brand);
  display: inline-block;
}

.lead {
  font-size: var(--fs-lead);
  color: var(--text-2);
  line-height: 1.65;
  max-width: 60ch;
}

.text-mute  { color: var(--text-3); }
.text-soft  { color: var(--text-2); }
.text-brand { color: var(--brand); }

.display {
  font-size: var(--fs-display);
  font-weight: 900;
  line-height: 0.95;
  letter-spacing: -0.035em;
  color: var(--text-1);
}
[lang="ar"] .display { line-height: 1.05; letter-spacing: -0.01em; }
.display .accent {
  color: var(--brand);
}
