/* =========================================================
   Real Park · Megamenú en cascada (v2)
   Todos los selectores van con prefijo largo para ganarle
   a navber.css (".main-navbar .navbar .navbar-nav .nav-item a").
   ========================================================= */
:root{
  --rp-mm-bg:#0e3d33;
  --rp-mm-bg-hover:#0a2f27;
  --rp-mm-line:rgba(255,255,255,.12);
  --rp-mm-text:rgba(255,255,255,.75);
  --rp-mm-accent:#e8b923;
  --rp-mm-col:290px;
}

/* Anclaje y ocultar el dropdown antiguo solo en desktop */


@media (min-width:992px){
  .main-navbar .navbar{position:relative}
  .main-navbar .navbar .navbar-nav .nav-item.rp-mega{position:static}
  .main-navbar .navbar .navbar-nav .nav-item.rp-mega > a{position:relative} /* ← NUEVA */
  .main-navbar .navbar .navbar-nav .nav-item.rp-mega > .dropdown-menu{display:none !important}
}
/* El banner (#home_rooms_banner, position:relative) va después del header en el HTML
   y se pintaba ENCIMA del megamenú, "robándole" el mouse. Subimos el header. */
.main_header_arael,
.main_header_arae,
.navbar-area,
.main-navbar{z-index:1000}

/* En móvil (meanmenu) se usa el dropdown antiguo */
.mean-container .rp-mega-panel,
.main-responsive-nav .rp-mega-panel{display:none !important}

.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel{
  position:absolute;
  top:100%;
  left:0;
  z-index:999;
  display:flex;
  margin:0;
  padding:0;
  background:var(--rp-mm-bg);
  border:1px solid var(--rp-mm-line);
  border-radius:0 0 10px 10px;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
  overflow:hidden;
  text-align:left;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
}
@media (min-width:992px){
  .main-navbar .navbar .navbar-nav .nav-item.rp-mega.rp-open > .rp-mega-panel,
  .main-navbar .navbar .navbar-nav .nav-item.rp-mega:focus-within > .rp-mega-panel{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    z-index:1000;
    transform:translateY(0);
    transition:opacity .2s ease, transform .2s ease, visibility 0s;
  }
}

.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-slot{width:var(--rp-mm-col);min-height:330px;display:flex}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-slot + .rp-slot{border-left:1px solid var(--rp-mm-line)}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-slot[hidden]{display:none}
/* Paneles de una columna (Tours, Destinos): altura según su contenido */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel[data-align="item"] .rp-slot{min-height:0}
/* Cada columna nueva entra con un pequeño deslizamiento */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-slot:not([data-level="1"]){animation:rpSlotIn .22s ease both}
@keyframes rpSlotIn{
  from{opacity:0;transform:translateX(-10px)}
  to{opacity:1;transform:translateX(0)}
}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-col{display:flex;flex-direction:column;width:100%}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-col[hidden]{display:none}

.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-col-title{
  padding:16px 24px;
  border-bottom:1px solid var(--rp-mm-line);
  color:#fff;
  font-size:15px;
  font-weight:600;
  line-height:1.3;
}

/* Reset de listas (navber.css les pone padding/márgenes) */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel ul{
  display:block;
  list-style:none;
  margin:0;
  padding:12px 0;
  position:static;
  background:none;
  box-shadow:none;
  border:0;
  width:auto;
  opacity:1;
  visibility:inherit;
  pointer-events:inherit;
  transform:none;
}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel li{visibility:inherit;display:block;margin:0;padding:0;position:static;float:none;width:auto}

/* Reset de enlaces: anula padding, tamaño y subrayado del tema */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  position:relative;
  margin:0;
  padding:12px 24px;
  color:var(--rp-mm-text);
  background:transparent;
  font-size:14px;
  font-weight:400;
  line-height:1.3;
  letter-spacing:0;
  text-transform:none;
  text-decoration:none;
  border:0;
  border-left:3px solid transparent;
  transition:background .15s ease, color .15s ease;
}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a::before{content:none;display:none}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a:hover,
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.active{background:var(--rp-mm-bg-hover);color:#fff}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.active{border-left-color:var(--rp-mm-accent);font-weight:500}

/* Flecha en ítems con submenú y en "Ver todas" */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a[data-target]::after,
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.rp-more::after{
  content:"\2192";
  position:static;
  font-size:15px;
  opacity:.75;
  background:none;
  width:auto;
  height:auto;
}

/* Nombre comercial debajo del tipo */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a .rp-sub{display:block;margin-top:3px;font-size:12px;color:rgba(255,255,255,.55)}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a:hover .rp-sub,
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.active .rp-sub{color:var(--rp-mm-accent)}

/* "Ver todas ..." al pie */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.rp-more{
  margin-top:auto;
  border-top:1px solid var(--rp-mm-line);
  border-left:0;
  padding:16px 24px;
  color:#fff;
  font-weight:500;
}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.rp-more:hover{color:var(--rp-mm-accent)}

/* Tarjeta promo */
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-promo{padding:24px;justify-content:center;gap:10px}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-promo-tag{align-self:flex-start;background:var(--rp-mm-accent);color:#0e3d33;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-promo p{margin:0;color:#fff;font-size:17px;font-weight:600;line-height:1.35}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel .rp-promo span{color:var(--rp-mm-text);font-size:13px;line-height:1.5}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.rp-promo-btn{align-self:flex-start;margin-top:6px;padding:9px 16px;border:1px solid rgba(255,255,255,.5);border-radius:6px;color:#fff;font-size:13px}
.main-navbar .navbar .navbar-nav .nav-item.rp-mega .rp-mega-panel a.rp-promo-btn:hover{background:#fff;color:var(--rp-mm-bg)}

@media (min-width:992px) and (max-width:1399px){
  :root{--rp-mm-col:260px}
}

/* =========================================================
   Real Park · Menú móvil por pantallas (estilo celleritech)
   Se activa en pantallas <= 1199px (donde el tema usa meanmenu)
   ========================================================= */
html.rp-mnav-ready .mean-container .mean-nav{display:none !important}
html.rp-mnav-lock, html.rp-mnav-lock body{overflow:hidden !important}

.rp-mnav{
  position:fixed;inset:0;z-index:100000;
  background:#0e3d33;color:#fff;
  font-size:15px;line-height:1.35;
  visibility:hidden;opacity:0;
  pointer-events:none;
  transition:opacity .25s ease, visibility 0s linear .25s;
  overflow:hidden;
}
.rp-mnav.is-open{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .25s ease, visibility 0s}
.rp-mnav *{box-sizing:border-box}

.rp-mnav-screen{
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  background:#0e3d33;
  overflow-y:auto;-webkit-overflow-scrolling:touch;
  transform:translateX(100%);
  transition:transform .3s ease;
  visibility:hidden;
}
.rp-mnav-screen.is-active{transform:translateX(0);visibility:inherit}
.rp-mnav-screen.is-behind{transform:translateX(-30%);visibility:hidden}

/* Barra superior: logo/volver + cerrar */
.rp-mnav-top{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:64px;padding:10px 16px;
  border-bottom:1px solid rgba(255,255,255,.14);
  position:sticky;top:0;background:#0e3d33;z-index:2;
}
.rp-mnav-top img{max-height:44px;width:auto;display:block}
.rp-mnav-back{
  display:flex;align-items:center;gap:10px;
  background:none;border:0;padding:8px 0;margin:0;
  color:rgba(255,255,255,.8);font:inherit;font-size:14px;cursor:pointer;text-align:left;
}
.rp-mnav-back::before{content:"\2190";font-size:16px}
.rp-mnav-close{
  flex:0 0 auto;width:40px;height:40px;
  display:flex;align-items:center;justify-content:center;
  background:none;border:1px solid rgba(255,255,255,.25);border-radius:8px;
  color:#fff;font-size:20px;line-height:1;cursor:pointer;
}

.rp-mnav-title{
  padding:18px 16px;
  border-bottom:1px solid rgba(255,255,255,.14);
  font-size:17px;font-weight:600;color:#fff;
}

.rp-mnav-list{list-style:none;margin:0;padding:10px 0}
.rp-mnav-list li{margin:0;padding:0}
.rp-mnav-link{
  display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;
  padding:15px 16px;margin:0;
  background:none;border:0;border-top:1px solid transparent;border-bottom:1px solid transparent;
  color:rgba(255,255,255,.82);font:inherit;font-size:15px;text-align:left;text-decoration:none;cursor:pointer;
}
.rp-mnav-link:active,
.rp-mnav-link:focus-visible{
  background:#0a2f27;color:#fff;outline:none;
  border-top-color:#e8b923;border-bottom-color:#e8b923;
}
.rp-mnav-link.has-sub::after{content:"\2192";color:rgba(255,255,255,.7);font-size:16px}
.rp-mnav-link .rp-sub{display:block;margin-top:3px;font-size:12px;color:rgba(255,255,255,.55)}

/* Pie de cada pantalla */
.rp-mnav-foot{margin-top:auto;padding:8px 16px 24px}
.rp-mnav-more{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 0;margin-bottom:12px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#fff;font-weight:500;text-decoration:none;
}
.rp-mnav-more::after{content:"\2192"}
.rp-mnav-card{
  display:block;padding:12px 14px;margin-bottom:10px;
  border:1px solid rgba(255,255,255,.22);border-radius:8px;
  color:#fff;text-decoration:none;
}
.rp-mnav-card strong{display:block;font-size:14px}
.rp-mnav-card span{display:block;margin-top:2px;font-size:12px;color:rgba(255,255,255,.65)}
.rp-mnav-cta{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 16px;border-radius:8px;
  background:#e8b923;color:#0e3d33;font-weight:700;text-decoration:none;
}
.rp-mnav-cta::after{content:"\2192"}

/* Botón propio (solo se usa si el tema no tiene el botón de meanmenu) */
.rp-mnav-toggle{
  display:none;width:42px;height:42px;
  background:none;border:1px solid rgba(255,255,255,.4);border-radius:8px;
  color:#fff;font-size:22px;line-height:1;cursor:pointer;
}
@media (max-width:1199px){ .rp-mnav-toggle.is-needed{display:inline-flex;align-items:center;justify-content:center} }
@media (min-width:1200px){ .rp-mnav{display:none !important} }
