/* ═══════════════════════════════════════════════════════════
   IRENACER — Design Tokens
   All design decisions in one place. Change here → changes everywhere.
   ═══════════════════════════════════════════════════════════ */

:root {
  /* ─── Color: Primary (Evolved Green) ─── */
  --color-primary-50:  #f0faf0;
  --color-primary-100: #dcf0dc;
  --color-primary-200: #b8e0b8;
  --color-primary-300: #7cc67c;
  --color-primary-400: #4aad4a;
  --color-primary-500: #2d8a2d;
  --color-primary-600: #1f6b1f;
  --color-primary-700: #165216;

  /* ─── Color: Neutrals (Warm Sand/Cream) ─── */
  --color-neutral-0:   #ffffff;
  --color-neutral-50:  #faf9f6;
  --color-neutral-100: #f5f3ee;
  --color-neutral-200: #e8e4dc;
  --color-neutral-300: #d4cec3;
  --color-neutral-400: #a39e93;
  --color-neutral-500: #736e64;
  --color-neutral-600: #4a4640;
  --color-neutral-700: #2d2a26;
  --color-neutral-800: #1a1816;

  /* ─── Color: Pillar Accents ─── */
  --color-cuerpo:       #4aad4a;
  --color-cuerpo-light: #e8f5e8;
  --color-cuerpo-dark:  #2d8a2d;

  --color-mente:        #e07b3c;
  --color-mente-light:  #fdf0e6;
  --color-mente-dark:   #b85e25;

  --color-ambiente:     #0699dc;
  --color-ambiente-light:#e6f5fc;
  --color-ambiente-dark: #057aaf;

  /* ─── Color: Accent (Gold) ─── */
  --color-accent:       #c9a96e;
  --color-accent-light: #e8d5a8;
  --color-accent-dark:  #a68b4b;

  /* ─── Color: Semantic ─── */
  --color-success: #2d8a2d;
  --color-warning: #e07b3c;
  --color-error:   #d94040;
  --color-info:    #0699dc;

  /* ─── Color: Surfaces ─── */
  --surface-page:     var(--color-neutral-50);
  --surface-card:     var(--color-neutral-0);
  --surface-elevated: var(--color-neutral-0);
  --surface-muted:    var(--color-neutral-100);
  --surface-dark:     var(--color-neutral-800);

  /* ─── Color: Text ─── */
  --text-primary:   var(--color-neutral-700);
  --text-secondary: var(--color-neutral-500);
  --text-muted:     var(--color-neutral-400);
  --text-inverse:   var(--color-neutral-0);
  --text-heading:   var(--color-neutral-800);
  --text-link:      var(--color-primary-500);
  --text-link-hover:var(--color-primary-600);

  /* ─── Typography: Font Families ─── */
  --font-display: 'Outfit', system-ui, -apple-system, sans-serif;
  --font-body:    'Inter', system-ui, -apple-system, sans-serif;

  /* ─── Typography: Fluid Scale ─── */
  --text-xs:    clamp(0.75rem,  0.7rem  + 0.25vw, 0.8125rem);
  --text-sm:    clamp(0.8125rem, 0.775rem + 0.2vw, 0.875rem);
  --text-base:  clamp(0.9375rem, 0.9rem  + 0.2vw, 1.0625rem);
  --text-lg:    clamp(1.0625rem, 1rem    + 0.3vw, 1.1875rem);
  --text-xl:    clamp(1.25rem,  1.1rem   + 0.75vw, 1.5rem);
  --text-2xl:   clamp(1.5rem,   1.25rem  + 1.25vw, 2rem);
  --text-3xl:   clamp(1.875rem, 1.5rem   + 1.875vw, 2.5rem);
  --text-4xl:   clamp(2.25rem,  1.75rem  + 2.5vw, 3.25rem);
  --text-5xl:   clamp(2.75rem,  2rem     + 3.75vw, 4.25rem);

  /* ─── Typography: Line Heights ─── */
  --leading-none:    1;
  --leading-tight:   1.15;
  --leading-snug:    1.3;
  --leading-normal:  1.6;
  --leading-relaxed: 1.75;
  --leading-loose:   2;

  /* ─── Typography: Font Weights ─── */
  --weight-light:    300;
  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;
  --weight-extrabold:800;

  /* ─── Typography: Letter Spacing ─── */
  --tracking-tighter: -0.025em;
  --tracking-tight:   -0.015em;
  --tracking-normal:  0em;
  --tracking-wide:    0.025em;
  --tracking-wider:   0.05em;
  --tracking-widest:  0.1em;

  /* ─── Spacing Scale ─── */
  --space-0:  0;
  --space-1:  0.25rem;   /* 4px */
  --space-2:  0.5rem;    /* 8px */
  --space-3:  0.75rem;   /* 12px */
  --space-4:  1rem;      /* 16px */
  --space-5:  1.25rem;   /* 20px */
  --space-6:  1.5rem;    /* 24px */
  --space-8:  2rem;      /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */
  --space-32: 8rem;      /* 128px */

  /* ─── Section Spacing (responsive) ─── */
  --section-py: clamp(3rem, 2.5rem + 2.5vw, 6rem);
  --section-px: clamp(1rem, 0.5rem + 2.5vw, 2rem);

  /* ─── Grid ─── */
  --grid-max-width: 1280px;
  --grid-gutter:    1.5rem;
  --grid-columns:   12;

  /* ─── Borders ─── */
  --border-width:  1px;
  --border-color:  var(--color-neutral-200);

  /* ─── Border Radius ─── */
  --radius-xs:   4px;
  --radius-sm:   6px;
  --radius-md:   12px;
  --radius-lg:   20px;
  --radius-xl:   28px;
  --radius-2xl:  36px;
  --radius-full: 9999px;

  /* ─── Shadows ─── */
  --shadow-xs:  0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-sm:  0 2px 4px rgba(0, 0, 0, 0.06);
  --shadow-md:  0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg:  0 8px 24px rgba(0, 0, 0, 0.1);
  --shadow-xl:  0 16px 48px rgba(0, 0, 0, 0.12);
  --shadow-2xl: 0 24px 64px rgba(0, 0, 0, 0.16);
  --shadow-inner: inset 0 2px 4px rgba(0, 0, 0, 0.06);

  /* Colored shadows for pillar cards */
  --shadow-cuerpo:  0 8px 32px rgba(74, 173, 74, 0.18);
  --shadow-mente:   0 8px 32px rgba(224, 123, 60, 0.18);
  --shadow-ambiente: 0 8px 32px rgba(6, 153, 220, 0.18);

  /* ─── Glassmorphism ─── */
  --glass-bg:      rgba(255, 255, 255, 0.12);
  --glass-bg-dark: rgba(0, 0, 0, 0.2);
  --glass-border:  rgba(255, 255, 255, 0.18);
  --glass-blur:    16px;
  --glass-shadow:  0 8px 32px rgba(0, 0, 0, 0.08);

  /* ─── 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);
  --ease-bounce:   cubic-bezier(0.68, -0.55, 0.265, 1.55);

  --duration-instant: 100ms;
  --duration-fast:    150ms;
  --duration-normal:  300ms;
  --duration-slow:    500ms;
  --duration-slower:  700ms;

  /* ─── Z-Index Scale ─── */
  --z-base:     1;
  --z-dropdown: 100;
  --z-sticky:   200;
  --z-overlay:  300;
  --z-modal:    400;
  --z-popover:  500;
  --z-toast:    600;
  --z-top:      9999;

  /* ─── Breakpoints (reference only — used in media queries) ─── */
  /* --bp-sm:  480px;  */
  /* --bp-md:  768px;  */
  /* --bp-lg:  1024px; */
  /* --bp-xl:  1280px; */
  /* --bp-2xl: 1536px; */
}
