/* Menu Override Stylesheet - Loads Last to Override Everything */

/* Logo styling */
.logo-home {
  color: #000 !important;
}

/* Home Page - Transparent Header and Navbar */
#header.home-page-header {
  background-color: transparent !important;
}

/* Make navbar semi-transparent on home page only */
.navbar.navbar-default.main-menu.home-page-menu {
  background-color: rgba(232, 232, 232, 0.4) !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  background: rgba(232, 232, 232, 0.4) !important;
}

/* Center menu vertically */
.main-menu .container {
  display: flex !important;
  align-items: center !important;
  height: 70px !important;
}

/* Main Menu Items - Force Red and No Wrap */
#main_menu > li > a,
#main_menu > li > a:link,
#main_menu > li > a:visited {
  color: #d62828 !important;
  white-space: nowrap !important;
  font-size: 13px !important;
  padding: 0 12px !important;
  text-decoration: none !important;
  line-height: 70px !important;
}

nav.main-menu #main_menu > li > a:hover,
nav.main-menu #main_menu li a:hover,
#main_menu > li > a:hover,
#main_menu li a:hover {
  color: #d62828 !important;
}

/* Dropdown Menu Container */
.navbar-nav .dropdown-menu,
#main_menu .dropdown-menu,
#main_menu > li.dropdown > .dropdown-menu {
  display: none;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  min-width: 220px !important;
  background-color: #ffffff !important;
  border: 1px solid #ddd !important;
  border-top: 2px solid #d62828 !important;
  box-shadow: 0 6px 12px rgba(0,0,0,0.175) !important;
  padding: 0 !important;
  margin: 0 !important;
  z-index: 9999 !important;
}

/* Show Dropdown When Open */
.navbar-nav .dropdown.open > .dropdown-menu,
#main_menu .dropdown.open > .dropdown-menu,
#main_menu > li.dropdown.open > .dropdown-menu {
  display: block !important;
}

/* Dropdown Menu Items */
.navbar-nav .dropdown-menu > li,
#main_menu .dropdown-menu > li {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  line-height: normal !important;
  float: none !important;
}

/* Dropdown Links - Force Red */
.navbar-nav .dropdown-menu > li > a,
#main_menu .dropdown-menu > li > a,
#main_menu .dropdown-menu li a {
  display: block !important;
  padding: 12px 20px !important;
  color: #d62828 !important;
  font-size: 14px !important;
  font-weight: normal !important;
  line-height: 1.5 !important;
  text-transform: none !important;
  white-space: normal !important;
  background-color: #ffffff !important;
  border-bottom: 1px solid #f0f0f0 !important;
  text-decoration: none !important;
}

/* Remove border from last item */
.navbar-nav .dropdown-menu > li:last-child > a,
#main_menu .dropdown-menu > li:last-child > a {
  border-bottom: none !important;
}

/* Hover State - Light Gray Background, Keep Red Text */
.navbar-nav .dropdown-menu > li > a:hover,
.navbar-nav .dropdown-menu > li > a:focus,
#main_menu .dropdown-menu > li > a:hover,
#main_menu .dropdown-menu > li > a:focus,
#main_menu .dropdown-menu li a:hover {
  background-color: #f8f8f8 !important;
  color: #d62828 !important;
  text-decoration: none !important;
}

/* Divider */
.navbar-nav .dropdown-menu .divider,
#main_menu .dropdown-menu .divider {
  height: 1px !important;
  margin: 0 !important;
  background-color: #e5e5e5 !important;
}

/* Hide expand/collapse icons globally */
.fa-plus-square-o,
.fa-minus-square-o,
.collapse-sign,
#left-panel .fa-plus-square-o,
#left-panel .fa-minus-square-o,
#left-panel .collapse-sign {
  display: none !important;
}

/* Franchise Contact Info - Last Menu Item */
#main_menu > li.franchise-contact-info {
  display: flex !important;
  align-items: center !important;
  padding: 0 15px !important;
}

#main_menu > li.franchise-contact-info img {
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  margin-right: 10px !important;
  object-fit: cover !important;
}

#main_menu > li.franchise-contact-info .franchise-text {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  line-height: 1 !important;
  gap: 1px !important;
}

#main_menu > li.franchise-contact-info .franchise-text span {
  font-size: 12px !important;
  color: #333 !important;
  white-space: nowrap !important;
  line-height: 1.1 !important;
}

#main_menu > li.franchise-contact-info .franchise-text a {
  color: #d62828 !important;
  font-size: 12px !important;
  text-decoration: none !important;
  line-height: 1.1 !important;
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 !important;
}

#main_menu > li.franchise-contact-info .franchise-text a:hover {
  color: #b91f1f !important;
  text-decoration: underline !important;
}
