.elementor-2056 .elementor-element.elementor-element-b1b99ba{--display:flex;--min-height:275px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2056 .elementor-element.elementor-element-7dd3687{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-2056 .elementor-element.elementor-element-44f045b{--display:flex;}.elementor-2056 .elementor-element.elementor-element-9136d50{--display:flex;}.elementor-2056 .elementor-element.elementor-element-ed7c502{--display:flex;}#elementor-popup-modal-2056{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-2056 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-2056 .dialog-close-button{display:flex;}#elementor-popup-modal-2056 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:1024px){.elementor-2056 .elementor-element.elementor-element-7dd3687{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-2056 .elementor-element.elementor-element-b1b99ba{--content-width:1600px;}}@media(max-width:1024px) and (min-width:768px){.elementor-2056 .elementor-element.elementor-element-b1b99ba{--content-width:631px;}}@media(max-width:767px){.elementor-2056 .elementor-element.elementor-element-7dd3687{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for container, class: .elementor-element-44f045b *//* === Tarjeta base (aplicar en el CONTAINER que envuelve la imagen) === */
.elementor-2056 .elementor-element.elementor-element-44f045b {
  position: relative;
  overflow: hidden;
  border-radius: 14px; /* ajusta si quieres */
}

/* Imagen con zoom suave al hover (desktop) */
.elementor-2056 .elementor-element.elementor-element-44f045b img {
  transition: transform .35s ease;
}
.elementor-2056 .elementor-element.elementor-element-44f045b:hover img {
  transform: scale(1.05);
}

/* Overlay oscuro al hover (mejora legibilidad del título) */
.elementor-2056 .elementor-element.elementor-element-44f045b .elementor-widget-image .elementor-widget-container::after {
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,0,0,0);
  transition: background .25s ease;
  pointer-events: none; /* no bloquea el clic a la imagen */
}
.elementor-2056 .elementor-element.elementor-element-44f045b:hover .elementor-widget-image .elementor-widget-container::after {
  background: rgba(0,0,0,.45);
}

/* Caption (título) centrado sobre la imagen: oculto por defecto */
.elementor-2056 .elementor-element.elementor-element-44f045b .elementor-image-caption{
  position: absolute;
  inset: 0;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: 700; text-align: center;
  padding: 8px 12px;
  opacity: 0; transform: translateY(6px);
  transition: opacity .25s ease, transform .25s ease;
  z-index: 2;
  pointer-events: none; /* el clic pasa a la imagen/lightbox */
}

/* Mostrar título al pasar el mouse (desktop) */
.elementor-2056 .elementor-element.elementor-element-44f045b:hover .elementor-image-caption{
  opacity: 1; transform: translateY(0);
}

/* ===== MÓVIL: siempre mostrar el título y un overlay suave ===== */
@media (max-width: 767px){
  .elementor-2056 .elementor-element.elementor-element-44f045b .elementor-image-caption{
    opacity: 1; transform: none;
  }
  .elementor-2056 .elementor-element.elementor-element-44f045b .elementor-widget-image .elementor-widget-container::after{
    background: rgba(0,0,0,.35);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9136d50 *//* === Tarjeta base (aplicar en el CONTAINER que envuelve la imagen) === */
.elementor-2056 .elementor-element.elementor-element-9136d50 {
  position: relative;
  overflow: hidden;
  border-radius: 14px; /* ajusta si quieres */
}

/* Imagen con zoom suave al hover (desktop) */
.elementor-2056 .elementor-element.elementor-element-9136d50 img {
  transition: transform .35s ease;
}
.elementor-2056 .elementor-element.elementor-element-9136d50:hover img {
  transform: scale(1.05);
}

/* Overlay oscuro al hover (mejora legibilidad del título) */
.elementor-2056 .elementor-element.elementor-element-9136d50 .elementor-widget-image .elementor-widget-container::after {
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,0,0,0);
  transition: background .25s ease;
  pointer-events: none; /* no bloquea el clic a la imagen */
}
.elementor-2056 .elementor-element.elementor-element-9136d50:hover .elementor-widget-image .elementor-widget-container::after {
  background: rgba(0,0,0,.45);
}

/* Caption (título) centrado sobre la imagen: oculto por defecto */
.elementor-2056 .elementor-element.elementor-element-9136d50 .elementor-image-caption{
  position: absolute;
  inset: 0;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: 700; text-align: center;
  padding: 8px 12px;
  opacity: 0; transform: translateY(6px);
  transition: opacity .25s ease, transform .25s ease;
  z-index: 2;
  pointer-events: none; /* el clic pasa a la imagen/lightbox */
}

/* Mostrar título al pasar el mouse (desktop) */
.elementor-2056 .elementor-element.elementor-element-9136d50:hover .elementor-image-caption{
  opacity: 1; transform: translateY(0);
}

/* ===== MÓVIL: siempre mostrar el título y un overlay suave ===== */
@media (max-width: 767px){
  .elementor-2056 .elementor-element.elementor-element-9136d50 .elementor-image-caption{
    opacity: 1; transform: none;
  }
  .elementor-2056 .elementor-element.elementor-element-9136d50 .elementor-widget-image .elementor-widget-container::after{
    background: rgba(0,0,0,.35);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ed7c502 *//* === Tarjeta base (aplicar en el CONTAINER que envuelve la imagen) === */
.elementor-2056 .elementor-element.elementor-element-ed7c502 {
  position: relative;
  overflow: hidden;
  border-radius: 14px; /* ajusta si quieres */
}

/* Imagen con zoom suave al hover (desktop) */
.elementor-2056 .elementor-element.elementor-element-ed7c502 img {
  transition: transform .35s ease;
}
.elementor-2056 .elementor-element.elementor-element-ed7c502:hover img {
  transform: scale(1.05);
}

/* Overlay oscuro al hover (mejora legibilidad del título) */
.elementor-2056 .elementor-element.elementor-element-ed7c502 .elementor-widget-image .elementor-widget-container::after {
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,0,0,0);
  transition: background .25s ease;
  pointer-events: none; /* no bloquea el clic a la imagen */
}
.elementor-2056 .elementor-element.elementor-element-ed7c502:hover .elementor-widget-image .elementor-widget-container::after {
  background: rgba(0,0,0,.45);
}

/* Caption (título) centrado sobre la imagen: oculto por defecto */
.elementor-2056 .elementor-element.elementor-element-ed7c502 .elementor-image-caption{
  position: absolute;
  inset: 0;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-weight: 700; text-align: center;
  padding: 8px 12px;
  opacity: 0; transform: translateY(6px);
  transition: opacity .25s ease, transform .25s ease;
  z-index: 2;
  pointer-events: none; /* el clic pasa a la imagen/lightbox */
}

/* Mostrar título al pasar el mouse (desktop) */
.elementor-2056 .elementor-element.elementor-element-ed7c502:hover .elementor-image-caption{
  opacity: 1; transform: translateY(0);
}

/* ===== MÓVIL: siempre mostrar el título y un overlay suave ===== */
@media (max-width: 767px){
  .elementor-2056 .elementor-element.elementor-element-ed7c502 .elementor-image-caption{
    opacity: 1; transform: none;
  }
  .elementor-2056 .elementor-element.elementor-element-ed7c502 .elementor-widget-image .elementor-widget-container::after{
    background: rgba(0,0,0,.35);
  }
}/* End custom CSS */