/* ─────────────────────────────────────────
   AGENCY OS — TYPOGRAPHY TOKENS
   Fluid type scale via clamp()
   ───────────────────────────────────────── */

:root {

  /* ── FONT FAMILIES (sobrescrever por projeto) ── */
  --font-display: 'Clash Display', 'Syne', sans-serif;
  --font-body:    'Inter', 'DM Sans', system-ui, sans-serif;
  --font-mono:    'JetBrains Mono', 'Fira Code', monospace;

  /* ── FONT WEIGHTS ── */
  --weight-light:    300;
  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;
  --weight-extrabold: 800;
  --weight-black:    900;

  /* ── FLUID TYPE SCALE (min @ 375px → max @ 1440px) ── */
  --text-2xs:  clamp(0.625rem,  0.5rem  + 0.33vw, 0.75rem);
  --text-xs:   clamp(0.75rem,   0.65rem + 0.43vw, 0.875rem);
  --text-sm:   clamp(0.875rem,  0.75rem + 0.54vw, 1rem);
  --text-base: clamp(1rem,      0.85rem + 0.65vw, 1.125rem);
  --text-lg:   clamp(1.125rem,  0.9rem  + 0.98vw, 1.5rem);
  --text-xl:   clamp(1.25rem,   0.9rem  + 1.52vw, 2rem);
  --text-2xl:  clamp(1.5rem,    1rem    + 2.17vw, 2.75rem);
  --text-3xl:  clamp(2rem,      1.2rem  + 3.48vw, 3.75rem);
  --text-4xl:  clamp(2.5rem,    1.2rem  + 5.65vw, 5.5rem);
  --text-hero: clamp(3rem,      1rem    + 8.70vw, 8rem);

  /* ── LINE HEIGHTS ── */
  --leading-none:    1;
  --leading-tight:   1.1;
  --leading-snug:    1.25;
  --leading-normal:  1.5;
  --leading-relaxed: 1.625;
  --leading-loose:   2;

  /* ── LETTER SPACING ── */
  --tracking-tight:  -0.04em;
  --tracking-snug:   -0.02em;
  --tracking-normal:  0;
  --tracking-wide:    0.02em;
  --tracking-wider:   0.05em;
  --tracking-widest:  0.1em;
  --tracking-caps:    0.15em;
}

/* ── TIPOGRAFIA GLOBAL ── */
html {
  font-family: var(--font-body);
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
  font-weight: var(--weight-bold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-snug);
  color: var(--color-text);
}

p {
  font-family: var(--font-body);
  font-weight: var(--weight-regular);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
}

code, pre, kbd {
  font-family: var(--font-mono);
  font-size: 0.9em;
}
