:root {
  /* Brand colors */
  --color-bg:           #ffffff;
  --color-bg-dark:      #08090f;
  --color-navy:         #1a2756;
  --color-gold:         #b8952a;
  --color-gold-light:   #d4b05a;
  --color-gold-dim:     rgba(184,149,42,0.45);
  --color-gold-faint:   rgba(184,149,42,0.12);
  --color-paper:        #e8e6e0;
  --color-text:         var(--color-navy);
  --color-text-muted:   rgba(26,39,86,0.55);
  --color-line:         rgba(26,39,86,0.12);

  /* Typography */
  --font-display:  'Philosopher', Georgia, serif;
  --font-body:     'OpenSans Italic', 'Inter', sans-serif;
  --font-sans:     'Inter', system-ui, sans-serif;

  --fw-thin:       200;
  --fw-light:      300;
  --fw-regular:    400;
  --fw-bold:       700;

  /* Spacing */
  --space-xs:   0.5rem;
  --space-sm:   1rem;
  --space-md:   1.5rem;
  --space-lg:   2rem;
  --space-xl:   3rem;
  --space-2xl:  4rem;

  /* Timing */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-inout:  cubic-bezier(0.87, 0, 0.13, 1);
  --dur-slow:    0.9s;
  --dur-med:     0.5s;
  --dur-fast:    0.3s;

  /* Typography scale (fluido, rangos más grandes) */
  --fs-2xs:   clamp(0.75rem, 0.65rem + 0.3vw, 0.95rem);
  --fs-xs:    clamp(0.85rem, 0.75rem + 0.35vw, 1.05rem);
  --fs-sm:    clamp(0.95rem, 0.85rem + 0.4vw, 1.15rem);
  --fs-base:  clamp(1.05rem, 0.9rem + 0.5vw, 1.3rem);
  --fs-md:    clamp(1.2rem, 1rem + 0.6vw, 1.5rem);
  --fs-lg:    clamp(1.45rem, 1.15rem + 1vw, 2.1rem);
  --fs-xl:    clamp(2rem, 1.5rem + 2vw, 3rem);
  --fs-2xl:   clamp(2.6rem, 1.8rem + 3.2vw, 4.2rem);
}