/* ============================================
   CSS Custom Properties (Design Tokens)
   Elite Luxury Caribbean Travel Agency Palette
   ============================================ */

:root {
    /* ---- Brand Colors ---- */
    --color-primary: #F37021;
    --color-primary-dark: #d85a0e;
    --color-primary-light: #ff8533;
    --color-primary-gradient: linear-gradient(135deg, #f97316 0%, #ea580c 50%, #c2410c 100%);
    --color-dark: #111216;
    --color-darker: #08080a;
    --color-black: #000000;
    --color-white: #ffffff;
    --color-gray-light: #f8f9fb;
    --color-gray-soft: #f1f3f5;
    --color-gray: #4b5563;
    --color-gray-medium: #6b7280;
    --color-gray-border: #e5e7eb;
    --color-card-dark: #14151a;
    --color-purple: #4a154b;

    /* ---- Luxury Typography System ---- */
    --font-primary: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-heading: 'Playfair Display', Georgia, 'Times New Roman', serif;
    --font-script: 'Playfair Display', Georgia, serif;
    
    --font-size-xs: 0.75rem;      /* 12px */
    --font-size-sm: 0.875rem;     /* 14px */
    --font-size-base: 1rem;       /* 16px */
    --font-size-md: 1.125rem;     /* 18px */
    --font-size-lg: 1.25rem;      /* 20px */
    --font-size-xl: 1.5rem;       /* 24px */
    --font-size-2xl: 2.15rem;     /* 34px */
    --font-size-3xl: 2.65rem;     /* 42px */
    --font-size-4xl: 3.25rem;     /* 52px */
    --font-size-hero: 3.75rem;    /* 60px */

    /* ---- Font Weights ---- */
    --fw-light: 300;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;
    --fw-extrabold: 800;
    --fw-black: 900;

    /* ---- Spacing ---- */
    --space-xs: 0.25rem;    /* 4px */
    --space-sm: 0.5rem;     /* 8px */
    --space-md: 1rem;       /* 16px */
    --space-lg: 1.5rem;     /* 24px */
    --space-xl: 2rem;       /* 32px */
    --space-2xl: 3rem;      /* 48px */
    --space-3xl: 4rem;      /* 64px */
    --space-4xl: 5.5rem;    /* 88px */
    --space-section: 5rem;  /* Section vertical padding */

    /* ---- Layout ---- */
    --container-max: 1360px;
    --container-padding: 2rem;

    /* ---- Border Radius ---- */
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 18px;
    --radius-xl: 30px;
    --radius-full: 50%;

    /* ---- Crisp Shadows ---- */
    --shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.04);
    --shadow-md: 0 6px 18px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.12);
    --shadow-card: 0 4px 20px rgba(0, 0, 0, 0.06);
    --shadow-glow: 0 8px 25px rgba(243, 112, 33, 0.35);

    /* ---- Transitions ---- */
    --transition-fast: 0.2s cubic-bezier(0.2, 0.8, 0.2, 1);
    --transition-base: 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
    --transition-slow: 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);

    /* ---- Z-Index ---- */
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-overlay: 300;
    --z-modal: 400;
}
