/* Tokens do portfólio — fonte de verdade: o design system do portfólio (docs/08 + referência reenviada em 2026-10-26). Itens AJUSTE divergem só por acessibilidade. */
@font-face { font-family: "Barlow Condensed"; font-weight: 600; font-style: normal; font-display: swap; src: url("/fontes/barlow-condensed-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 700; font-style: normal; font-display: swap; src: url("/fontes/barlow-condensed-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 900; font-style: normal; font-display: swap; src: url("/fontes/barlow-condensed-latin-900-normal.woff2") format("woff2"); }
@font-face { font-family: "Anton"; font-weight: 400; font-style: normal; font-display: swap; src: url("/fontes/anton-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Bebas Neue"; font-weight: 400 900; font-style: normal; font-display: swap; src: url("/fontes/bebas-neue-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Allura"; font-weight: 400; font-style: normal; font-display: swap; src: url("/fontes/allura-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 100 900; font-style: normal; font-display: swap; src: url("/fontes/inter-latin-wght-normal.woff2") format("woff2"); }

:root {
  /* Cores */
  --color-primary: #C81020;
  /* Valor ORIGINAL do DS (2026-10-26, a pedido do usuário). Contraste 3,45:1 sobre o fundo: abaixo dos 4,5:1 para texto pequeno.
     Para voltar ao ajuste de acessibilidade, troque por #F23A4A (5,32:1), mesma matiz. */
  --color-primary-text: #C81020;
  --color-primary-dark: #8F0B16;       /* decorativo, nunca texto */
  --color-primary-hover: #E21B2D;
  --color-primary-active: #760813;

  --color-secondary: #1A1718;
  --color-bg: #050505;
  --color-surface: #0B0B0C;
  --color-surface-raised: #141416;

  --color-text: #F5F5F5;
  --color-text-secondary: #A4A0A1;
  --color-text-muted: #747174;         /* ORIGINAL do DS (2026-10-26). 4,23:1: abaixo de 4,5:1. Ajuste de acessibilidade anterior: #8A8688 (5,67:1) */
  --color-border: #292628;
  --color-border-strong: #6E6A6C;      /* AJUSTE: controles ≥ 3:1 */
  --color-white: #FFFFFF;

  --color-focus: #FF6672;
  --color-error: #FF4D5A;
  --color-success: #4ADE80;
  --color-warning: #F5B942;
  --color-disabled: #625E60;

  /* Tipografia */
  --font-display: "Bebas Neue", "Barlow Condensed", "Arial Narrow", sans-serif;
  --font-heading: "Bebas Neue", "Barlow Condensed", "Arial Narrow", sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
  --font-impacto: "Anton", "Barlow Condensed", "Arial Narrow", sans-serif;  /* só a palavra gigante do topo (igual à referência) */
  --font-nome: "Bebas Neue", "Barlow Condensed", "Arial Narrow", sans-serif;  /* só o nome no topo (igual à referência) */
  --font-script: "Allura", cursive;    /* assinatura e saudações, uso pontual; nunca para informação */

  --text-xs: 0.625rem;                 /* ORIGINAL do DS (font-label: 10 px desktop, 11 px mobile). Ajuste anterior: .75rem (12 px) */
  --text-sm: 0.75rem;
  --text-base: 0.875rem;               /* corpo, como no DS */
  --text-lg: 1.125rem;
  --text-xl: 1.5rem;
  --text-2xl: 2rem;
  --text-3xl: 3rem;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 900;

  --leading-tight: 0.9;
  --leading-heading: 1.1;
  --leading-body: 1.55;

  --tracking-tight: -0.04em;
  --tracking-normal: 0;
  --tracking-label: 0.06em;

  /* Espaçamento (base 4 px) */
  --space-1: 0.25rem;  --space-2: 0.5rem;   --space-3: 0.75rem;
  --space-4: 1rem;     --space-5: 1.25rem;  --space-6: 1.5rem;
  --space-8: 2rem;     --space-10: 2.5rem;  --space-12: 3rem;
  --space-16: 4rem;    --space-20: 5rem;

  /* Contornos */
  --border-subtle: 1px solid var(--color-border);
  --radius-sm: 2px;  --radius-md: 4px;  --radius-lg: 8px;  --radius-full: 999px;

  /* Sombras */
  --shadow-card: 0 8px 24px rgb(0 0 0 / 30%);
  --shadow-overlay: 0 16px 48px rgb(0 0 0 / 60%);
  --shadow-red: 0 0 24px rgb(200 16 32 / 15%);

  /* Layout */
  --container-max: 1440px;
  --page-gutter: clamp(1rem, 3.2vw, 3rem);
  --section-gap: clamp(2.5rem, 5vw, 5rem);
  --header-h: 56px;

  /* Movimento */
  --duration-fast: 150ms;
  --duration-normal: 250ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
}
@media (max-width: 767.98px) { :root { --text-xs: 0.6875rem; } }
