/*
 * CSS Custom Properties (Variables)
 * Design tokens for MasonDataCenterFacts.org
 */

:root {
  /* ===========================================
     COLOR PALETTE
     =========================================== */

  /* Primary - Earth/Nature tones */
  --color-forest: #2d5a27;
  --color-forest-dark: #1e3d1a;
  --color-field: #7a9a4a;
  --color-field-light: #9ab86a;
  --color-sky: #87ceeb;
  --color-sky-light: #b0e0f0;
  --color-earth: #8b7355;
  --color-earth-light: #a89070;

  /* Neutral */
  --color-white: #ffffff;
  --color-light: #f5f5f0;
  --color-light-gray: #e8e8e3;
  --color-gray: #666666;
  --color-dark-gray: #333333;
  --color-dark: #1a1a1a;

  /* Alert/Action */
  --color-alert: #c41e3a;
  --color-alert-dark: #9a1830;
  --color-warning: #ff8c00;
  --color-warning-light: #ffaa33;
  --color-action: #1e90ff;
  --color-action-dark: #1570cc;

  /* ===========================================
     TYPOGRAPHY
     =========================================== */

  /* Font Families */
  --font-primary: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --font-heading: 'Georgia', 'Times New Roman', serif;
  --font-mono: 'Consolas', 'Monaco', 'Courier New', monospace;

  /* Font Sizes - Fluid Typography */
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);
  --text-base: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.625vw, 1.25rem);
  --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, 3rem);
  --text-5xl: clamp(3rem, 2rem + 5vw, 4.5rem);

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

  /* Line Heights */
  --leading-tight: 1.1;
  --leading-snug: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.625;
  --leading-loose: 2;

  /* ===========================================
     SPACING
     =========================================== */

  --space-xs: 0.25rem;    /* 4px */
  --space-sm: 0.5rem;     /* 8px */
  --space-md: 1rem;       /* 16px */
  --space-lg: 1.5rem;     /* 24px */
  --space-xl: 2rem;       /* 32px */
  --space-2xl: 3rem;      /* 48px */
  --space-3xl: 4rem;      /* 64px */
  --space-4xl: 6rem;      /* 96px */
  --space-5xl: 8rem;      /* 128px */

  /* Section Padding */
  --section-padding-y: clamp(3rem, 5vw, 6rem);
  --section-padding-x: clamp(1rem, 5vw, 2rem);

  /* ===========================================
     LAYOUT
     =========================================== */

  --container-max: 1200px;
  --container-narrow: 800px;
  --container-wide: 1400px;

  /* Header */
  --header-height: 70px;
  --header-height-mobile: 60px;
  --paid-banner-height: 28px;

  /* ===========================================
     BORDERS & SHADOWS
     =========================================== */

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-full: 9999px;

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.2);

  /* ===========================================
     TRANSITIONS
     =========================================== */

  --transition-fast: 150ms ease;
  --transition-normal: 250ms ease;
  --transition-slow: 350ms ease;

  /* ===========================================
     Z-INDEX SCALE
     =========================================== */

  --z-below: -1;
  --z-normal: 1;
  --z-above: 10;
  --z-header: 100;
  --z-overlay: 200;
  --z-modal: 300;
  --z-toast: 400;
}
