/*
 * El Sueño — compatibilidad con el plugin de reservas
 *
 * Esta versión no mueve títulos, galerías, fotografías ni bloques del tema.
 * Solo oculta los elementos propios de reserva dentro de páginas /room/.
 * Por tanto, el motor de reservas sigue funcionando con normalidad fuera de
 * las fichas individuales de habitaciones.
 */

/* Formularios y cajas de reserva habituales. */
body.elsueno-room-page .booking-form,
body.elsueno-room-page .booking_form,
body.elsueno-room-page .book-form,
body.elsueno-room-page .book-form-wrap,
body.elsueno-room-page .hotel-booking-form,
body.elsueno-room-page .hotel_booking_form,
body.elsueno-room-page .hb-booking-form,
body.elsueno-room-page .hb_room_booking_form,
body.elsueno-room-page .hb-room-booking-form,
body.elsueno-room-page .tf-booking-form,
body.elsueno-room-page [class*="booking-form"],
body.elsueno-room-page [class*="booking_form"],
body.elsueno-room-page [class*="book-form"],
body.elsueno-room-page [class*="booking-widget"],
body.elsueno-room-page [class*="booking-sidebar"],
body.elsueno-room-page [class*="room-booking"],
body.elsueno-room-page [class*="book-room"],
body.elsueno-room-page [id*="booking-form"],
body.elsueno-room-page [id*="booking_form"] {
    display: none !important;
}

/* Compatibilidad para bloques creados visualmente por el plugin de reservas. */
body.elsueno-room-page form:has(input[name*="checkin"], input[name*="check-in"], input[name*="check_in"], input[name*="checkout"], input[name*="check-out"], input[name*="check_out"]),
body.elsueno-room-page form:has(select[name*="adults"], select[name*="children"], input[name*="adults"], input[name*="children"]) {
    display: none !important;
}

/* Oculta el contenedor inmediato si el formulario está inyectado por un builder. */
body.elsueno-room-page .elementor-widget-container:has(form input[name*="check"]),
body.elsueno-room-page .elementor-widget-container:has(form select[name*="adult"]),
body.elsueno-room-page .vc_column-inner:has(form input[name*="check"]),
body.elsueno-room-page .wpb_wrapper:has(form input[name*="check"]) {
    display: none !important;
}

/* Precios, planes y llamadas de reserva que acompañan exclusivamente al formulario. */
body.elsueno-room-page .room-booking-price,
body.elsueno-room-page .room-price-wrap,
body.elsueno-room-page .hotel-room-price,
body.elsueno-room-page .hb_room_price,
body.elsueno-room-page .hb-room-price,
body.elsueno-room-page .booking-price,
body.elsueno-room-page [class*="price-plan"],
body.elsueno-room-page [class*="pricing-plan"],
body.elsueno-room-page [class*="booking-price"] {
    display: none !important;
}

/* Pestañas/comentarios y carrusel de otras habitaciones propios del motor de reservas. */
body.elsueno-room-page .room-review,
body.elsueno-room-page .room-reviews,
body.elsueno-room-page .hotel-room-review,
body.elsueno-room-page .hb_room_reviews,
body.elsueno-room-page .hb-room-reviews,
body.elsueno-room-page .related-rooms,
body.elsueno-room-page .other-rooms,
body.elsueno-room-page .hotel-related-rooms,
body.elsueno-room-page [class*="related-room"],
body.elsueno-room-page [class*="other-room"] {
    display: none !important;
}

/* Si la página queda con una columna lateral vacía, la ficha ocupa el ancho disponible. */
body.elsueno-room-page .site-content:has(.booking-form),
body.elsueno-room-page .site-content:has(.hb_room_booking_form) {
    grid-template-columns: minmax(0, 1fr) !important;
}

/* No se modifica el estilo, tipografías, galería, título ni descripción existentes. */
