/* --- CONFIGURACIÓN GLOBAL DE ALINEACIÓN COILACO LODGE --- */

/* 1. Centrar Títulos (Detalles y Disponibilidad) */
h3.mphb-room-type-details-title, 
h3.mphb-room-type-availability-title,
.mphb-single-room-type-attributes-title,
.mphb-calendar-title {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 2. Centrar Lista de Detalles (Huéspedes, Vista, Camas) */
.mphb-loop-room-type-attributes, 
.mphb-single-room-type-attributes {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 auto 30px auto !important;
    width: 100% !important;
}

/* Ajustar los ítems de la lista para que no se peguen a la izquierda */
.mphb-loop-room-type-attributes li, 
.mphb-single-room-type-attributes li {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-bottom: 8px !important;
}

/* 3. Centrar Calendario de Disponibilidad */
.mphb-calendar {
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important; 
    display: table !important; /* Estabiliza el calendario en el centro */
}

/* Contenedor del calendario para asegurar simetría */
.mphb-calendar-wrapper {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    padding-bottom: 20px;
}

/* 4. Ocultar el texto "Gratis" (Manteniendo tu configuración anterior) */
.mphb-free-price, 
.mphb-amount.free,
.mphb-price.free {
    display: none !important;
}

/* Inyectar mensaje de consulta si el precio es cero */
.mphb-regular-price:empty::before {
    content: "Consultar valor en el Lodge";
    display: block;
    text-align: center;
    font-weight: bold;
    color: #ffffff;
    margin-top: 10px;
}
.mphb-details-title {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Espacio debajo del calendario */
.mphb-calendar {
    margin-bottom: 40px !important;
}
/* Centrar "Precio desde" */
.mphb-price,
.mphb-regular-price {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    margin: 30px auto !important;
    font-size: 20px;
}
/* ===== CONTENEDOR FORMULARIO ===== */
.mphb-booking-form,
.mphb_sc_booking_form-wrapper {
    max-width: 600px;
    margin: 40px auto !important;
    padding: 25px;
    background: rgba(255,255,255,0.05);
    border-radius: 12px;
}

/* ===== CAMPOS MÁS COMPACTOS ===== */
.mphb-booking-form input,
.mphb-booking-form select {
    height: 45px !important;
    font-size: 14px;
    padding: 8px 12px;
}

/* ===== ESPACIADO ENTRE CAMPOS ===== */
.mphb-booking-form p {
    margin-bottom: 15px !important;
}

/* ===== BOTÓN CENTRADO ===== */
.mphb-booking-form .mphb-button,
.mphb_sc_booking_form-wrapper .mphb-button {
    display: block;
    margin: 20px auto 0 auto !important;
    padding: 12px 25px;
    font-size: 14px;
    border-radius: 6px;
}

/* ===== TÍTULO CENTRADO ===== */
.mphb-booking-form-title {
    text-align: center;
}
/* Centrar "Formulario de reserva" */
.mphb-reservation-form-title {
    text-align: center !important;
    width: 100%;
    display: block;
    margin: 30px auto;
}
/* Centrar contenedor de la galería en la página de alojamiento */
.mphb-single-room-type-gallery, 
.gallery, 
.wp-block-gallery {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin: 20px auto !important;
    max-width: 1000px !important; /* Ajusta según el ancho de tu web */
    padding: 0 15px !important;
}

/* Estilo para las imágenes de la galería */
.gallery-item img, 
.wp-block-gallery .wp-block-image img {
    border-radius: 8px !important; /* Bordes suaves */
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3) !important; /* Sombra sutil */
    border: 1px solid rgba(255,255,255,0.1) !important;
}

/* Efecto al pasar el ratón por encima */
.gallery-item img:hover, 
.wp-block-gallery .wp-block-image img:hover {
    transform: scale(1.03) !important; /* Crece un poquito */
    box-shadow: 0 6px 15px rgba(0,0,0,0.5) !important;
}

/* Centrar los detalles del alojamiento (Huéstpedes, Vista, etc.) */
.mphb-loop-room-type-attributes, 
.mphb-single-room-type-attributes {
    text-align: center !important;
    margin: 20px auto !important;
    display: block !important;
}
/* --- Centrado Absoluto y Alineación con Fotos --- */

/* 1. Limpiar cualquier margen del tema que empuje el contenido a la izquierda */
.mphb-single-room-type-attributes, 
.mphb-room-type-services-wrapper {
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 1000px !important; /* Ajusta este valor al ancho de tus fotos */
    display: block !important;
    text-align: center !important;
}

/* 2. Forzar la lista a comportarse como un bloque centrado */
.mphb-room-type-services-list,
.mphb-single-room-type-attributes ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important; /* Centra las etiquetas */
    align-items: center !important;
    gap: 12px !important;
    padding: 0 !important;
    list-style: none !important;
    margin: 20px auto !important; /* Centra el bloque entero */
    width: 100% !important;
}

/* 3. Diseño de Etiquetas (Pills) para eliminar el color rojizo */
.mphb-room-type-services-list li,
.mphb-single-room-type-attributes ul li {
    background-color: rgba(244, 241, 234, 0.1) !important; /* Fondo sutil */
    color: #F4F1EA !important; /* Color arena de tu marca */
    padding: 6px 15px !important;
    border-radius: 30px !important;
    border: 1px solid rgba(244, 241, 234, 0.4) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* 4. Ocultar el texto "Servicios" original si interfiere con el centrado */
.mphb-attribute-title, .mphb-room-type-services-title {
    text-align: center !important;
    display: block !important;
    margin-bottom: 15px !important;
    font-weight: bold;
    color: #F4F1EA;
}
/* Forzar "Servicios" arriba del contenido */
.mphb-single-room-type-attributes li {
    flex-direction: column !important;
    align-items: center !important;
}

/* Ajustar el label (Servicios, Huéspedes, etc.) */
.mphb-single-room-type-attributes li strong {
    display: block;
    margin-bottom: 5px;
    text-align: center;
}

/* Ajustar el contenido */
.mphb-single-room-type-attributes li span {
    text-align: center;
}
/* ===== TÍTULO "Relacionado" ===== */
#jp-relatedposts .jp-relatedposts-headline {
    text-align: center !important;
    width: 100%;
    display: block;
    margin: 40px auto 20px auto;
}

/* ===== CONTENEDOR POSTS ===== */
#jp-relatedposts .jp-relatedposts-items {
    display: flex !important;
    justify-content: center !important;
    gap: 80px;
    flex-wrap: wrap;
    text-align: center;
}

/* ===== CADA POST ===== */
#jp-relatedposts .jp-relatedposts-post {
    max-width: 260px;
    text-align: center !important;
}

/* ===== TEXTO INTERNO (las 3 líneas) ===== */
#jp-relatedposts .jp-relatedposts-post a,
#jp-relatedposts .jp-relatedposts-post span,
#jp-relatedposts .jp-relatedposts-post div {
    display: block;
    text-align: center !important;
    margin: 0 auto;
}
//* 1. Ocultar la lista completa de atributos (Huéspedes, Servicios, Vista, Cama) */
ul.mphb-single-room-type-attributes,
.mphb-single-room-type-attributes,
.mphb-room-type-facilities,
.mphb-room-type-total-capacity {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* 2. Ocultar los títulos de cada sección (Huéspedes:, Servicios:, etc.) */
.mphb-attribute-title,
.mphb-details-title,
.mphb-loop-room-type-attributes li strong,
h2.mphb-details-title {
    display: none !important;
}

/* 3. Ocultar cualquier valor suelto que el sistema intente mostrar */
.mphb-attribute-value {
    display: none !important;
}

/* 4. Eliminar el espacio en blanco que dejan estos elementos al desaparecer */
.mphb-single-room-type-attributes-wrapper {
    display: none !important;
}
/* --- Eliminar sección de Precio desde y por noche --- */

/* 1. Ocultar el párrafo del precio base detectado en el inspector */
p.mphb-regular-price,
.mphb-regular-price {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. Ocultar el título "Precio desde:" y el texto "por noche" */
.mphb-price-period,
.mphb-room-type-price-details,
.mphb-price-period-before,
.mphb-price-period-after {
    display: none !important;
}

/* 3. Eliminar cualquier contenedor vacío que genere espacio extra */
.mphb-room-type-price-details-wrapper {
    display: none !important;
}

/* 4. Asegurar que el calendario de disponibilidad suba inmediatamente */
.mphb-calendar-title {
    margin-top: 0 !important;
}
/* Alinear textos*/
ul.mphb_sc_checkout-services-list li,
ul.mphb_checkout-services-list li {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  padding: 6px 0 !important;
}

ul.mphb_sc_checkout-services-list li label.mphb-checkbox-label,
ul.mphb_checkout-services-list li label.mphb-checkbox-label {
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  margin: 0 !important;
  width: auto !important;
}

/* El em dentro del label (precio + "/ Por instancia") */
ul.mphb_sc_checkout-services-list li label.mphb-checkbox-label em,
ul.mphb_checkout-services-list li label.mphb-checkbox-label em {
  display: inline !important;
  white-space: nowrap !important;
  font-style: italic !important;
}

ul.mphb_sc_checkout-services-list li input[type="number"],
ul.mphb_checkout-services-list li input[type="number"] {
  width: 60px !important;
  flex-shrink: 0 !important;
}

ul.mphb_sc_checkout-services-list li input[type="hidden"],
ul.mphb_checkout-services-list li input[type="hidden"] {
  display: none !important;
}
ul.mphb_sc_checkout-services-list li label em,
ul.mphb_checkout-services-list li label em {
  font-size: 0 !important; /* oculta todo el em */
}
.entry-content,
.page-content {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}
/* Fondo y borde para cada servicio */
ul.mphb_sc_checkout-services-list li,
ul.mphb_checkout-services-list li {
  background-color: rgba(255, 255, 255, 0.10) !important;
  border: 1px solid rgba(255, 255, 255, 0.30) !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  margin-bottom: 8px !important;
}
ul.mphb_sc_checkout-services-list,
ul.mphb_checkout-services-list {
  padding-left: 0 !important;
  margin-left: 0 !important;
}
/* Espacio entre "Hola coilacolodge" y "Detalles de reserva" */
.mphb-checkout-user-info,
.mphb_sc_checkout-user-info {
  margin-bottom: 32px !important;
}

/* Borde y fondo para la sección "Detalles de reserva" */
.mphb-booking-details,
.mphb_sc_checkout-booking-details,
.mphb-checkout-details-section {
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 8px !important;
  padding: 20px 24px !important;
  margin-bottom: 24px !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
}

/* Espacio entre campos Adultos, Niños y Nombre completo */
.mphb-checkout-item-section .mphb-guest-name,
.mphb-checkout-item-section select,
.mphb-checkout-item-section input[type="text"] {
  margin-bottom: 16px !important;
}

.mphb-checkout-item-section label {
  margin-top: 12px !important;
  display: block !important;
}
/* Tabla desglose de precios */
.mphb-room-price-breakdown-wrapper table,
#mphb-price-details table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 8px !important;
}

.mphb-room-price-breakdown-wrapper tr,
#mphb-price-details tr {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-radius: 8px !important;
}

.mphb-room-price-breakdown-wrapper td,
#mphb-price-details td {
  padding: 14px 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  vertical-align: middle !important;
}

/* Borde redondeado en celdas extremas */
.mphb-room-price-breakdown-wrapper tr td:first-child,
#mphb-price-details tr td:first-child {
  border-radius: 8px 0 0 8px !important;
}

.mphb-room-price-breakdown-wrapper tr td:last-child,
#mphb-price-details tr td:last-child {
  border-radius: 0 8px 8px 0 !important;
  text-align: right !important;
}

/* Fila Total resaltada */
.mphb-room-price-breakdown-wrapper tr.mphb-total td,
#mphb-price-details tr.mphb-total td {
  font-weight: bold !important;
  background-color: rgba(255, 255, 255, 0.08) !important;
}
/* Link cabaña dentro del desglose */
.mphb-room-price-breakdown-wrapper a,
#mphb-price-details a {
  color: rgba(255, 255, 255, 0.75) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.mphb-room-price-breakdown-wrapper a:hover,
#mphb-price-details a:hover {
  color: rgba(255, 255, 255, 1) !important;
}

/* Centrar el contenido de la primera celda */
.mphb-room-price-breakdown-wrapper tr td:first-child,
#mphb-price-details tr td:first-child {
  text-align: center !important;
  vertical-align: middle !important;
}
/* Espacio entre nombre del servicio y precio */
ul.mphb_sc_checkout-services-list li label.mphb-checkbox-label em,
ul.mphb_checkout-services-list li label.mphb-checkbox-label em {
  margin-left: 12px !important;
}
/* Sección método de pago */
#mphb-billing-details {
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 8px !important;
  padding: 20px 24px !important;
  margin-bottom: 24px !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
}

/* Precio total y depósito */
.mphb_sc_checkout-form p.mphb-total-price,
.mphb_sc_checkout-form p.mphb-deposit-amount {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 12px 16px !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 8px !important;
  margin-bottom: 8px !important;
}

/* Ocultar error adultos */
.mphb_sc_checkout-form p.mphb-errors-wrapper {
  display: none !important;
}

/* Términos - espacio inferior */
.mphb_sc_checkout-form section.mphb-checkout-terms-wrapper {
  margin-bottom: 30px !important;
  padding-bottom: 10px !important;
  display: block !important;
}

/* Botón Reservar */
.mphb_sc_checkout-form p.mphb_sc_checkout-submit-wrapper {
  margin-top: 30px !important;
  margin-bottom: 40px !important;
  display: block !important;
}

.mphb_sc_checkout-form p.mphb_sc_checkout-submit-wrapper input[type="submit"] {
  background-color: rgba(255, 255, 255, 0.15) !important;
  color: white !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-radius: 8px !important;
  padding: 12px 32px !important;
  font-size: 16px !important;
  cursor: pointer !important;
}

.mphb_sc_checkout-form p.mphb_sc_checkout-submit-wrapper input[type="submit"]:hover {
  background-color: rgba(255, 255, 255, 0.28) !important;
}
.mphb-terms-and-conditions-link {
  margin-left: 4px !important;
  margin-right: 4px !important;
}
@media (max-width: 768px) {
  ul.mphb_sc_checkout-services-list li,
  ul.mphb_checkout-services-list li {
    flex-wrap: wrap !important;
    gap: 6px !important;
    padding: 10px 12px !important;
  }

  ul.mphb_sc_checkout-services-list li label.mphb-checkbox-label,
  ul.mphb_checkout-services-list li label.mphb-checkbox-label {
    width: 100% !important;
    flex: 1 1 100% !important;
    margin-bottom: 6px !important;
  }

  ul.mphb_sc_checkout-services-list,
  ul.mphb_checkout-services-list {
    width: 100% !important;
    padding: 0 !important;
  }

  ul.mphb_sc_checkout-services-list li input[type="number"],
  ul.mphb_checkout-services-list li input[type="number"] {
    width: 40px !important;
  }
}
/* --- CORRECCIÓN DE TEXTOS SUPERPUESTOS EN FOOTER/LLEGAR --- */

/* 1. Forzar interlineado en los editores de texto de Elementor */
.elementor-text-editor, 
.elementor-widget-text-editor .elementor-widget-container {
    line-height: 1.6em !important; /* Espacio generoso entre líneas */
    height: auto !important;      /* Evita que el texto se estruje si hay altura fija */
}

/* 2. Separar el Título (¿Cómo llegar?) del texto de abajo */
.elementor-heading-title {
    margin-bottom: 15px !important; 
    line-height: 1.3em !important;
}

/* 3. Ajuste específico para la dirección (Camino Coilaco) */
/* Si el widget tiene una clase específica o es un párrafo */
.elementor-widget-text-editor p {
    margin-bottom: 10px !important;
    display: block !important;
}
/* Evitar desbordamiento horizontal en móvil */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

* {
  box-sizing: border-box !important;
}

/* Contenedor principal */
.site, .site-content, #content, #page {
  overflow-x: hidden !important;
  max-width: 100% !important;
}
p.mpa-employee-wrapper {
  display: none !important;
}
 /* Forzar 3 columnas en desktop para EAEL Post Grid */
#eael-post-grid-218837e .eael-post-grid-appender {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}

/* 2 columnas en tablet */
@media (max-width: 1024px) {
  #eael-post-grid-218837e .eael-post-grid-appender {
    grid-template-columns: repeat(2, 1fr) !important;
  }
time.jp-relatedposts-post-date {
  display: none !important;
}
/* Quitar enlace del tipo de alojamiento */
.mphb-room-type-title a,
.mphb-checkout-room-type a {
  pointer-events: none !important;
  text-decoration: none !important;
  color: inherit !important;
  cursor: default !important;
}
	/* Ocultar "Alojamiento #1" */
h3.mphb-room-number {
  display: none !important;
}
	/* Ocultar SOLO el nombre del huésped (dentro del detalle de habitación) */
.mphb-room-details p.mphb-guest-name-wrapper,
.mphb-reserve-rooms-details p.mphb-guest-name-wrapper {
  display: none !important;
}

/* Asegurarse que el nombre del cliente NO se oculte */
p.mphb-customer-name {
  display: block !important;
}
/* Ocultar fechas en posts relacionados Jetpack */
time.jp-relatedposts-post-date {
  display: none !important;
}
	
	/* Fix calendario Galaxy S23 y móviles */
@media (max-width: 480px) {
  div.mphb-calendar.mphb-datepick,
  div.datepick.datepick-multi,
  .mphb-calendar--direct-booking {
    width: 100% !important;
    max-width: 100% !important;
    min-width: unset !important;
  }

  div.datepick.datepick-multi table,
  .mphb-calendar table {
    width: 100% !important;
    table-layout: fixed !important;
  }

  div.datepick.datepick-multi td,
  div.datepick.datepick-multi th,
  .mphb-calendar td,
  .mphb-calendar th {
    padding: 2px 1px !important;
    font-size: 10px !important;
    width: 14.28% !important;
  }
/* Ocultar campo Ubicación en agenda de tinajas */
p.mpa-input-wrapper.mpa-location-wrapper {
  display: none !important;
}

