/* GERADO — NÃO EDITAR À MÃO
 * origem:  Claude Design · design system v2.0 · projeto ce36c4ae-5d1b-4197-878d-7008892c62b1
 * método:  ferramenta DesignSync (get_project / list_files / get_file) — leitura direta de tokens/*.css do projeto
 * data:    2026-08-03
 * sha256:  56a588170dbde5f5f428f624139c3426fe5414cdb1127db7e9f4ef10ecfb389b
 */

/* Regra de integridade: tudo abaixo desta linha entra no sha256 do cabeçalho.
   Editar qualquer byte — inclusive um comentário — faz `node scripts/site/check-tokens.mjs`
   sair 1. A única reconciliação legítima é re-sincronizar do DS e correr `--update`.
   Procedimento completo em site/tokens/SYNC.md.

   Invariante deste ficheiro: SÓ custom properties (`--*`), só dentro de `:root`.
   Nenhum seletor, nenhuma regra de layout, nenhuma propriedade com efeito próprio.
   O que ficou de fora do DS e porquê está em SYNC.md § Fronteira do transporte. */

:root{

  /* ── Paleta · Toffee ─────────────────────────────────────────────────────
     Cor de origem da marca, terrosa, calorosa. */
  --toffee-50:#F7F1EA;
  --toffee-100:#E9DACA;
  --toffee-200:#CFB295;
  --toffee-300:#AE8C68;
  --toffee-400:#8E6D4E;
  --toffee-500:#74573A;
  --toffee-600:#59422A;
  --toffee-700:#3F2E1D;

  /* ── Paleta · Gold ───────────────────────────────────────────────────────
     Premium, dados, destaque. */
  --gold-50:#FCF7EC;
  --gold-100:#F4E7C6;
  --gold-200:#E6CC8D;
  --gold-300:#D7B155;
  --gold-400:#C9A243;
  --gold-500:#AF8B31;
  --gold-600:#957324;
  --gold-700:#785D1A;

  /* ── Paleta · Ember ──────────────────────────────────────────────────────
     Laranja-brasa. Energia, ação, urgência elegante. */
  --ember-50:#FFF2EA;
  --ember-100:#FFDCC7;
  --ember-200:#FFB187;
  --ember-300:#FF8449;
  --ember-400:#F2612B;
  --ember-500:#D34917;
  --ember-600:#A5360F;
  --ember-700:#73240A;

  /* ── Paleta · Magenta ────────────────────────────────────────────────────
     Magenta profundo. Contraponto frio-quente, sofisticação. */
  --magenta-50:#FCEDF3;
  --magenta-100:#F7D0E0;
  --magenta-200:#EC9BBB;
  --magenta-300:#DC6293;
  --magenta-400:#C93A72;
  --magenta-500:#A62557;
  --magenta-600:#821841;
  --magenta-700:#570E2B;

  /* ── Paleta · Neutros ────────────────────────────────────────────────────
     Quentes, nunca cinza puro. O `--neutral-900` é a base #0B0908 de D-07. */
  --neutral-0:#FFFFFF;
  --neutral-50:#FBF7F1;
  --neutral-100:#F2EBE1;
  --neutral-200:#E0D6C8;
  --neutral-300:#B6A99B;
  --neutral-400:#8A7D70;
  --neutral-500:#6D6158;
  --neutral-600:#4B443F;
  --neutral-700:#2B2320;
  --neutral-800:#17120F;
  --neutral-900:#0B0908;

  /* ── Feedback ────────────────────────────────────────────────────────────
     Semânticas de estado. */
  --success-400:#6F9460;
  --success-bg:#E8F0E4;
  --success-fg:#43633A;
  --error-400:#C0504A;
  --error-bg:#F7E7E5;
  --error-fg:#8A3430;
  --warning-400:#C9943A;
  --warning-bg:#FBF2E1;
  --warning-fg:#8F6620;
  --info-400:#6B8A9E;
  --info-bg:#E5EEF3;
  --info-fg:#446378;

  /* ── Gradientes de marca ─────────────────────────────────────────────────*/
  --grad-brasa:linear-gradient(100deg,var(--gold-300) 0%,var(--ember-400) 48%,var(--magenta-400) 100%);
  --grad-ouro:linear-gradient(100deg,var(--toffee-300) 0%,var(--gold-300) 50%,var(--toffee-400) 100%);
  --grad-fade-dark:linear-gradient(180deg,transparent 0%,var(--neutral-900) 88%);
  --grad-fade-light:linear-gradient(180deg,transparent 0%,var(--neutral-50) 88%);

  /* ── Halos ───────────────────────────────────────────────────────────────
     Luz difusa por trás de blocos de destaque. A emenda D-08 obriga o Momento
     Arquitetura a usar estes halos — é parte do que o mantém dentro da marca. */
  --halo-ember:radial-gradient(60% 70% at 50% 40%,rgb(242 97 43 / .22),transparent 70%);
  --halo-gold:radial-gradient(60% 70% at 50% 40%,rgb(201 162 67 / .18),transparent 70%);
  --halo-magenta:radial-gradient(60% 70% at 50% 40%,rgb(201 58 114 / .20),transparent 70%);

  /* ── Superfícies · tema escuro ───────────────────────────────────────────
     O escuro é o padrão da marca e o único tema do site (o one-pager não tem
     alternador). O bloco [data-theme="light"] do DS não foi transportado —
     ver SYNC.md § Fronteira do transporte. */
  --surface-base:#0B0908;
  --surface-primary:#14100E;
  --surface-secondary:#1F1917;
  --surface-tertiary:#2B2320;
  --surface-elevated:#382E29;
  --surface-inverse:var(--neutral-50);
  --surface-accent:var(--toffee-700);

  /* ── Texto ───────────────────────────────────────────────────────────────*/
  --text-primary:#F4EDE3;
  --text-secondary:var(--neutral-300);
  --text-muted:var(--neutral-400);
  --text-inverse:var(--neutral-900);
  --text-accent:var(--toffee-200);
  --text-premium:var(--gold-300);
  --text-hot:var(--ember-300);

  /* ── Borda ───────────────────────────────────────────────────────────────*/
  --border-subtle:rgb(244 237 227 / .08);
  --border-default:rgb(244 237 227 / .14);
  --border-strong:rgb(244 237 227 / .28);
  --border-accent:rgb(201 162 67 / .45);

  /* ── Sombra, brilho e véu ────────────────────────────────────────────────*/
  --shadow-xs:0 1px 2px rgb(0 0 0 / .40);
  --shadow-sm:0 2px 8px rgb(0 0 0 / .38);
  --shadow-md:0 8px 24px rgb(0 0 0 / .42);
  --shadow-lg:0 20px 56px rgb(0 0 0 / .52);
  --shadow-inset:inset 0 1px 0 rgb(244 237 227 / .06);
  --glow-gold:0 0 0 1px rgb(201 162 67 / .35),0 6px 28px rgb(201 162 67 / .22);
  --glow-ember:0 0 0 1px rgb(242 97 43 / .40),0 6px 28px rgb(242 97 43 / .26);
  --scrim:rgb(11 9 8 / .72);

  /* ── Fontes ──────────────────────────────────────────────────────────────
     Só as três pilhas de família. Estes tokens declaram QUAL fonte usar;
     não carregam nada. O carregamento das faces é auto-hospedado e vive nas
     regras de face do <head> do index.html (plano 07-07), com os .woff2
     subsetados do plano 07-06.

     O ficheiro tokens/fonts.css do DS traz uma linha de importação do Google
     Fonts — deliberadamente NÃO transportada: D-14 proíbe qualquer requisição
     a domínio de terceiro na cascata crítica, e o próprio comentário do DS já
     antecipa a troca ("swap for self-hosted when files exist"). */
  --font-display:"Bodoni Moda",Georgia,"Times New Roman",serif;
  --font-body:"Archivo","Helvetica Neue",Arial,sans-serif;
  --font-data:"Martian Mono","SFMono-Regular",Consolas,monospace;

  /* ── Escala tipográfica ──────────────────────────────────────────────────*/
  --text-hero:clamp(3rem,calc(1.6rem + 5.2vw),6.5rem);
  --text-display:clamp(2.25rem,calc(1.3rem + 3.4vw),4.25rem);
  --text-h1:clamp(1.875rem,calc(1.25rem + 2.1vw),2.875rem);
  --text-h2:clamp(1.5rem,calc(1.15rem + 1.4vw),2.125rem);
  --text-h3:clamp(1.25rem,calc(1.05rem + .75vw),1.625rem);
  --text-h4:1.25rem;
  --text-lg:1.125rem;
  --text-base:1rem;
  --text-sm:.875rem;
  --text-xs:.75rem;
  --text-2xs:.6875rem;
  --text-data-lg:clamp(2rem,calc(1.2rem + 2.6vw),3.5rem);
  --text-data-md:1.5rem;

  /* ── Entrelinha ──────────────────────────────────────────────────────────*/
  --leading-tight:0.96;
  --leading-snug:1.12;
  --leading-normal:1.5;
  --leading-relaxed:1.68;

  /* ── Tracking ────────────────────────────────────────────────────────────*/
  --tracking-tightest:-0.03em;
  --tracking-tight:-0.015em;
  --tracking-normal:0;
  --tracking-wide:0.06em;
  --tracking-overline:0.18em;
  --tracking-wordmark:0.14em;

  /* ── Peso ────────────────────────────────────────────────────────────────*/
  --weight-light:300;
  --weight-regular:400;
  --weight-medium:500;
  --weight-semibold:600;
  --weight-bold:700;
  --weight-black:800;

  /* ── Eixo de largura do Archivo (D-07: 88–118) ───────────────────────────*/
  --width-condensed:88;
  --width-normal:100;
  --width-expanded:118;

  /* ── Espaçamento · base 4px ──────────────────────────────────────────────*/
  --space-0:0;
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;
  --space-16:64px;
  --space-20:80px;
  --space-24:96px;
  --space-32:128px;
  --space-40:160px;

  /* ── Raio ────────────────────────────────────────────────────────────────
     A marca é angular. O símbolo é o único elemento muito arredondado. */
  --radius-none:0;
  --radius-xs:2px;
  --radius-sm:4px;
  --radius-md:6px;
  --radius-lg:10px;
  --radius-xl:16px;
  --radius-pill:999px;
  --radius-symbol:26%;

  /* ── Traço ───────────────────────────────────────────────────────────────*/
  --border-width:1px;
  --border-width-thick:2px;
  --rule-hairline:1px;

  /* ── Contêiner e medida ──────────────────────────────────────────────────*/
  --container-sm:640px;
  --container-md:840px;
  --container-lg:1080px;
  --container-xl:1320px;
  --measure:64ch;

  /* ── Movimento · durações ────────────────────────────────────────────────*/
  --duration-instant:75ms;
  --duration-fast:150ms;
  --duration-normal:250ms;
  --duration-slow:400ms;
  --duration-slower:600ms;
  --duration-logo:1200ms;
  --duration-stagger:75ms;
  --duration-scroll-reveal:500ms;

  /* ── Movimento · curvas ──────────────────────────────────────────────────*/
  --ease-in:cubic-bezier(.4,0,1,1);
  --ease-out:cubic-bezier(0,0,.2,1);
  --ease-in-out:cubic-bezier(.4,0,.2,1);
  --ease-smooth:cubic-bezier(.25,.1,.25,1);
  --ease-reveal:cubic-bezier(.16,1,.3,1);
  --ease-gold-pulse:cubic-bezier(.4,0,.6,1);

  /* ── Contrato de nomes do site ───────────────────────────────────────────
     Aliases exigidos pelos planos 07-07, 07-08 e 07-10. Nenhum valor novo:
     cada um aponta por var() para um token do DS acima. Existem porque o
     contrato do site nomeia coisas que o DS nomeia de outra maneira — ou que
     o DS guarda fora da tabela de tokens.

     Aliasar por var() (em vez de copiar o literal) tem um efeito deliberado:
     `--motion-dur` herda automaticamente o 0ms do bloco de movimento reduzido
     lá em baixo, sem precisar de ser redeclarado lá. */
  --base-900:var(--neutral-900);
  --font-mono:var(--font-data);
  --motion-dur:var(--duration-scroll-reveal);
  --motion-ease:var(--ease-reveal);

  /* O deslocamento da doutrina "fade + 16px + 500ms" não é token no DS: vive
     literal dentro do fotograma sn-reveal, como translateY(16px). Coincide
     exatamente com --space-4. Registado em SYNC.md § Lacunas como derivado —
     valor do DS, nome local. */
  --motion-shift:var(--space-4);

}

/* ── Movimento reduzido ────────────────────────────────────────────────────
   Transportado do DS tal e qual: zera as durações, e só as durações.
   Sem este bloco, os 0ms teriam de ser escritos noutro ficheiro — e a doutrina
   é que valor literal (hex, px, ms, nome de fonte) só existe aqui.
   Não declara seletor novo: é o mesmo :root, sob condição. */
@media (prefers-reduced-motion:reduce){
  :root{
    --duration-instant:0ms;
    --duration-fast:0ms;
    --duration-normal:0ms;
    --duration-slow:0ms;
    --duration-slower:0ms;
    --duration-logo:0ms;
    --duration-stagger:0ms;
    --duration-scroll-reveal:0ms;
  }
}
