/* ==========================================
   MEANMENU MOBILE TOGGLE CSS
   Cleaned, de-duplicated version
========================================== */

/* Mobile Menu Area */
.mobile-menu-area {
  background: #ffffff;
  position: relative;
  z-index: 9999;
}

/* Main Bar */
.mean-container .mean-bar {
  float: left;
  width: 100%;
  min-height: 60px;
  padding: 4px 0 0;
  position: relative;
  top: 49px;
  background: transparent;
  z-index: 999;
  box-sizing: content-box;
}

.mean-container .mean-bar *,
.mean-nav .wrapper {
  box-sizing: content-box;
  margin: 0;
  padding: 0;
  width: 100%;
}

/* Toggle Button */
.mean-container a.meanmenu-reveal {
  position: absolute;
  top: -117px;
  right: 15px;
  width: 22px;
  height: 22px;
  padding: 18px;
  display: block;
  cursor: pointer;
  text-indent: -9999em;
  line-height: 22px;
  font-size: 1px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  color: #ffffff;
  background: #4f0c0c;
  text-decoration: none;
  border-radius: 6px;
  z-index: 10000;
}

/* Hamburger Lines */
.mean-container a.meanmenu-reveal span {
  display: block;
  height: 3px;
  margin-top: 3px;
  background: #ffffff;
  border-radius: 2px;
  transition: all 0.3s ease;
}

.mean-container a.meanmenu-reveal:hover span {
  background: #222;
}

.meanmenu-reveal.meanclose:hover {
  color: #ffffff !important;
}

/* Navigation Wrapper */
.mean-container .mean-nav {
  float: left;
  width: 100%;
  background: #0c1923;
  position: relative;
  z-index: 998;
}

/* UL Reset */
.mean-container .mean-nav ul {
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
}

/* Menu Items */
.mean-container .mean-nav ul li {
  float: left;
  width: 100%;
  position: relative;
  background: #444;
  border-top: 1px solid #ddd;
}

/* Menu Links */
.mean-container .mean-nav ul li a {
  display: block;
  float: left;
  width: 90%;
  padding: 1em 5%;
  margin: 0;
  background: #f8f8f8;
  color: #232323;
  text-decoration: none;
  text-transform: capitalize;
  text-align: left;
  font-size: 14px;
}

.mean-container .mean-nav ul li a:hover {
  background: #f8f8f8;
  border-radius: 0;
}

/* Last Item */
.mean-container .mean-nav ul li.mean-last a {
  border-bottom: 0;
  margin-bottom: 0;
}

/* Submenu Links */
.mean-container .mean-nav ul li li a {
  width: 80%;
  padding: 1em 10%;
  font-size: 14px;
  font-weight: 500;
  color: #232323;
  opacity: 0.75;
  text-transform: capitalize;
  text-shadow: none !important;
  visibility: visible;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}

/* Nested Submenus */
.mean-container .mean-nav ul li li li a {
  width: 70%;
  padding: 1em 15%;
}

.mean-container .mean-nav ul li li li li a {
  width: 60%;
  padding: 1em 20%;
}

.mean-container .mean-nav ul li li li li li a {
  width: 50%;
  padding: 1em 25%;
}

/* Expand Button */
.mean-container .mean-nav ul li a.mean-expand {
  position: absolute;
  top: -4px;
  right: 0;
  height: 15px;
  padding: 12px !important;
  text-align: right;
  font-weight: 700;
  border: 0 !important;
  background: none !important;
  z-index: 2;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
  background: none !important;
}

/* Push */
.mean-container .mean-push {
  float: left;
  width: 100%;
  margin: 0;
  padding: 0;
  clear: both;
}

/* Remove */
.mean-remove {
  display: none !important;
}

/* Hide MENU Text */
.mean-container .mean-bar::after {
  display: none;
}

/* Optional Logo */
.mean-container .mean-bar::before {
  position: absolute;
  top: 18px;
  left: 10px;
  font-size: 28px;
  font-weight: 600;
  color: #ffffff;
}

/* ==========================================
   Order Now button inside mobile menu
========================================== */
.mean-container .mean-nav ul li.restho-btn2 {
  background: #0c1923;
  border-top: none;
  padding: 16px 5% 20px;
  text-align: center;
}

.mean-container .mean-nav ul li.restho-btn2 a {
  display: block;
  float: none;
  width: 100%;
  background: #500c0d;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 14px 20px;
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.3px;
  box-shadow: 0 6px 16px rgba(80, 12, 13, 0.35);
  transition: background 0.3s ease, transform 0.15s ease;
}

.mean-container .mean-nav ul li.restho-btn2 a:hover,
.mean-container .mean-nav ul li.restho-btn2 a:active {
  background: #6d1214;
  transform: translateY(-1px);
}

.mean-container .mean-nav ul li.restho-btn2 a i {
  color: #fff;
  margin-left: 8px;
}

/* ==========================================
   MODAL FIX
   Prevent MeanMenu from appearing inside popups
========================================== */
.modal,
.modal-backdrop,
.popup,
.popup-overlay,
.mfp-wrap,
.mfp-bg {
  z-index: 1050 !important;
}

/* Menu stays above page content but below modal */
.mean-container,
.mean-container .mean-bar,
.mean-container .mean-nav {
  z-index: 999 !important;
}

/* Hide menu if rendered inside popup */
.modal .mean-container,
.popup .mean-container,
.mfp-wrap .mean-container {
  display: none !important;
}

/* ==========================================
   RESPONSIVE
========================================== */
@media (max-width: 767px) {
  .mean-container .mean-bar {
    top: 49px;
  }

  .mean-container a.meanmenu-reveal {
    top: -117px;
    right: 15px;
  }
}
