/* Design Tokens — Psic. Fernanda Lopes */
:root {
    /* ─── Paleta ─── */
    --color-bg: #F4F2F1;
    --color-bg-warm: #F4F2F1;
    --color-bg-nude: #EDE6E2;
    --color-text: #2C2C2C;
    --color-text-muted: #5A5A5A;
    --color-primary: #6B1F2A;
    --color-primary-hover: #8A2838;
    --color-primary-dark: #4E1520;
    --color-accent: #D9C8C2;
    --color-accent-light: #E8DDD8;
    --color-white: #FFFFFF;
    --color-dark: #2C2C2C;
    --color-dark-soft: #3A3A3A;
    --color-gold: #B8923E;

    /* ─── Tipografia ─── */
    --font-display: 'DM Serif Display', Georgia, 'Times New Roman', serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-accent: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* Font Sizes (clamp para responsividade fluida) */
    --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
    --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
    --text-base: clamp(1rem, 0.9rem + 0.45vw, 1.125rem);
    --text-lg: clamp(1.125rem, 1rem + 0.55vw, 1.25rem);
    --text-xl: clamp(1.25rem, 1.1rem + 0.7vw, 1.5rem);
    --text-2xl: clamp(1.5rem, 1.2rem + 1.2vw, 2rem);
    --text-3xl: clamp(1.875rem, 1.4rem + 1.8vw, 2.5rem);
    --text-4xl: clamp(2.25rem, 1.6rem + 2.5vw, 3.25rem);
    --text-5xl: clamp(2.75rem, 1.8rem + 3.5vw, 4rem);

    /* Font Weights */
    --weight-regular: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-bold: 700;

    /* Letter Spacing */
    --tracking-tight: -0.02em;
    --tracking-normal: 0;
    --tracking-wide: 0.05em;
    --tracking-wider: 0.1em;

    /* Line Height */
    --leading-tight: 1.2;
    --leading-normal: 1.6;
    --leading-relaxed: 1.8;

    /* ─── Espaçamento (8pt Grid) ─── */
    --space-2xs: 4px;
    --space-xs: 8px;
    --space-sm: 16px;
    --space-md: 24px;
    --space-lg: 32px;
    --space-xl: 48px;
    --space-2xl: 64px;
    --space-3xl: 80px;
    --space-4xl: 120px;
    --space-section: clamp(64px, 5vw + 32px, 120px);

    /* ─── Layout ─── */
    --max-width: 1200px;
    --max-width-narrow: 800px;
    --max-width-wide: 1400px;
    --gutter: clamp(20px, 4vw, 80px);

    /* ─── Sombras ─── */
    --shadow-sm: 0 1px 3px rgba(44, 44, 44, 0.06);
    --shadow-md: 0 4px 12px rgba(44, 44, 44, 0.08);
    --shadow-lg: 0 8px 30px rgba(44, 44, 44, 0.12);

    /* ─── Bordas ─── */
    --radius-none: 0;
    --radius-sm: 3px;
    --radius-md: 6px;

    /* ─── Transições ─── */
    --ease-out: cubic-bezier(0.33, 1, 0.68, 1);
    --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --duration-fast: 150ms;
    --duration-normal: 300ms;
    --duration-slow: 500ms;
}