/* r10 1790011736 */
/* NOTA sobre los !important en los padding de los enlaces:
   SmartMenus le agrega la clase .highlighted al <a> mientras el submenú está
   abierto, y Elementor trae esta regla en widget-nav-menu.min.css:

     .elementor-nav-menu--main .elementor-nav-menu a,
     .elementor-nav-menu--main .elementor-nav-menu a.highlighted,
     ... { padding: 13px 20px; }

   Su especificidad (0,3,1) le gana a la nuestra, así que al hacer hover el
   padding izquierdo caía de 48px a 20px y el texto se montaba sobre el ícono.
   El !important es la forma mínima de sostener nuestro padding en ese estado. */

/* BUILD9 1789821829 */
/* ===========================================================================
   ADAGIO — Mega menu del header
   Se aplica automáticamente a cualquier item del menú principal que tenga
   3 niveles (hoy: "Software"). Los items con un solo nivel de submenú
   (hoy: "Servicios") mantienen un desplegable simple, solo reestilizado.

   Este archivo vive en wp-content/uploads/adagio-megamenu/ y lo carga el
   mu-plugin wp-content/mu-plugins/adagio-megamenu.php
   Las rutas de los iconos son RELATIVAS a este archivo, así que siguen
   funcionando al mover el sitio a producción.

   No se agrega JavaScript: la apertura/cierre por hover ya la maneja
   SmartMenus, incluido en el widget Nav Menu de Elementor Pro.
   =========================================================================== */

/* ===========================================================================
   VARIABLES
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) {
  --adg-pad: 22px;
  --adg-nav-w: 214px;
  --adg-gap: 18px;
  --adg-preview-w: 196px;
  --adg-blue: #2f43e8;
  --adg-ink: #23232b;
  --adg-muted: #7c7c88;
  --adg-panel: #ededf0;
  --adg-pill: #f1f1f4;
  --adg-border: #e8e8ea;
}

/* ===========================================================================
   CONTENEDOR PRINCIPAL  (nivel 1 = la tarjeta completa)
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul {
  width: auto !important;
  min-width: min(980px, 94vw) !important;
  max-width: min(980px, 94vw);
  min-height: 470px;
  box-sizing: border-box;
  padding: var(--adg-pad);
  padding-right: calc(var(--adg-pad) + var(--adg-preview-w) + var(--adg-gap));
  background: #ffffff;
  border: 1px solid var(--adg-border);
  border-radius: 24px;
  box-shadow: 0 24px 60px -34px rgba(20, 20, 40, 0.28);
  overflow: visible;
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul * { box-sizing: border-box; }

/* El <li> de cada categoría deja de ser el ancla de posición de su propio
   submenú: así el panel de contenido cae siempre en el mismo lugar, sin
   importar sobre qué categoría estés haciendo hover. */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li {
  position: static !important;
  width: var(--adg-nav-w);
  margin: 0 0 2px 0;
}

/* ===========================================================================
   NAVEGACIÓN  (columna izquierda: las categorías)
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a {
  display: block;
  padding: 12px 16px !important;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--adg-ink);
  text-transform: none;
  white-space: normal;
  transition: background-color .15s ease, color .15s ease;
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a:hover,
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a[aria-expanded="true"],
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li:hover > a {
  background: var(--adg-pill);
  color: var(--adg-blue);
}

/* Las flechitas de submenú no van en este diseño */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a .sub-arrow,
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a .dropdown-menu-toggle { display: none !important; }

/* ===========================================================================
   CONTENIDO  (columna central: el submenú de nivel 2, reposicionado)
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul {
  position: absolute !important;
  top: var(--adg-pad) !important;
  bottom: var(--adg-pad);
  left: calc(var(--adg-pad) + var(--adg-nav-w) + var(--adg-gap)) !important;
  width: calc(100% - var(--adg-pad) * 2 - var(--adg-nav-w) - var(--adg-gap) * 2 - var(--adg-preview-w)) !important;
  /* SmartMenus posiciona los submenus con margin-left / margin-top inline
     (setea left:0 y desplaza con margenes). Si no los anulamos, ese margen
     se suma a nuestro left y el panel se va hacia la derecha tapando el
     preview. */
  margin: 0 !important;
  min-width: 0;
  height: auto;
  padding: 10px;
  background: var(--adg-panel);
  border: 0;
  border-radius: 20px;
  box-shadow: none;
  overflow-y: auto; /* red de seguridad: si agregás muchos items, subí el
                       min-height del panel en vez de dejar que scrollee */
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li { width: 100%; }

/* Cada fila: icono como background, título en ::before, descripción en ::after.
   El texto real del link se oculta con font-size:0 para poder mostrar el
   título con sus acentos y mayúsculas correctas sin tocar el HTML.
   Si algún día corregís las etiquetas en Apariencia -> Menús, podés borrar
   los ::before y el font-size:0 y el título saldrá del propio link. */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a {
  display: block;
  position: relative;
  padding: 11px 14px 11px 48px !important;
  border-radius: 14px;
  border: 1px solid transparent;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 14px 13px;
  background-size: 22px 22px;
  font-size: 0;
  line-height: 0; /* el texto real del link no debe generar caja de linea */
  text-transform: none;
  white-space: normal !important; /* Elementor y SmartMenus fuerzan nowrap */
  transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a::before {
  display: block;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--adg-ink);
  transition: color .15s ease;
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a::after {
  display: block;
  margin-top: 2px;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--adg-muted);
}

/* Fila destacada: la primera de cada categoría (como "Capacitación" en la
   referencia) y cualquiera con hover. */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li:first-child > a,
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a:hover {
  background-color: #ffffff;
  border-color: #e9e9ee;
  box-shadow: 0 4px 14px -8px rgba(20, 20, 40, 0.25);
}

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li:first-child > a::before,
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a:hover::before {
  color: var(--adg-blue);
}

/* ===========================================================================
   PREVIEW  (columna derecha: el mockup)
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul::after {
  content: "";
  position: absolute;
  top: var(--adg-pad);
  right: var(--adg-pad);
  bottom: var(--adg-pad);
  width: var(--adg-preview-w);
  border-radius: 18px;
  background-color: #e7e9f8;
  background-image: url("preview.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 88% auto;
}

/* ===========================================================================
   ICONOS + TEXTOS POR ITEM
   Cada bloque se ancla a la clase menu-item-<ID> que genera WordPress.
   Para agregar un item nuevo: copiá un bloque, cambiá el ID, el archivo
   .svg y los textos.
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2518 > a {
  background-image: url("ico_sm_02_01_01.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2518 > a::before { content: "Adagio Base"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2518 > a::after  { content: "Administra la estructura organizacional y cumplimiento laboral eficientemente"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2519 > a {
  background-image: url("ico_sm_02_01_02.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2519 > a::before { content: "Documentos"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2519 > a::after  { content: "Gestiona documentos y archivos empresariales de forma segura y eficiente"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2520 > a {
  background-image: url("ico_sm_02_01_03.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2520 > a::before { content: "NOM-035"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2520 > a::after  { content: "Identifica y previene riesgos psicosociales en tu empresa"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2521 > a {
  background-image: url("ico_sm_02_01_04.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2521 > a::before { content: "Portal de empleados"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2521 > a::after  { content: "Administra procesos laborales y mejora la comunicación interna"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2526 > a {
  background-image: url("ico_sm_02_02_01.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2526 > a::before { content: "Nómina e IMSS"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2526 > a::after  { content: "Automatiza funciones en solo 3 pasos: cálculo, pago y firma"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2525 > a {
  background-image: url("ico_sm_02_02_02.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2525 > a::before { content: "Asistencia"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2525 > a::after  { content: "Controla y registra la asistencia laboral de tus empleados"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2528 > a {
  background-image: url("ico_sm_02_02_03.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2528 > a::before { content: "Recursos humanos"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2528 > a::after  { content: "Centraliza información personal y laboral de tus colaboradores"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2527 > a {
  background-image: url("ico_sm_02_02_04.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2527 > a::before { content: "Organigrama"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2527 > a::after  { content: "Gestiona tu organigrama y plazas de forma estratégica"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2531 > a {
  background-image: url("ico_sm_02_03_01.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2531 > a::before { content: "Firma digital"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2531 > a::after  { content: "Firma documentos laborales digitalmente con validez y seguridad"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2529 > a {
  background-image: url("ico_sm_02_03_02.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2529 > a::before { content: "Asignación de equipos"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2529 > a::after  { content: "Gestiona la asignación de equipos y activos empresariales"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2532 > a {
  background-image: url("ico_sm_02_03_03.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2532 > a::before { content: "Transporte"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2532 > a::after  { content: "Administra flotilla y vehículos de la organización"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2530 > a {
  background-image: url("ico_sm_02_03_04.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2530 > a::before { content: "Comedor y restaurante"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2530 > a::after  { content: "Gestiona comedor corporativo, menús y pedidos internos"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2522 > a {
  background-image: url("ico_sm_02_04_01.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2522 > a::before { content: "Capacitación"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2522 > a::after  { content: "Optimiza la formación y crecimiento de colaboradores"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2523 > a {
  background-image: url("ico_sm_02_04_02.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2523 > a::before { content: "Evaluación de desempeño"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2523 > a::after  { content: "Evalúa y mejora el desempeño de tus colaboradores"; }

.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2524 > a {
  background-image: url("ico_sm_02_04_03.svg");
}
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2524 > a::before { content: "Reclutamiento y selección"; }
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-2524 > a::after  { content: "Optimiza el reclutamiento y contratación de talento"; }

/* Pendientes de crear en Apariencia -> Menús (categoría "Desarrollo de
   talento"), para igualar la referencia. Cuando existan, reemplazá los IDs:

   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a { background-image: url("ico_sm_02_04_04.svg"); }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::before { content: "Definición de objetivos"; }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::after  { content: "Define y da seguimiento a objetivos organizacionales"; }

   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a { background-image: url("ico_sm_02_04_05.svg"); }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::before { content: "Encuestas"; }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::after  { content: "Recopila feedback con encuestas empresariales personalizadas"; }

   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a { background-image: url("ico_sm_02_04_06.svg"); }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::before { content: "Clima laboral"; }
   .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li.menu-item-XXXX > a::after  { content: "Mide y mejora el clima laboral organizacional"; }
*/

/* ===========================================================================
   DESPLEGABLE SIMPLE  (items con un solo nivel, hoy "Servicios")
   =========================================================================== */
.elementor-nav-menu--main > .elementor-nav-menu > li:not(:has(> ul > li > ul)) > ul.elementor-nav-menu--dropdown {
  padding: 8px;
  background: #ffffff;
  border: 1px solid var(--adg-border, #e8e8ea);
  border-radius: 16px;
  box-shadow: 0 18px 44px -30px rgba(20, 20, 40, 0.3);
}

.elementor-nav-menu--main > .elementor-nav-menu > li:not(:has(> ul > li > ul)) > ul.elementor-nav-menu--dropdown > li > a {
  border-radius: 10px;
  padding: 10px 14px !important;
  font-size: 14px;
}

.elementor-nav-menu--main > .elementor-nav-menu > li:not(:has(> ul > li > ul)) > ul.elementor-nav-menu--dropdown > li > a:hover {
  background: #f1f1f4;
  color: #2f43e8;
}

/* ===========================================================================
   ESCRITORIO ANGOSTO  (1025px - 1279px)
   El menú horizontal existe sólo por encima de 1024px (más abajo Elementor
   pasa a hamburguesa). En este rango "Software" arranca muy a la izquierda
   y un panel de 980px se sale de la pantalla, así que lo achicamos.
   =========================================================================== */
@media (min-width: 1025px) and (max-width: 1279px) {
  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) {
    --adg-pad: 18px;
    --adg-nav-w: 180px;
    --adg-gap: 14px;
    --adg-preview-w: 160px;
  }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul {
    min-width: 820px !important;
    max-width: 820px;
    min-height: 450px;
    border-radius: 20px;
  }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > a { font-size: 13px; padding: 10px 12px !important; }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a {
    padding: 10px 12px 10px 44px !important;
    background-position: 12px 12px;
  }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a::before { font-size: 13.5px; }
  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a::after { font-size: 12px; }
}

/* ===========================================================================
   HAMBURGUESA  (<= 1024px)
   A este ancho Elementor muestra este mismo menú dentro del panel
   hamburguesa, apilado a ancho completo: desarmamos las 3 columnas.
   =========================================================================== */
@media (max-width: 1024px) {
  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul {
    position: relative !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100%;
    min-height: 0;
    padding: 12px !important;
    border: 0;
    border-radius: 16px;
    box-shadow: none;
  }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li { width: 100%; }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul {
    position: relative !important;
    top: auto !important;
    bottom: auto;
    left: auto !important;
    width: 100% !important;
    height: auto;
    margin: 4px 0 10px !important;
    padding: 8px;
    overflow: visible;
  }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul::after { display: none; }

  .elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul > li > ul > li > a {
    padding: 10px 12px 10px 44px !important;
    background-position: 12px 12px;
  }
}

/* Imágenes dentro del componente: nunca desbordan ni se deforman */
.elementor-nav-menu--main > .elementor-nav-menu > li:has(> ul > li > ul) > ul img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
