/* Typography — sizes, leading and tracking transcribed from the .fig.
   Brand faces: Suisse Int'l (headlines + body) and Suisse Int'l Mono (eyebrows,
   labels, subheads, buttons, technical detail) — both self-hosted, see
   tokens/fonts.css. */
:root{
  --font-sans:"Suisse Int'l","Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-mono:"Suisse Int'l Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;

  /* Editorial scale (brand-book 1920×1080 artboards, 1:1) */
  --text-cover:249.35px;
  --text-specimen:168px;
  --text-display:120px;
  --text-page-title:50px;
  --text-section-title:40px;
  --text-body-lg:22px;
  --text-body:20px;
  --text-body-sm:18px;
  --text-label:15px;
  --text-eyebrow:12px;

  /* Interface scale (graphic-system pages, unscaled) */
  --text-ui-heading:22px;
  --text-ui-body-lg:18px;
  --text-ui-body:15px;
  --text-ui-label:14px;
  --text-ui-mono:13px;
  --text-ui-badge:10px;

  /* Leading */
  --leading-tight:1;
  --leading-title:1.1;
  --leading-snug:1.2;
  --leading-ui:1.45;
  --leading-body:1.4;
  --leading-loose:1.5;

  /* Tracking */
  --tracking-cover:-0.06em;
  --tracking-display:-0.04em;
  --tracking-headline:-0.03em;
  --tracking-body:-0.02em;
  --tracking-none:0;
  --tracking-nav:0.03em;
  --tracking-badge:0.04em;

  /* Weights in use */
  --weight-regular:400;
  --weight-book:450;
  --weight-medium:500;
}

/* Named text styles */
.kz-cover{font:var(--weight-regular) var(--text-cover)/192px var(--font-sans);letter-spacing:var(--tracking-cover)}
.kz-display{font:var(--weight-medium) var(--text-display)/var(--leading-tight) var(--font-sans);letter-spacing:var(--tracking-display)}
.kz-page-title{font:var(--weight-book) var(--text-page-title)/var(--leading-title) var(--font-sans)}
.kz-section-title{font:var(--weight-book) var(--text-section-title)/var(--leading-title) var(--font-sans);letter-spacing:var(--tracking-display)}
.kz-body-lg{font:var(--weight-book) var(--text-body-lg)/var(--leading-snug) var(--font-sans)}
.kz-body{font:var(--weight-book) var(--text-body)/var(--leading-snug) var(--font-sans)}
.kz-body-sm{font:var(--weight-book) var(--text-body-sm)/var(--leading-body) var(--font-sans)}
.kz-eyebrow{font:var(--weight-medium) var(--text-eyebrow)/var(--leading-tight) var(--font-mono);letter-spacing:var(--tracking-none);text-transform:uppercase}
.kz-label{font:var(--weight-regular) var(--text-label)/var(--leading-tight) var(--font-mono);text-transform:uppercase}
.kz-ui-heading{font:var(--weight-regular) var(--text-ui-heading)/var(--leading-ui) var(--font-sans)}
.kz-ui-body{font:var(--weight-regular) var(--text-ui-body)/var(--leading-ui) var(--font-sans)}
.kz-ui-mono{font:var(--weight-regular) var(--text-ui-mono)/var(--leading-ui) var(--font-mono);text-transform:uppercase}
.kz-subhead{font:var(--weight-medium) var(--text-ui-label)/var(--leading-snug) var(--font-mono);text-transform:uppercase}
