:root {
    /* ═══ Agadir Quad Desert — Design Tokens (2026 redesign) ═══
       Palette: desert ink / sand / desert / warm accent / paper.
       Legacy variable names are kept and remapped so shared admin
       styles continue to work unchanged. */

    /* ── Core palette ── */
    --ink: #15120F;
    --ink-soft: #221D18;
    --charcoal: #292621;
    --olive: #394032;
    --sand: #E8D6B8;
    --sand-strong: #C58A4A;
    --desert: #C58A4A;
    --accent: #D97732;
    --accent-deep: #B85E1F;
    --paper: #F8F5EF;
    --white: #FFFFFF;

    /* ── Brand Colors (legacy names → new palette) ── */
    --color-brand: #D97732;
    --color-brand-dark: #B85E1F;
    --color-brand-light: #E8955B;
    --color-accent: #D97732;
    --color-accent-dark: #B85E1F;

    /* ── Semantic Colors ── */
    --color-success: #4A6741;
    --color-success-light: #EDF2E9;
    --color-warning: #C58A4A;
    --color-warning-light: #F7EBDB;
    --color-danger: #A63D2F;
    --color-danger-light: #F9E9E5;
    --color-info: #4A6478;
    --color-info-light: #E9EFF4;

    /* ── Surface Colors ── */
    --color-sand: #F3EBDD;
    --color-sand-dark: #C58A4A;
    --color-sand-strong: #C58A4A;
    --color-surface: #FBF9F5;
    --color-surface-alt: #F3EBDD;
    --color-background: #FFFFFF;
    --color-background-alt: #F8F5EF;
    --color-background-warm: #F8F5EF;
    --color-paper: #F8F5EF;
    --color-ink: #15120F;

    /* ── Text Colors ── */
    --color-text: #2A251F;
    --color-text-secondary: #575046;
    --color-text-muted: #837A6C;
    --color-heading: #15120F;
    --color-heading-light: #3B352D;

    /* ── Border Colors ── */
    --color-border: #E2D9C9;
    --color-border-light: #ECE5D7;
    --color-border-dark: #C9BFA9;

    /* ── Container Widths ── */
    --container-max: 1240px;
    --container-narrow: 860px;
    --container-wide: 1440px;

    /* ── Spacing Scale (unchanged — shared with admin) ── */
    --spacing-2xs: 0.125rem;
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-2xl: 3rem;
    --spacing-3xl: 4rem;
    --spacing-4xl: 6rem;
    --spacing-5xl: 8rem;

    /* ── Typography ── */
    --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-family-display: 'Manrope', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

    --font-size-xs: clamp(0.7rem, 0.65rem + 0.25vw, 0.75rem);
    --font-size-sm: clamp(0.8rem, 0.75rem + 0.25vw, 0.875rem);
    --font-size-base: clamp(0.9rem, 0.85rem + 0.25vw, 1rem);
    --font-size-lg: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
    --font-size-xl: clamp(1.1rem, 1rem + 0.5vw, 1.25rem);
    --font-size-2xl: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
    --font-size-3xl: clamp(1.5rem, 1.2rem + 1.5vw, 1.875rem);
    --font-size-4xl: clamp(1.75rem, 1.3rem + 2.25vw, 2.25rem);
    --font-size-5xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);
    --font-size-6xl: clamp(2.5rem, 1.6rem + 4vw, 4.25rem);
    --font-size-7xl: clamp(2.75rem, 1.8rem + 5vw, 5.5rem);

    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;

    --line-height-tight: 1.08;
    --line-height-snug: 1.25;
    --line-height-normal: 1.6;
    --line-height-relaxed: 1.75;

    --letter-spacing-tight: -0.02em;
    --letter-spacing-label: 0.16em;
    --letter-spacing-normal: 0;
    --letter-spacing-wide: 0.025em;
    --letter-spacing-wider: 0.05em;

    /* ── Border Radius ── */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;
    --radius-2xl: 20px;
    --radius-3xl: 20px;
    --radius-full: 9999px;

    /* ── Shadows (warm) ── */
    --shadow-xs: 0 1px 2px rgba(21, 18, 15, 0.05);
    --shadow-sm: 0 1px 3px rgba(21, 18, 15, 0.06), 0 1px 2px rgba(21, 18, 15, 0.04);
    --shadow-md: 0 4px 10px -2px rgba(21, 18, 15, 0.07), 0 2px 4px -2px rgba(21, 18, 15, 0.05);
    --shadow-lg: 0 12px 28px -6px rgba(21, 18, 15, 0.12), 0 4px 10px -4px rgba(21, 18, 15, 0.05);
    --shadow-xl: 0 24px 48px -12px rgba(21, 18, 15, 0.18), 0 8px 16px -8px rgba(21, 18, 15, 0.08);
    --shadow-card: 0 1px 2px rgba(21, 18, 15, 0.05), 0 4px 14px -4px rgba(21, 18, 15, 0.06);
    --shadow-card-hover: 0 16px 32px -8px rgba(21, 18, 15, 0.16);
    --shadow-brand: 0 6px 18px rgba(217, 119, 50, 0.28);

    /* ── Transitions ── */
    --transition-fast: 160ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 220ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-normal: 320ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 600ms cubic-bezier(0.22, 1, 0.36, 1);
    --ease-out-expo: cubic-bezier(0.22, 1, 0.36, 1);

    /* ── Z-Index Layers ── */
    --z-below: -1;
    --z-base: 0;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-header: 250;
    --z-overlay: 300;
    --z-modal-backdrop: 400;
    --z-modal: 500;
    --z-toast: 600;
    --z-sticky-cta: 280;

    /* ── Layout ── */
    --header-height: 76px;
    --header-height-scrolled: 64px;
    --footer-bg: #15120F;
    --footer-text: rgba(248, 245, 239, 0.72);
    --footer-heading: #F8F5EF;
    --sidebar-width: 260px;
    --admin-sidebar-width: 240px;

    /* ── WhatsApp ── */
    --whatsapp-green: #1FAF5E;
    --whatsapp-green-dark: #178A49;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
