/* ==========================================================================
   SVM LAND PROMOTERS (PVT) LTD. - SHARED MOBILE NAVIGATION CSS (navigation.css)
   ========================================================================== */

.mobile-menu-toggle {
  display: flex !important;
  position: fixed !important;
  top: 20px !important;
  right: 20px !important;
  width: clamp(42px, 5.5vw, 50px) !important;
  height: clamp(42px, 5.5vw, 50px) !important;
  border-radius: 50% !important;
  background: rgba(6, 25, 20, 0.85) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  cursor: pointer !important;
  z-index: 1001 !important;
  padding: 0 !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15) !important;
}

@media (max-width: 768px) {
  .mobile-menu-toggle {
    width: clamp(40px, 6vw, 44px) !important;
    height: clamp(40px, 6vw, 44px) !important;
  }
}

.mobile-menu-toggle:hover {
  background: rgba(46, 125, 50, 0.9) !important;
  transform: translateY(-2px) !important;
}

.mobile-menu-toggle.is-active {
  background: rgba(140, 220, 50, 0.18) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(140, 220, 50, 0.15) !important;
  box-shadow: 0 0 18px rgba(140, 220, 50, 0.18) !important;
}

.hamburger-line {
  display: block !important;
  width: clamp(14px, 2.2vw, 18px) !important;
  height: 2px !important;
  background: #ffffff !important;
  transition: all 0.3s ease !important;
  border-radius: 2px !important;
}

.mobile-menu-toggle.is-active .hamburger-line:nth-child(1) {
  transform: translateY(6px) rotate(45deg) !important;
}

.mobile-menu-toggle.is-active .hamburger-line:nth-child(2) {
  opacity: 0 !important;
}

.mobile-menu-toggle.is-active .hamburger-line:nth-child(3) {
  transform: translateY(-6px) rotate(-45deg) !important;
}

.mobile-menu-overlay {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 1000 !important;
  visibility: hidden !important;
  opacity: 0 !important;
  transition: opacity 0.2s ease, visibility 0.2s ease !important;
  pointer-events: none !important;
}

.mobile-menu-overlay.is-open {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.mobile-menu-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.35) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}

.mobile-menu-nav {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 280px !important;
  height: 100% !important;
  height: 100dvh !important;
  background: rgba(6, 25, 20, 0.88) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 80px 30px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 15px !important;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.25) !important;
  opacity: 0 !important;
  transform: translateY(-8px) !important;
  transition: opacity 0.2s ease, transform 0.2s ease !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.mobile-menu-nav::-webkit-scrollbar {
  width: 3px !important;
}
.mobile-menu-nav::-webkit-scrollbar-track {
  background: transparent !important;
}
.mobile-menu-nav::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1) !important;
  border-radius: 99px !important;
}

.mobile-menu-overlay.is-open .mobile-menu-nav {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.mobile-menu-item {
  font-family: "Plus Jakarta Sans", sans-serif !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  text-decoration: none !important;
  padding: 14px 18px !important;
  border-radius: 12px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  cursor: pointer !important;
  display: block !important;
}

.mobile-menu-item::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 10px !important;
  bottom: 10px !important;
  width: 3px !important;
  background: #8bd320 !important;
  opacity: 0 !important;
  transform: scaleY(0) !important;
  border-radius: 99px !important;
  transition: all 0.25s ease !important;
}

.mobile-menu-item:hover {
  background: rgba(140, 220, 50, 0.08) !important;
  transform: translateX(6px) !important;
  color: #a3e635 !important;
}

.mobile-menu-item:hover::before {
  opacity: 1 !important;
  transform: scaleY(1) !important;
}

/* Active State Styles */
.mobile-menu-item.active,
.mobile-menu-item.is-active {
  background: rgba(140, 220, 50, 0.12) !important;
  border: 1px solid rgba(140, 220, 50, 0.18) !important;
  box-shadow: 0 0 18px rgba(140, 220, 50, 0.18) !important;
}

.mobile-menu-item.active::before,
.mobile-menu-item.is-active::before {
  opacity: 1 !important;
  transform: scaleY(1) !important;
}

.mobile-menu-divider {
  height: 1px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  margin: 10px 0 !important;
  display: block !important;
}
