:root {
  --color-primary: #0f172a;       /* Slate 900 */
  --color-brand: #0284c7;         /* Sky 600 - modern logistics blue */
  --color-brand-hover: #0369a1;   /* Sky 700 */
  --color-brand-dark: #075985;    /* Sky 800 */
  --color-brand-light: #e0f2fe;   /* Sky 100 */
  --color-accent: #f59e0b;        /* Amber 500 - excellence gold */
  --color-surface: #ffffff;
  --color-surface-soft: #f8fafc;  /* Slate 50 */
  --color-border: #e2e8f0;        /* Slate 200 */
  --color-text-main: #0f172a;
  --color-text-muted: #64748b;    /* Slate 500 */
  --base-font-size: 16px;
}

[data-theme="dark"] {
  --color-primary: #020617;
  --color-brand: #38bdf8;
  --color-brand-hover: #7dd3fc;
  --color-brand-dark: #0369a1;
  --color-brand-light: #082f49;
  --color-accent: #fbbf24;
  --color-surface: #0f172a;
  --color-surface-soft: #1e293b;
  --color-border: #334155;
  --color-text-main: #f8fafc;
  --color-text-muted: #94a3b8;
}

/* Accessibility: High Contrast Mode */
[data-contrast="high"] {
  --color-primary: #000000 !important;
  --color-brand: #ffff00 !important;
  --color-surface: #000000 !important;
  --color-surface-soft: #111111 !important;
  --color-border: #ffffff !important;
  --color-text-main: #ffffff !important;
  --color-text-muted: #ffff00 !important;
}

html {
  font-size: var(--base-font-size);
  scroll-behavior: smooth;
}

body {
  background-color: var(--color-surface-soft);
  color: var(--color-text-main);
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
  transition: background-color 0.25s ease, color 0.25s ease;
}

/* Typography Enhancements */
.font-display {
  font-family: 'Outfit', sans-serif;
}

/* Custom UI Cards & Elevation */
.glass-panel {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--color-border);
}

[data-theme="dark"] .glass-panel {
  background: rgba(15, 23, 42, 0.85);
  border-color: rgba(51, 65, 85, 0.8);
}

.card-hover {
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.card-hover:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
}

/* Gradient text */
.text-gradient {
  background: linear-gradient(135deg, #0284c7 0%, #2563eb 50%, #4f46e5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

[data-theme="dark"] .text-gradient {
  background: linear-gradient(135deg, #38bdf8 0%, #60a5fa 50%, #818cf8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Hero Badge */
.badge-gold {
  background: rgba(245, 158, 11, 0.12);
  color: #d97706;
  border: 1px solid rgba(245, 158, 11, 0.25);
}

[data-theme="dark"] .badge-gold {
  background: rgba(245, 158, 11, 0.2);
  color: #fbbf24;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: var(--color-surface-soft);
}
::-webkit-scrollbar-thumb {
  background: var(--color-border);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--color-text-muted);
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
  animation: fadeIn 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

