/* Circular Std for everything, per brand guide: "Use for all body copy".
   Hierarchy comes from size, weight (400/500) and letter-spacing — not from extra families. */
:root{
  --font-size-display:64px;
  --font-size-h1:48px;
  --font-size-h2:34px;
  --font-size-h3:24px;
  --font-size-h4:19px;
  --font-size-body-lg:18px;
  --font-size-body:16px;
  --font-size-body-sm:14px;
  --font-size-caption:12px;
  --font-size-eyebrow:11px;

  --line-height-display:1.04;
  --line-height-heading:1.14;
  --line-height-snug:1.3;
  --line-height-body:1.6;
  --line-height-loose:1.75;

  /* Circular is wide; display sizes need negative tracking, small caps need generous tracking
     (the brand's business card sets names as tracked uppercase). */
  --letter-spacing-display:-0.02em;
  --letter-spacing-heading:-0.01em;
  --letter-spacing-body:0;
  --letter-spacing-eyebrow:0.16em;
  --letter-spacing-button:0.04em;

  --text-display:var(--font-weight-medium) var(--font-size-display)/var(--line-height-display) var(--font-family-display);
  --text-h1:var(--font-weight-medium) var(--font-size-h1)/var(--line-height-heading) var(--font-family-display);
  --text-h2:var(--font-weight-medium) var(--font-size-h2)/var(--line-height-heading) var(--font-family-display);
  --text-h3:var(--font-weight-medium) var(--font-size-h3)/var(--line-height-snug) var(--font-family-display);
  --text-h4:var(--font-weight-medium) var(--font-size-h4)/var(--line-height-snug) var(--font-family-base);
  --text-body-default:var(--font-weight-book) var(--font-size-body)/var(--line-height-body) var(--font-family-base);
  --text-body-large:var(--font-weight-book) var(--font-size-body-lg)/var(--line-height-body) var(--font-family-base);
  --text-body-small:var(--font-weight-book) var(--font-size-body-sm)/var(--line-height-body) var(--font-family-base);
  --text-caption-default:var(--font-weight-book) var(--font-size-caption)/1.4 var(--font-family-base);
}
