/* -------------------- DARK MODE -------------------- */
body.dark-mode {
  --bs-body-bg: #121212;
  --bs-body-color: #f8f9fa;

  background-color: var(--bs-body-bg) !important;
  color: var(--bs-body-color) !important;
}

body.dark-mode .form-control::placeholder { color: #ddd !important; opacity: 1; }
body.dark-mode .form-control:focus::placeholder { color: #a0a0a0 !important; }
body.dark-mode .text-muted { color: #bbb !important; }
body.dark-mode .myDT { color: #fcf9f9 !important; }
body.dark-mode h5 .myDT { color: #fcf9f9 !important; }
body.dark-mode h5, h4 { color: #080808 !important; }
body.dark-mode .service-card a { color: #0d6efd !important; font-weight: 500; }
body.dark-mode .service-card a:hover { color: #66b2ff !important; }

/* -------------------- HERO -------------------- */
.hero-title { color: #fff; text-shadow: 0 6px 18px rgba(0,0,0,0.35); }
.hero-sub { color: #f8f9fb; text-shadow: 0 4px 10px rgba(0,0,0,0.25); }

/* CTA button */
.btn-cta {
  background: linear-gradient(135deg,#6610f2,#0d6efd);
  color: #fff;
  box-shadow: 0 8px 24px rgba(13,110,253,0.18);
  border: none;
  transition: transform .18s ease, box-shadow .18s ease;
}
.btn-cta:hover { transform: translateY(-4px); box-shadow: 0 14px 36px rgba(13,110,253,0.22); }

/* Service cards */
.service-card { background: linear-gradient(180deg,#fff,#fbfbff); border:1px solid #f0f3ff; transition: transform .25s ease, box-shadow .25s ease; }
.service-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(102,16,242,0.08); }

/* Carousel caption */
.carousel-caption { color: #fff; left: 5%; right: 5%; bottom: 18%; text-shadow: 0 6px 14px rgba(0,0,0,0.4); }
.carousel-caption h1, .carousel-caption h2 { text-shadow: 0 8px 28px rgba(0,0,0,0.45); }

/* Quick-apply card */
.card .form-control { border-radius: 999px; }
.card .card-body .form-control { border-radius: 0.175rem; }
.card .btn { border-radius: 999px; }

/* -------------------- DEFAULT LIGHT MODE -------------------- */
body {
  background: #5b5f99;
  color: #212529;
  transition: background 0.3s ease, color 0.3s ease;
}

/* Navbar */
.custom-navbar { background: #f8f9fa; transition: background 0.3s ease, color 0.3s ease; }
.custom-navbar .nav-link { color: #212529; }
.custom-navbar .nav-link:hover { color: #0d6efd; }

/* Footer */
footer { background: #212529; color: #fff; padding: 20px 0; text-align: center; }
footer a { color: #0d6efd; text-decoration: none; }
footer a:hover { text-decoration: underline; }

/* Dark Mode overrides */
body.dark-mode { background: #121212; color: #f8f9fa; }
body.dark-mode .custom-navbar { background: #1f1f1f !important; }
body.dark-mode .custom-navbar .nav-link { color: #f8f9fa !important; }
body.dark-mode footer { background: #1f1f1f; color: #bbb; }
body.dark-mode .card { background: #1e1e1e; color: #eee; border: 1px solid #333; }
body.dark-mode .dropdown-menu { background: #2b2b2b; color: #eee; }
body.dark-mode .dropdown-item { color: #eee; }
body.dark-mode .dropdown-item:hover { background: #444; }

/* Responsive tweaks */
@media (max-width: 767px) {
  .carousel-caption { bottom: 8%; padding: 0 10px; text-align:center; }
  .carousel-caption .btn { margin-top: 10px; display:inline-block; }
}
