/* Menu link */
.mobile-nav .bookings-link { padding: 0 0px 0px 12px; font-size: 10px; font-weight: 600; }
#site-navigation .bookings-link { float: left; height: 62px; line-height: 62px; text-transform: uppercase; font-size: 13px; padding: 0 25px; margin-left: 10px; background: #05c6ce; font-weight:bold; z-index: 9; position: relative; transition:0s;  }
#site-navigation .bookings-prefixed-link { opacity:0; position:fixed; top:0; right:0; box-shadow:0 0 10px rgba(0,0,0,0.3); z-index:99; transition:0s; }
#site-navigation .bookings-fixed-link { opacity:1; position:fixed; top:0; right:0; box-shadow:0 0 10px rgba(0,0,0,0.3);  transition:0.3s;}

#site-navigation-wrap.fixed-header{ position:fixed !important; top:0; width:100%; z-index:999; }
#preloader{ display:none !important;}

#bookings-window *{ box-sizing: border-box;  }
#bookings-window{ position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; background:#0eb1b8; color:#FFF; display:none;  }
#close-bookings-window{ position:absolute; top:1em; right:1em; color:#FFF; cursor: pointer; }

.bookings-window-content{ width:60%; height:90vh; position:absolute; left:20%; top:10vh; }
.bookings-window-logo{ position:absolute;top:25px; left:25px; }
.bookings-window-logo img{ height:17.5vh; }

.bookings-content-area{ position:relative; width:100%; height:70vh; padding:20px 30px 30px 30px; overflow-y: scroll; }
/*.bookings-content-area::-webkit-scrollbar {width:1em;}
.bookings-content-area::-webkit-scrollbar-track { background:#f2f2f2; }
.bookings-content-area::-webkit-scrollbar-thumb {background: #05c6ce; }
.bookings-content-area::-webkit-scrollbar-thumb:hover { background: #039fa6; }*/
.bookings-window-pages{ background:#FFF; box-shadow:0 0 10px rgba(0,0,0,0.3); color:#1a1a1a; border-radius:5px 5px 0 0; position:relative; }
.bookings-window-pages-wrapper{ width:100%; }
.bookings-window-pages h3{ font-size:2em; font-weight:400; margin-bottom:0em; }
.bookings-window-page{ display:none; }
.bookings-window-page:nth-child(1){ display:block;}

#booking-loading{ position:absolute; width:100%; height:100%; top:0; left:0; z-index:9999; background:rgba(255,255,255,1) url('../img/loader.gif') center no-repeat; display:none;}


.booking-status-bar{ position:absolute; right:0; top:0; height:100%; width:30%; background:#F2f2f2; padding:30px; display:none; }
.bookings-status-item{ margin-bottom:1em; }

.bookings-window-pages label{ display:block; font-size:1.25em; margin-bottom:0.5em; }
.bookings-window-pages select#booking-area-input, select#booking-doctor-input, select#booking-city-input, select#booking-place-input{ background:#FFF; padding:0.75em 1em; font-size:1.2em; border-radius:3px; width:100%; margin:0 auto; color:#000; -webkit-appearance:auto !important; border:1px solid #CCC; margin-bottom:1em; }
select#booking-doctor-input:disabled{ background:#f2f2f2; color:#999; }
.bookings-window-pages select.required, .bookings-window-pages input.required{ box-shadow:0 0 2px 1px red; }
.bookings-window-pages #booking-area-input:disabled, .bookings-window-pages #booking-place-input:disabled{ background:#EEE; color:#666; }


.bookings-window-footer{ position:absolute; background:#FFF; top:100%; left:0; padding:15px; width:100%; display:flex; justify-content: space-between; z-index:99; border-top:1px solid #CCC; border-radius:0 0 5px 5px; 
box-shadow:0 5px 5px rgba(0,0,0,0.3); }
.bookings-window-footer a{ display:inline-block; padding:0.5em 2em; border-radius:3px; background:#53ae2c; color:#FFF; transition:0.3s;}
.bookings-window-footer a:first-child{ opacity:0; background:#DDD; color:#000;}

#bookings-online{ margin: 2em 0; display:none; }
#bookings-online .boolink-online-check{ background:#f2f2f2; padding:15px; border-radius:5px; margin-top:0.5em; color:#000; }
#bookings-online .boolink-online-check label{ display:inline; font-size:1em; cursor: pointer; }

#booking-datepicker-wrapper{ text-align:center; width:40%; margin-left:10%;}
#booking-datepicker{ box-shadow:0 0 10px rgba(0,0,0,0.3); }

.bookings-datetime-wrapper{display:flex; flex-wrap: wrap; flex-direction: row-reverse;}
.booking-time-wrapper{ width:50%; padding-left:30px; }
.booking-time-option{ width:6em; text-align:center; background:#EEE; border-bottom:1px solid #666; padding:0.25em 0; cursor: pointer; }
.booing-time-booked{ background:#CCC; color:#666; cursor: default; }

.booking-hour-select{ padding:0.5em 1em; display:inline-block; border:1px solid #CCC; border-radius:5px; background:#FFF; color:#1a1a1a; width:70%; }
.booking-hour-select option{ background:#FFF; }
.booking-hour-select option:disabled{ background:#e3b6b6; color:#666; }
.no-doctor{ margin-top:2em; }

#bookings-window .booking-personal-input{ background:#FFF; border:1px solid #CCC; border-radius:5px; color:#1a1a1a; margin-top:1em; }

.bookings-confirmation{ background:#f2f2f2; padding:25px; }
.bookings-confirmation label{ color:#0eb1b8; }
.booking-confirmation-table{ margin-top:1em;}
.booking-confirmation-table td{ padding:0.25em 1em 0.25em 0; }
.booking-confirmation-table td:first-child{ font-weight:bold; }

.booking-progressbar {counter-reset: step;position:relative; z-index:999;width:100%; margin:2em 0; padding:0;}
.booking-progressbar li {list-style: none;display: inline-block;width: 19%;position: relative;text-align: center;}
.booking-progressbar li:before {content: counter(step);counter-increment: step;width: 30px;height: 30px;line-height : 30px; border: 1px solid #ddd;border-radius: 100%;display: block;text-align: center;margin: 0 auto 10px auto;background-color: #EEE;}
.booking-progressbar li:after {content: ""; position: absolute;width: 100%; height: 2px; background-color: #ddd; top: 15px;left: -50%;z-index : -1;}
.booking-progressbar li:first-child:after {content: none;}
.booking-progressbar li.booking-active {}
.booking-progressbar li.booking-active:before {border-color: #0eb1b8; background: #0eb1b8; color:#FFF;} 
.booking-progressbar li.booking-active + li:after {background-color: #0eb1b8;;}

.bookings-end{ font-size:1.2em; margin:30px 0; display:flex; }
.bookings-end p{ margin-left:1em; }
.booking-check-icon{ height:5em; vertical-align:middle; }

#booking-next-dates{}
#booking-next-dates-list{ margin:1em 0; }
.booking-date-item{ padding:0.5em;border-top:1px solid #CCC; cursor: pointer; transition:0.3s; }
.booking-date-item:last-child{ border-bottom:1px solid #CCC;  }
.booking-date-item span{ margin-left:1em; font-weight:bold; }
.booking-date-selected{ background:#53ae2c; color:#FFF; } 

.booking-loading{ min-height:75px; background:rgba(255,255,255,1) url('../img/loader.gif') center no-repeat; background-size:75px 75px; }

.booking-loading{ min-height:75px; background:rgba(255,255,255,1) url('../img/loader.gif') center no-repeat; background-size:75px 75px; }
#booking-next-dates .required{ box-shadow:0 0 10px red; }

#cancel-booking-window{ position:absolute; width:100%; height:90%; top:0; left:0; z-index:9999; padding:30px; background:#FFF; display:none; }
.cancel-booking-message{ color:#000; padding:20px 0; font-size:1em; line-height: 1.5em; }
.booking-cancel-item table{}
.booking-cancel-item table th, .booking-cancel-item td{ text-align:left; padding:0 2em 0.25em 0; }
.booking-cancel-item table th{ font-weight:bold; }
#cancel-booking-button{ display: block; padding:1em 1em; border-radius:5px; background:#fa4357; color:#FFF; font-size:1.1em; margin-top:2em; cursor: pointer; text-align:center; box-shadow:0 0 10px rgba(0,0,0,0.3); transition:0.3s;  }
#cancel-booking-button:hover{ color: #fa4357; background:#ffd9dd;  }
#cancel-loading{ margin-top:30px; }
.cancel-booking-response{ display:none; }
.booking-confirm-multi{ display:none; }

@media screen and (max-width:480px) {
    #bookings-window{ }
    .bookings-window-logo{ display:none;}
    .bookings-window-content{ width:95%; height:80vh; position:absolute; left:2.5%; top:7vh; }
    .bookings-content-area{ position:relative; width:100%; height:70vh; padding:10px 15px 25px 15px; overflow-y: scroll; }
    .bookings-window-pages h3{ font-size:1.5em;  }

    .booking-progressbar{ text-align:center; }
    .booking-progressbar li { width: 18%;  white-space: nowrap; }
    
    .booking-progressbar li span{ display:none; }
  
    #booking-datepicker-wrapper{ width:100%; margin-left:0%;}
    .bookings-datetime-wrapper{display:block;}
    .booking-time-wrapper{ width:100%; padding-left:0px; }
    
    /*
    .booking-progressbar {counter-reset: step;position:relative; z-index:999;width:100%; margin:2em 0; padding:0;}
.booking-progressbar li {list-style: none;display: inline-block;width: 19%;position: relative;text-align: center;}
.booking-progressbar li:before {content: counter(step);counter-increment: step;width: 30px;height: 30px;line-height : 30px; border: 1px solid #ddd;border-radius: 100%;display: block;text-align: center;margin: 0 auto 10px auto;background-color: #EEE;}
.booking-progressbar li:after {content: ""; position: absolute;width: 100%; height: 2px; background-color: #ddd; top: 15px;left: -50%;z-index : -1;}
.booking-progressbar li:first-child:after {content: none; display:none;}
.booking-progressbar li.booking-active {}
.booking-progressbar li.booking-active:before {border-color: #0eb1b8; background: #0eb1b8; color:#FFF;} 
.booking-progressbar li.booking-active + li:after {background-color: #0eb1b8;;}
    */
    
    .booking-confirmation-table td {
      padding: 0 0 0.25em 0;
      display: block;
    }
    
    .booking-confirmation-table td:first-child {
      padding: 1em 0 0.25em 0;
      display: block;
    }
    
}

@media screen and (max-width:1024px) {

  #site-navigation-wrap::before{ display:none !important;}
  #header-right-block::before { content: ''; position: absolute; top: 100px; left: -60px; box-shadow: inset 10px -100px 90px rgba(53, 21, 5, 0.74); height: 200px; width: calc(100% + 140px); z-index: 0; }

}