/**
 * Founders First - CSS Variables & Design Tokens
 * Scalable design system containing color palettes, typography, spacing, shadows, and layout tokens.
 */

:root {
  /* ==========================================================================
     Brand Color Palette
     ========================================================================== */
  /* Primary Brand Accent (Crimson Red / Accent) */
  --color-primary: #E02419;
  --color-primary-hover: #C51F15;
  --color-primary-light: #FFECEB;
  --color-primary-dark: #B31910;

  /* Secondary & Dark Neutral (Navy Dark / Headings & Header Dark elements) */
  --color-dark: #161922;
  --color-dark-light: #222634;
  --color-dark-muted: #3B4052;

  /* State & Feedback Colors */
  --color-success: #10B981;
  --color-warning: #F59E0B;
  --color-error: #EF4444;
  --color-info: #3B82F6;

  /* Neutrals & Grays */
  --color-white: #FFFFFF;
  --color-black: #000000;

  --color-gray-50: #F8F9FA;
  --color-gray-100: #F1F3F5;
  --color-gray-200: #E9ECEF;
  --color-gray-300: #DEE2E6;
  --color-gray-400: #CED4DA;
  --color-gray-500: #ADB5BD;
  --color-gray-600: #6C757D;
  --color-gray-700: #495057;
  --color-gray-800: #343A40;
  --color-gray-900: #212529;

  /* Section Background Colors */
  --bg-body: #FFFFFF;
  --bg-alt: #F8F7F5;
  --bg-accent-light: #FFF5F3;

  /* ==========================================================================
     Typography Tokens
     ========================================================================== */
  --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-heading: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'Fira Code', SFMono-Regular, Consolas, monospace;

  /* Font Scale */
  --font-size-xs: 0.75rem;    /* 12px */
  --font-size-sm: 0.875rem;   /* 14px */
  --font-size-md: 1rem;       /* 16px */
  --font-size-lg: 1.125rem;   /* 18px */
  --font-size-xl: 1.25rem;    /* 20px */
  --font-size-2xl: 1.5rem;    /* 24px */
  --font-size-3xl: 1.875rem;  /* 30px */
  --font-size-4xl: 2.25rem;   /* 36px */
  --font-size-5xl: 3rem;      /* 48px */

  /* Font Weights */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* Line Heights */
  --line-height-tight: 1.2;
  --line-height-heading: 1.3;
  --line-height-body: 1.6;

  /* ==========================================================================
     Layout & Spacing Scale
     ========================================================================== */
  --container-max-width: 1240px;
  --container-padding-desktop: 2rem;
  --container-padding-mobile: 1.25rem;

  --spacing-3xs: 0.125rem; /* 2px */
  --spacing-2xs: 0.25rem;  /* 4px */
  --spacing-xs: 0.5rem;    /* 8px */
  --spacing-sm: 0.75rem;   /* 12px */
  --spacing-md: 1rem;      /* 16px */
  --spacing-lg: 1.5rem;    /* 24px */
  --spacing-xl: 2rem;      /* 32px */
  --spacing-2xl: 3rem;     /* 48px */
  --spacing-3xl: 4rem;     /* 64px */
  --spacing-4xl: 5rem;     /* 80px */

  /* Standardized Section Padding & Spacing Tokens */
  --section-padding-fluid: clamp(2.25rem, 4.5vw, 4rem); /* Fluid responsive vertical section padding */
  --section-header-mb-fluid: clamp(2rem, 3.5vw, 2.75rem); /* Fluid margin-bottom for section headers */

  /* ==========================================================================
     Borders, Shadows & Transitions
     ========================================================================== */
  --radius-sm: 0.25rem;    /* 4px */
  --radius-md: 0.5rem;     /* 8px */
  --radius-lg: 0.75rem;    /* 12px */
  --radius-xl: 1rem;       /* 16px */
  --radius-full: 9999px;

  --border-color: #E9ECEF;
  --border-color-dark: #2D3243;

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.12);
  --shadow-hover: 0 14px 28px rgba(0, 0, 0, 0.15);

  --transition-fast: 0.15s ease;
  --transition-normal: 0.25s ease;
  --transition-slow: 0.4s ease;

  --z-negative: -1;
  --z-normal: 1;
  --z-sticky: 100;
  --z-header: 500;
  --z-dropdown: 600;
  --z-modal: 1000;
}
