/* ==========================================================================
   Cloudstore Central — Typography
   ========================================================================== */

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-brand);
  font-weight: var(--fw-semibold);
  line-height: var(--lh-heading);
  letter-spacing: var(--tracking-tight);
  color: var(--text-primary);
  text-wrap: balance;
}

h1 { font-size: var(--fs-h1); line-height: var(--lh-tight); }
h2 { font-size: var(--fs-h2); }
h3 { font-size: var(--fs-h3); }
h4 { font-size: var(--fs-h4); }

p { max-width: 68ch; }

.display {
  font-family: var(--font-brand);
  font-size: var(--fs-display);
  line-height: var(--lh-tight);
  font-weight: var(--fw-bold);
  letter-spacing: -0.02em;
  text-wrap: balance;
}

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

/* Full-width variant: spans the whole container (no reading-measure cap). */
.lead--full { max-width: none; margin-bottom: var(--space-xl); }

.eyebrow {
  display: inline-block;
  font-size: var(--fs-eyebrow);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--tracking-eyebrow);
  text-transform: uppercase;
  color: var(--accent-deep);
}

.label {
  font-size: var(--fs-label);
  font-weight: var(--fw-medium);
  color: var(--text-secondary);
}

.small { font-size: var(--fs-small); }

.text-muted { color: var(--text-muted); }
.text-secondary { color: var(--text-secondary); }

.data-value {
  font-family: var(--font-mono);
  font-size: var(--fs-data);
  font-weight: var(--fw-semibold);
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--text-primary);
}

.prose > * + * { margin-top: var(--space-sm); }
.prose h2 { margin-top: var(--space-xl); }
.prose h3 { margin-top: var(--space-lg); }
.prose ul, .prose ol { padding-left: 1.4em; }
.prose li + li { margin-top: var(--space-2xs); }
.prose li { max-width: 66ch; }
.prose a { font-weight: var(--fw-medium); }
