/* ===== GLOBAL VARIABLES ===== */
:root {
  --main-blue: #1a2a4e;
  --light-blue: #4a6aa8;
  --lighter-blue: #6a8ac8;
  --soft-blue: #e8f0ff;
}

/* ===== BASE RESET / BEHAVIOR ===== */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 70px;
}

body {
  overflow-x: hidden;
  height: 100vh;
  background: linear-gradient(180deg, #f8f9fa 0%, #e9ecef 100%);
  /* padding-top: 70px; */
}

/* ===== NAVBAR ===== */
.navbar {
  background: linear-gradient(90deg, #ffffff 0%, #f0f4ff 100%) !important;
  transition: background 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
}

/* Transparent navbar at top */
.navbar.transparent {
  background: transparent !important;
  box-shadow: none !important;
}

/* Navbar text shadows when transparent */
.navbar.transparent .nav-link,
.navbar.transparent .navbar-brand {
  color: white !important;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
}

.navbar.transparent .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.5);
}

.navbar.transparent .navbar-toggler-icon {
  filter: brightness(0) invert(1);
}

.navbar.transparent .btn {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}

/* Default text colors when scrolled */
.navbar .nav-link,
.navbar .navbar-brand {
  transition: color 0.3s ease, text-shadow 0.3s ease;
}

.navbar .btn {
  transition: box-shadow 0.3s ease;
}

.logo-nav {
  height: 48px;
  width: auto;
}

/* ===== GLOBAL CARD HOVER ===== */
.border.rounded {
  transition: box-shadow 0.3s ease;
  background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
}

.border.rounded:hover {
  box-shadow: 0 0.5rem 1rem rgba(26, 42, 78, 0.15) !important;
}

/* ===== ICON COLORS ===== */
.bi-lightbulb {
  color: var(--light-blue) !important;
}

.bi-gear {
  color: var(--main-blue) !important;
}

.bi-tools {
  color: var(--lighter-blue) !important;
}

.bi-geo-alt {
  color: var(--light-blue) !important;
}