/* ══════════════════════════════════════════════════════════════════════════
   BSECURE — Color Theme Override
   Color-matched to original BSecure Distributing site:
   Primary: #29ABE2  |  Top bar: #1E73BE  |  Footer: #333333
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Light mode ── */
:root {
  --primary: #29ABE2 !important;
  --primary-light: #4BC5F0 !important;
  --primary-dark: #1E73BE !important;
  --accent: #1E73BE !important;
  --success: #10b981 !important;
  --warning: #f59e0b !important;
  --danger: #ef4444 !important;
}

/* ── Dark mode ── */
[data-theme="dark"] {
  --primary: #4BC5F0 !important;
  --primary-light: #7DD6F5 !important;
  --primary-dark: #29ABE2 !important;
  --accent: #1E73BE !important;
  --bg: #1a1a2e !important;
  --bg-card: #16213e !important;
  --bg-alt: #0f0f23 !important;
  --text: #e2e8f0 !important;
  --text-muted: #94a3b8 !important;
  --border: rgba(41, 171, 226, 0.15) !important;
  --line: rgba(41, 171, 226, 0.08) !important;
  --line-strong: rgba(41, 171, 226, 0.2) !important;
}

/* ── Light mode overrides ── */
[data-theme="light"] {
  --bg: #ffffff !important;
  --bg-card: #f8fafc !important;
  --bg-alt: #f5f5f5 !important;
  --text: #333333 !important;
  --text-muted: #666666 !important;
  --border: rgba(41, 171, 226, 0.15) !important;
  --line: rgba(41, 171, 226, 0.08) !important;
  --line-strong: rgba(41, 171, 226, 0.2) !important;
}

/* ── Hero section: blue glow ── */
[data-theme="dark"] .hero {
  background: linear-gradient(135deg, #0f0f23 0%, #16213e 50%, #1a1a2e 100%);
}

/* ── Buttons: blue gradient ── */
.button.primary, .btn.primary,
.elementor-button.elementor-size-sm {
  background: linear-gradient(135deg, #1E73BE 0%, #29ABE2 100%) !important;
  box-shadow: 0 4px 14px rgba(41, 171, 226, 0.3) !important;
  white-space: nowrap !important;
  padding: 12px 28px !important;
}
.button.primary:hover, .btn.primary:hover {
  box-shadow: 0 8px 25px rgba(41, 171, 226, 0.4) !important;
}

/* ── Gradient text: blue to darker blue ── */
.gradient-text,
.hero-section h1 em,
.hero-section h1 .gradient-target,
.cta-section h2,
.page-hero h1 {
  background: linear-gradient(
    90deg,
    #29ABE2 0%,
    #4BC5F0 25%,
    #1E73BE 50%,
    #29ABE2 75%,
    #4BC5F0 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ── Nav underline: blue ── */
.nav-links a::after,
.nav-menu a::after,
.elementor-nav-menu a::after {
  background: #29ABE2 !important;
}

/* ── Featured card: blue border ── */
.product-card.featured,
.pricing-card.featured {
  border-color: #29ABE2 !important;
}
.product-card.featured::before {
  background: #29ABE2 !important;
}

/* ── Comparison table: blue winner ── */
.comparison-table .winner {
  background: color-mix(in srgb, #29ABE2 6%, transparent) !important;
}

/* ── Badge / label: blue ── */
.badge, .section-label, .eyebrow {
  color: #29ABE2 !important;
}

/* ── Card hover: blue glow ── */
.catalog-card:hover, .product-card:hover, .approach-card:hover {
  border-color: transparent !important;
  box-shadow: 0 0 0 1px color-mix(in srgb, #29ABE2 50%, transparent),
              0 4px 8px -2px rgba(0,0,0,0.08),
              0 12px 28px -8px rgba(0,0,0,0.15),
              0 24px 48px -16px color-mix(in srgb, #29ABE2 15%, transparent) !important;
}

/* ── Stats: blue gradient ── */
.stat-number, .elementor-counter-number-wrapper {
  background: linear-gradient(135deg, #29ABE2 0%, #1E73BE 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ── CTA section background: blue tint ── */
.cta-section {
  background: linear-gradient(135deg, rgba(41, 171, 226, 0.05) 0%, rgba(41, 171, 226, 0.1) 100%) !important;
}

/* ── Product link hover: blue ── */
.product-link:hover {
  color: #29ABE2 !important;
}

/* ── Footer: blue accent ── */
.footer-inner a:hover {
  color: #4BC5F0 !important;
}

/* ── Price tag: keep blue ── */
.price, .product-price, .price-tag {
  color: #29ABE2 !important;
}

/* ── Nav: blue active state ── */
.nav-links a.active {
  color: #29ABE2 !important;
}

/* ── Theme toggle: blue on hover ── */
.theme-toggle:hover {
  color: #29ABE2 !important;
}/* ── CTA BUTTONS: bigger on desktop ── */
@media (min-width: 769px) {
  .cta-section .button,
  .cta-section a[class*=button] {
    font-size: 20px !important;
    padding: 18px 42px !important;
    letter-spacing: 0.3px;
  }
}
@media (max-width: 768px) {
  .cta-section .button,
  .cta-section a[class*=button] {
    font-size: 15px !important;
    padding: 14px 28px !important;
    flex: 1 1 auto;
    min-width: 200px;
  }
}
[data-theme="light"] .cta-section .button.outline {
  border: 2px solid #29ABE2 !important;
  color: #29ABE2 !important;
  background: transparent !important;
}
[data-theme="light"] .cta-section .button.outline:hover {
  background: rgba(41, 171, 226, 0.08) !important;
}