/* ============================================================
   PharmaZen — Typography tokens
   Display : Saira Condensed — heavy, condensed, UPPERCASE headlines
   Body/UI : Mulish — humanist sans, generous readability
   ============================================================ */
:root {
  /* ---- Families ---- */
  --font-display: 'Saira Condensed', 'Arial Narrow', system-ui, sans-serif;
  --font-body:    'Mulish', system-ui, -apple-system, 'Segoe UI', sans-serif;

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

  /* ---- Type scale (fluid-friendly, rem) ---- */
  --text-2xs: 0.6875rem;  /* 11px — eyebrow micro */
  --text-xs:  0.75rem;    /* 12px */
  --text-sm:  0.875rem;   /* 14px */
  --text-base:1rem;       /* 16px — body default */
  --text-lg:  1.125rem;   /* 18px — lead body */
  --text-xl:  1.375rem;   /* 22px */
  --text-2xl: 1.75rem;    /* 28px */
  --text-3xl: 2.25rem;    /* 36px */
  --text-4xl: 3rem;       /* 48px */
  --text-5xl: 3.75rem;    /* 60px */
  --text-6xl: 4.75rem;    /* 76px — hero display */

  /* ---- Line heights ---- */
  --leading-tight:   1.02;  /* display headlines */
  --leading-snug:    1.18;  /* sub-display */
  --leading-normal:  1.55;  /* body */
  --leading-relaxed: 1.7;   /* long-form prose */

  /* ---- Letter spacing ---- */
  --tracking-display: -0.005em;  /* condensed display, near-0 */
  --tracking-eyebrow:  0.14em;   /* uppercase eyebrow / labels */
  --tracking-wide:     0.04em;
  --tracking-normal:   0;

  /* ---- Semantic roles ---- */
  --font-heading: var(--font-display);
  --font-text:    var(--font-body);
}

/* Base element defaults (consumers may rely on these) */
:where(body) {
  font-family: var(--font-body);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  color: var(--text-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
:where(h1,h2,h3,h4,.pz-display) {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-display);
  color: var(--text-strong);
  text-transform: uppercase;
}
