/*booking form phone field css*/
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti {
	width: 100%;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti button,
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__selected-country,
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__selected-flag {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 6px !important;
	border: 0 !important;
	background: transparent !important;
	width: auto !important;
	height: 100% !important;
	min-width: 0 !important;
	min-height: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	float: none !important;
	color: inherit !important;
	outline: none !important;
	text-transform: none !important;
	font-family: inherit !important;
	letter-spacing: normal !important;
	transition: none !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti button:hover,
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__selected-country:hover {
	background: rgba(0, 0, 0, 0.05) !important;
	color: inherit !important;
	border: 0 !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container input#pl_booking_form_phone[type="text"] {
	padding-left: 95px !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__search-input {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	font-size: 12px !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__country-list {
	background-color: #ffffff !important;
	border: 1px solid #ccc !important;
	margin-top: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__country {
	padding: 6px 10px !important;
	outline: none !important;
	list-style: none !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	width: auto !important;
	float: none !important;
	font-size: 12px !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__country .iti__country-name {
	font-size: 12px !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__country .iti__dial-code {
	font-size: 11px !important;
}
#pl_booking_step_datas_form_container #pl_booking_form_phone_container .iti .iti__selected-dial-code {
	font-size: 14px !important;
	color: #4e4e4e !important;
	font-family: 'Trebuchet MS', Helvetica, Arial, Lucida, sans-serif !important;
}

/* Beautiful style for validation errors */
#pl_booking_step_datas_form_container .pl_validation_errors {
	display: inline-flex !important;
	align-items: center !important;
	color: #e02b2b !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	margin-top: 6px !important;
	margin-left: 0 !important;
	float: left !important;
	clear: both !important;
	width: 100% !important;
	box-sizing: border-box !important;
	font-family: 'Manrope', sans-serif !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	position: relative !important;
	left: 0 !important;
	bottom: auto !important;
}

#pl_booking_step_datas_form_container .pl_validation_errors::before {
	content: "!" !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 16px !important;
	height: 16px !important;
	background-color: #e02b2b !important;
	color: #ffffff !important;
	border-radius: 50% !important;
	font-size: 11px !important;
	font-weight: bold !important;
	margin-right: 6px !important;
	line-height: 1 !important;
}

/* Hide duplicate validation error messages within the same container */
#pl_booking_step_datas_form_container .pl_validation_errors ~ .pl_validation_errors {
	display: none !important;
}
html:has(#pl_sorting_result_loader) .iti.iti--allow-dropdown.iti--show-flags {
	z-index:0;
}

/*CLASS*/
.nd_rst_display_none_important{display: none;}
.pl_section { float:left; width:100%; }

.pl_height_30 { height:30px; }
.pl_height_25 { height:25px; }
.pl_height_20 { height:20px; }
.pl_height_15 { height:15px; }
.pl_height_10 { height:10px; }
.pl_height_8 { height:8px; }
.pl_height_1 { height:1px; }
.pl_height_0_important { height: 0px !important; }

.pl_margin_0 { margin:0px; }
.pl_margin_right_10 { margin-right:10px; }

.pl_margin_top_20 { margin-top:20px; }
.pl_margin_top_5 { margin-top:5px; }
.pl_margin_top_6 { margin-top:6px; }
.pl_margin_top_7 { margin-top:7px; }
.pl_margin_top_2 { margin-top:2px; }

.pl_margin_left_20 { margin-left:20px; }
.pl_margin_left_10 { margin-left:10px; }

.pl_padding_30 { padding:30px; }
.pl_padding_20 { padding:20px; }
.pl_padding_0 { padding:0px; }
.pl_padding_right_10 { padding-right: 10px; }
.pl_padding_right_20 { padding-right: 20px; }
.pl_padding_right_0 { padding-right: 0px; }

.pl_padding_top_5 { padding-top: 5px; }
.pl_padding_left_45 { padding-left: 45px; }
.pl_padding_left_0 { padding-left: 0px; }
.pl_padding_bottom_5 { padding-bottom: 5px; }
.pl_padding_0_important { padding: 0px !important; }


.pl_box_sizing_border_box { box-sizing:border-box; }

.pl_border_1_solid_grey { border:1px solid #ccc; }
.pl_border_bottom_1_solid_grey { border-bottom: 1px solid #f1f1f1; }
.pl_border_right_2_solid_grey { border-right: 2px solid #f1f1f1; }
.pl_border_width_0_important { border-width: 0px !important; }


.pl_color_red { color:red; }
.pl_color_blue { color:blue; }
.pl_color_green { color:green; }
.pl_color_violet { color:violet; }
.pl_color_yellow { color:yellow; }

.pl_bg_color_ccc { border: 1px solid var(--pr-primary-color, #760076); }
.pl_bg_color_blue { background-color: var(--pr-primary-color, #760076); color: #fff !important;}

.pl_text_align_center { text-align:center; color: var(--pr-primary-color, #760076);}
.pl_text_align_left { text-align:left; }
.pl_text_align_right { text-align:right; }

.pl_letter_spacing_2 { letter-spacing: 2px; }

.pl_font_size_12 { font-size: 12px; }
.pl_font_size_50 { font-size: 50px; }

.pl_font_weight_bold { font-weight: bold; }
.pl_font_weight_normal { font-weight: normal; }
.pl_font_weight_300 { font-weight: 300; }

.pl_float_left { float:left; }
.pl_float_right { float:right; }


.pl_width_25 { width:25px; }

.pl_width_5_percentage { width:5%; }
.pl_width_10_percentage { width:10%; }
.pl_width_14_percentage { width:14%; }
.pl_width_20_percentage { width:20%; }
.pl_width_25_percentage { width:25%; }
.pl_width_33_percentage { width:33.3%; }
.pl_width_35_percentage { width:35%; }
.pl_width_40_percentage { width:40%; }
.pl_width_45_percentage { width:45%; }
.pl_width_50_percentage { width:50%; }
.pl_width_60_percentage { width:60%; }
.pl_width_66_percentage { width:66.6%; }
.pl_width_90_percentage { width:90%; }
.pl_width_100_percentage { width:100%; }
.pl_height_100_percentage { width: 100%; }

.pl_height_100_percentage { height: 100%; }

.pl_min_width_150 { min-width: 150px; }
.pl_min_width_35 { min-width: 35px; }

.pl_display_none { display:none; }
.pl_display_none_important { display:none !important; }
.pl_display_block { display:block; }
.pl_display_inline_flex { display:inline-flex; }

.pl_line_height_1 { line-height: 1em; }

.pl_cursor_pointer { cursor:pointer; }

.pl_display_table { display:table; }
.pl_display_table_cell { display:table-cell; }
.pl_display_inline_block { display:inline-block; }
.pl_display_inline_block.disabled p { pointer-events: none; background:#9999997a; }

.pl_vertical_align_middle { vertical-align:middle; }

.pl_list_style_none { list-style:none; }

.pl_position_relative { position:relative; }
.pl_position_absolute { position:absolute; }

.pl_left_0 { left: 0px; }

.pl_top_0 { top: 0px; }

.pl_bottom_20 { bottom: 20px; }

.pl_bg_greydark_alpha_gradient_3 {
	background: -moz-linear-gradient(top, rgba(101,100,96,0) 0%, rgba(101,100,96,0.65) 100%);
	background: -webkit-linear-gradient(top, rgba(101,100,96,0) 0%,rgba(101,100,96,0.65) 100%);
	background: linear-gradient(to bottom, rgba(101,100,96,0) 0%,rgba(101,100,96,0.65) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00656460', endColorstr='#a6656460',GradientType=0 );
}


/*CUSTOM PLUGIN ELEMENTS*/

/*dropdown restaurants*/
.pl_ul_restaurant { margin:0px; padding:0px; list-style:none; position:absolute; top:25px; left:0px; background-color:#ccc; }
.pl_ulli_restaurant { margin:0px; padding:0px; cursor: pointer; }

/*dropdown occasion*/
.pl_ul_occasion { margin:0px; padding:0px; list-style:none; position:absolute; top:25px; left:0px; background-color:#ccc; }
.pl_ulli_occasion { margin:0px; padding:0px; }

/*steps selected*/
.pl_step_active h5 { font-weight: bolder; color: red; }

/*legend calendar*/
.pl_cal_not_set { }
.pl_cal_ex_hour_change { background-color: violet; }
.pl_cal_ex_close { background-color: green; }
.pl_cal_today { background-color: red; }
.pl_cal_active { background-color: blue; }




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

	.pl_width_100_percentage_all_iphone { width: 100%; }
	.pl_margin_top_20_all_iphone { margin-top: 20px; }
	.pl_padding_top_0_all_iphone { padding-top: 0px; }
	.pl_margin_top_0_important_all_iphone { margin-top: 0px !important; }

}

/****************************ELEMENTOR ADMIN****************************/
body.elementor-editor-active .elementor-widget-shortcode #pl_component_container { background-color: #fff; }

/*widgets*/
.elementor-widget-bookingform { background: transparent !important; }
.elementor-widget-opentable { background: transparent !important; }

/* Force hide the duplicate checkout submit button */
#pl_booking_step_datas_form_container button#pl_submit_go_to_checkout,
#pl_booking_step_datas_form button#pl_submit_go_to_checkout,
#pl_submit_go_to_checkout {
	display: none !important;
}

/* Thanks step summary table layout with label left, value right, and larger font */
#pl_thanks_step_resume_table p {
	font-size: 18px !important;
	color: #4e4e4e !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	width: 100% !important;
	float: none !important;
	border-bottom: 1px solid #f1f1f1 !important;
	padding: 12px 0 !important;
	margin: 0 !important;
}

#pl_thanks_step_resume_table strong {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #4e4e4e !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	float: none !important;
}