.elementor-35 .elementor-element.elementor-element-7f8ff7d{--display:flex;--min-height:80vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.65;}.elementor-35 .elementor-element.elementor-element-7f8ff7d::before, .elementor-35 .elementor-element.elementor-element-7f8ff7d > .elementor-background-video-container::before, .elementor-35 .elementor-element.elementor-element-7f8ff7d > .e-con-inner > .elementor-background-video-container::before, .elementor-35 .elementor-element.elementor-element-7f8ff7d > .elementor-background-slideshow::before, .elementor-35 .elementor-element.elementor-element-7f8ff7d > .e-con-inner > .elementor-background-slideshow::before, .elementor-35 .elementor-element.elementor-element-7f8ff7d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}.elementor-35 .elementor-element.elementor-element-f949d33{text-align:center;}.elementor-35 .elementor-element.elementor-element-f949d33 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:50px;font-weight:600;color:var( --e-global-color-accent );}.elementor-35 .elementor-element.elementor-element-e67ff9e{text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-secondary );}.elementor-35 .elementor-element.elementor-element-803c1da > .elementor-widget-container{background-color:var( --e-global-color-secondary );padding:15px 30px 15px 30px;border-radius:12px 12px 12px 12px;}.elementor-35 .elementor-element.elementor-element-67d50ae{--display:flex;--min-height:90vh;--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;--justify-content:center;--padding-top:80px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-35 .elementor-element.elementor-element-cbd16a9{text-align:center;}.elementor-35 .elementor-element.elementor-element-cbd16a9 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:50px;font-weight:600;color:var( --e-global-color-accent );}.elementor-35 .elementor-element.elementor-element-105c37a .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-35 .elementor-element.elementor-element-105c37a .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-35 .elementor-element.elementor-element-105c37a{--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-35 .elementor-element.elementor-element-4432be8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-color:var( --e-global-color-accent );--border-color:var( --e-global-color-accent );}.elementor-35 .elementor-element.elementor-element-c38bdf9{--display:flex;--min-height:300px;}.elementor-35 .elementor-element.elementor-element-c38bdf9:not(.elementor-motion-effects-element-type-background), .elementor-35 .elementor-element.elementor-element-c38bdf9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://villasparvada.com/wp-content/uploads/2026/05/WhatsApp-Image-2024-07-04-at-5.48.27-PM-6-1024x682-1.jpeg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-35 .elementor-element.elementor-element-12cc193{--display:flex;}.elementor-35 .elementor-element.elementor-element-a2c2e69 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-accent );}.elementor-35 .elementor-element.elementor-element-c144304 .elementor-button{background-color:var( --e-global-color-primary );fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );}@media(max-width:1024px){.elementor-35 .elementor-element.elementor-element-4432be8{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(min-width:768px){.elementor-35 .elementor-element.elementor-element-7f8ff7d{--width:100%;}}@media(max-width:767px){.elementor-35 .elementor-element.elementor-element-7f8ff7d{--padding-top:50px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}}/* Start custom CSS for mphbe-availability, class: .elementor-element-a7f92d8 *//* Contenedor principal de la barra de reserva */
.booking-form form, 
.booking-form .mphb-reservation-form {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: nowrap; 
    gap: 20px;
    background-color: #f4f1eb !important; 
    padding: 25px 35px;
    border-radius: 18px; 
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.05);
    width: 100%;
    max-width: 1150px; 
    margin: 0 auto;
    box-sizing: border-box;
}

/* Ocultar advertencia obligatoria */
.booking-form form p:first-of-type,
.booking-form .mphb-required-fields-tip {
    display: none !important;
}

/* Bloques de fecha */
.booking-form p.mphb-check-in-date-wrapper,
.booking-form p.mphb-check-out-date-wrapper {
    display: flex;
    flex-direction: column;
    margin: 0 !important;
    flex: 1; 
}

.booking-form label {
    font-family: sans-serif;
    font-size: 15px;
    color: #333333 !important;
    margin-bottom: 8px;
    font-weight: 500;
}

.booking-form input[type="text"] {
    width: 100%;
    height: 48px;
    background-color: #ffffff !important; 
    border: none !important;
    border-radius: 6px;
    padding: 10px 15px;
    font-size: 16px;
    color: #2b2b2b !important;
    box-sizing: border-box;
}

/* --- SECCIONES DE BOTONES (ESTRUCTURA MÓVIL/ESCRITORIO) --- */

/* Contenedor del botón inicial "Comprobar disponibilidad" */
.booking-form p.mphb-reserve-btn-wrapper {
    margin: 0 !important;
    flex: 1.2;
}

/* Contenedor del botón final "Confirmar Reserva" y texto de cantidad */
.booking-form .mphb-reserve-room-section {
    display: flex !important;
    flex-direction: column !important; 
    align-items: flex-start !important;
    gap: 8px !important;
    flex: 1.5; 
    margin: 0 !important;
}

/* --- EL TRUCO DEFINITIVO PARA EL SELECTOR --- */
/* Si la sección de reserva está activa (no oculta), FORZAMOS a que el párrafo múltiple aparezca */
.booking-form .mphb-reserve-room-section:not(.mphb-hide) .mphb-rooms-quantity-multiple {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-family: sans-serif !important;
    font-size: 14px !important;
    color: #333333 !important; 
    margin: 0 0 4px 0 !important;
    white-space: nowrap !important;
}

/* Selector numérico forzado si está activo */
.booking-form .mphb-reserve-room-section:not(.mphb-hide) select.mphb-rooms-quantity {
    display: inline-block !important;
    visibility: visible !important;
    height: 32px !important;
    background-color: #ffffff !important;
    border: 1px solid #cccccc !important;
    border-radius: 4px !important;
    padding: 0 5px !important;
    font-size: 14px !important;
    color: #333333 !important;
    margin: 0 5px !important;
    width: auto !important;
}

/* Estilo unificado para ambos botones */
.booking-form input[type="submit"].mphb-confirm-reservation,
.booking-form p.mphb-reserve-btn-wrapper input[type="submit"] {
    width: 100% !important;
    height: 48px !important;
    background-color: #53525a !important; 
    color: #ffffff !important;
    border: none !important;
    padding: 0 25px !important; 
    font-size: 15px !important; 
    font-weight: 500 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    white-space: nowrap !important; 
    box-sizing: border-box !important;
}

.booking-form input[type="submit"]:hover {
    background-color: #3d3c42 !important;
}

/* --- OCULTAR SOLAMENTE LOS CONTENEDORES PADRES PRINCIPALES --- */
.booking-form .mphb-hide:not(.mphb-rooms-quantity-multiple),
.booking-form p.mphb-reserve-btn-wrapper.mphb-hide,
.booking-form p.mphb-rooms-quantity-single.mphb-hide {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Responsive móvil */
@media (max-width: 900px) {
    .booking-form form, 
    .booking-form .mphb-reservation-form {
        flex-direction: column;
        align-items: stretch;
        padding: 20px;
    }
    
    .booking-form p.mphb-check-in-date-wrapper,
    .booking-form p.mphb-check-out-date-wrapper,
    .booking-form .mphb-reserve-room-section,
    .booking-form p.mphb-reserve-btn-wrapper {
        width: 100%;
        flex: none;
    }
}/* End custom CSS */