#back_button_booking{
    position: absolute;
    margin-left: -60px;
    margin-top: 250px;
    cursor: pointer;
    display: none;
    text-align: center;
    font-size: 11px;
}

#booking_tool_container{
    float: left;
    background-color: #f4f4f4;
    width: 538px;
    /*min-width: 564px;*/
    height: 465px;
    position: relative;
    margin-top: 46px;
    border-top: 2px solid #5D5D5D;
}

/* TABS */
.booking_tab {
    text-align: left;
    width: 137px;
    height: 30px;
    position: absolute;
    background: transparent url('../../images/gray-tab.png') no-repeat right top;
    top: -32px;
    cursor: pointer;
    color: #6b6b6b;
    font-size: 10px;
    z-index: 5;
}

.booking_tab.active {
    background: transparent url('../../images/dark-gray.png') no-repeat right top;
    color: #fff;
    z-index: 10
}

.booking_tab div {
    margin: 7px 0 0 11px;
}
/* TABS */

#booking_loader {
    display: none;
    top: 0;
    width: 540px;
    height: 466px;
    position: absolute;
    background: transparent url('../../images/ajax-loader.gif') no-repeat center center;
}
#booking_time_loader {
    display: none;
    width: 100px;
    height: 185px;
    background: transparent url('../../images/ajax-loader.gif') no-repeat center center;
    margin: 0 auto;
}

.offer_time,#question_content, #booking_tool_container div#enter_zip_code, #save_or_book{
    width: 538px;
    height: 464px;
    position: absolute;
    background: transparent url('../../images/opacity.png') repeat right top;
    top: 0;
    left: 0;
    text-align: center;
}
.offer_time_title {
    text-align: center;
    font-size: 15px;
    width: 100%;
    margin-top: 153px;
    color: #fff;
    letter-spacing: 1px;
}
.offer_time_option {
    text-align: center;
    padding: 5px 10px;
    background-color: #979797;
    color: #fff;
    width: 80px;
    margin: 20px 0 0 0;
    cursor: pointer;
}
.offer_time_option:hover, .offer_time_option.active {
    background-color: #dadada;
    color: #000;
}
#booking_content{
    width: 508px;
    margin: 15px;
    height: 435px;
}
.booking_content table {
    padding: 0;
    margin-left: 27px;
}

#step1{
    margin-top: 99px;
}

.booking_title{
    font-size: 15px;
    text-align: left;
}

.booking_title div{
    padding-bottom: 5px;
    padding-top: 5px;
    line-height: 30px;
}

.blue {
    background-color: #244189;
    color: #ffffff;
}
.refresh {
    background-color: #ffffff;
    color: #969696;
}

/* ZIP CODE QUESTION */
#zipcode_booking {
    margin: 0 0 0 6px;
}
/* ZIP CODE QUESTION */

/* ITEM BUTTONS */
.big_service_buttons
{
    width: 121px;
}

.booking_button{
    border: 2px solid transparent;
    display: inline-block;
}
.booking_button:link {
    text-decoration: none;
}
.booking_button:visited {
    text-decoration: none;
}
.booking_button:hover {
    text-decoration: none;
    border: 2px solid #d6d6d6
}
.booking_button:active {
    text-decoration: none;
    border-color: transparent;
}
.button_border{
    border-color: #6b6b6b !important;
}
/* ITEM BUTTONS */

/* QUESTIONS */
.answer {
    margin-left: 23px;
    margin-top: 14px;

}
.answer input {
    margin-bottom: 4px;
}
.answer label {
    margin-bottom: -4px;
    line-height: 15px;
}
.answer label input[type="radio"], .answer label input[type="checkbox"] {
    margin: 0 4px 0 0;
}
#question_content{
    color: #fff;
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
}
#question_wrapper{
    width: 508px;
    height: 350px;
    margin: 0 auto;
    overflow-x: hidden;
    overflow-y: auto;
}
#question_content button{
    float: right;
    margin: 15px 15px 0 0;
}
.question_disclaimer{
    padding-top: 10px;
    font-size: 14px;
}
.question_title{
    font-size: 15px;
    margin-left: 5px;
    padding-left: 10px;
    padding-bottom: 2px;
}
/* QUESTIONS */

/* WIDGET */
#booking_widget {
    float: right;
    width: 290px;
    border: 1px solid #F5F5F5;
    padding: 15px;
    background-color: #fff;
    margin-top: -16px;
    min-height: 547px;
}

#booking_widget.active {
    border-color: #0088cc;
}

#booking_widget .widget-content {
    min-height: 407px;
}

#booking_widget .booking-total-row {
    font-size: 15px;
    visibility: hidden;
}

#booking_widget .booking-checkout {
    margin-top: 20px;
}
/* WIDGET */

/* MODAL */
.booking-modal-container {
    position: absolute;
    width: 100%;
    height: 100%;
    background: transparent url('../../images/opacity.png') repeat right top;
    top: 0;
    left: 0;
    z-index: 999;
}
.booking-modal {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -200px;
    margin-top: -46px;
    width: 400px;
    height: 220px;
    color: white;
}
.booking-modal-container > .booking-modal-white-bg {
    background-color: white;
    color: #6b6b6b;
}
/* MODAL */

/* HANDLEBARS */
.handlebar_template{
    display: none;
}
/* HANDLEBARS */

/* PRACTITIONERS */

.practitionertitle{
    margin-top: 21px;
    font-weight: 400;
    font-size: 22px;
    line-height: 33px;
    text-transform: uppercase;
    background-color: #244189;
    padding-left: 16px;
    color: #FFF;
}

.providers_header {
    margin-top: -10px;
    margin-right: 1px;
}
.providers_header div {
    padding: 2px 20px;
    background-color: #fff;
    float: right;
    color: #6b6b6b;
    cursor: pointer;
    font-size: 13px;
    background-color: #fff;
    border-right: 1px solid #efefef;
    border-left: 1px solid #efefef;
}
.providers_header div.active{
    background-color: #00acf2;
    color: #fff;
}
.provider_list_header {
    margin: 16px 0 5px 10px;
    display: inline-block;
    width: 260px;
}
.providers_content{
    width: 508px;
    height: 131px;
    overflow: hidden;
    margin: 14px auto 0;
}
.providers_content .practitioner_name {
    background-color: grey;
    color: #fff;
    position: relative;
    top: -11px;
    margin-bottom: -10px;
}
.providers_content .slider {
    float:left;
    width: 460px;
    height: 110px;
    overflow: hidden;
    position: relative;
    cursor: pointer;
}

.providers_content .practitioner_bio {
    font-size: 10px;
    color: #fff;
}
.providers_content .practitioner_bio:hover {
    text-decoration: underline;
}

.providers_content .prev, .providers_content .next {
    background: url('../../images/bookingtool/prevNextSprite.png') no-repeat transparent;
    width: 14px;
    height: 20px;
    float: left;
    margin-top: 40px;
}
.providers_content .prev {
    margin-right: 10px;
    background-position: 0 0;
}
.providers_content .prev:hover {
    background-position: 0 -20px;
}
.providers_content .prev.disabled {	background-position: 0 -100px !important;  }
.providers_content .next {
    margin-left: 10px;
    background-position: -14px 0; }
.providers_content .next:hover {		background-position: -14px -20px; }
.providers_content .next.disabled {	background-position: -50px -100px !important;  }
.providers_content .prev.disabled, .providers_content .next.disabled {
    cursor: default;
}
.providers_content .prev span, .providers_content .next span {
    display: none;
}
.providers_content .overview {
    list-style: none;
    position: absolute;
    padding: 0;
    margin: 0 0 0 5px;
    left: 0;
    top: 5px;
}
.providers_content .disable {
    visibility: hidden;
}
.practitioner {
    height: 100px;
}
.providers_content .practitioner {
    width: 64px;
    float: left;
    margin-right: 10px;
}
.practitioner .practitioner-img {
    height: 65%;
    overflow-y: hidden;
}
.practitioner p {
    cursor: pointer;
}
/* PRACTITIONERS */

/* PRACTITIONER BIO */
.booking-modal-close {
    cursor: pointer;
    position: absolute;
    right: 0;
    top:-18px;
}
#practitioner_bio .booking-modal {
    margin-left: -240px;
    margin-top: -200px;
    width: 480px;
    height: 400px;
}

.practbiobox{
    padding: 10px 5px 10px 0px;
    text-align:justify;
}
/* PRACTITIONER BIO */

/* CALENDAR */
.datepicker-days .active {
    border-radius: 0;
}
.datepicker-days .day:hover {
    border-radius: 0;
}
#calendar {
    width: 508px;
    margin: 0 auto;
    background-color: #fff;
}
#time_sheet {
    width: 506px;
    margin: 10px auto 0;
    background-color: #fff;
}
#time_sheet p {
    padding-top: 2px;
    font-size: 11px;
    padding-left: 10px;
    margin-bottom: 3px;
}
#time_sheet td.disabled {
    color: #ffcccc;
    cursor: not-allowed;
    font-weight: normal;
}
#time_sheet td {
    cursor: pointer;
    border-radius: 0;
    font-weight: bold;
}
#time_sheet td:hover, #time_sheet td:active {
    background-color: #69B3DF;
    color: #ffffff;
}
#time_sheet .availabilityTable {
    font-size: 11px;
    border-radius: 0;
}

#time_sheet td {
    padding: 4px 8px;
}
/* CALENDAR */

/* COUPLES 2ND PRACTITIONER SELECT */
#practitioner_couples .booking-modal {
    margin-left: -240px;
    margin-top: -215px;
    width: 480px;
    height: 430px;
}
#practitioner_couples .practitioner {
    padding: 10px 6px 0 6px;

}
#practitioner_couples .practitioner-row {
    margin-bottom: 10px;
}
/* COUPLES 2ND PRACTITIONER SELECT */

/* BOOKING SUMMARY */
.booking-summary-row {
    line-height: 15px;
}
.booking_summary{
    margin-top: 0px;
}
/* BOOKING SUMMARY */

button.bluebtn.favorite
{
    display: none;
}

.unavailable_city
{
    display: none;
}

#unavailable_city_iframe
{
    width: 538px;
    height: 465px;
    margin: 0;
    padding: 0;
    border: none;

}