/* CSS Only Dropdown Fallback for Elementor Static Sites */
.elementor-nav-menu .menu-item-has-children {
  position: relative;
}
.elementor-nav-menu .menu-item-has-children .sub-menu {
  display: none !important;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #ffffff;
  min-width: 220px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.1);
  z-index: 10000;
  padding: 15px 0;
  margin: 0;
  list-style: none;
  border-top: 2px solid #000;
}
.elementor-nav-menu .menu-item-has-children:hover > .sub-menu {
  display: block !important;
}
.elementor-nav-menu .sub-menu .menu-item {
  padding: 0;
  margin: 0;
  width: 100%;
}
.elementor-nav-menu .sub-menu .menu-item a {
  padding: 10px 20px !important;
  color: #333 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  display: block !important;
  transition: background 0.2s, color 0.2s;
}
.elementor-nav-menu .sub-menu .menu-item a:hover {
  background-color: #f8f8f8 !important;
  color: #000 !important;
}

/* Lightbox Styling */
.custom-lightbox {
  display: none;
  position: fixed;
  z-index: 99999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.95);
  justify-content: center;
  align-items: center;
}
.lightbox-content {
  max-width: 90%;
  max-height: 80%;
  box-shadow: 0 0 30px rgba(0,0,0,0.5);
}
.lightbox-close {
  position: absolute;
  top: 30px;
  right: 40px;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
  z-index: 100000;
}
.lightbox-prev, .lightbox-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  font-size: 50px;
  cursor: pointer;
  padding: 20px;
  user-select: none;
  transition: background 0.2s;
  background: rgba(255,255,255,0.05);
  border-radius: 5px;
}
.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }
.lightbox-prev:hover, .lightbox-next:hover {
  background: rgba(255,255,255,0.15);
}
