.elementor-29 .elementor-element.elementor-element-090c179{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-090c179:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-090c179 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-29 .elementor-element.elementor-element-17f32ca{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-17f32ca:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-17f32ca > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-29 .elementor-element.elementor-element-716bb0b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-4557018{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-26d8b8c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-9377cab{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-29 .elementor-element.elementor-element-a61ae3c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-29 .elementor-element.elementor-element-2941aab{--grid-columns:3;}.elementor-29 .elementor-element.elementor-element-6c57b5c{--spacer-size:60px;}.elementor-29 .elementor-element.elementor-element-a1ae900{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-193f200{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-29 .elementor-element.elementor-element-193f200:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-193f200 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-29 .elementor-element.elementor-element-090c179{--content-width:1200px;}.elementor-29 .elementor-element.elementor-element-17f32ca{--content-width:1200px;}.elementor-29 .elementor-element.elementor-element-716bb0b{--content-width:1200px;}.elementor-29 .elementor-element.elementor-element-4557018{--content-width:1200px;}}@media(max-width:1024px){.elementor-29 .elementor-element.elementor-element-2941aab{--grid-columns:2;}}@media(max-width:767px){.elementor-29 .elementor-element.elementor-element-2941aab{--grid-columns:1;}}/* Start custom CSS for container, class: .elementor-element-a61ae3c *//* ===== ESTILOS PARA TRANSFORMAR EL LOOP GRID DE ELEMENTOR ===== */
/* Contenedor principal del grid */
.elementor-loop-container.elementor-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)) !important;
  gap: 30px !important;
  padding: 0 !important;
}

/* Cada item del loop - la tarjeta completa */
.e-loop-item {
  background: white !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  border: none !important;
}

.e-loop-item:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15) !important;
}

/* ===== CORRECCIONES PARA LOS PROBLEMAS IDENTIFICADOS ===== */
/* 1. ELIMINAR ESPACIOS BLANCOS EN IMÁGENES */
.e-loop-item .elementor-element-7d976fd {
  position: relative !important;
  height: 220px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f0f0f0 !important; /* Fallback mientras carga */
}

.e-loop-item .elementor-element-7d976fd .e-con-inner {
  padding: 0 !important;
  margin: 0 !important;
  height: 100% !important;
}

.e-loop-item .elementor-widget-image {
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.e-loop-item .elementor-widget-image .elementor-widget-container {
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.e-loop-item .elementor-widget-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform 0.3s ease !important;
  border-radius: 0 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 2. ALINEACIÓN PERFECTA DE NOMBRE Y PRECIO */
.e-loop-item .elementor-element-70643e9 {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  padding: 24px 24px 16px 24px !important;
  margin: 0 !important;
  gap: 16px !important;
}

.e-loop-item .elementor-element-70643e9 .e-con-inner {
  display: flex !important;
  width: 100% !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 16px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.e-loop-item .elementor-element-62b863d {
  flex: 1 !important;
  min-width: 0 !important; /* Permite que el texto se ajuste */
}

.e-loop-item .elementor-element-42b94ea {
  flex-shrink: 0 !important;
  margin-left: auto !important;
}

/* 3. RATING DINÁMICO CON MÍNIMO 4 ESTRELLAS */
.e-loop-item .e-rating-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  position: relative !important;
}

/* Ocultar el rating original de Elementor */
.e-loop-item .e-rating .e-icon {
  display: none !important;
}

/* Crear nuestro propio sistema de rating */
.e-loop-item .e-rating-wrapper::before {
  content: "★★★★★" !important;
  color: #fbbf24 !important;
  font-size: 16px !important;
  letter-spacing: 2px !important;
  position: relative !important;
}

/* Overlay para mostrar rating parcial si es necesario */
.e-loop-item .e-rating-wrapper::after {
  content: "(4.9)" !important;
  color: #6b7280 !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  margin-left: 8px !important;
  font-family: Inter, sans-serif !important;
}

/* 4. AJUSTES ADICIONALES PARA MEJOR PRESENTACIÓN */
.e-loop-item .elementor-element-142df67 {
  padding: 0 24px 12px 24px !important;
}

.e-loop-item .elementor-element-cf62893 {
  padding: 0 24px 24px 24px !important;
  margin-top: auto !important;
}

/* Asegurar que no hay espacios extra en ningún contenedor */
.e-loop-item .e-con-inner {
  padding: 0 !important;
}

/* Mejorar la transición hover de la imagen */
.e-loop-item:hover .elementor-widget-image img {
  transform: scale(1.05) !important;
}

/* 5. RATING ALTERNATIVO MÁS DINÁMICO (OPCIONAL) */
/* Si quieres un rating más dinámico basado en data attributes */
.e-loop-item[data-rating="5"] .e-rating-wrapper::before {
  content: "★★★★★" !important;
}
.e-loop-item[data-rating="4.9"] .e-rating-wrapper::before {
  content: "★★★★★" !important;
}
.e-loop-item[data-rating="4.8"] .e-rating-wrapper::before {
  content: "★★★★☆" !important;
}
.e-loop-item[data-rating="4.7"] .e-rating-wrapper::before {
  content: "★★★★☆" !important;
}

/* Siempre mostrar mínimo 4 estrellas */
.e-loop-item .e-rating-wrapper::before {
  content: "★★★★★" !important; /* Por defecto 5 estrellas */
}

/* Contenido de la tarjeta */
.e-loop-item .elementor-element-70643e9,
.e-loop-item .elementor-element-142df67,
.e-loop-item .elementor-element-cf62893 {
  padding: 24px !important;
  margin: 0 !important;
}

.e-loop-item .elementor-element-142df67 {
  padding: 0 24px 12px 24px !important;
}

/* Título del producto */
.e-loop-item .product_title,
.e-loop-item .product_title a {
  font-size: 1.3rem !important;
  font-weight: 600 !important;
  color: #1f2937 !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  font-family: Inter, sans-serif !important;
}

.e-loop-item .product_title a:hover {
  color: #3b82f6 !important;
}

/* MODIFICACIÓN 1: Agregar "From" antes del precio - MISMO TAMAÑO Y COLOR */
.e-loop-item .price {
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: #3b82f6 !important;
  margin: 0 !important;
  white-space: nowrap !important;
  position: relative !important;
}

.e-loop-item .price::before {
  content: "From " !important;
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: #3b82f6 !important;
  margin-right: 4px !important;
}

/* MODIFICACIÓN 2: Características más grandes y mejor espaciado */
.e-loop-item .elementor-element-142df67 {
  position: relative;
}

.e-loop-item .elementor-element-142df67::after {
  content: "✓ Multiple stops\A✓ Photo opportunities\A✓ Professional guide" !important;
  white-space: pre-line !important;
  display: block !important;
  color: #6b7280 !important;
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  margin-bottom: 16px !important;
  font-family: Inter, sans-serif !important;
}

/* Footer con rating y botón */
.e-loop-item .elementor-element-cf62893 {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-top: 0 !important;
  margin-top: auto !important;
}

/* MODIFICACIÓN 3: Cambiar "Add to Cart" por "Book Now" */
.e-loop-item .elementor-button {
  background: #3b82f6 !important;
  color: white !important;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  border: none !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: background 0.3s ease !important;
  font-family: Inter, sans-serif !important;
}

.e-loop-item .elementor-button:hover {
  background: #2563eb !important;
  transform: none !important;
}

/* Cambiar el texto del botón */
.e-loop-item .elementor-button-text {
  display: none !important;
}

.e-loop-item .elementor-button::after {
  content: "Book Now" !important;
}

/* Ajustes para contenedores específicos */
.e-loop-item .elementor-element-62b863d {
  flex: 1 !important;
}

.e-loop-item .elementor-element-42b94ea {
  flex-shrink: 0 !important;
}

/* RESPONSIVE MEJORADO - ESPACIADO COMPACTO EN MÓVIL */
@media (max-width: 768px) {
  .elementor-loop-container.elementor-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  
  /* Reducir espaciado en móvil */
  .e-loop-item .elementor-element-70643e9 {
    flex-direction: column !important;
    gap: 8px !important;
    align-items: flex-start !important;
    padding: 20px 20px 12px 20px !important;
  }
  
  .e-loop-item .elementor-element-42b94ea {
    margin-left: 0 !important;
  }
  
  /* Características más grandes en móvil */
  .e-loop-item .elementor-element-142df67::after {
    font-size: 1rem !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
  }
  
  .e-loop-item .elementor-element-142df67 {
    padding: 0 20px 8px 20px !important;
  }
  
  .e-loop-item .elementor-element-cf62893 {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
    padding: 0 20px 20px 20px !important;
  }
  
  .e-loop-item .elementor-button {
    width: 100% !important;
    text-align: center !important;
  }
  
  /* Ajustar altura de imagen en móvil */
  .e-loop-item .elementor-element-7d976fd {
    height: 200px !important;
  }
}

/* Ocultar elementos vacíos */
.e-loop-item .elementor-element-142df67 .e-con-inner:empty {
  display: none !important;
}

/* Asegurar que las tarjetas tengan la misma altura */
.elementor-loop-container.elementor-grid {
  align-items: stretch !important;
}

.e-loop-item {
  display: flex !important;
  flex-direction: column !important;
}

.e-loop-item .elementor-element-cf62893 {
  margin-top: auto !important;
}/* End custom CSS */