/* ============================================================
   Blade & Timber — Typography Tokens
   Heavy condensed uppercase display + clean Barlow body.
   ============================================================ */
:root {
  /* ---- Families ---- */
  --font-display:   'Rokkitt', 'Roboto Slab', Georgia, serif;   /* heavy slab — echoes the logo */
  --font-condensed: 'Barlow Condensed', 'Oswald', sans-serif;
  --font-body:      'Barlow', system-ui, -apple-system, sans-serif;

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

  /* ---- Type scale (display uses tight leading + caps) ---- */
  --fs-hero:    clamp(3.5rem, 8vw, 7rem);   /* @kind font */
  --fs-display: clamp(2.75rem, 5vw, 4.5rem);/* @kind font */
  --fs-h1:      2.5rem;   /* @kind font */
  --fs-h2:      2rem;     /* @kind font */
  --fs-h3:      1.5rem;   /* @kind font */
  --fs-h4:      1.25rem;  /* @kind font */
  --fs-lead:    1.25rem;  /* @kind font */
  --fs-body:    1rem;     /* @kind font */
  --fs-sm:      0.875rem; /* @kind font */
  --fs-xs:      0.75rem;  /* @kind font */
  --fs-label:   0.8125rem;/* @kind font */

  /* ---- Line heights ---- */
  --lh-tight:   1.0;   /* @kind other */  /* slab caps need a touch more than condensed */
  --lh-snug:    1.1;   /* @kind other */
  --lh-heading: 1.15;  /* @kind other */
  --lh-body:    1.55;  /* @kind other */

  /* ---- Letter spacing ---- */
  --ls-display: 0.005em; /* @kind other */
  --ls-caps:    0.08em;   /* @kind other */
  --ls-wide:    0.14em;   /* @kind other */
  --ls-body:    0;        /* @kind other */

  /* ---- Semantic text roles ---- */
  --text-hero-font: var(--font-display);
  --text-kicker-spacing: var(--ls-wide);
}

/* ---- Optional convenience utility classes ---- */
.bt-hero {
  font-family: var(--font-display);
  font-size: var(--fs-hero);
  line-height: var(--lh-tight);
  letter-spacing: var(--ls-display);
  text-transform: uppercase;
}
.bt-display {
  font-family: var(--font-display);
  font-size: var(--fs-display);
  line-height: var(--lh-tight);
  text-transform: uppercase;
}
.bt-kicker {
  font-family: var(--font-condensed);
  font-weight: var(--fw-semibold);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-wide);
  text-transform: uppercase;
}
.bt-body {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
}
