:root {
  /* Type scale — the one source of truth for font sizes. Reach for a token in
     every rule instead of writing a raw rem value. 6 steps, base = 1rem. */
  --text-2xs: 0.7rem;
  --text-xs: 0.8rem;
  --text-sm: 0.9rem;
  --text-base: 1rem;
  --text-lg: 1.3rem;
  --text-xl: 1.6rem;

  --weight-light: 200;
  --weight-normal: 400;
}

* {
  font-family: Helvetica, Arial, sans-serif;
  margin: 0;
  font-weight: var(--weight-light);
}

/* Lists unstyled by default */
ul {
  list-style: none;
  padding: 0;
}

body {
  font-size: var(--text-base);
}

h1 {
  font-size: var(--text-xl);
}

h2 {
  font-size: var(--text-lg);
}

h3 {
  font-size: var(--text-base);
}

.muted {
  color: gray;
  font-size: var(--text-sm);
}

.text-secondary {
  color: dimgray;
  font-size: var(--text-sm);
}

.eyebrow {
  font-size: var(--text-2xs);
  text-transform: uppercase;
  color: gray;
}
