#nd_rst_component_container {padding:0px;border:1px solid #ffffff; position: relative;}


/*steps*/
#nd_rst_steps_container {background-color: #fff;padding: 20px;box-sizing:border-box; margin-bottom: 30px;}
#nd_rst_steps_container h5 {margin: 0px;padding: 0px;font-weight: normal;font-size: 14px;line-height: 20px;position: relative;display: inline-block;}
#nd_rst_steps_container h5 span{color: #fff;width: 30px;height: 30px;font-size: 12px;line-height: 30px;border-radius: 100%;position: absolute;top: -5px;left: -50px;	}

    
/*rest, guests, legend*/
#nd_rst_rest_guests_legend_section { width:50%;border: 15px solid #fff;box-sizing: border-box;border-top-width: 0px;border-bottom-width: 0px; }


/*restaurant*/
#nd_rst_section_restaurant label { display: none; }
.nd_rst_restaurant_image {  }
.nd_rst_restaurant_image .nd_rst_restaurant_image_filter { background: linear-gradient(to bottom, rgb(45, 45, 45) 0%,rgba(45, 45, 45, 0) 100%); }
.nd_rst_restaurant_image_content { float: left; width: 100%; text-align: center; top:30px; }
.nd_rst_restaurant_image_content h3 { color: #fff; margin: 0px; padding: 0px; font-size: 20px; color:#fff !important; cursor: pointer; position: relative; display: inline-block; }
.nd_rst_restaurant_image_content h3:after { content: '';width: 20px;height: 20px;position: absolute;top: 0px;right: -30px; background-image: url(../../../../assets/img/arrow-down.png);background-size: 15px;background-position: center;background-repeat: no-repeat; }
.nd_rst_ul_restaurant { top: 60px; left: 50%; margin-left: -80px; width: 160px; background-color: #fff; }
.nd_rst_ul_restaurant li { font-size: 12px; margin: 0px; padding: 10px 20px; border-bottom: 1px solid #f1f1f1; }
.nd_rst_ul_restaurant li:last-child { border-bottom-width: 0px; }
.nd_rst_ul_restaurant li.nd_rst_bg_color_blue { color:#fff; }


/*guests and legend*/
#nd_rst_guests_legend_section {  padding: 30px; box-sizing:border-box; width:100%; margin-top: -142px; position: relative;background: -moz-linear-gradient(top, rgba(45,45,45,0) 0%, rgba(45,45,45,1) 100%);background: -webkit-linear-gradient(top, rgba(45,45,45,0) 0%, rgba(45,45,45,1) 100%);background: linear-gradient(to bottom, rgba(45,45,45,0) 0%, rgba(45,45,45,1) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00656460', endColorstr='#a6656460',GradientType=0 );}
#nd_rst_guests_legend_section #nd_rst_guests_section { width: 60%; float: left; text-align: center; }
#nd_rst_guests_legend_section #nd_rst_legend_section { width: 40%; float: left; margin-top:0px; }
.nd_rst_legend_not_available span { border-radius: 100%;}
.nd_rst_guests_increase { background-image: url(../../../../assets/img/add.png);background-size: 10px;background-position: center;background-repeat: no-repeat;background-color: initial !important; }
.nd_rst_guests_decrease { background-image: url(../../../../assets/img/remove.png);background-size: 10px;background-position: center;background-repeat: no-repeat;background-color: initial !important; }
#nd_rst_guests_section h3 { color: #fff; font-size: 20px; text-transform: uppercase; margin-bottom: 10px; }
#nd_rst_guests_section h1 { color: #fff;font-size: 50px;line-height: 50px; }
#nd_rst_legend_section p { color: #fff; font-size: 12px; margin:0px; padding:0px; }
#nd_rst_legend_section p span { width: 10px; height: 10px;display: inline-block; margin-right: 10px; }
.nd_rst_guest_number_add { position: absolute;top: 5px;right: 10px;width: 20px;height: 20px; }
.nd_rst_guest_number_add button {margin: 0px;padding: 0px;font-size: 0px;width: 20px;height: 20px;border-width: 0px;float: left; outline: 0;cursor: pointer; }
.nd_rst_guest_number_remove { position: absolute;top: 25px;right: 10px;width: 20px;height: 20px; }
.nd_rst_guest_number_remove button { margin: 0px;padding: 0px;font-size: 0px;width: 20px;height: 20px;border-width: 0px;float: left; outline: 0;cursor: pointer; }
.nd_rst_guest_number { width: 100px;display: inline-block;float: initial;position: relative;height: 50px; padding-right: 20px; box-sizing: border-box;}

/*cal and occasion*/
#nd_rst_cal_occa_section { width:50%;border: 15px solid #fff;box-sizing: border-box;border-top-width: 0px;border-bottom-width: 0px; position: relative; }

/*calendar*/
#nd_rst_calendar_section { padding: 30px; float: left;width: 100%;box-sizing: border-box; }
#nd_rst_calendar_container { }
#nd_rst_calendar_container h3 { font-size: 20px; color: #fff; letter-spacing: 1px; }
#nd_rst_calendar_container button { font-size: 0px; background-color: #000; width: 20px; height:20px; border-width: 0px; cursor: pointer; outline: 0; }
.nd_rst_prev_next_cal.nd_rst_float_right { background-image: url(../../../../assets/img/arrow-right-white.png);background-size: 15px;background-position: center;background-repeat: no-repeat; background-color: initial !important; float: left; }
.nd_rst_prev_next_cal.nd_rst_float_left { background-image: url(../../../../assets/img/arrow-left-white.png);background-size: 15px;background-position: center;background-repeat: no-repeat;background-color: initial !important; float: right; }
#nd_rst_calendar_container p strong { color:#fff; font-size: 14px; font-weight: bold; margin: 0px; padding: 0px; }
#nd_rst_calendar_container p { font-size: 12px; font-weight: normal;  margin: 0px; padding: 8px 4px; }
#nd_rst_calendar_container .nd_rst_height_20 { height: 10px; }
.nd_rst_cal_today.nd_rst_calendar_date{color: #fff !important;}
.nd_rst_cal_active.nd_rst_calendar_date{color: #fff !important;}
.nd_rst_cal_not_set:after { content: '';position: absolute;width: 5px;height: 5px;border-radius: 100%;bottom: 2px;left: 50%;margin-left: -2px;}
.nd_rst_cal_not_set.nd_rst_calendar_date { position: relative;}
.nd_rst_calendar_date { color: #fff !important; }
.nd_rst_calendar_week { margin-top: 20px; }
#nd_rst_calendar_word_bg { position: absolute; width: 100%;left: 0px;bottom: -50px;text-align: center;font-family: Kristi;font-size: 200px;line-height: 200px;color: rgba(255, 255, 255, 0.02); display: block; }
#nd_rst_calendar_content { position: relative; }

/*occasion*/
#nd_rst_occasion_cont { display: inline-block; float: initial; width: initial; }
#nd_rst_occasion_cont h3 { float: left; margin-right: 5px; }
#nd_rst_occasion_cont_change { width:initial; line-height: 25px; margin-left: 5px; cursor: pointer; }
#nd_rst_occasion_section { float: left; width:100%; padding:20px; padding-bottom: 10px; padding-top: 0px; box-sizing:border-box; text-align: center; }
#nd_rst_occasion_section h3 { font-size: 20px; color: #fff; }
.nd_rst_ul_occasion { top: 40px;left: 50%;margin-left: -80px;width: 160px;background-color: #fff; text-align: left;border: 1px solid #f1f1f1; z-index: 9; }
.nd_rst_ul_occasion li {font-size: 12px;color: #a9a9a9;margin: 0px;padding: 10px 20px;border-bottom: 1px solid #f1f1f1;}
.nd_rst_ul_occasion li:last-child {border-bottom-width: 0px;}
.nd_rst_ul_occasion li.nd_rst_bg_color_blue { color: #fff;}
.nd_rst_occas_single { font-size: 14px; color: #fff; }

.nd_rst_occasion_cont_change h3 { position: relative; }
.nd_rst_occas_single:after { content: '';width: 20px;height: 20px;position: absolute;top: 2px;right: -30px; background-image: url(../../../../assets/img/arrow-down.png);background-size: 15px;background-position: center;background-repeat: no-repeat; }


/*time*/
#nd_rst_time_section { text-align: center; box-sizing:border-box; margin-top: 50px; padding: 0px 10%;}
#nd_rst_time_section h3 { font-size: 20px; text-transform: uppercase; margin-bottom: 30px; }
#nd_rst_time_section p { font-size: 14px;line-height: 14px;color: #fff;padding: 8px 16px;margin: 8px;border-radius: 3px; }
#nd_rst_time_section .nd_rst_time { cursor: pointer; }
.nd_rst_all_time_slots_single { position: relative; }

#nd_rst_all_time_slots_single_layer { position: absolute; top: 0px; left:0px; width: 100%; height: 100%; cursor: progress; }


/*button container*/
#nd_rst_btn_go_to_booking_container { text-align: center; margin-top: 20px; }

/*button*/
#nd_rst_btn_go_to_booking { color: #fff; letter-spacing: 1px; outline: 0; border-width: 0px; cursor: pointer; font-size: 16px; border-radius: 4px; padding: 15px 30px; font-weight: normal; text-transform: uppercase; }





/***************************************** START BOOKING *****************************************/
#nd_rst_booking_all_container_2 {  }

#nd_rst_booking_step_resume { float: left; width: 50%; position: relative; padding-right: 15px; box-sizing:border-box; } 

#nd_rst_booking_step_datas_form { float: left; width: 50%; box-sizing:border-box; padding-left: 15px; }
#nd_rst_booking_step_datas_form label { float: left; width: 100%; font-size: 14px; font-weight: normal; }
#nd_rst_booking_step_datas_form label span { color: #fff;font-size: 12px;letter-spacing: 2px;padding: 4px 8px;border-radius: 3px; font-weight: normal; }
#nd_rst_booking_step_datas_form input[type="text"], #nd_rst_booking_step_datas_form textarea  { float: left; width: 100%; font-size: 14px; font-weight: normal;  }
#nd_rst_booking_step_datas_form button { color: #fff; letter-spacing: 1px; outline: 0; border-width: 0px; cursor: pointer; font-size: 14px; border-radius: 3px; padding: 10px 30px; font-weight: normal; text-transform: uppercase; width: 100%; }
#nd_rst_booking_form_term_container a { text-decoration: underline; font-weight: normal; }

#nd_rst_booking_step_datas_form_container { padding:30px; box-sizing:border-box; border:1px solid #f1f1f1; }
#nd_rst_booking_step_datas_form_container h3 { text-align: center; margin-bottom: 40px; }
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_name_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_surname_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_email_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_phone_container { float: left; width: 50%; }
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_email_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_phone_container { margin-top: 20px; }

#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_name_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_email_container { padding-right: 15px; box-sizing:border-box; } 
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_surname_container,
#nd_rst_booking_step_datas_form_container #nd_rst_booking_form_phone_container { padding-left: 15px; box-sizing:border-box; } 

.nd_rst_booking_resume_restaurant {font-size: 20px;color: #fff !important;text-align: center;float: left;width: 100%;padding: 30px;box-sizing: border-box;line-height: 20px; position: absolute;}
#nd_rst_booking_step_resume_filter {  position: absolute; left: 0px; top:0px; height: 100%; width: 100%; background: linear-gradient(to bottom, rgb(45, 45, 45) 0%,rgba(45, 45, 45, 0) 100%); }
#nd_rst_booking_step_resume_all_info {text-align: center; padding: 40px;box-sizing: border-box; overflow: hidden; position: relative; }
#nd_rst_booking_step_resume_all_info p { color: #fff; }
#nd_rst_booking_step_resume_all_info_word {color: rgba(255, 255, 255, 0.03);position: absolute;bottom: 6px;width: 100%;left: 0px;font-size: 200px;   }
#nd_rst_booking_step_resume_all_info p span {font-weight: bold;letter-spacing: 2px;text-transform: uppercase;}

#nd_rst_booking_form_term_container a { margin-left: 10px; }




/***************************************** START CHECKOUT *****************************************/
#nd_rst_checkout_all_container_3 { display: table; }

#nd_rst_checkout_step_resume { float: left; width: 50%; position: relative; padding-right: 15px; box-sizing:border-box; } 
#nd_rst_checkout_step_resume_filter {  position: absolute; left: 0px; top:0px; height: 100%; width: 100%; background: linear-gradient(to bottom, rgb(45, 45, 45) 0%,rgba(45, 45, 45, 0) 100%); }
.nd_rst_checkout_resume_restaurant {font-size: 20px;color: #fff !important;text-align: center;float: left;width: 100%;padding: 30px;box-sizing: border-box;line-height: 20px; position: absolute;}


#nd_rst_checkout_step_resume_all_info {text-align: center; padding: 40px;box-sizing: border-box; overflow: hidden; position: relative; margin-top: -50px; }
#nd_rst_checkout_step_resume_all_info p { color: #fff; }
#nd_rst_checkout_step_resume_all_info_word {color: rgba(255, 255, 255, 0.03);position: absolute;bottom: 6px;width: 100%;left: 0px;font-size: 200px;   }
#nd_rst_checkout_step_resume_all_info p span {font-weight: bold;letter-spacing: 2px;text-transform: uppercase;}

.nd_rst_checkout_container_3 button { color: #fff; letter-spacing: 1px; outline: 0; border-width: 0px; cursor: pointer; font-size: 16px; border-radius: 4px; padding: 15px 30px; font-weight: normal; text-transform: uppercase; }


#nd_rst_checkout_step_datas_form { float: left; width: 50%; box-sizing:border-box; padding-left: 15px;   }
#nd_rst_checkout_step_datas_form button,#nd_rst_checkout_step_datas_form input[type="submit"] { width: 100%;  color: #fff; letter-spacing: 1px; outline: 0; border-width: 0px; cursor: pointer; font-size: 14px; border-radius: 3px; padding: 10px 20px; line-height: 14px; font-weight: normal; text-transform: uppercase; }
#nd_rst_checkout_step_datas_form_container { padding:30px; box-sizing:border-box; border:1px solid #f1f1f1; }

#nd_rst_checkout_form_name_container h3 { text-align: center; }
#nd_rst_checkout_form_name_container span { font-weight: bold; letter-spacing: 2px; }
#nd_rst_checkout_form_name_container {  }


#nd_rst_component_container_layer { position: absolute; top: 0px; left:0px; width: 100%; height: 100%;}
#nd_rst_sorting_result_loader { position: absolute; top: 0px; left:0px; width: 100%; height: 100%; background-color: #fff; background-image: url('../../../../assets/img/loader-1.gif'); background-size: 70px; background-position: center 300px; background-repeat: no-repeat; }



/***************************************** START THANKS *****************************************/

#nd_rst_thanks_step { border:1px solid #f1f1f1; width: 70%;box-sizing: border-box;margin: 0px 15%; }
#nd_rst_thanks_step_resume_table p { float: left; width: 100%; border-bottom: 1px solid #f1f1f1; padding: 10px 0px;box-sizing: border-box; }
#nd_rst_thanks_step_resume_table p:last-child { border-width: 0px; padding-bottom: 0px; }
#nd_rst_thanks_step_resume_table strong { float: left; font-weight: normal; }
#nd_rst_thanks_step_resume_table span { float: right; }
.nd_rst_thanks_step_resume_left { box-sizing:border-box; }
.nd_rst_thanks_step_resume_right { padding-left: 15px; box-sizing:border-box; }
#nd_rst_thanks_step_resume strong { font-weight: normal; }

#nd_rst_thanks_step_resume_icons { margin:30px 0px; }
#nd_rst_thanks_step_resume_icons p{ letter-spacing: 2px; text-transform: uppercase;}



/***************************************** START RESPONSIVE *****************************************/


/* 11.6 all responsive*/
@media only screen and (min-width: 320px) and (max-width: 1199px) {

	#nd_rst_rest_guests_legend_section,#nd_rst_cal_occa_section { width: 100%; border-width: 0px; }

	#nd_rst_booking_step_resume,#nd_rst_booking_step_datas_form { width: 100%; padding: 0px; }	
	#nd_rst_booking_step_resume_all_info { padding: 30px; }
	#nd_rst_booking_step_resume_all_info .nd_rst_width_50_percentage { width: 100%; text-align: left; }
	#nd_rst_booking_step_datas_form_container div { width: 100% !important; margin-left: 0px !important; margin-right: 0px !important; padding: 0px !important; }
	#nd_rst_booking_form_surname_container, #nd_rst_booking_form_email_container, #nd_rst_booking_form_phone_container { margin-top: 20px !important; }


	#nd_rst_checkout_step_resume,#nd_rst_checkout_step_datas_form { width: 100%; padding: 0px;  }
	#nd_rst_checkout_step_resume_all_info { padding: 30px; }
	#nd_rst_checkout_step_resume_all_info .nd_rst_width_50_percentage { width: 100%; text-align: left; }


	#nd_rst_thanks_step_resume_icons .nd_rst_width_25_percentage { width: 100%; padding-bottom: 30px; }
	#nd_rst_thanks_step { margin:0px; padding: 20px; width: 100%; }
	.nd_rst_thanks_step_resume_left p span { float: left !important; }
	.nd_rst_thanks_step_resume_left p strong { margin-right: 10px; }

}


/* 11.6 all iphone*/
@media only screen and (min-width: 320px) and (max-width: 767px) {

	#nd_rst_steps_container .nd_rst_single_step { width: 100%; padding: 10px 0px; }
	#nd_rst_time_section { padding: 0px; }
	#nd_rst_legend_section { display: none; }
	#nd_rst_guests_section { width: 100% !important; }
	#nd_rst_guests_section h3 { font-size: 14px; }
	#nd_rst_guests_legend_section { padding: 10px; margin-top: -100px; }
	.nd_rst_guest_number { width: 80px; }
	.nd_rst_guest_number h1 { font-size: 40px !important; }
	.nd_rst_restaurant_image_content h3 { font-size: 16px; }
	.nd_rst_restaurant_image_content { top: 10px; }
	.nd_rst_ul_restaurant { z-index: 9; }
	#nd_rst_calendar_content h3 { font-size: 16px; }
	#nd_rst_occasion_cont h3 { font-size: 16px; }
	
}

