:root {
  /* Hammersmith One ships one weight (400). All "boldness" is size + the
     hard offset shadow — never synthetic bold. */
  --fw-core: 400; /* @kind font */

  --fs-hero: 72px;      /* destination name, modal header */
  --fs-display: 54px;
  --fs-title: 38px;     /* CJK sub-name */
  --fs-h1: 32px;
  --fs-h2: 26px;
  --fs-h3: 21px;
  --fs-body: 17px;
  --fs-small: 15px;
  --fs-micro: 13px;

  /* Ticket type (Handjet) reads small, so it runs 1 step larger + tracked */
  --fs-ticket: 30px;
  --fs-ticket-sm: 22px;

  --lh-tight: 1.02; /* @kind font */     /* stacked destination names */
  --lh-snug: 1.2; /* @kind font */
  --lh-body: 1.45; /* @kind font */

  --ls-tight: -0.01em;
  --ls-normal: 0; /* @kind font */
  --ls-wide: 0.06em;
  --ls-ticket: 0.1em;   /* BOARDING PASS lockup */

  /* semantic aliases */
  --type-hero: var(--fw-core) var(--fs-hero) / var(--lh-tight) var(--font-display);
  --type-cjk: var(--fw-core) var(--fs-title) / var(--lh-snug) var(--font-display);
  --type-body: var(--fw-core) var(--fs-body) / var(--lh-body) var(--font-body);
  --type-ticket: var(--fw-core) var(--fs-ticket) / 1 var(--font-ticket);
}
