/* =============================================================
   VARIÁVEIS GLOBAIS — Farah & Laurindo
   Paleta, tipografia, espaçamento e transições.
   ============================================================= */

@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/playfair-display/PlayfairDisplay-Regular.woff2') format('woff2');
    font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/playfair-display/PlayfairDisplay-Medium.woff2') format('woff2');
    font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/playfair-display/PlayfairDisplay-SemiBold.woff2') format('woff2');
    font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Playfair Display';
    src: url('../fonts/playfair-display/PlayfairDisplay-Bold.woff2') format('woff2');
    font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('../fonts/inter/Inter-Regular.woff2') format('woff2');
    font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('../fonts/inter/Inter-Medium.woff2') format('woff2');
    font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('../fonts/inter/Inter-SemiBold.woff2') format('woff2');
    font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'DM Sans';
    src: url('../fonts/dm-sans/DMSans-Regular.woff2') format('woff2');
    font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
    font-family: 'DM Sans';
    src: url('../fonts/dm-sans/DMSans-Medium.woff2') format('woff2');
    font-weight: 500; font-style: normal; font-display: swap;
}

:root {
    /* Cores */
    --color-primary:      #0D1F3C;
    --color-primary-80:   #2a3d5e;
    --color-primary-20:   #d6dce8;
    --color-bg:           #F8F6F1;
    --color-bg-alt:       #F2EFE9;
    --color-accent:       #B8963E;
    --color-accent-light: #d4b56a;
    --color-text:         #1A1A2E;
    --color-text-light:   #5A5A72;
    --color-text-muted:   #8A8A9A;
    --color-border:       #E8E4DC;
    --color-border-light: #F0EDE7;
    --color-white:        #FFFFFF;
    --color-error:        #C0392B;

    /* Tipografia */
    --font-heading: 'Playfair Display', Georgia, 'Times New Roman', serif;
    --font-body:    'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    --font-label:   'DM Sans', system-ui, sans-serif;

    /* Escala tipográfica */
    --text-xs:   0.75rem;    /* 12px */
    --text-sm:   0.875rem;   /* 14px */
    --text-base: 1rem;       /* 16px */
    --text-lg:   1.125rem;   /* 18px */
    --text-xl:   1.25rem;    /* 20px */
    --text-2xl:  1.5rem;     /* 24px */
    --text-3xl:  1.875rem;   /* 30px */
    --text-4xl:  2.25rem;    /* 36px */
    --text-5xl:  3rem;       /* 48px */
    --text-6xl:  3.75rem;    /* 60px */

    /* Espaçamento */
    --space-1:  0.25rem;   /* 4px  */
    --space-2:  0.5rem;    /* 8px  */
    --space-3:  0.75rem;   /* 12px */
    --space-4:  1rem;      /* 16px */
    --space-5:  1.25rem;   /* 20px */
    --space-6:  1.5rem;    /* 24px */
    --space-8:  2rem;      /* 32px */
    --space-10: 2.5rem;    /* 40px */
    --space-12: 3rem;      /* 48px */
    --space-16: 4rem;      /* 64px */
    --space-20: 5rem;      /* 80px */
    --space-24: 6rem;      /* 96px */
    --space-32: 8rem;      /* 128px */

    /* Layout */
    --max-width:        1200px;
    --max-width-narrow: 720px;
    --max-width-wide:   1440px;
    --header-height:    80px;

    /* Raio de borda */
    --radius-sm: 2px;
    --radius:    4px;
    --radius-lg: 8px;

    /* Sombras */
    --shadow-sm: 0 1px 3px rgba(13,31,60,.06);
    --shadow:    0 4px 16px rgba(13,31,60,.08);
    --shadow-lg: 0 8px 32px rgba(13,31,60,.12);

    /* Transições */
    --transition: 200ms ease;
    --transition-slow: 350ms ease;
}
