/* ============================================================
   TYPOGRAPHY — Skiforeningen
   Besley (slab serif) → display & headings (warm, editorial, trustworthy)
   Hanken Grotesk → body, UI, labels, buttons, nav (high x-height, legible)
   Recommended weights: Besley 500/600/700 · Hanken 400/500/600/700
   Size tokens hold the max (desktop) size; responsive fluid scaling is
   applied in base.css so token values stay simple, single-value numbers.
   ============================================================ */

:root {
  /* DISPLAY (Besley) — hero statements */
  --type-display-family: var(--font-display);
  --type-display-size:   4.5rem;   /* 72px (fluid down to 44px) */
  --type-display-weight: 700;
  --type-display-lh:     1.05;
  --type-display-ls:     -0.02em;

  /* H1 (Besley) */
  --type-h1-family: var(--font-display);
  --type-h1-size:   3.25rem;       /* 52px (fluid down to 36px) */
  --type-h1-weight: 700;
  --type-h1-lh:     1.1;
  --type-h1-ls:     -0.015em;

  /* H2 (Besley) */
  --type-h2-family: var(--font-display);
  --type-h2-size:   2.5rem;        /* 40px (fluid down to 28px) */
  --type-h2-weight: 600;
  --type-h2-lh:     1.15;
  --type-h2-ls:     -0.01em;

  /* H3 (Besley) */
  --type-h3-family: var(--font-display);
  --type-h3-size:   1.75rem;       /* 28px (fluid down to 22px) */
  --type-h3-weight: 600;
  --type-h3-lh:     1.2;
  --type-h3-ls:     0em;

  /* H4 (Besley) */
  --type-h4-family: var(--font-display);
  --type-h4-size:   1.375rem;      /* 22px (fluid down to 18px) */
  --type-h4-weight: 500;
  --type-h4-lh:     1.3;
  --type-h4-ls:     0em;

  /* BODY (Hanken Grotesk) */
  --type-body-family:   var(--font-sans);
  --type-body-l-size:   1.1875rem; /* 19px */  --type-body-l-lh: 1.65;
  --type-body-m-size:   1.0625rem; /* 17px */  --type-body-m-lh: 1.6;
  --type-body-s-size:   0.9375rem; /* 15px */  --type-body-s-lh: 1.55;
  --type-body-weight:   400;

  /* UI / LABELS (Hanken Grotesk) */
  --type-label-size:    0.9375rem; /* 15px */  --type-label-lh: 1.3;  --type-label-weight: 600;
  --type-button-size:   1rem;      /* 16px */  --type-button-lh: 1;   --type-button-weight: 600;
  --type-caption-size:  0.8125rem; /* 13px */  --type-caption-lh: 1.4; --type-caption-weight: 400;
  --type-overline-size: 0.75rem;   /* 12px */  --type-overline-lh: 1.3; --type-overline-weight: 700;
  --type-overline-ls:   0.08em;

  /* ---- Reading measure & vertical rhythm ---- */
  --measure-prose:   68ch;   /* @kind spacing */
  --measure-narrow:  46ch;   /* @kind spacing */
  --rhythm:          1.5rem; /* @kind spacing */
}
