/* ── Targa'micale · Typography tokens ───────────────────────────────────────
   Archivo (display, confident wide grotesque) over Hanken Grotesk (warm,
   humanist body), with Spline Sans Mono for coordinates / hull IDs / specs.
   Headings lean uppercase with positive tracking, echoing the Targa wordmark. */

:root {
  /* Families */
  --font-display: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --font-body:    'Hanken Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --font-mono:    'Spline Sans Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  /* Weights */
  --fw-regular:  400; /* @kind font */
  --fw-medium:   500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:     700; /* @kind font */
  --fw-black:    800; /* @kind font */

  /* Type scale (1.250 major-third, 16px base) */
  --fs-2xs: 0.6875rem;  /* 11 — overline / meta mono */
  --fs-xs:  0.75rem;    /* 12 — captions, tags */
  --fs-sm:  0.875rem;   /* 14 — secondary UI */
  --fs-md:  1rem;       /* 16 — body */
  --fs-lg:  1.125rem;   /* 18 — lead body */
  --fs-xl:  1.375rem;   /* 22 — card titles */
  --fs-2xl: 1.75rem;    /* 28 — section headings */
  --fs-3xl: 2.25rem;    /* 36 */
  --fs-4xl: 3rem;       /* 48 — page titles */
  --fs-5xl: 4rem;       /* 64 — hero */
  --fs-6xl: 5.5rem;     /* 88 — display hero */

  /* Line heights */
  --lh-tight:   1.05; /* @kind font */
  --lh-snug:    1.2; /* @kind font */
  --lh-normal:  1.5; /* @kind font */
  --lh-relaxed: 1.65; /* @kind font */

  /* Letter spacing */
  --ls-tight:   -0.02em; /* @kind font */
  --ls-normal:  0; /* @kind font */
  --ls-wide:    0.04em; /* @kind font */
  --ls-wider:   0.12em; /* @kind font */

  /* Semantic roles */
  --text-hero-size:      var(--fs-6xl);
  --text-hero-weight:    var(--fw-black);
  --text-hero-tracking:  var(--ls-tight);

  --text-title-size:     var(--fs-4xl);
  --text-title-weight:   var(--fw-bold);

  --text-heading-size:   var(--fs-2xl);
  --text-heading-weight: var(--fw-bold);

  --text-eyebrow-size:    var(--fs-xs);
  --text-eyebrow-weight:  var(--fw-semibold);
  --text-eyebrow-spacing: var(--ls-wider);

  --text-body-size:      var(--fs-md);
  --text-body-weight:    var(--fw-regular);
  --text-body-leading:   var(--lh-relaxed);

  --text-label-size:     var(--fs-sm);
  --text-label-weight:   var(--fw-semibold);

  --text-mono-size:      var(--fs-xs);
  --text-mono-spacing:   0.02em;
}
