.elementor-11187 .elementor-element.elementor-element-0060052{--display:flex;--min-height:0px;--justify-content:flex-start;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:24px;--padding-bottom:24px;--padding-left:22px;--padding-right:22px;}.elementor-11187 .elementor-element.elementor-element-0060052:not(.elementor-motion-effects-element-type-background), .elementor-11187 .elementor-element.elementor-element-0060052 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu .elementor-item{font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:600;}.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item{color:#3D3D3D;fill:#3D3D3D;}.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item:focus{color:#2659A5;fill:#2659A5;}.elementor-11187 .elementor-element.elementor-element-a5d6332 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#2659A5;}.elementor-11187 .elementor-element.elementor-element-843c8b3{--spacer-size:50px;}.elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button{background-color:#2659A5;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:700;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;word-spacing:0em;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#2659A5;border-radius:100px 100px 100px 100px;padding:16px 45px 16px 45px;}.elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button:hover, .elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button:focus{background-color:#02010100;color:#2659A5;}.elementor-11187 .elementor-element.elementor-element-863b70e.elementor-element{--align-self:flex-start;--flex-grow:1;--flex-shrink:0;}.elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button:hover svg, .elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button:focus svg{fill:#2659A5;}#elementor-popup-modal-11187 .dialog-widget-content{animation-duration:1.2s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);margin:0px 0px 0px 0px;}#elementor-popup-modal-11187{background-color:#0814284D;justify-content:flex-end;align-items:flex-start;pointer-events:all;}#elementor-popup-modal-11187 .dialog-message{width:340px;height:100vh;align-items:flex-start;padding:0px 0px 0px 0px;}#elementor-popup-modal-11187 .dialog-close-button{display:flex;}@media(max-width:1024px){.elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button{font-size:14px;padding:14px 35px 14px 35px;}}@media(max-width:767px){.elementor-11187 .elementor-element.elementor-element-863b70e .elementor-button{padding:12px 25px 12px 25px;}}/* Start custom CSS for container, class: .elementor-element-0060052 *//* =========================================================
   POPUP MENÚ MÓVIL · LEAN
   Adaptado sobre CSS existente:
   - Alineación superior derecha
   - Ancho ligeramente menor
   - Altura fija más alta
   - Botón Solicitar Demo fijado abajo
   - Submenús desplegando hacia abajo
========================================================= */

/* =========================================================
   ESTRUCTURA GENERAL DEL POPUP
========================================================= */

.elementor-popup-modal {
  align-items: flex-start !important;
  justify-content: flex-end !important;
  padding: 0 !important;
}

/* Evita centrado vertical automático */
.elementor-popup-modal .dialog-widget {
  align-items: flex-start !important;
  justify-content: flex-end !important;
}

/* Caja principal del popup */
.elementor-popup-modal .dialog-widget-content {
  width: auto !important;
  height: auto !important;

  min-height: 0 !important;
  max-height: none !important;

  overflow: visible !important;

  margin-top: 0 !important;
  margin-bottom: auto !important;
  margin-left: auto !important;
  margin-right: 20px !important;

  align-self: flex-start !important;

  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Contenido interno del popup */
.elementor-popup-modal .dialog-message {
  width: auto !important;
  height: auto !important;

  min-height: 0 !important;
  max-height: none !important;

  overflow: visible !important;
  padding: 0 !important;
}

/* =========================================================
   CONTENEDOR INTERNO DEL MENÚ
========================================================= */

.lean-mobile-offcanvas {
  width: 315px !important;
  max-width: 78vw !important;

  height: auto !important;
  min-height: 72vh !important;
  max-height: 82vh !important;

  overflow: hidden !important;

  background: #ffffff !important;

  padding: 28px 28px 34px 28px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 0 !important;
}

.lean-mobile-offcanvas,
.lean-mobile-offcanvas * {
  box-sizing: border-box;
}

/* Botón de cierre nativo */
.elementor-popup-modal .dialog-close-button {
  top: 18px !important;
  right: 20px !important;

  color: #3D3D3D !important;
  font-size: 20px !important;
  line-height: 1 !important;

  z-index: 20 !important;
}

.elementor-popup-modal .dialog-close-button svg {
  width: 20px !important;
  height: 20px !important;
  fill: #3D3D3D !important;
}

/* =========================================================
   MENÚ MÓVIL · ESTILO BASE
========================================================= */

.lean-mobile-popup-nav {
  width: 100% !important;
  flex: 0 0 auto !important;
}

.lean-mobile-popup-nav .elementor-nav-menu,
.lean-mobile-popup-nav .elementor-nav-menu ul {
  width: 100% !important;
}

/* Lista principal */
.lean-mobile-popup-nav .elementor-nav-menu {
  display: flex !important;
  flex-direction: column !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
}

/* Items principales */
.lean-mobile-popup-nav .elementor-nav-menu > li {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Links principales */
.lean-mobile-popup-nav .elementor-nav-menu > li > a {
  width: 100% !important;

  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;

  color: #3D3D3D !important;
  background: transparent !important;

  padding: 12px 0 !important;
  margin: 0 !important;

  justify-content: flex-start !important;

  border: none !important;
  text-decoration: none !important;
}

/* Hover / activo */
.lean-mobile-popup-nav .elementor-nav-menu > li > a:hover,
.lean-mobile-popup-nav .elementor-nav-menu > li.current-menu-item > a,
.lean-mobile-popup-nav .elementor-nav-menu > li.current-menu-ancestor > a {
  color: #2659A5 !important;
  background: transparent !important;
}

/* Primer item / Productos */
.lean-mobile-popup-nav .elementor-nav-menu > li:first-child > a {
  color: #2659A5 !important;
  border-bottom: 3px solid #3D3D3D !important;
  padding-bottom: 13px !important;
  margin-bottom: 12px !important;
}

/* Flecha del desplegable */
.lean-mobile-popup-nav .sub-arrow {
  margin-left: 8px !important;
  color: currentColor !important;
  fill: currentColor !important;
}

/* =========================================================
   SUBMENÚ · FORZADO A DESPLEGAR HACIA ABAJO
========================================================= */

.lean-mobile-popup-nav .elementor-nav-menu .sub-menu {
  position: static !important;

  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;

  transform: none !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;

  background: transparent !important;
  box-shadow: none !important;
  border: none !important;

  margin: 0 0 8px 0 !important;
  padding: 0 0 0 14px !important;

  z-index: auto !important;
}

/* Items del submenú */
.lean-mobile-popup-nav .elementor-nav-menu .sub-menu li {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Links del submenú */
.lean-mobile-popup-nav .elementor-nav-menu .sub-menu a {
  width: 100% !important;

  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: .92rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;

  color: #5A5A5A !important;
  background: transparent !important;

  padding: 8px 0 !important;
  margin: 0 !important;

  border: none !important;
  text-decoration: none !important;
}

/* Hover submenú */
.lean-mobile-popup-nav .elementor-nav-menu .sub-menu a:hover {
  color: #2659A5 !important;
  background: transparent !important;
}

/* Elimina fondo naranja heredado */
.lean-mobile-popup-nav .elementor-item.highlighted,
.lean-mobile-popup-nav .elementor-item:focus,
.lean-mobile-popup-nav .elementor-sub-item.highlighted,
.lean-mobile-popup-nav .elementor-sub-item:focus {
  background: transparent !important;
  color: #2659A5 !important;
}

/* Elimina bordes raros del desplegable */
.lean-mobile-popup-nav .elementor-nav-menu--dropdown,
.lean-mobile-popup-nav .elementor-nav-menu--dropdown ul {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* =========================================================
   BOTÓN SOLICITAR DEMO DEL POPUP
   Fijado abajo con espacio blanco intermedio
========================================================= */

.lean-mobile-popup-demo {
  display: block !important;
  width: 100% !important;

  margin-top: auto !important;
  margin-bottom: 0 !important;

  visibility: visible !important;
  opacity: 1 !important;

  flex: 0 0 auto !important;
}

.lean-mobile-popup-demo .elementor-button-wrapper {
  width: 100% !important;
  display: block !important;
}

.lean-mobile-popup-demo .elementor-button {
  width: 100% !important;
  min-height: 46px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: #2659A5 !important;
  color: #ffffff !important;

  border-radius: 999px !important;
  padding: 13px 22px !important;

  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;

  border: none !important;

  box-shadow: 0 12px 28px rgba(38, 89, 165, .18) !important;
}

.lean-mobile-popup-demo .elementor-button:hover {
  background: #14305E !important;
  color: #ffffff !important;
}

/* =========================================================
   RESPONSIVE · TABLET / MÓVIL GRANDE
========================================================= */

@media (max-width: 900px) {
  .elementor-popup-modal .dialog-widget-content {
    margin-right: 20px !important;
  }

  .lean-mobile-offcanvas {
    width: 315px !important;
    max-width: 78vw !important;

    min-height: 72vh !important;
    max-height: 82vh !important;

    padding: 28px 28px 34px 28px !important;
  }
}

/* =========================================================
   RESPONSIVE · MÓVIL
========================================================= */

@media (max-width: 600px) {
  .elementor-popup-modal .dialog-widget-content {
    margin-right: 18px !important;
  }

  .lean-mobile-offcanvas {
    width: 315px !important;
    max-width: 78vw !important;

    min-height: 72vh !important;
    max-height: 82vh !important;

    padding: 28px 28px 34px 28px !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu > li > a {
    font-size: 1rem !important;
    padding: 12px 0 !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu > li:first-child > a {
    padding-bottom: 13px !important;
    margin-bottom: 12px !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu .sub-menu {
    padding-left: 14px !important;
    margin-bottom: 8px !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu .sub-menu a {
    font-size: .92rem !important;
    padding: 8px 0 !important;
  }

  .lean-mobile-popup-demo .elementor-button {
    min-height: 46px !important;
    font-size: .9rem !important;
  }
}

/* =========================================================
   RESPONSIVE · MÓVIL ESTRECHO
========================================================= */

@media (max-width: 430px) {
  .elementor-popup-modal .dialog-widget-content {
    margin-right: 16px !important;
  }

  .lean-mobile-offcanvas {
    width: 300px !important;
    max-width: 76vw !important;

    min-height: 72vh !important;
    max-height: 82vh !important;

    padding: 28px 24px 32px 24px !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu > li > a {
    font-size: 1rem !important;
  }

  .lean-mobile-popup-nav .elementor-nav-menu .sub-menu a {
    font-size: .9rem !important;
  }

  .lean-mobile-popup-demo .elementor-button {
    min-height: 46px !important;
    font-size: .9rem !important;
  }
}/* End custom CSS */