/* ─────────────────────────────────────────────────────────────────────
   Dra. Alda Libardi · tokens da marca
   Amostrados dos arquivos de logo e da papelaria. Enfileirar antes de
   site.css. Não inventar valor fora desta lista.
   ───────────────────────────────────────────────────────────────────── */

/* Fontes do cliente, servidas do tema. Não usar Google Fonts. */
@font-face{
  font-family:"Modny";
  src:url("../fonts/Modny-Thin.woff2") format("woff2"),
      url("../fonts/Modny-Thin.otf") format("opentype");
  font-weight:100 300; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Red Hat Display";
  src:url("../fonts/RedHatDisplay-Variable.woff2") format("woff2-variations"),
      url("../fonts/RedHatDisplay-Variable.woff2") format("woff2"),
      url("../fonts/RedHatDisplay-Variable.ttf") format("truetype-variations");
  font-weight:300 900; font-style:normal; font-display:swap;
}

:root{
  /* ── Cobre. A cor da marca. Pertence ao monograma e aos acentos. ──── */
  --cobre-100:#FBEDE5;
  --cobre-200:#F5D8C9;
  --cobre-300:#F0B8A0;  /* rosé — em fundo escuro */
  --cobre-400:#DDA989;
  --cobre-500:#C89878;  /* acento principal */
  --cobre-600:#B07F5F;  /* hover */
  --cobre-700:#8E6448;  /* press, e texto cobre em fundo claro */

  /* ── Oliva. A tinta e o fundo mais escuro. ────────────────────────── */
  --oliva-900:#3E3C35;
  --oliva-800:#4A4740;
  --oliva-700:#57544A;  /* texto de corpo, e fundo escuro */
  --oliva-600:#6B6759;

  /* ── Taupe. O neutro quente. Fundo médio e todas as bordas. ───────── */
  --taupe-700:#6F6A5E;
  --taupe-600:#8A8275;  /* fundo médio, e texto secundário */
  --taupe-400:#ABA495;
  --taupe-200:#D3CEC1;  /* borda em fundo claro */
  --taupe-100:#E3DFD3;

  /* ── Marfim. O papel. Nada da marca senta em branco puro por padrão. */
  --marfim-50:#F6F3EA;
  --marfim-100:#ECE7D9;  /* fundo padrão da página */
  --marfim-200:#E2DCCB;

  --branco:#FFFFFF;

  /* ── Vinho. Acento saturado único, das alças da ecobag. ───────────── */
  --vinho-500:#602848;
  --vinho-600:#4E2039;
  --vinho-100:#EBDCE3;

  /* ── Semântica ───────────────────────────────────────────────────── */
  --surface-page:var(--marfim-100);
  --surface-card:var(--branco);
  --surface-inverse:var(--oliva-700);
  --surface-muted:var(--marfim-200);
  --surface-accent:var(--cobre-100);

  --text-body:var(--oliva-700);
  --text-heading:var(--oliva-900);
  --text-muted:var(--taupe-600);
  --text-subtle:var(--taupe-400);
  --text-accent:var(--cobre-600);
  --text-on-inverse:var(--marfim-100);

  --border-hairline:var(--taupe-200);
  --border-strong:var(--taupe-400);
  --border-accent:var(--cobre-500);
  --border-inverse:rgba(236,231,217,.28);

  --accent:var(--cobre-500);
  --accent-hover:var(--cobre-600);
  --accent-press:var(--cobre-700);
  --focus-ring:rgba(200,152,120,.32);

  --status-warning:#B0813C;
  --status-warning-soft:#F7EEDD;
  --status-danger:var(--vinho-500);
  --status-danger-soft:var(--vinho-100);

  /* ── Tipografia ──────────────────────────────────────────────────── */
  --font-display:"Modny",'Cormorant Garamond',Didot,'Times New Roman',serif;
  --font-sans:"Red Hat Display",'Helvetica Neue',Helvetica,sans-serif;

  --weight-display:300;
  --weight-regular:400;
  --weight-medium:500;
  --weight-semibold:600;

  --text-hero:clamp(1.75rem,3.4vw,3rem);   /* h1 do Início */
  --text-display-1:clamp(1.6rem,3vw,2.75rem);
  --text-display-2:clamp(1.4rem,2.2vw,2rem);
  --text-display-3:clamp(1.3rem,2vw,1.75rem);
  --text-title:1.125rem;

  --text-lead:1.25rem;
  --text-body-lg:1.0625rem;
  --text-body-md:0.9375rem;
  --text-body-sm:0.8125rem;
  --text-caption:0.75rem;
  --text-overline:0.6875rem;

  --track-wordmark:0.34em;
  --track-display:0.18em;
  --track-overline:0.22em;
  --track-label:0.06em;

  --leading-display:1.08;
  --leading-title:1.24;
  --leading-body:1.62;

  /* ── Espaçamento, base 4px ───────────────────────────────────────── */
  --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;

  --radius-none:0;
  --radius-sm:2px;    /* controles e campos */
  --radius-md:4px;    /* cards e modais */
  --radius-lg:8px;    /* só mídia grande */
  --radius-pill:999px;/* só a etiqueta de categoria */

  --control-height-sm:32px;
  --control-height-md:40px;
  --control-height-lg:48px;

  --container-narrow:640px;
  --container-text:760px;
  --container-wide:1120px;
  --gutter-page:clamp(20px,6vw,80px);

  /* ── Sombras. Quentes, tingidas de oliva, nunca preto neutro. ─────── */
  --shadow-hairline:0 1px 0 rgba(87,84,74,.06);
  --shadow-card:0 1px 2px rgba(87,84,74,.06), 0 2px 8px rgba(87,84,74,.05);
  --shadow-raised:0 2px 4px rgba(87,84,74,.07), 0 8px 24px rgba(87,84,74,.08);
  --shadow-overlay:0 8px 16px rgba(87,84,74,.1), 0 24px 64px rgba(87,84,74,.14);

  /* Véu inferior sobre fotografia. Nunca cápsula translúcida, nunca blur. */
  --scrim-bottom:linear-gradient(to top, rgba(87,84,74,.62), transparent 62%);

  /* ── Movimento ───────────────────────────────────────────────────── */
  --duration-fast:160ms;    /* controles */
  --duration-base:240ms;    /* superfícies */
  --duration-reveal:640ms;  /* fade no scroll */
  --ease:cubic-bezier(.4,0,.2,1);
}

/* Recursos tipográficos reutilizáveis. Modny nunca em caixa de sentença. */
.al-wordmark{font-family:var(--font-display);font-weight:var(--weight-display);text-transform:uppercase;letter-spacing:var(--track-wordmark);line-height:var(--leading-display);color:var(--text-heading)}
.al-display {font-family:var(--font-display);font-weight:var(--weight-display);text-transform:uppercase;letter-spacing:var(--track-display);line-height:var(--leading-display);color:var(--text-heading)}
.al-title   {font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-title);text-transform:uppercase;letter-spacing:var(--track-display);line-height:var(--leading-title);color:var(--text-heading)}
.al-overline{font-family:var(--font-sans);font-weight:var(--weight-medium);font-size:var(--text-overline);text-transform:uppercase;letter-spacing:var(--track-overline);color:var(--text-muted)}
.al-body    {font-family:var(--font-sans);font-weight:var(--weight-regular);font-size:var(--text-body-md);line-height:var(--leading-body);color:var(--text-body)}
.al-lead    {font-family:var(--font-sans);font-weight:var(--weight-regular);font-size:var(--text-lead);line-height:1.35;color:var(--text-body)}

@media (prefers-reduced-motion:reduce){
  *{transition-duration:0ms !important;animation-duration:0ms !important}
}
