/* ===================== BOSQUE PREMIUM · Design System Tokens ===================== */
/* Dolce Fontana v4 — paleta oficial cliente + Cinzel / Playfair Display */

:root {
  /* --- Primitives (guía Color y Tipografía) --- */
  --bp-olive:        #556B2F;
  --bp-olive-hover:  #667A3A;
  --bp-olive-deep:   #445626;
  --bp-gold:         #C8A24D;
  --bp-gold-soft:    #E8D9B0;
  --bp-cream:        #F8F5EE;
  --bp-cream-deep:   #F0EBE0;
  --bp-ink:          #1A1A1A;
  --bp-ink-soft:     #2E2E2E;
  --bp-muted:        #5C6358;
  --bp-sage:         #8FA06A;
  --bp-sage-soft:    #E8EDE0;
  --bp-sand:         #D4C4A0;
  --bp-line:         #D4C9B0;
  --bp-line-soft:    #E5DDCF;
  --bp-wood:         #C8A24D;
  --bp-wood-soft:    #EDE4DA;
  --bp-on-primary:   #F8F5EE;
  --bp-on-dark:      #F8F5EE;

  /* aliases legacy usados en theme.css */
  --bp-forest:       var(--bp-olive);
  --bp-forest-hover: var(--bp-olive-hover);

  /* --- Semantic colors --- */
  --color-bg:           var(--bp-cream);
  --color-bg-alt:       var(--bp-cream-deep);
  --color-surface:      var(--bp-cream-deep);
  --color-primary:      var(--bp-olive);
  --color-primary-hover:var(--bp-olive-hover);
  --color-accent:       var(--bp-gold);
  --color-accent-soft:  var(--bp-gold-soft);
  --color-warm:         var(--bp-gold);
  --color-warm-soft:    var(--bp-wood-soft);
  --color-text:         var(--bp-ink);
  --color-text-soft:    var(--bp-ink-soft);
  --color-muted:        var(--bp-muted);
  --color-border:       var(--bp-line);
  --color-border-soft:  var(--bp-line-soft);

  /* --- Typography (guía: ELEGANTE · CLÁSICA · ITALIANA) --- */
  --font-serif:   "Playfair Display", Georgia, "Times New Roman", serif;
  --font-display: "Cinzel", "Playfair Display", Georgia, serif;
  --font-sans:    "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;

  --text-xs:   11px;
  --text-sm:   13px;
  --text-base: 15px;
  --text-lg:   18px;
  --text-xl:   22px;
  --text-2xl:  clamp(32px, 4.5vw, 52px);
  --text-hero: clamp(40px, 5.5vw, 68px);

  --leading-tight:  1.15;
  --leading-normal: 1.65;
  --leading-relaxed:1.75;

  --tracking-wide:  .12em;
  --tracking-wider: .14em;
  --tracking-tight: .01em;

  /* --- Spacing --- */
  --space-xs:  8px;
  --space-sm:  16px;
  --space-md:  24px;
  --space-lg:  48px;
  --space-xl:  80px;
  --space-2xl: 96px;
  --space-section: var(--space-2xl);

  /* --- Radius --- */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-xl: 12px;

  /* --- Shadows --- */
  --shadow-soft: 0 4px 24px rgba(26, 26, 26, 0.08);
  --shadow-card: 0 8px 32px rgba(26, 26, 26, 0.06);
  --shadow-lg:   0 16px 48px rgba(26, 26, 26, 0.10);
  --shadow-header: 0 1px 0 var(--bp-line-soft), 0 6px 24px rgba(85, 107, 47, 0.06);

  /* --- Motion --- */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --duration: 0.35s;

  /* --- Layout --- */
  --maxw: 1280px;

  /* --- Legacy aliases (styles.css compatibility) --- */
  --forest:      var(--bp-olive);
  --forest-mid:  var(--bp-olive);
  --forest-hover:var(--bp-olive-hover);
  --leaf:        var(--bp-sage);
  --leaf-soft:   var(--bp-sage-soft);
  --sage:        var(--bp-sage);
  --sand:        var(--bp-cream);
  --surface:     var(--bp-cream-deep);
  --line:        var(--bp-line);
  --ink:         var(--bp-ink);
  --ink-soft:    var(--bp-ink-soft);
  --muted:       var(--bp-muted);
  --text:        var(--bp-ink);
  --accent:      var(--bp-gold);
  --accent-hover:var(--bp-olive);
  --accent-soft: var(--bp-gold-soft);
  --earth:       var(--bp-gold);
  --wood:        var(--bp-gold);
  --wood-soft:   var(--bp-wood-soft);
  --sun:         var(--bp-gold);
  --sun-soft:    var(--bp-gold-soft);
  --green:       var(--bp-olive);
  --green-2:     var(--bp-olive-hover);
  --green-ink:   var(--bp-ink);
  --gold:        var(--bp-gold);
  --gold-soft:   var(--bp-gold-soft);
  --ivory:       var(--bp-cream);
  --beige:       var(--bp-sand);
  --offwhite:    var(--bp-cream-deep);
  --serif:       var(--font-serif);
  --sans:        var(--font-sans);
  --radius:      var(--radius-lg);
  --shadow:      var(--shadow-card);
}
