/* Booking mask > Guest */
.guests_wrapper { background-color: var(--white); padding: 20px 20px 10px; margin: 0 auto;position: absolute; top: 0; left: 0; right: 0; z-index: 10; box-shadow: 0 0 10px rgb(0 0 0 / 30%); text-align: left; max-width: 350px; display: none;}
.guests_desc { padding-bottom: 10px; text-align: center; }
.b_mask.fired .guests_wrapper { display: block; }
.b_mask.fired:before { content: ''; background-color: var(--white); position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; opacity: .9; }
.b_mask_n_rooms { display: none; }
.guests_wrapper .merge_group { margin: 0 0 20px; padding: 0 10px 10px; position: relative; display: flex; flex-wrap: wrap; background-color: var(--light-grey); }
.guests_wrapper .group_title { margin-bottom: 10px; padding: 10px 0; width: 100%; border-bottom: 1px solid var(--color1); font-size: var(--size-mini); text-transform: uppercase; font-weight: var(--font-weight-bold); }
.guests_wrapper .form_element_title { font-size: var(--size-button); text-transform: uppercase; color: var(--color3); }
.booking_open form .caption-fields .guests_wrapper .field { margin: 0 10px 0 0; padding: 0; width: calc(100% / 2 - 5px); }
.booking_open form .caption-fields .guests_wrapper .field:last-of-type { margin-right: 0;  }
.booking_open form .form_select .current_value:after { display: none; }
.booking_open form .form_select .current_value { padding: 0; text-align: center; width: 40px; }
.booking_open .html_select { display: flex; align-items: center; justify-content: space-between; background-color: var(--white); }
.booking_open .add_btn:before, .booking_open .rem_btn:before { font-family: var(--font-icon); font-weight: var(--font-weight-solid); font-size: var(--size-btn); color: var(--azure); cursor: pointer;}
.booking_open .add_btn:before { content: '\f055'; }
.booking_open .rem_btn:before { content: '\f056'; }
.disabled { opacity: .3; pointer-events: none; }
.booking_open .form_merge_add_button[disabled] {display: none;}
.booking_open .form_merge_add_button { margin-top: 0; padding-left: 5px; position: relative; top: -15px; display: flex; align-items: center; text-transform: uppercase;  color: var(--black); cursor: pointer; font-family: var(--sans); font-size: var(--size-mini); font-weight: var(--font-weight-bold);}
.booking_open .form_merge_add_button:before { margin-right: 3px; font-family: var(--font-icon); content: '\f055'; font-size: 120%; color: var(--purple);}
.booking_open .merge_group:not(:last-child) .form_merge_rem_button, .booking_open .merge_group:first-child .form_merge_rem_button { display: none; }
.booking_open .form_merge_rem_button { position: absolute; top: 5px; right: 10px; z-index: 2; font-size: 0; cursor: pointer;margin-left: auto; order: 9;}
.booking_open .form_merge_rem_button:before { font-size: var(--size-button); font-family: var(--font-icon); content: '\f00d'; color: var(--black);  }
.guests_wrapper_ok { padding: 10px 20px; background-color: var(--color1); font-size: var(--size-button); cursor: pointer; color: var(--white); font-weight: var(--font-weight-bold); letter-spacing: var(--l-spacing); text-transform: uppercase; text-align: center; }

/* Smartphone */
.smartphone .booking_open form .form_element_title { letter-spacing: 0; }
.smartphone .booking_open .add_btn:before, .smartphone .booking_open .rem_btn:before { font-size: calc(var(--size-btn)* 1.5);}

@media (max-width: 1023px){
    .guests_wrapper { padding-bottom: 40px; position: fixed; top: 20px; height: 100%; overflow: auto; }
}