
/* ═══════════════════════════════════════════
   TYPOGRAPHY — Fluid Heading Scale
═══════════════════════════════════════════ */
h1,
h2,
h3,
h4,
h5,
h6,
.heading-h1,
.heading-h2,
.heading-h3,
.heading-h4,
.heading-h5,
.heading-h6 {
  color: var(--ink);
  font-weight: 800;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-tight);
  margin-top: 0;
  margin-bottom: clamp(0.5rem, 0.35rem + 0.45vw, 1rem);
  text-wrap: balance;
  overflow-wrap: anywhere;
  max-width: 100%;
}

h1,
.heading-h1 {
  font-size: var(--heading-h1);
  line-height: var(--lh-snug);
}

h2,
.heading-h2 {
  font-size: var(--heading-h2);
  line-height: var(--lh-snug);
}

h3,
.heading-h3 {
  font-size: var(--heading-h3);
}

h4,
.heading-h4 {
  font-size: var(--heading-h4);
  font-weight: 700;
}

h5,
.heading-h5 {
  font-size: var(--heading-h5);
  font-weight: 700;
}

h6,
.heading-h6 {
  font-size: var(--heading-h6);
  font-weight: 700;
}

p {
  font-size: var(--text-base);
  line-height: var(--lh-normal);
}

small,
.text-sm {
  font-size: var(--text-sm);
}
.text-xs {
  font-size: var(--text-xs);
}
.text-2xs {
  font-size: var(--text-2xs);
}
.text-md {
  font-size: var(--text-md);
}
.text-lg {
  font-size: var(--text-lg);
}
.text-xl {
  font-size: var(--text-xl);
}
.text-2xl {
  font-size: var(--text-2xl);
}
.text-3xl {
  font-size: var(--text-3xl);
}
.text-4xl {
  font-size: var(--text-4xl);
}
