/* General Layout */
body {
    
    margin: 0;
    padding: 0;
}
.logo {
    width: 50px;
    height: auto;
}
/* Ensure navbar height and spacing match across pages */
.navbar {
  background-color: #2e9e43 !important;
  z-index: 1050;
  padding: 0.8rem 1rem !important; /* equal spacing top/bottom */
  min-height: 70px; /* fixed minimum height */
}

.navbar-brand {
  display: flex;
  align-items: center;
  color: #fff !important;
  font-weight: 600;
  font-size: 1.2rem;
}

.navbar-brand img.logo {
  width: 45px;
  height: auto;
  margin-right: 8px;
}

.navbar-nav .nav-link {
    color: white !important;
    font-weight: 500;
}
.dropdown-menu {
    background-color: #2e9e43;
}
.dropdown-menu a {
    color: white;
}
.dropdown-menu a:hover {
    background-color: #278a39;
}

/* Banner */
.banner-img {
    width: 100%;
    height: auto;
    display: block;
}

/* Mobile Sidebar */
.mobile-sidebar i {
    margin-right: 10px;
}

.mobile-sidebar {
    position: fixed;
    top: 0;
    left: -250px;
    width: 250px;
    height: 100%;
    background-color: #2e9e43;
    overflow-y: auto;
    transition: left 0.3s ease;
    z-index: 1040;
    padding-top: 60px;
}
.mobile-sidebar a {
    display: block;
    padding: 15px 20px;
    color: white;
    text-decoration: none;
}
.mobile-sidebar a:hover {
    background-color: #278a39;
}
.sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1030;
    display: none;
}
.sidebar-open .mobile-sidebar {
    left: 0;
}
.sidebar-open .sidebar-overlay {
    display: block;
}
@media (min-width: 992px) {
    .mobile-sidebar,
    .sidebar-overlay {
        display: none !important;
    }
}
