/* ==========================================================================
   Tokens — Lari Florença Design System
   Importado de: _ds/lari-floren-a-design-system-8666ff8f-6cdb-4553-863d-52fed8c10865/
   Arquivos de origem: tokens/colors.css, tokens/typography.css,
                       tokens/spacing.css, tokens/v3.css
   Não editar à mão: re-sincronizar a partir do design system.
   ========================================================================== */

/* -------------------------------------------------- tokens/colors.css --- */
:root{
/* Base — extraídas da identidade (placa, cartões, quadro, site) */
--sage-50:#F1F3EC;--sage-100:#DDE3D3;--sage-200:#BCC8AE;--sage-300:#94A684;--sage-400:#7B8F6B;
--sage-500:#657B57;/* verde da marca */
--sage-600:#53624B;/* títulos do site */
--sage-700:#445A39;--sage-800:#374F2E;/* arco do hero / floresta */
--sage-900:#26361F;
--cream-25:#FBF9F4;--cream-50:#F8F4EC;--cream-100:#EFE7D8;/* papel da marca */
--cream-200:#E6E2D6;/* linho, fundo do site */
--cream-300:#D8D0C1;--cream-400:#C3B9A6;
--ink-900:#302921;/* tinta do logotipo */
--ink-700:#4A423A;--ink-500:#6E655B;--ink-300:#9B9186;
--rose-300:#E3A7A2;--rose-500:#CB6E69;/* CTA terracota-rosé */
--rose-600:#B35A55;--rose-700:#984845;
--brass-400:#C9A66B;--brass-500:#B08A4E;/* moldura dourada / acentos */
--white:#FFFFFF;
--success-500:#5E7F52;--warning-500:#C08A3E;--danger-500:#A94A44;

/* Semânticas */
--surface-page:#FAF7F1;
--surface-paper:#F1EBDF;
--surface-raised:var(--cream-50);
--surface-brand:var(--sage-500);
--surface-brand-deep:var(--sage-800);
--surface-inverse:var(--ink-900);

--text-heading:#3F5535;
--text-body:#26231F;
--text-strong:var(--ink-900);
--text-muted:#5A544C;
--text-on-brand:var(--cream-100);
--text-on-accent:var(--cream-50);
--text-link:var(--sage-700);
--text-link-hover:var(--rose-600);

--accent:#A9544E;
--accent-hover:var(--rose-600);
--accent-press:var(--rose-700);
--brand:var(--sage-500);
--brand-hover:var(--sage-700);
--brand-press:var(--sage-800);

--border-subtle:rgba(48,41,33,.12);
--border-default:rgba(48,41,33,.22);
--border-strong:var(--sage-500);
--border-on-brand:rgba(239,231,216,.35);
--focus-ring:var(--rose-300);
}

/* ---------------------------------------------- tokens/typography.css --- */
:root{
--font-serif:"Newsreader",Georgia,"Times New Roman",serif;
--font-sans:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
--font-label:var(--font-sans);--font-logo:"Bodoni Moda",serif;

--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;

/* Escala (desktop) */
--fs-display:clamp(48px,7vw,96px);
--fs-h1:clamp(40px,5vw,64px);
--fs-h2:clamp(32px,3.6vw,48px);
--fs-h3:24px;
--fs-h4:20px;
--fs-lead:21px;
--fs-body:17px;
--fs-small:15px;
--fs-caption:13px;
--fs-label:13px;

--lh-tight:1.05;--lh-heading:1.15;--lh-body:1.55;--lh-relaxed:1.7;
--ls-display:-0.01em;--ls-heading:0;--ls-body:0.005em;--ls-label:0.12em;--ls-wide:0.28em;

/* Semânticas */
--type-display:var(--fw-regular) var(--fs-display)/var(--lh-tight) var(--font-serif);
--type-h1:var(--fw-regular) var(--fs-h1)/var(--lh-heading) var(--font-serif);
--type-h2:var(--fw-regular) var(--fs-h2)/var(--lh-heading) var(--font-serif);
--type-h3:var(--fw-regular) var(--fs-h3)/1.25 var(--font-serif);
--type-body:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--font-sans);
--type-lead:var(--fw-regular) var(--fs-lead)/1.5 var(--font-sans);
--type-label:var(--fw-medium) var(--fs-label)/1.2 var(--font-label);
}

/* ------------------------------------------------- tokens/spacing.css --- */
:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;
--container-max:1200px;--gutter:clamp(20px,5vw,64px);--section-y:clamp(64px,10vw,128px);

/* Raios — a forma-assinatura é a "folha": cantos retos + UM canto muito arredondado */
--radius-0:0;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:20px;--radius-xl:32px;--radius-arch-top:999px 999px 0 0;--radius-pill:999px;
--radius-leaf-sm:0 24px 0 0;
--radius-leaf-md:0 0 48px 0;
--radius-leaf-lg:0 0 120px 0;
--radius-arch:240px 0 0 0;

--shadow-none:none;
--shadow-soft:0 1px 2px rgba(48,41,33,.06),0 8px 24px -12px rgba(48,41,33,.18);
--shadow-raised:0 2px 4px rgba(48,41,33,.06),0 24px 48px -24px rgba(38,54,31,.35);
--shadow-focus:0 0 0 3px var(--focus-ring);

--border-hair:1px;--border-thick:1.5px;

--ease-out:cubic-bezier(.22,.61,.36,1);--ease-in-out:cubic-bezier(.65,0,.35,1);
--dur-fast:140ms;--dur-base:240ms;--dur-slow:480ms;
}

/* ------------------------------------------------------ tokens/v3.css --- */
/* Revisão v3 — tokens funcionais para implementação */
:root{
/* Marca — referência visual amostrada da prancha. HEX oficial PENDENTE. */
--lf-brand:#657B57;
--lf-brand-deep:#3F5535;
--lf-brand-deeper:#2F4128;
--lf-brand-press:#24331F;
--lf-bg:#FAF7F1;
--lf-surface:#F1EBDF;
--lf-surface-strong:#E7DFD0;
--lf-text:#26231F;
--lf-text-2:#5A544C;
--lf-heading:#3F5535;
--lf-border:#D8CFBF;
--lf-border-strong:#3F5535;
--lf-on-dark:#F4EFE4;
--lf-accent:#A9544E;
--lf-accent-soft:#C96F68;
--lf-action:#3F5535;
--lf-action-hover:#2F4128;
--lf-action-press:#24331F;
--lf-on-action:#FAF7F1;
--lf-focus:#3F5535;
--lf-focus-on-dark:#F4EFE4;

--lf-font-heading:"Newsreader",Georgia,"Times New Roman",serif;
--lf-font-body:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
--lf-fw-heading:400;
--lf-fw-heading-sm:500;
--lf-fw-body:400;
--lf-fw-ui:600;
--lf-fs-h1:56px;
--lf-fs-h2:40px;
--lf-fs-h3:28px;
--lf-fs-lead:19px;
--lf-fs-body:17px;
--lf-fs-small:15px;
--lf-fs-caption:13px;
--lf-lh-h1:1.12;
--lf-lh-h2:1.15;
--lf-lh-h3:1.2;
--lf-lh-body:1.6;
--lf-ls-heading:-0.005em;
--lf-ls-label:0.08em;

--lf-space-1:4px;--lf-space-2:8px;--lf-space-3:12px;--lf-space-4:16px;--lf-space-5:24px;--lf-space-6:32px;--lf-space-7:48px;--lf-space-8:64px;--lf-space-9:96px;
--lf-section-y:96px;
--lf-content:1120px;
--lf-gutter:48px;
--lf-measure:36em;
--lf-tap:48px;

--lf-radius-control:6px;
--lf-radius-panel:12px;
--lf-radius-photo:0;
--lf-radius-arch:999px 999px 0 0;
--lf-border-w:1px;
--lf-focus-w:2px;
--lf-shadow-none:none;
--lf-dur:150ms;
--lf-ease:cubic-bezier(.22,.61,.36,1);
}
@media (max-width:640px){:root{--lf-fs-h1:36px;--lf-fs-h2:30px;--lf-fs-h3:24px;--lf-fs-lead:18px;--lf-fs-body:16px;--lf-lh-h1:1.15;--lf-section-y:64px;--lf-gutter:20px}}

/* ------------------------------------------------------ tokens/base.css --- */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--type-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-serif);color:var(--text-heading);font-weight:400;margin:0;letter-spacing:-0.01em;text-wrap:balance}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur-fast) var(--ease-out)}
a:hover{color:var(--text-link-hover)}
::selection{background:var(--sage-200);color:var(--ink-900)}
