  /* GLOBAL BACKGROUND & COLOR */
  .nav-container, .custom-header, .top-bar {
    background-color: #083416 !important;
    color: #fff;
    z-index: 100000000 !important;
  }
  .border-white-bottom { border-bottom: 1px solid #fff; }

  /* TOP BAR LINKS */
  .top-bar-link {
    color: #fff;
    text-decoration: none;
    margin-right: 15px;
  }
  .top-bar-link:hover { color: #ddd; }

  /* NAVBAR & HEADER */
  .navbar-dark .navbar-nav .nav-link,
  .navbar-dark .navbar-brand,
  .navbar-dark .navbar-tool-icon-box i,
  .navbar-dark .navbar-tool-text,
  .navbar-dark .navbar-tool-text small {
    color: #fff;
  }

  /* CENTER NAV: HOME & SEARCH */
  .center-nav {
    flex: 1;
    justify-content: center;
    margin: 0 20px;
    min-width: 400px !important;
    color: #000;
  }
  .home-link {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    font-size: 16px;
    margin-right: 100px !important;
  }
  .home-link:hover { color: #ddd; }
  .search-form { position: relative; margin-left: 20px; }
  .search-bar-input {
    width: 280px;
    max-width: 100%;
    padding: 8px 12px;
    border: none;
    border-radius: 4px 0 0 4px;
    outline: none;
  }
  .search-btn {
    background-color: #fff;
    color: #000;
    border: none;
    border-radius: 0 4px 4px 0;
    padding: 10.5px 12px;
    cursor: pointer;
    outline: none;
  }
  .search-btn i { font-size: 16px; }
  .search-btn:hover { background-color: #e0e0e08b; }

  /* PROFILE LINKS (WISHLIST, CART, USER) */
  .profile-links { display: flex; align-items: center; gap: 10px; }
  .wishlist-container .wish_list {
    position: relative;
    width: 45px;
    height: 45px;
    border: 2px solid #fff;
    background-color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #083416 !important;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  .wishlist-container .wish_list:hover {
    background-color: #fff;
    border: 2px solid blue;
    color: #000;
  }
  .wishlist-container .wishlist-icon { font-size: 18px; color: currentColor; }
  .wishlist-tool-label {
    position: absolute;
    top: -5px;
    right: -5px;
    font-size: 10px;
    min-width: 18px;
    min-height: 18px;
    padding: 2px 4px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background-color:black;
  }
  .user-icon, .search-icon, .cart-icon{
      color:#083416 !important;
  }
  /* MOBILE MENU & SIDEBAR */
.mobile-menu {
  position: fixed;
  top: 0;
  left: -100%;
  width: 80%;
  height: 100vh;
  background-color: #FFFFFF; /* Changed to white */
  transition: left 0.3s ease;
  z-index: 1000000000 !important;
  overflow-y: auto;
}
.mobile-menu.open { left: 0; }
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  display: none;
  z-index: 99999;
}
.overlay.show { display: block; }
.close-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 35px;
  color: white;
  cursor: pointer;
  font-weight:bold;
}
.custom-sidebar-categories {
  padding: 0;
  background: #FFFFFF; /* Changed to white */
  color: #000; /* Changed to black */
}

/* Sidebar Home Link: Green background with increased height */
.sidebar-home-link {
  color: #fff !important;
  text-decoration: none;
  background-color: #083416;
  padding: 15px 20px;
  display: block;
  margin-bottom: 15px;
  font-weight: 500;
  font-size: 18px;
  height: 100px; /* Setting fixed height */
  line-height: 20px; /* For vertical centering */
  display: flex;
  align-items: center;
  /*justify-content:center;*/
}

/* Category title: reduced font size */
.custom-category-title { 
  font-size: 13px; 
  margin-bottom: 10px; 
  padding: 0 20px;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Category List Hierarchy with improved styling */
.custom-category-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}

.custom-category-item { 
  position: relative; 
  border-bottom: 1px solid rgba(0,0,0,0.1); 
}

.custom-category-link {
  font-size: 15px;
  font-weight: 700; /* Bold */
  color: #000;
  text-decoration: none;
  display: block;
  padding: 12px 20px;
  width: calc(100% - 40px);
}

.custom-subcategory-item { 
  position: relative;
  border-bottom: 1px solid rgba(0,0,0,0.05); 
}

.custom-subcategory-link {
  font-size: 14px;
  font-weight: 600; /* Semibold */
  color: #333;
  text-decoration: none;
  display: block;
  padding: 10px 20px 10px 30px;
  width: calc(100% - 40px);
}

.custom-sub-subcategory-item { 
  border-bottom: 1px solid rgba(0,0,0,0.03); 
}

.custom-sub-subcategory-link {
  font-size: 13px;
  font-weight: 400; /* Normal */
  color: #555;
  text-decoration: none;
  display: block;
  padding: 8px 20px 8px 45px;
}

.custom-subcategory-list,
.custom-sub-subcategory-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
  background-color: #f9f9f9;
  min-width:90%;
}

/* Toggle buttons */
.custom-toggle-btn {
  /*position: absolute;*/
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color:#083416 !important;
  font-weight:bold;
  font-size: 18px;
  cursor: pointer;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}


/* Fix for toggle button positioning */
.custom-category-item, .custom-subcategory-item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width:100%;
}


.hidden { display: none; }

  /* RESPONSIVE BREAKPOINTS */
  @media (max-width: 992px) {
    .center-nav { display: none !important; }
    .profile-links { gap: 5px; }
    .menu-icon { display: block !important; }
      .wishlist-container .wish_list {
    width: 35px;
    height: 35px;
  }
  }
  @media (min-width: 993px) {
    .menu-icon, .mobile-menu { display: none !important; }
  }
/* DESKTOP CATEGORY DROPDOWN - IMPROVED */
.desktop-category-section { 
  background-color: white; 
  box-shadow: 0 2px 4px rgba(0,0,0,0.1); 
  position: relative; 
}

.category-grid-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 5%;
  max-width: 1440px;
  margin: 0 auto;
  position: relative;
  /*z-index: 9999999999 !important;*/
}

.category-grid-item { 
  flex-grow: 1; 
  text-align: center; 
}

.main-category-link {
  text-decoration: none;
  color: black;
  font-weight: 500;
  transition: color 0.3s ease;
   z-index: 50 !important;
}

.main-category-link:hover { 
  color: #007bff; 
}

.category-name-wrapper { 
  position: relative; 
}

.toggle-icon { 
  display: none; 
}

/* Subcategory Dropdown Styling - IMPROVED */
.subcategory-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: white;
  box-shadow: 0 0 6px rgba(0,0,0,0.1);
  border-radius: 8px;
  padding: 20px;
  width: max-content;
  min-width: 200px; /* Minimum width for single column */
  max-width: calc(100vw - 20px);
  box-sizing: border-box;
  z-index: 100000000 !important;
  /*margin-top: 5px !important;*/
  border: 1px solid #c0c3c6;
}

.category-name-wrapper:hover .subcategory-dropdown { 
  display: block; 
}

/* Adaptive Grid for Subcategories - IMPROVED */
.subcategory-dropdown ul {
  display: grid;
  gap: 15px 20px;
  text-align: left;
  margin-bottom: 0;
  padding-left: 0;
  /*width: fit-content; */
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* Auto-fit adjusts columns */
}

/* Responsive grid layouts */
@media (min-width: 576px) {
  .subcategory-dropdown ul {
    max-width: 440px; /* Up to 2 columns in medium screens */
  }
}

@media (min-width: 992px) {
  .subcategory-dropdown ul {
    max-width: 970px; /* Up to 4 columns in large screens */
  }
}

.subcategory-dropdown li { 
  width: 200px; 
  list-style: none;
  border-right: 2px solid gray;
}

/* Subcategory link - text blue and bold */
.subcategory-dropdown li > a {
  font-weight: bold;
  color:  #083416;
  display: block;
  text-align: left;
  padding: 4px 0;
  text-decoration: none;
}

/* Sub-subcategory list with reduced spacing - IMPROVED */
/* Sub-subcategory list with reduced spacing - IMPROVED */
.sub-subcategory-list {
  list-style: none;
  /*padding: 0 0 0 10px;*/
  margin: 2px 0 3px 0;
  display: flex;
  flex-direction: column; /* Display in column */
  line-height: 0.5; 
}

.sub-subcategory-list li { 
  margin-bottom: 0; /* Remove bottom margin for closer spacing */
  width: 100%;    /* Force each item to take full width */
  border:white;
}

.sub-subcategory-list li a {
  text-decoration: none;
  color: #313030;
  font-weight: normal; /* Normal weight */
  display: block;
  text-align: left;
  padding: 2px 0; /* Reduced padding for closer spacing */
  transition: color 0.3s ease;
  font-size: 0.95em; /* Slightly smaller font for sub-subcategories */
  line-height: 0.5; /* Reduced line height for closer text */
  color:black;
}

.sub-subcategory-list li a:hover { 
  color: #007bff; 
}
/* Search Results Positioning and Width */

.search-card {
    position: absolute;
    top: 100%;
    left: 0;
    width: 500px;
    z-index: 999999;
    display: none;
    margin-top: 5px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.search-form-mobile {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    background: #fff;
    z-index: 9999999;
    padding: 10px 15px;
    display: none;
    align-items: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.mobile-search-card {
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    border-radius: 0;
    z-index: 9999999;
    display: none;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    max-height: calc(100vh - 70px);
}

.search-result-box {
    max-height: 400px;
    overflow-y: auto;
    background-color: white;
}

.close-search-form-mobile {
    cursor: pointer;
    margin-left: 10px;
}

/* Media queries for responsive search */
@media (max-width: 991px) {
    .search-card {
        width: calc(100vw - 30px);
        left: 15px;
        right: 15px;
        max-height: 80vh;
    }
}