:root {
  --primary: #0d6efd;
  --primary-dark: #0a58ca;
  --gradient-primary: linear-gradient(135deg, #0d6efd 0%, #6610f2 100%);
  --bg-light: #f5f7fb;
  --text-dark: #1a1a2e;
  --text-muted: #6c757d;
}

[data-theme="dark"] {
  --bg-light: #0f0f1e;
  --text-dark: #e8e8f0;
}

body { font-family: 'Inter', -apple-system, sans-serif; background: var(--bg-light); color: var(--text-dark); }

.bg-gradient-primary { background: var(--gradient-primary) !important; }
.bg-primary-soft { background: rgba(13,110,253,0.1); }

.hero-section { padding: 80px 0; background: linear-gradient(135deg, #f5f7fb 0%, #e8f0fe 100%); }
.hero-card { perspective: 1000px; }
.premium-card { transition: transform 0.3s; }
.premium-card:hover { transform: translateY(-5px) rotateY(-5deg); }

.feature-card, .service-card { transition: all 0.3s; }
.feature-card:hover, .service-card > div:hover { transform: translateY(-8px); box-shadow: 0 15px 40px rgba(0,0,0,0.1) !important; }

.counter { font-size: 2rem; }

.avatar-sm { width: 40px; height: 40px; font-weight: bold; }

.btn-primary { background: var(--gradient-primary); border: none; }
.btn-primary:hover { opacity: 0.9; }

.navbar-brand { font-size: 1.4rem; letter-spacing: 1px; }

@keyframes fadeInUp { from {opacity:0; transform:translateY(20px);} to {opacity:1; transform:translateY(0);} }
.fade-in-up { animation: fadeInUp 0.6s ease-out; }