/* ============================================================
   TYPOGRAPHY — Coronel Lenise / AGIR
   Pesada, caixa-alta, peso black nos títulos. Body humanista.
   ============================================================ */

:root {
  /* --- Families --- */
  --font-display: 'Archivo', system-ui, sans-serif;          /* titles, números */
  --font-body:    'Barlow', system-ui, sans-serif;           /* corpo, parágrafos */
  --font-label:   'Barlow Semi Condensed', 'Barlow', sans-serif; /* etiquetas, eixos */

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

  /* --- Type scale (rem, 16px base) --- */
  --t-display-2xl: 5.5rem;   /* 88 — nome do candidato (hero) */
  --t-display-xl:  4rem;     /* 64 */
  --t-display-lg:  3rem;     /* 48 */
  --t-title:       2.25rem;  /* 36 */
  --t-heading:     1.5rem;   /* 24 */
  --t-subhead:     1.25rem;  /* 20 */
  --t-body-lg:     1.125rem; /* 18 */
  --t-body:        1rem;     /* 16 */
  --t-small:       0.875rem; /* 14 */
  --t-caption:     0.75rem;  /* 12 */
  --t-micro:       0.6875rem;/* 11 */

  /* --- REGRA (decks/apresentações) ---
     Em peças de apresentação (slides 1920×1080), preferir tipografia mais
     densa: reduzir a escala em ~10–12% em relação ao tamanho de tela/web.
     O bloco-foco (número/figura) cresce para gerar impacto, enquanto o
     texto de apoio (legenda, corpo, fonte) diminui. Escala de referência
     do deck: título ~56px · corpo ~25px · apoio/rótulo ~22px. */

  /* --- Line heights --- */
  --lh-tight:   0.92; /* @kind other */
  --lh-snug:    1.08; /* @kind other */
  --lh-heading: 1.18; /* @kind other */
  --lh-body:    1.55; /* @kind other */

  /* --- Letter spacing --- */
  --ls-mega:   -0.02em; /* @kind other */
  --ls-tight:  -0.01em; /* @kind other */
  --ls-normal: 0; /* @kind other */
  --ls-label:  0.08em; /* @kind other */
  --ls-wide:   0.18em; /* @kind other */

  /* --- Semantic roles --- */
  --role-hero-name: var(--w-black) var(--t-display-2xl)/var(--lh-tight) var(--font-display); /* @kind font */
  --role-title:     var(--w-black) var(--t-title)/var(--lh-snug) var(--font-display); /* @kind font */
  --role-heading:   var(--w-extra) var(--t-heading)/var(--lh-heading) var(--font-display); /* @kind font */
  --role-label:     var(--w-bold) var(--t-caption)/1 var(--font-label); /* @kind font */
  --role-body:      var(--w-regular) var(--t-body)/var(--lh-body) var(--font-body); /* @kind font */
}

/* Utility: caixa-alta institucional */
.is-uppercase { text-transform: uppercase; letter-spacing: var(--ls-label); }
