/* The Lumber Exchange — Typography tokens (aligned to the live site's system)
   Instrument Serif for display H1/H2 (regular, tight tracking).
   Tungsten for narrow uppercase H3/section headings.
   Decimal for body, UI, small headings, and eyebrows (caps).
   Judson for lyrical serif body passages (day-in-the-life copy). */
:root {
  /* Families */
  --font-display-serif: "Instrument Serif", Georgia, serif;
  --font-display: Tungsten, "Bebas Neue", Impact, sans-serif; /* narrow sans heading */
  --font-sans: Decimal, Inter, system-ui, sans-serif; /* primary brand font — UI, labels, buttons, small text */
  --font-serif-body: Judson, Georgia, serif;
  --font-body: Judson, Georgia, serif; /* body copy default — prose paragraphs */
  /* Mono is a system stack per brand tokens.json */
  --font-mono: ui-monospace, "SF Mono", Menlo, monospace;

  /* Weights */
  --weight-book: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 900;

  /* Heading scale — site values (desktop → mobile via clamp) */
  --heading-h1: clamp(2.75rem, calc(2rem + 3vw), 4.5rem); /* @kind other */
  --heading-h2: clamp(2.125rem, calc(1.7rem + 1.8vw), 3rem); /* @kind other */
  --heading-h3: clamp(2rem, calc(1.8rem + 0.8vw), 2.25rem); /* @kind other */
  --heading-h4: clamp(1.1rem, calc(1.05rem + 0.3vw), 1.25rem); /* @kind other */
  --heading-h5: 1rem;      /* Decimal 500, lh 1.3 */
  --heading-h6: 0.875rem;  /* Decimal 500–700 caps, .05em — eyebrows/section labels */
  --text-quote: 1.875rem;  /* quotes, lh 1.266 */

  /* Fluid type scale (clamp min → max) */
  --text-2xs: clamp(0.6875rem, calc(0.65rem + 0.2vw), 0.75rem);
  --text-xs: clamp(0.75rem, calc(0.72rem + 0.2vw), 0.8125rem);
  --text-sm: clamp(0.875rem, calc(0.84rem + 0.2vw), 0.9375rem);
  --text-base: clamp(1rem, calc(0.96rem + 0.25vw), 1.0625rem);
  --text-lg: clamp(1.125rem, calc(1.05rem + 0.35vw), 1.25rem);
  --text-xl: clamp(1.25rem, calc(1.15rem + 0.5vw), 1.5rem);
  --text-2xl: clamp(1.5rem, calc(1.35rem + 0.75vw), 1.875rem);
  --text-3xl: clamp(1.875rem, calc(1.65rem + 1.1vw), 2.5rem);
  --text-4xl: clamp(2.5rem, calc(2rem + 2.2vw), 3.75rem);
  --text-5xl: clamp(3.25rem, calc(2.4rem + 3.5vw), 5.5rem);
  --text-display: clamp(4rem, calc(2.5rem + 6vw), 8.5rem);

  /* Line-heights — tight on display, generous on body */
  --lh-display: 0.92; /* @kind other */
  --lh-h1: 1; /* @kind other */
  --lh-h2: 1; /* @kind other */
  --lh-h3: 1; /* @kind other */
  --lh-headline-tightest: 0.9; /* @kind other */
  --lh-headline-medium: 1.2; /* @kind other */
  --lh-heading: 1.25; /* @kind other */
  --lh-quote: 1.266; /* @kind other */
  --lh-body: 1.5; /* @kind other */
  --lh-lede: 1.4; /* @kind other */

  /* Tracking */
  --tracking-display-serif: -0.03em; /* @kind other */
  --tracking-display-serif-md: -0.02em; /* @kind other */
  --tracking-caps-sm: 0.12em; /* @kind other */
  --tracking-caps-md: 0.08em; /* @kind other */
  --tracking-caps-label: 0.05em; /* @kind other */
  --tracking-caps-lg: 0.04em; /* @kind other */
  --tracking-body: 0; /* @kind other */
}
