/* IT Solu type scale. All headings UPPERCASE, heavy (700-900),
   tight negative tracking, tight line-height. Extreme size contrast
   between oversized headlines and small quiet body is the core of the look. */
:root {
  --root-font-size: clamp(12px, 0.95vw, 16px);

  /* Font-size steps */
  --fs-display: clamp(3.5rem, 8vw, 8rem); /* @kind font */
  --fs-statement: clamp(2rem, 3.7vw, 3.75rem); /* @kind font */
  --fs-section: clamp(2.25rem, 4.5vw, 4.5rem); /* @kind font */
  --fs-card-title: 1.375rem; /* @kind font */
  --fs-label: 0.75rem; /* @kind font */
  --fs-body: 1rem; /* @kind font */
  --fs-caption: 0.7rem; /* @kind font */

  /* Weights */
  --fw-body: 400; /* @kind font */
  --fw-medium: 500; /* @kind font */
  --fw-heading: 800; /* @kind font */
  --fw-heading-black: 900; /* @kind font */

  /* Line heights */
  --lh-display: 0.9; /* @kind font */
  --lh-statement: 1.05; /* @kind font */
  --lh-section: 1.1; /* @kind font */
  --lh-card: 1.2; /* @kind font */
  --lh-label: 1.4; /* @kind font */
  --lh-body: 1.5; /* @kind font */

  /* Tracking */
  --tr-tight: -0.01em; /* @kind font */
  --tr-tighter: -0.02em; /* @kind font */
  --tr-mono: 0.05em; /* @kind font */

  /* Ready-made font shorthand aliases */
  --text-display: var(--fw-heading) var(--fs-display)/var(--lh-display) var(--font-heading);
  --text-mono-label: var(--fw-body) var(--fs-label)/var(--lh-label) var(--font-mono);
}
