/* ========================================
   Dark/Light Theme Toggle - Advertflair
   Palette matched to advertflair.ai
   ======================================== */

/* Toggle Button */
.theme-toggle {
  position: relative;
  display: flex;
  align-items: center;
  width: 52px;
  height: 28px;
  border-radius: 999px;
  border: 2px solid transparent;
  background: rgba(209,213,219,0.8);
  background-clip: padding-box;
  cursor: pointer;
  padding: 0;
  transition: background 0.5s ease;
  flex-shrink: 0;
}
/* Animated gradient outline */
.theme-toggle::before {
  content: '';
  position: absolute;
  inset: -2px;
  border-radius: 999px;
  background: linear-gradient(var(--toggle-angle, 0deg), #fe2267, #ff9e02);
  z-index: -1;
  animation: toggleSpin 3s linear infinite;
}
@property --toggle-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
@keyframes toggleSpin {
  from { --toggle-angle: 0deg; }
  to { --toggle-angle: 360deg; }
}
.theme-toggle .sun-icon {
  position: absolute;
  left: 7px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  color: #f59e0b;
  opacity: 1;
  transition: all 0.5s ease;
  stroke-width: 2.5;
}
.theme-toggle .moon-icon {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  color: #9ca3af;
  opacity: 0.6;
  transition: all 0.5s ease;
  stroke-width: 2.5;
}
.toggle-thumb {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  position: absolute;
  left: 3px;
  z-index: 10;
}

/* Dark mode toggle state */
.dark .theme-toggle {
  background: #3A3A3C;
  background-clip: padding-box;
}
.dark .theme-toggle .sun-icon {
  color: #6b7280;
  opacity: 0.6;
}
.dark .theme-toggle .moon-icon {
  opacity: 1;
  color: #ffffff;
}
.dark .toggle-thumb {
  transform: translateX(24px);
  background: white;
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

/* ========================================
   Dark Mode — advertflair.ai Palette
   Body:    #08060f (deepest dark)
   Section: #110e1c (dark purple)
   Card:    #1a1530 (elevated surface)
   Text:    #e2e8f0 (primary)
   Muted:   #94a3b8 (secondary)
   Border:  rgba(255,255,255,0.08)
   Accent:  #a78bfa (violet), #4934bc (purple)
   CTA:     #fe2267 (pink), #ff9e02 (orange)
   ======================================== */

/* Body */
.dark body {
  background-color: #08060f !important;
  color: #e2e8f0;
}

/* Header */
.dark header {
  background-color: rgba(8,6,15,0.95) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(255,255,255,0.08);
}
.dark header .text-slate-600,
.dark header .text-slate-800 {
  color: #e2e8f0 !important;
}
.dark header .text-slate-600:hover {
  color: #a78bfa !important;
}
.dark header img[alt="Advertflair Logo"] {
  filter: brightness(0) invert(1);
}

/* Mobile Menu */
.dark #mobile-menu {
  background-color: #110e1c !important;
}
.dark #mobile-menu a {
  color: #e2e8f0;
}
.dark #mobile-menu a:hover {
  color: #a78bfa;
}
.dark #mobile-menu .text-slate-400 {
  color: #94a3b8 !important;
}

/* Nav Dropdown */
.dark .nav-dropdown-menu {
  background: #110e1c !important;
  box-shadow: 0 25px 60px rgba(0,0,0,0.6), 0 0 0 1px rgba(255,255,255,0.08);
}
.dark .dropdown-card {
  background: rgba(73,52,188,0.12) !important;
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .dropdown-card:hover {
  background: rgba(73,52,188,0.2) !important;
  border-color: rgba(73,52,188,0.4) !important;
}

/* Hero / Gradient sections — keep as-is (already dark purple) */

/* White sections → dark purple */
.dark .bg-white {
  background-color: #110e1c !important;
}
.dark section.bg-white {
  background-color: #110e1c !important;
}

/* Slate/light bg sections → deepest dark */
.dark .bg-slate-50,
.dark .bg-gray-50 {
  background-color: #08060f !important;
}

/* Cards → elevated surface */
.dark .card-hover {
  background-color: #1a1530 !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.dark .card-hover:hover {
  border-color: rgba(73,52,188,0.19) !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.dark .bg-white.rounded-xl,
.dark .bg-white.rounded-2xl,
.dark .bg-white.rounded-lg {
  background-color: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}

/* Stat cards — override Tailwind gradient from-*/to-* on light backgrounds */
.dark .stat-card {
  background: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .stat-card .font-bold,
.dark .stat-card h3,
.dark .stat-card h4,
.dark .stat-card div.font-bold {
  color: #ffffff !important;
}
.dark .stat-card p,
.dark .stat-card .text-sm {
  color: #94a3b8 !important;
}

/* All light Tailwind gradient backgrounds → dark surface */
.dark .bg-gradient-to-br.from-blue-50,
.dark .bg-gradient-to-br.from-emerald-50,
.dark .bg-gradient-to-br.from-amber-50,
.dark .bg-gradient-to-br.from-purple-50,
.dark .bg-gradient-to-br.from-pink-50,
.dark .bg-gradient-to-br.from-teal-50,
.dark .bg-gradient-to-br.from-red-50,
.dark .bg-gradient-to-br.from-green-50,
.dark .bg-gradient-to-br.from-orange-50,
.dark .bg-gradient-to-br.from-indigo-50,
.dark .bg-gradient-to-br.from-cyan-50,
.dark .bg-gradient-to-br.from-yellow-50,
.dark .bg-gradient-to-br.from-slate-50,
.dark .bg-gradient-to-br.from-slate-100,
.dark .bg-gradient-to-br.from-blue-100,
.dark .bg-gradient-to-br.from-slate-200 {
  background: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}
/* Same for to-r direction */
.dark .bg-gradient-to-r.from-blue-50,
.dark .bg-gradient-to-r.from-emerald-50,
.dark .bg-gradient-to-r.from-amber-50,
.dark .bg-gradient-to-r.from-purple-50,
.dark .bg-gradient-to-r.from-pink-50,
.dark .bg-gradient-to-r.from-teal-50,
.dark .bg-gradient-to-r.from-red-50,
.dark .bg-gradient-to-r.from-green-50,
.dark .bg-gradient-to-r.from-orange-50,
.dark .bg-gradient-to-r.from-indigo-50,
.dark .bg-gradient-to-r.from-slate-50,
.dark .bg-gradient-to-r.from-slate-100 {
  background: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}
/* bg-gradient-to-b (top-to-bottom) — light sections */
.dark .bg-gradient-to-b.from-slate-50,
.dark .bg-gradient-to-b.from-slate-100,
.dark .bg-gradient-to-b.from-white,
.dark .bg-gradient-to-b.from-blue-50,
.dark .bg-gradient-to-b.from-gray-50 {
  background: #08060f !important;
}
/* bg-gradient-to-t (bottom-to-top) */
.dark .bg-gradient-to-t.from-slate-50,
.dark .bg-gradient-to-t.from-white {
  background: #08060f !important;
}

/* Text colors — headings white (no -webkit-text-fill-color to avoid breaking gradient text) */
.dark h1, .dark h2, .dark h3, .dark h4 {
  color: #ffffff !important;
}
/* Gradient text — preserve transparent fill for bg-clip-text effect */
.dark .text-gradient,
.dark .bg-clip-text,
.dark .text-transparent {
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Text colors */
.dark .text-slate-800,
.dark .text-slate-900 {
  color: #ffffff !important;
}
.dark .text-slate-700 {
  color: #e2e8f0 !important;
}
.dark .text-slate-600 {
  color: #94a3b8 !important;
}
.dark .text-slate-500 {
  color: #94a3b8 !important;
}
.dark .text-\[\#1e293b\] {
  color: #e2e8f0 !important;
}
.dark p {
  color: #94a3b8;
}

/* Links & accents */
.dark a:not([class]):hover {
  color: #a78bfa;
}

/* Borders — rgba(255,255,255,0.08) */
.dark .border-slate-200,
.dark .border-gray-200,
.dark .border-slate-100 {
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .border-t,
.dark .border-b {
  border-color: rgba(255,255,255,0.08);
}
.dark .divide-slate-200 > :not(:last-child) {
  border-color: rgba(255,255,255,0.08);
}

/* Shadows — deeper for dark bg */
.dark .shadow-sm {
  box-shadow: 0 1px 2px rgba(0,0,0,0.4);
}
.dark .shadow-lg {
  box-shadow: 0 10px 30px rgba(0,0,0,0.5);
}
.dark .shadow-xl {
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
}

/* Filter buttons */
.dark .filter-btn {
  background-color: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
  color: #94a3b8 !important;
}
.dark .filter-btn:hover {
  border-color: rgba(73,52,188,0.4) !important;
  color: #a78bfa !important;
  background-color: rgba(73,52,188,0.12) !important;
}
.dark .filter-btn.bg-\[\#4934bc\] {
  background-color: #4934bc !important;
  color: #fff !important;
  border-color: #4934bc !important;
}

/* Input fields / forms */
.dark input,
.dark textarea,
.dark select {
  background-color: #08060f !important;
  border-color: rgba(255,255,255,0.08) !important;
  color: #e2e8f0 !important;
}
.dark input:focus,
.dark textarea:focus,
.dark select:focus {
  border-color: rgba(73,52,188,0.4) !important;
  box-shadow: 0 0 0 3px rgba(73,52,188,0.15);
}
.dark input::placeholder,
.dark textarea::placeholder {
  color: #94a3b8 !important;
}
/* Select dropdown options */
.dark select option {
  background-color: #110e1c !important;
  color: #e2e8f0 !important;
}

/* Footer */
.dark footer {
  background-color: #000000 !important;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.dark footer p,
.dark footer a,
.dark footer span {
  color: #94a3b8;
}
.dark footer a:hover {
  color: #a78bfa;
}

/* Logo marquee — on purple bg in both modes, brighten logos */
.dark .logo-item {
  opacity: 0.85;
  filter: grayscale(100%) brightness(1.8);
}
.dark .logo-item:hover {
  opacity: 1;
  filter: grayscale(0%) brightness(1.2);
}
.dark .logo-item.invert-logo {
  filter: grayscale(100%) brightness(10) !important;
  opacity: 0.85;
}
.dark .logo-item.invert-logo:hover {
  filter: grayscale(0%) brightness(10) !important;
  opacity: 1;
}
.dark .logo-marquee {
  mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

/* Tags / badges — purple tint */
.dark .bg-purple-50 {
  background-color: rgba(73,52,188,0.15) !important;
  color: #a78bfa !important;
}
.dark .bg-blue-50,
.dark .bg-teal-50,
.dark .bg-green-50,
.dark .bg-orange-50,
.dark .bg-red-50 {
  background-color: rgba(255,255,255,0.05) !important;
}

/* CTA gradient buttons — keep vibrant (only for brand CTA, not all gradients) */
.dark .bg-gradient-to-r.from-\[\#fe2267\],
.dark a.bg-gradient-to-r.from-\[\#fe2267\],
.dark button.bg-gradient-to-r {
  background: linear-gradient(90deg, #fe2267, #ff9e02) !important;
}

/* Semi-transparent white backgrounds */
.dark .bg-white\/90 {
  background-color: rgba(26,21,48,0.9) !important;
}
.dark .bg-white\/20 {
  background-color: rgba(255,255,255,0.08) !important;
}
.dark .bg-white\/30 {
  background-color: rgba(255,255,255,0.12) !important;
}

/* Slate-50 cards and sections (Our AI Solutions, Industries) */
.dark .bg-slate-50.rounded-xl,
.dark .bg-slate-50.rounded-lg,
.dark .bg-slate-50.rounded-2xl {
  background-color: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}

/* All border opacity variants */
.dark [class*="border-slate-200"],
.dark [class*="border-slate-100"],
.dark [class*="border-gray-200"] {
  border-color: rgba(255,255,255,0.08) !important;
}

/* General text that doesn't have explicit color classes */
.dark .font-semibold:not(.text-gradient):not(.text-transparent):not(.bg-clip-text),
.dark .font-bold:not(.text-gradient):not(.text-transparent):not(.bg-clip-text),
.dark .font-extrabold:not(.text-gradient):not(.text-transparent):not(.bg-clip-text) {
  color: #e2e8f0;
}
.dark strong, .dark b {
  color: #e2e8f0;
}

/* Specific section text colors */
.dark .text-sm.text-slate-600 {
  color: #94a3b8 !important;
}
.dark .text-lg.text-slate-600 {
  color: #94a3b8 !important;
}
.dark .text-xs.text-slate-400,
.dark .text-slate-400 {
  color: #64748b !important;
}
.dark .text-slate-300 {
  color: #475569 !important;
}

/* Icon colors in dark mode — make them brighter */
.dark .text-purple-600,
.dark .text-\[\#4934bc\] {
  color: #a78bfa !important;
}
.dark .text-red-600 {
  color: #f87171 !important;
}
.dark .text-green-600,
.dark .text-emerald-600 {
  color: #34d399 !important;
}
.dark .text-amber-600 {
  color: #fbbf24 !important;
}
.dark .text-blue-600 {
  color: #60a5fa !important;
}
.dark .text-teal-600 {
  color: #2dd4bf !important;
}

/* Icon background circles in dark mode */
.dark .bg-purple-100,
.dark .bg-blue-100,
.dark .bg-teal-100,
.dark .bg-green-100,
.dark .bg-amber-100,
.dark .bg-red-100,
.dark .bg-emerald-100,
.dark .bg-indigo-100,
.dark .bg-orange-100,
.dark .bg-pink-100,
.dark .bg-cyan-100,
.dark .bg-yellow-100 {
  background-color: rgba(255,255,255,0.05) !important;
}

/* Border-*-100 colors on stat cards */
.dark .border-green-100,
.dark .border-blue-100,
.dark .border-emerald-100,
.dark .border-amber-100,
.dark .border-purple-100,
.dark .border-pink-100,
.dark .border-red-100,
.dark .border-teal-100,
.dark .border-orange-100,
.dark .border-indigo-100,
.dark .border-cyan-100 {
  border-color: rgba(255,255,255,0.08) !important;
}

/* Industries section cards */
.dark .bg-slate-50.rounded-xl {
  background-color: #1a1530 !important;
}
.dark .bg-slate-50.rounded-xl h3,
.dark .bg-slate-50.rounded-xl h4 {
  color: #ffffff !important;
}
.dark .bg-slate-50.rounded-xl p {
  color: #94a3b8 !important;
}

/* Card inner text — make sure headings are white, body is muted */
.dark .card-hover h3,
.dark .card-hover h4 {
  color: #ffffff !important;
}
.dark .card-hover p {
  color: #94a3b8 !important;
}
.dark .card-hover strong {
  color: #e2e8f0 !important;
}
.dark .card-hover .text-slate-800 {
  color: #e2e8f0 !important;
}

/* Read Full Case Study button inside cards */
.dark .card-hover a.bg-gradient-to-r {
  color: #ffffff !important;
}

/* Trusted By Brands section label */
.dark .tracking-widest {
  color: #64748b !important;
}

/* Gradient hero — keep the purple gradient */
.dark .gradient-bg {
  background: linear-gradient(135deg, #110e1c 0%, #08060f 100%) !important;
}

/* ========================================
   Case Study Specific Dark Mode Overrides
   ======================================== */

/* --- Generic card classes used across pages --- */
.dark .crest-card,
.dark .crozier-card,
.dark .torani-card,
.dark .tafe-card,
.dark .luxury-card,
.dark .shoppers-card,
.dark .clutter-card,
.dark .amazon-card,
.dark .mbm-card,
.dark .northern-card,
.dark .scenario-card,
.dark .showcase-card {
  background: rgba(73,52,188,0.1) !important;
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .crest-card:hover,
.dark .crozier-card:hover,
.dark .torani-card:hover,
.dark .tafe-card:hover,
.dark .luxury-card:hover,
.dark .shoppers-card:hover,
.dark .clutter-card:hover,
.dark .amazon-card:hover,
.dark .mbm-card:hover,
.dark .northern-card:hover,
.dark .scenario-card:hover,
.dark .showcase-card:hover {
  background: rgba(73,52,188,0.15) !important;
  border-color: rgba(73,52,188,0.3) !important;
}

/* Card inner text */
.dark .torani-card h3, .dark .torani-card h4,
.dark .tafe-card h3, .dark .tafe-card h4,
.dark .luxury-card h3, .dark .luxury-card h4,
.dark .shoppers-card h3, .dark .shoppers-card h4,
.dark .clutter-card h3, .dark .clutter-card h4,
.dark .amazon-card h3, .dark .amazon-card h4,
.dark .mbm-card h3, .dark .mbm-card h4,
.dark .northern-card h3, .dark .northern-card h4,
.dark .scenario-card h3, .dark .scenario-card h4,
.dark .showcase-card h3, .dark .showcase-card h4,
.dark .crest-card h3, .dark .crest-card h4,
.dark .crozier-card h3, .dark .crozier-card h4 {
  color: #ffffff !important;
}
.dark .torani-card p,
.dark .tafe-card p,
.dark .luxury-card p,
.dark .shoppers-card p,
.dark .clutter-card p,
.dark .amazon-card p,
.dark .mbm-card p,
.dark .northern-card p,
.dark .scenario-card p,
.dark .showcase-card p,
.dark .crest-card p,
.dark .crozier-card p {
  color: #94a3b8 !important;
}

/* Platform demo / AR demo / Industrial BG sections */
.dark .platform-demo,
.dark .ar-demo-card,
.dark .industrial-bg {
  background: linear-gradient(135deg, #110e1c 0%, #08060f 100%) !important;
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .platform-demo h3, .dark .platform-demo h4,
.dark .ar-demo-card h3, .dark .ar-demo-card h4 {
  color: #ffffff !important;
}
.dark .platform-demo p,
.dark .ar-demo-card p {
  color: #94a3b8 !important;
}

/* Input sections (white bg with colored left border) */
.dark .input-section {
  background: #1a1530 !important;
  border-left-color: #a78bfa !important;
}
.dark .input-section p,
.dark .input-section span {
  color: #94a3b8 !important;
}

/* Badge gold (Amazon) */
.dark .badge-gold {
  background: linear-gradient(45deg, #ffd700, #ffed4e, #ffd700) !important;
  color: #1e293b !important;
}

/* Placeholder images / light gray backgrounds */
.dark .placeholder-img {
  background: linear-gradient(135deg, #1a1530 0%, #110e1c 100%) !important;
}

/* Stack cards (Clutter) */
.dark .stack-card {
  background-color: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
  box-shadow: 0 10px 40px rgba(0,0,0,0.4) !important;
}
.dark .stack-card:hover {
  box-shadow: 0 20px 50px rgba(0,0,0,0.5) !important;
}

/* --- All Tailwind bg-color-50/100 overrides --- */
.dark .bg-amber-50,
.dark .bg-amber-100,
.dark .bg-yellow-100,
.dark .bg-pink-50,
.dark .bg-pink-100,
.dark .bg-orange-50,
.dark .bg-orange-100,
.dark .bg-emerald-50,
.dark .bg-emerald-100,
.dark .bg-indigo-50,
.dark .bg-indigo-100,
.dark .bg-cyan-50,
.dark .bg-cyan-100,
.dark .bg-gray-50,
.dark .bg-slate-100 {
  background-color: rgba(255,255,255,0.05) !important;
}

/* Text-*-800 colors on feature rows — must stay visible on dark bg */
.dark .text-indigo-800 {
  color: #a5b4fc !important;
}
.dark .text-cyan-800 {
  color: #67e8f9 !important;
}
.dark .text-blue-800 {
  color: #93c5fd !important;
}
.dark .text-green-800 {
  color: #86efac !important;
}
.dark .text-pink-800 {
  color: #f9a8d4 !important;
}
.dark .text-purple-800 {
  color: #c4b5fd !important;
}
.dark .text-orange-800 {
  color: #fdba74 !important;
}
.dark .text-amber-800 {
  color: #fcd34d !important;
}
.dark .text-red-800 {
  color: #fca5a5 !important;
}
.dark .text-teal-800 {
  color: #5eead4 !important;
}
.dark .text-emerald-800 {
  color: #6ee7b7 !important;
}

/* Matching icon colors for dark mode */
.dark .text-indigo-600 {
  color: #818cf8 !important;
}
.dark .text-cyan-600 {
  color: #22d3ee !important;
}
.dark .text-pink-600 {
  color: #f472b6 !important;
}

/* --- All Tailwind text color overrides for dark mode --- */
.dark .text-amber-700 {
  color: #fbbf24 !important;
}
.dark .text-amber-500 {
  color: #fbbf24 !important;
}
.dark .text-amber-300 {
  color: #fcd34d !important;
}
.dark .text-red-400,
.dark .text-red-500 {
  color: #f87171 !important;
}
.dark .text-orange-600 {
  color: #fb923c !important;
}
.dark .text-green-400,
.dark .text-green-500 {
  color: #4ade80 !important;
}
.dark .text-blue-500 {
  color: #60a5fa !important;
}
.dark .text-emerald-500 {
  color: #34d399 !important;
}
.dark .text-teal-500 {
  color: #2dd4bf !important;
}
.dark .text-yellow-300 {
  color: #fde047 !important;
}
.dark .text-purple-500 {
  color: #a78bfa !important;
}

/* Page-specific brand text colors */
.dark .text-\[\#b91c1c\] {
  color: #f87171 !important;
}
.dark .text-\[\#15803d\] {
  color: #4ade80 !important;
}
.dark .text-\[\#2d6a9f\] {
  color: #60a5fa !important;
}
.dark .text-\[\#1e3a5f\] {
  color: #93c5fd !important;
}
.dark .text-\[\#00838f\] {
  color: #2dd4bf !important;
}
.dark .text-\[\#005662\] {
  color: #2dd4bf !important;
}

/* --- Hero gradient overrides (keep branded but darken edges) --- */
.dark .torani-gradient {
  background: linear-gradient(135deg, #7f1d1d 0%, #450a0a 100%) !important;
}
.dark .tafe-gradient {
  background: linear-gradient(135deg, #14532d 0%, #052e16 100%) !important;
}
.dark .shoppers-gradient {
  background: linear-gradient(135deg, #065f46 0%, #022c22 100%) !important;
}
.dark .clutter-gradient {
  background: linear-gradient(135deg, #005662 0%, #002a32 100%) !important;
}
.dark .amazon-gradient {
  background: linear-gradient(135deg, #9a3412 0%, #431407 100%) !important;
}
.dark .mbm-gradient {
  background: linear-gradient(135deg, #1e3a5f 0%, #0c1929 100%) !important;
}
.dark .northern-gradient {
  background: linear-gradient(135deg, #991b1b 0%, #450a0a 100%) !important;
}
.dark .luxury-gold {
  background: linear-gradient(45deg, #b45309, #d97706, #b45309) !important;
}

/* --- Inline style overrides for light backgrounds --- */
.dark [style*="background:#f1f5f9"],
.dark [style*="background: #f1f5f9"],
.dark [style*="background-color:#f1f5f9"],
.dark [style*="background-color: #f1f5f9"] {
  background: #110e1c !important;
}
.dark [style*="background:#f8fafc"],
.dark [style*="background: #f8fafc"],
.dark [style*="background-color:#f8fafc"] {
  background: #08060f !important;
}
.dark [style*="background:white"],
.dark [style*="background: white"],
.dark [style*="background-color:white"],
.dark [style*="background-color: white"] {
  background: #110e1c !important;
}
.dark [style*="background:#fff"],
.dark [style*="background: #fff"] {
  background: #110e1c !important;
}
.dark [style*="background:linear-gradient(180deg, #f1f5f9"],
.dark [style*="background: linear-gradient(180deg, #f1f5f9"],
.dark [style*="background:linear-gradient(135deg, #f8fafc"],
.dark [style*="background: linear-gradient(135deg, #f8fafc"] {
  background: linear-gradient(135deg, #110e1c 0%, #08060f 100%) !important;
}

/* Inline color overrides */
.dark [style*="color:#1e293b"],
.dark [style*="color: #1e293b"] {
  color: #e2e8f0 !important;
}
.dark [style*="background:#1e293b"],
.dark [style*="background: #1e293b"] {
  background: #e2e8f0 !important;
}

/* --- Additional bg color classes (brand-specific) --- */
.dark .bg-blue-500 {
  background-color: #3b82f6 !important;
}
.dark .bg-red-500 {
  background-color: #ef4444 !important;
}
.dark .bg-emerald-500 {
  background-color: #10b981 !important;
}
.dark .bg-amber-500 {
  background-color: #f59e0b !important;
}
.dark .bg-teal-500 {
  background-color: #14b8a6 !important;
}
.dark .bg-orange-500 {
  background-color: #f97316 !important;
}
.dark .bg-purple-500 {
  background-color: #8b5cf6 !important;
}
.dark .bg-purple-600 {
  background-color: #7c3aed !important;
}

/* --- White text on light sections (fix visibility) --- */
.dark section .text-white {
  color: #ffffff !important;
}

/* --- Rounded cards with shadow on case study pages --- */
.dark .rounded-2xl.shadow-lg {
  background-color: #1a1530 !important;
  border-color: rgba(255,255,255,0.08) !important;
}
.dark .rounded-2xl.shadow-lg h3 {
  color: #ffffff !important;
}
.dark .rounded-2xl.shadow-lg p {
  color: #94a3b8 !important;
}
.dark .rounded-2xl.shadow-lg strong {
  color: #e2e8f0 !important;
}

/* Pill tags / badge backgrounds in cards */
.dark .bg-white\/90.text-slate-800,
.dark span.bg-white\/90 {
  background-color: rgba(26,21,48,0.9) !important;
  color: #e2e8f0 !important;
}

/* Border-slate-200/50 */
.dark .border-slate-200\/50 {
  border-color: rgba(255,255,255,0.08) !important;
}

/* Rounded pill links (Explore More section on hub pages) */
.dark a.rounded-full.border-slate-200,
.dark a.rounded-full.border.border-slate-200 {
  border-color: rgba(255,255,255,0.08) !important;
  color: #94a3b8 !important;
}
.dark a.rounded-full.border-slate-200:hover,
.dark a.rounded-full.border.border-slate-200:hover {
  border-color: #a78bfa !important;
  color: #a78bfa !important;
}

/* All bg-slate-200 (used for dividers/borders) */
.dark .bg-slate-200 {
  background-color: rgba(255,255,255,0.08) !important;
}

/* Tailwind bg-gradient overrides - CTA buttons only (exclude gradient text) */
.dark .bg-gradient-to-r.from-\[\#fe2267\].to-\[\#ff9e02\]:not(.bg-clip-text):not(.text-transparent) {
  background: linear-gradient(90deg, #fe2267, #ff9e02) !important;
  color: #ffffff !important;
}

/* --- Footer invert logo in dark mode --- */
.dark footer img[alt="Advertflair"] {
  filter: brightness(0) invert(1);
}

/* Shadow-inner containers (before/after image sections) */
.dark .shadow-inner {
  background-color: #1a1530 !important;
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.3) !important;
}

/* List items in case study pages */
.dark li {
  color: #94a3b8;
}

/* h5 headings */
.dark h5 {
  color: #ffffff !important;
}

/* Featured product transformation cards */
.dark .shadow-xl.rounded-2xl {
  border: 1px solid rgba(255,255,255,0.08);
}

/* BEFORE/AFTER labels */
.dark span.font-bold.text-slate-500 {
  color: #94a3b8 !important;
}

/* White/10 on dark hero backgrounds */
.dark .bg-white\/10 {
  background-color: rgba(255,255,255,0.1) !important;
}

/* Shadow-md cards (approach/solution cards) */
.dark .shadow-md {
  box-shadow: 0 4px 6px rgba(0,0,0,0.4) !important;
}

/* Scrollbar */
.dark ::-webkit-scrollbar {
  background: #08060f;
  width: 8px;
}
.dark ::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.08);
  border-radius: 4px;
}
.dark ::-webkit-scrollbar-thumb:hover {
  background: rgba(255,255,255,0.15);
}

/* Selection */
.dark ::selection {
  background: rgba(73,52,188,0.4);
  color: #fff;
}

/* Contact form section */
.dark .bg-\[\#4934bc\],
.dark .crest-gradient {
  background: linear-gradient(135deg, #4934bc 0%, #3a2a9a 100%);
}

/* 404 page */
.dark .bg-\[\#f8fafc\] {
  background-color: #08060f !important;
}

/* Smooth transitions — apply to all elements for seamless theme switch */
*, *::before, *::after {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}
.toggle-thumb {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.2s ease;
}
