/* =========================
   TourVibe Custom Styles
   ========================= */

/* General Reset */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  line-height: 1.6;
  transition: background 0.3s ease, color 0.3s ease;
}

/* =========================
   Light Mode (Default)
   ========================= */
body.light-mode {
  background: #f9f9f9;
  color: rgb(11, 24, 36);
}

body.light-mode .navbar,
body.light-mode footer {
  background: rgb(11, 103, 100);
  color: white;
}

body.light-mode .card-title {
  color: rgb(19, 132, 173);
}

/* =========================
   Dark Mode
   ========================= */
body.dark-mode {
  background: rgb(11, 24, 36);
  color: rgb(228, 156, 100);
}

body.dark-mode .navbar,
body.dark-mode footer {
  background: rgb(15, 60, 35);
}

body.dark-mode .card {
  background: rgb(11, 24, 36);
  color: rgb(228, 156, 100);
}

body.dark-mode .card-title {
  color: rgb(242, 129, 6);
}

body.dark-mode a,
body.dark-mode .nav-link {
  color: rgb(228, 156, 100) !important;
}

body.dark-mode .btn-success {
  background: rgb(19, 132, 173);
}

body.dark-mode .btn-success:hover {
  background: rgb(11, 103, 100);
}

/* =========================
   Shared Styles
   ========================= */

/* Navbar */
.navbar {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.navbar-brand {
  font-weight: bold;
  font-size: 1.4rem;
}

.nav-link {
  transition: color 0.3s ease;
}

.nav-link:hover {
  color: #00ff9d !important;
}

/* Hero Section */
header {
  background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
    url('assets/Web Cover.png') center/cover no-repeat;
  color: white;
  transition: background 0.3s ease;
}

header h1 {
  font-weight: 700;
}

header .btn {
  font-size: 1.1rem;
  padding: 10px 20px;
  border-radius: 30px;
  transition: all 0.3s ease;
}

header .btn:hover {
  background: #198754;
  color: white;
}

/* Cards */
.card {
  border: none;
  border-radius: 12px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card img {
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.card:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.card-title {
  font-weight: bold;
}

/* Booking Form */
#bookingForm {
  max-width: 600px;
  margin: 0 auto;
}

#bookingForm .btn {
  border-radius: 30px;
  padding: 12px;
  font-size: 1.1rem;
}

/* Sections */
section h1,
section h2 {
  font-weight: bold;
  color: #198754;
}

section p {
  color: inherit;
}

/* Footer */
footer {
  font-size: 0.9rem;
}

/* Buttons */
.btn-success {
  border-radius: 30px;
  transition: all 0.3s ease;
}

.btn-success:hover {
  background-color: #157347;
  transform: scale(1.05);
}
