/**
 * NetBoost Rocket - CSS Custom Properties
 * Design System Variables
 */

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

  /* Primary Colors */
  --color-primary-orange: #FF6B35;
  --color-primary-blue: #00A8E8;
  --color-accent-black: #1A1A1A;
  --color-gold: #F4A259;

  /* Neutral Colors */
  --color-light-gray: #F5F5F5;
  --color-white: #FFFFFF;
  --color-text-dark: #2C3E50;
  --color-text-light: #6C757D;

  /* Gradient Definitions */
  --gradient-primary: linear-gradient(135deg, #FF6B35 0%, #00A8E8 100%);
  --gradient-hero: linear-gradient(180deg, #1A1A1A 0%, #00364d 100%);
  --gradient-cta: linear-gradient(90deg, #FF6B35 0%, #00A8E8 100%);
  --gradient-blue-fade: linear-gradient(180deg, #FFFFFF 0%, #E3F2FD 100%);
  --gradient-blue-solid: linear-gradient(135deg, #00A8E8 0%, #0066CC 100%);

  /* Semantic Colors */
  --color-success: #28A745;
  --color-error: #DC3545;
  --color-warning: #FFC107;
  --color-info: #17A2B8;

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

  /* Font Families */
  --font-heading: 'Montserrat', sans-serif;
  --font-body: 'Inter', sans-serif;

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

  /* Font Sizes - Desktop */
  --font-size-h1: 3.5rem;      /* 56px */
  --font-size-h2: 2.5rem;      /* 40px */
  --font-size-h3: 2rem;        /* 32px */
  --font-size-h4: 1.5rem;      /* 24px */
  --font-size-h5: 1.25rem;     /* 20px */
  --font-size-h6: 1.125rem;    /* 18px */
  --font-size-body: 1.125rem;  /* 18px */
  --font-size-small: 0.875rem; /* 14px */

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

  /* ==========================================
     SPACING SYSTEM (8px base unit)
     ========================================== */

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

  /* Section Spacing */
  --section-padding-vertical: 5rem;     /* 80px */
  --section-padding-vertical-sm: 3rem;  /* 48px */

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

  /* Container */
  --container-max-width: 1200px;
  --container-max-width-narrow: 900px;
  --container-padding: var(--spacing-md);

  /* Grid Gaps */
  --grid-gap: var(--spacing-lg);
  --grid-gap-sm: var(--spacing-md);

  /* ==========================================
     BORDER RADIUS
     ========================================== */

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-round: 50%;

  /* ==========================================
     SHADOWS
     ========================================== */

  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 12px 32px rgba(0, 0, 0, 0.2);

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

  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;

  /* ==========================================
     Z-INDEX LAYERS
     ========================================== */

  --z-index-dropdown: 100;
  --z-index-sticky: 200;
  --z-index-modal-overlay: 300;
  --z-index-modal: 400;
  --z-index-popup: 500;

  /* ==========================================
     BREAKPOINTS (for reference in JS)
     ========================================== */

  --breakpoint-mobile: 320px;
  --breakpoint-tablet: 768px;
  --breakpoint-desktop: 1024px;
  --breakpoint-large: 1440px;
}

/* ==========================================
   RESPONSIVE FONT SIZES (Mobile)
   ========================================== */

@media (max-width: 767px) {
  :root {
    --font-size-h1: 2.5rem;      /* 40px */
    --font-size-h2: 2rem;        /* 32px */
    --font-size-h3: 1.5rem;      /* 24px */
    --font-size-h4: 1.25rem;     /* 20px */
    --font-size-h5: 1.125rem;    /* 18px */
    --font-size-h6: 1rem;        /* 16px */
    --font-size-body: 1rem;      /* 16px */

    --section-padding-vertical: 3rem;    /* 48px */
    --section-padding-vertical-sm: 2rem; /* 32px */

    --container-padding: var(--spacing-sm);
  }
}

/* ==========================================
   TABLET ADJUSTMENTS
   ========================================== */

@media (min-width: 768px) and (max-width: 1023px) {
  :root {
    --font-size-h1: 3rem;        /* 48px */
    --font-size-h2: 2.25rem;     /* 36px */
    --font-size-h3: 1.75rem;     /* 28px */
  }
}

/* ==========================================
   DARK MODE SUPPORT (Optional)
   ========================================== */

@media (prefers-color-scheme: dark) {
  /* Add dark mode variables if needed in the future */
}
