/* ============================================
   DISCOVER CONNECTION TRAVEL — Design Tokens
   Moroccan Luxury Editorial Aesthetic
   ============================================ */

:root {
  /* ── Primary Reds (Moroccan Palette) ── */
  --red-900: #4A0A0A;
  --red-800: #6B1111;
  --red-700: #8B1A1A;
  --red-600: #A82020;
  --red-500: #C62828;
  --red-400: #D44E4E;
  --red-300: #E57373;
  --red-200: #EF9A9A;
  --red-100: #FFCDD2;
  --red-50:  #FFF0F0;

  /* ── Earthy Neutrals (Marrakech Tones) ── */
  --sand-900: #2C2418;
  --sand-800: #3E3225;
  --sand-700: #5C4A35;
  --sand-600: #7A6248;
  --sand-500: #9B7E5C;
  --sand-400: #B89B72;
  --sand-300: #D4BA92;
  --sand-200: #E8D5B5;
  --sand-100: #F5EDE0;
  --sand-50:  #FBF7F1;

  /* ── Deep Accents ── */
  --midnight: #0F0A07;
  --charcoal: #1A1512;
  --espresso: #2D241C;
  --terracotta: #C4632D;
  --saffron: #D4A223;
  --teal-deep: #1A5C5A;
  --ivory: #FFFEF8;
  --cream: #FDF8F0;

  /* ── Semantic Colors ── */
  --color-primary: var(--red-600);
  --color-primary-dark: var(--red-800);
  --color-primary-light: var(--red-300);
  --color-accent: var(--saffron);
  --color-accent-warm: var(--terracotta);
  --color-bg: var(--cream);
  --color-bg-deep: var(--midnight);
  --color-text: var(--charcoal);
  --color-text-light: var(--sand-600);
  --color-text-inverse: var(--sand-100);

  /* ── Typography ── */
  --font-display: 'Playfair Display', 'Georgia', serif;
  --font-heading: 'Cormorant Garamond', 'Georgia', serif;
  --font-body: 'Outfit', 'Helvetica Neue', sans-serif;
  --font-accent: 'Cormorant', serif;

  --fs-hero: clamp(3.5rem, 8vw, 8rem);
  --fs-h1: clamp(2.5rem, 5vw, 4.5rem);
  --fs-h2: clamp(2rem, 4vw, 3.5rem);
  --fs-h3: clamp(1.5rem, 3vw, 2rem);
  --fs-h4: clamp(1.1rem, 2vw, 1.4rem);
  --fs-body: clamp(0.95rem, 1.2vw, 1.1rem);
  --fs-body-lg: clamp(1.05rem, 1.5vw, 1.25rem);
  --fs-small: clamp(0.8rem, 1vw, 0.9rem);
  --fs-xs: 0.75rem;

  --lh-tight: 1.05;
  --lh-snug: 1.2;
  --lh-normal: 1.6;
  --lh-relaxed: 1.8;

  --ls-tight: -0.03em;
  --ls-normal: 0;
  --ls-wide: 0.08em;
  --ls-ultra: 0.2em;

  /* ── Spacing ── */
  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;
  --space-5xl: 8rem;
  --space-6xl: 12rem;

  /* ── Layout ── */
  --max-width: 1400px;
  --max-width-narrow: 900px;
  --max-width-wide: 1600px;
  --gutter: clamp(1.5rem, 4vw, 3rem);
  --nav-height: 5rem;

  /* ── Borders & Radius ── */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  --border-thin: 1px solid var(--sand-200);
  --border-accent: 2px solid var(--color-primary);

  /* ── Shadows ── */
  --shadow-sm: 0 2px 8px rgba(15, 10, 7, 0.06);
  --shadow-md: 0 4px 20px rgba(15, 10, 7, 0.1);
  --shadow-lg: 0 8px 40px rgba(15, 10, 7, 0.14);
  --shadow-xl: 0 16px 64px rgba(15, 10, 7, 0.2);
  --shadow-red: 0 8px 30px rgba(168, 32, 32, 0.25);

  /* ── Transitions ── */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 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: 200ms;
  --duration-normal: 400ms;
  --duration-slow: 700ms;
  --duration-glacial: 1200ms;

  /* ── Z-index ── */
  --z-base: 1;
  --z-overlay: 100;
  --z-nav: 500;
  --z-modal: 1000;
}
