/* ============================================================
   anakine — Typography tokens
   Headings: PP Telegraf (self-hosted, validé 05/08/2026) ·
   Sans (body): Inter · Mono: DM Mono (Google Fonts).
   Large headings use a fluid clamp() scale.
   ============================================================ */

@font-face {
  font-family: "PP Telegraf";
  src: url("../fonts/PPTelegraf-Regular.woff2") format("woff2"), url("../fonts/PPTelegraf-Regular.woff") format("woff");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "PP Telegraf";
  src: url("../fonts/PPTelegraf-Medium.woff2") format("woff2"), url("../fonts/PPTelegraf-Medium.woff") format("woff");
  font-weight: 500; font-style: normal; font-display: swap;
}

:root {
  /* Families */
  --ak-font-heading: "PP Telegraf", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ak-font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ak-font-mono: "DM Mono", ui-monospace, "SF Mono", Menlo, monospace;

  /* Scale (fluid, clamp)
     Calibrated for Inter, which sits visually ~8-10% larger than
     scale.com's Aeonik at identical px (bigger x-height/wider
     letterforms) — sized down from the original extraction so the
     printed impression matches, not so the raw numbers match. */
  --ak-text-display: clamp(2.25rem, 5.4vw, 4.5rem);  /* hero XL */
  --ak-text-h1:      clamp(1.85rem, 4.5vw, 3.6rem);  /* section titles */
  --ak-text-h2:      clamp(1.55rem, 3.15vw, 2.5rem);
  --ak-text-h3:      1.25rem;
  --ak-text-h4:      1.05rem;
  --ak-text-body-lg: 1.075rem;
  --ak-text-body:    1rem;
  --ak-text-body-sm: 0.875rem;
  --ak-text-eyebrow: 0.72rem;

  /* Weights */
  --ak-weight-regular:  400;
  --ak-weight-medium:   500;
  --ak-weight-semibold: 600;

  /* Line-heights */
  --ak-leading-tight: 1.05;
  --ak-leading-snug:  1.2;
  --ak-leading-body:  1.5;

  /* Tracking (letter-spacing) */
  --ak-tracking-tight:   -0.02em;
  --ak-tracking-normal:  0;
  --ak-tracking-eyebrow: 0.12em;
}
