/* Sílvia Calian — Design System · tokens num arquivo só (self-contained). */
/* Gerado de tokens/*.css. Cole o <style> inteiro numa página, ou linke este arquivo. */

/* Webfonts served from Google Fonts. No binaries were provided with the brand
   assets, so these are the nearest matches to the logo's geometric sans and the
   classical serif seen across the brand's social pieces. See readme.md. */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=Hanken+Grotesk:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Marcellus&display=swap");

:root{
--linen-50:#FDFAF4;--linen-100:#FAF5EC;--linen-200:#F4EBDD;--linen-300:#EADFCC;--linen-400:#DFCFB7;--linen-500:#C9B49A;--linen-600:#A99781;
--taupe-300:#B7A78F;--taupe-500:#8A7862;--taupe-600:#7C6A56;--taupe-700:#5F5142;--taupe-900:#3A3128;
--forest-900:#2C3527;--forest-800:#3C4A34;--forest-700:#4E5F42;--olive-600:#777C5C;--sage-400:#A7AE98;--sage-200:#C9CFBD;--sage-100:#E4E8DC;
--leaf-500:#9ACA3C;--leaf-600:#7FAB2C;
--clay-300:#DBB9A6;--clay-400:#C79076;--clay-500:#B77A61;--clay-600:#A2603F;--clay-700:#844C31;
--text-strong:var(--forest-900);--text-body:var(--taupe-700);--text-muted:var(--taupe-500);--text-faint:var(--linen-600);
--text-on-dark:var(--linen-100);--text-on-dark-muted:var(--sage-200);--text-accent:var(--clay-600);--text-link:var(--forest-800);--text-link-hover:var(--clay-600);
--surface-page:var(--linen-100);--surface-card:#FFFFFF;--surface-sunken:var(--linen-200);--surface-warm:var(--linen-300);
--surface-inverse:var(--forest-800);--surface-inverse-alt:var(--taupe-600);--surface-accent-soft:var(--clay-300);--surface-sage-soft:var(--sage-100);
--border-hairline:#E3D8C6;--border-strong:var(--linen-500);--border-inverse:rgba(250,245,236,.28);
--action-primary:var(--forest-800);--action-primary-hover:var(--forest-900);--action-accent:var(--clay-600);--action-accent-hover:var(--clay-700);
--focus-ring:var(--clay-500);
--success-fg:#4E5F42;--success-bg:var(--sage-100);--warning-fg:#8A6420;--warning-bg:#F6EBD4;--danger-fg:#8E3B2B;--danger-bg:#F6E2DA;--info-fg:var(--taupe-700);--info-bg:var(--linen-200);
}
:root{
--font-display:"Cormorant Garamond",Georgia,serif;
--font-eyebrow:"Marcellus","Cormorant Garamond",Georgia,serif;
--font-sans:"Hanken Grotesk","Helvetica Neue",Arial,sans-serif;
--font-mono:ui-monospace,"SFMono-Regular",Menlo,monospace;
--fs-display-1:clamp(3rem,6vw,4.75rem); 
--fs-display-2:clamp(2.5rem,4.6vw,3.5rem); 
--fs-h1:2.5rem; 
--fs-h2:2rem; 
--fs-h3:1.5rem; 
--fs-h4:1.25rem; 
--fs-lead:1.1875rem; 
--fs-body:1.0625rem; 
--fs-sm:0.9375rem; 
--fs-xs:0.8125rem; 
--fs-eyebrow:0.75rem; 
--lh-tight:1.08; 
--lh-display:1.14; 
--lh-heading:1.28; 
--lh-body:1.68; 
--lh-loose:1.8; 
--ls-display:-0.01em; 
--ls-heading:0; 
--ls-body:0; 
--ls-eyebrow:0.22em; 
--ls-caps:0.1em; 
--fw-light:300; 
--fw-regular:400; 
--fw-medium:500; 
--fw-semibold:600; 
--fw-bold:700; 
--measure-prose:64ch; 
--measure-narrow:48ch; 
}
:root{
--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; 
--section-y:clamp(64px,9vw,128px); 
--section-y-tight:clamp(40px,6vw,72px); 
--gutter:clamp(20px,5vw,64px); 
--container-wide:1240px;--container:1120px;--container-narrow:760px; 
--control-h-sm:36px;--control-h:46px;--control-h-lg:56px; 
}
:root{
--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:28px;--radius-arch:180px 180px 8px 8px;--radius-pill:999px;--radius-organic:60% 40% 55% 45%/50% 55% 45% 50%;
--border-width:1px;--border-width-thick:2px;
--shadow-none:none;
--shadow-sm:0 1px 2px rgba(58,49,40,.05);
--shadow-card:0 2px 12px rgba(58,49,40,.06);
--shadow-lift:0 12px 32px -12px rgba(58,49,40,.18);
--shadow-inset-hairline:inset 0 0 0 1px var(--border-hairline);
--ease-calm:cubic-bezier(.25,.46,.45,.94); 
--ease-out:cubic-bezier(.16,1,.3,1); 
--dur-fast:160ms; 
--dur-base:280ms; 
--dur-slow:520ms; 
--overlay-warm:linear-gradient(180deg,rgba(44,53,39,0) 35%,rgba(44,53,39,.62) 100%); 
--overlay-scrim:rgba(44,53,39,.42); 
--blur-veil:saturate(115%) blur(10px); 
--texture-paper:radial-gradient(circle at 20% 15%,rgba(255,255,255,.7),transparent 55%),radial-gradient(circle at 85% 80%,rgba(201,180,154,.22),transparent 60%); 
}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);font-weight:var(--fw-regular);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);margin:0 0 var(--space-4)}
h1{font-size:var(--fs-h1);line-height:var(--lh-display)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4);font-family:var(--font-sans);font-weight:var(--fw-semibold)}
p{margin:0 0 var(--space-4);max-width:var(--measure-prose)}
a{color:var(--text-link);text-decoration:none;border-bottom:1px solid var(--border-strong);transition:color var(--dur-fast) var(--ease-calm),border-color var(--dur-fast) var(--ease-calm)}
a:hover{color:var(--text-link-hover);border-color:var(--clay-500)}
strong{font-weight:var(--fw-semibold);color:var(--text-strong)}
em{font-style:italic}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
img{max-width:100%;display:block}
.eyebrow{font-family:var(--font-eyebrow);font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.prose-lead{font-size:var(--fs-lead);line-height:var(--lh-loose);color:var(--text-body)}
