/* ==========================================================================
   LE FLEUR — Design Tokens
   Paleta extraída de la identidad de marca (círculos de color del logo)
   ========================================================================== */

:root {
  /* --- Paleta de marca --- */
  --color-sage: #8DA087;       /* verde salvia — naturaleza, follaje */
  --color-rose: #D99BAA;       /* rosa empolvado — acento principal */
  --color-blush: #F2D6C9;      /* durazno pálido — fondos suaves */
  --color-gold: #C8A46E;       /* dorado — detalles y CTA */

  /* --- Neutros --- */
  --color-cream: #FAF5EE;      /* fondo principal */
  --color-cream-soft: #F4EEE4; /* fondo alterno de secciones */
  --color-ink: #2B3227;        /* texto principal (verde casi negro) */
  --color-ink-soft: #5B6156;   /* texto secundario */
  --color-white: #FFFFFF;
  --color-line: rgba(43, 50, 39, 0.12);

  /* --- Variantes de acento --- */
  --color-rose-deep: #C17E90;
  --color-sage-deep: #71835F ;
  --color-gold-deep: #A9834C;

  /* --- Tipografía --- */
  --font-display: "Cormorant Garamond", "Georgia", serif;
  --font-body: "Jost", "Helvetica Neue", Arial, sans-serif;

  --fs-display-xl: clamp(2.8rem, 5.5vw, 5.2rem);
  --fs-display-lg: clamp(2.2rem, 4vw, 3.4rem);
  --fs-display-md: clamp(1.6rem, 2.6vw, 2.2rem);
  --fs-body-lg: 1.15rem;
  --fs-body: 1rem;
  --fs-small: 0.85rem;
  --fs-eyebrow: 0.78rem;

  --lh-tight: 1.1;
  --lh-normal: 1.6;

  /* --- Espaciados --- */
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.75rem;
  --space-lg: 3rem;
  --space-xl: 5rem;
  --space-2xl: 8rem;

  /* --- Layout --- */
  --container-w: 1180px;
  --radius-sm: 6px;
  --radius-md: 16px;
  --radius-full: 999px;

  /* --- Movimiento --- */
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
  --dur: 0.35s;

  /* --- Sombras --- */
  --shadow-soft: 0 12px 32px rgba(43, 50, 39, 0.08);
  --shadow-hover: 0 18px 40px rgba(43, 50, 39, 0.14);
}

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