/* ==========================================================================
   Design Tokens — Feven & Felix
   Editorial Luxury · Olive & Burgundy
   ========================================================================== */

:root {
  /* ---- Burgundy (emotion, identity) ---- */
  --burgundy:       #6B1D35;
  --burgundy-deep:  #451222;
  --burgundy-soft:  #8C3A54;
  --burgundy-faint: rgba(107, 29, 53, 0.06);

  /* ---- Olive (nature, grounding) ---- */
  --olive:          #5A6B38;
  --olive-light:    #7B8E56;
  --olive-dark:     #404F26;
  --olive-faint:    rgba(90, 107, 56, 0.07);

  /* ---- Neutrals ---- */
  --cream:          #FDFBF7;
  --warm-white:     #F7F4EE;
  --linen:          #EFEBE3;
  --stone:          #D4CFC5;
  --warm-gray:      #9E978C;
  --text:           #2E2A25;
  --text-secondary: #6B655D;
  --white:          #FFFFFF;
  --black:          #1A1815;

  /* ---- Metallic whisper ---- */
  --gold:           #B5A48A;

  /* ---- Semantic ---- */
  --error:          #A63030;
  --success:        #4A7C3F;

  /* ---- Backward-compat aliases ---- */
  --color-primary:        var(--burgundy);
  --color-primary-dark:   var(--burgundy-deep);
  --color-ivory:          var(--cream);
  --color-parchment:      var(--warm-white);
  --color-parchment-dark: var(--linen);
  --color-text:           var(--text);
  --color-text-light:     var(--text-secondary);
  --color-white:          var(--white);
  --color-black:          var(--black);
  --color-error:          var(--error);
  --color-success:        var(--success);
  --color-secondary:      #F2D5DC;
  --color-walnut:         var(--black);
  --color-champagne:      var(--linen);
  --color-sage:           var(--olive);
  --color-sage-light:     var(--olive-light);
  --color-sage-dark:      var(--olive-dark);
  --color-sage-muted:     var(--stone);
  --color-gold:           var(--gold);
  --color-burgundy:       var(--burgundy);
  --color-olive:          var(--olive);
  --color-olive-light:    var(--olive-light);
  --color-olive-dark:     var(--olive-dark);
  --color-olive-pale:     var(--stone);
  --color-olive-wash:     var(--warm-white);
  --color-burgundy-deep:  var(--burgundy-deep);
  --color-burgundy-blush: #F2D5DC;
  --color-cream:          var(--cream);
  --color-linen:          var(--linen);
  --color-linen-dark:     var(--stone);
  --color-warm-gray:      var(--warm-gray);

  /* ---- Fonts ---- */
  --font-heading: 'Cormorant Garamond', Georgia, serif;
  --font-body:    'EB Garamond', Georgia, serif;
  --font-script:  'Great Vibes', cursive;
  --font-display: 'Playfair Display', Georgia, serif;
  --font-sans:    -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;

  /* ---- Type Scale ---- */
  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1.0625rem;
  --text-lg:   1.1875rem;
  --text-xl:   1.375rem;
  --text-2xl:  1.625rem;
  --text-3xl:  2rem;
  --text-4xl:  2.5rem;
  --text-5xl:  3.25rem;
  --text-6xl:  4.25rem;
  --text-7xl:  5.5rem;

  /* ---- Tracking ---- */
  --tracking-tight:   -0.01em;
  --tracking-normal:  0.02em;
  --tracking-wide:    0.06em;
  --tracking-wider:   0.12em;
  --tracking-widest:  0.22em;
  --tracking-ultra:   0.32em;

  /* ---- Leading ---- */
  --leading-tight:  1.2;
  --leading-normal: 1.75;
  --leading-loose:  2.0;

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

  /* ---- Layout ---- */
  --max-width:        1100px;
  --max-width-narrow: 720px;
  --nav-height:       72px;

  /* ---- Motion ---- */
  --ease-out:  cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --transition-fast:    0.2s ease;
  --transition-normal:  0.35s var(--ease-out);
  --transition-slow:    0.6s var(--ease-out);
  --transition-elegant: 0.5s var(--ease-out);

  /* ---- Shadows ---- */
  --shadow-sm:  0 1px 2px rgba(0,0,0,0.04);
  --shadow-md:  0 2px 8px rgba(0,0,0,0.06);
  --shadow-lg:  0 4px 20px rgba(0,0,0,0.08);

  /* ---- Ornamental ---- */
  --ornament-line:   1px solid var(--stone);
  --ornament-double: 3px double var(--stone);
}
