:root {
  --mage-primary:#00685f;
  --mage-light:#F2F2F2;
  --mage-black: #000;
  --mage-white: #FFFFFF;
  --mage-border: #DDD;
}

/* Keep the booking flow inside the real mobile viewport. This is deliberately
   scoped instead of relying on a theme-wide border-box reset: page builders
   and iOS Safari can otherwise calculate width:100% content plus padding as a
   wider box, leaving the portrait layout horizontally clipped. */
.mpwpb_registration,
.mpwpb_registration *,
.mpwpb_registration *::before,
.mpwpb_registration *::after {
  box-sizing: border-box;
}
.mpwpb_registration {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  -webkit-text-size-adjust: 100%;
}
.mpwpb_registration main,
.mpwpb-static-template .main,
.mpwpb-static-template .sidebar,
.mpwpb-static-template .mpwpb_static_area,
.mpwpb-static-template .mpwpb_static {
  min-width: 0;
  max-width: 100%;
}

div.registration_tab_item {
  -webkit-transition: all 350ms ease-in-out;
  -moz-transition: all 350ms ease-in-out;
  -o-transition: all 350ms ease-in-out;
  transition: all 350ms ease-in-out;
}

/******************************************************************** ************************************************/
.mpwpb_registration_short_code.mpwpb-static-template .sidebar{width: 100%;}
.mpwpb_registration_short_code.mpwpb-static-template .sidebar .mpwpb_static_area{width: 100%;position: relative;left: inherit;  bottom: inherit;}

.mpwpd_category_info_holder{
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.mpwpd_item_box_direction{
  flex-direction: column;
}
.mpwpd_category_min_price{
  padding: 8px 0px;
  color: var(--mpwpb_color_theme);
  font-weight:bold;
}
.mpwpd_category_data_pos{
  flex-direction: column;
}

.mpwpb_category_info{
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.mpwpd_category_info_holder .mpwpb_category_info h6{
  font-weight:700;
}
.mpwpd_bg_image_area{
  max-width: 50px;
  margin: 0 8px 0 0;
  width: 100%;
  overflow: hidden;
  position: relative;
  height: max-content;
}

.mpwpb_category_info_holder{
  display: flex;
  width: 100%;
  flex-direction: column;
}
.mpwpb_category_name_icon{
  display: flex;
  justify-content: flex-start;
}

.mpwpd_btn_proceed {
  display: block;
  width: calc(100% - 16px);
  margin: 0px 8px 0px;
  padding: 10px;
  background: #db4366;
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  /* transition: var(--transition); */
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  opacity: .5;
}
.mpwpb_service_button_remove,
.mpwpb_ex_service_button_remove{
  position: absolute;
  /*right: -10px;
  top: 50%;*/
  right: -54px;
  top: -10px;
  transform: translateY(-50%);
  background-color: #ff5252;
  color: white;
  border: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s, transform 0.3s;
}

.mpwpb_summary_item:hover .mpwpb_service_button_remove{
  opacity: 1;
}
.mpwpb_summary_item:hover .mpwpb_ex_service_button_remove{
  opacity: 1;
}

.mpwpb_recurring_order_display{
  display: flex;
  flex-direction: column;
  padding-top: 10px;
}
.mpwpb_recurring_order_text_number, .mpwpb_recurring_discount{
  display: flex;
  justify-content: space-between;
  padding-right: 40px;
}
.mpwpb_recurring_number_holder{
  display: flex;
  gap: 16px;
}
.mpwpb_style .next_service_area .mpwpb_service_next, .mpwpb_style .next_service_area .mpwpb_service_next{
  color: #fff;
}

.mpwpd_service_date{
  list-style-type: none;
}
.mpwpd_service_date_selected{
  color: #990000;
}

.selection-header {
  margin:10px 0;
}
.mpwpb_selected_control{
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  justify-content: left;
  color: #767373;
  font-size: 16px;
  padding: 5px 0;
  /*background:#fff;*/
  /*border:1px solid #ddd;*/
  border-radius:10px;
}

/*.addonGroupContent{
  border: 1px solid;
  padding: 8px;
  border-radius: 3px;
}*/

.mpwpb_text_icon_holder{
  display: flex;
  gap: 5px;
}
.mpwpb_selected_category{
  cursor: pointer;
  font-weight: 600;

}
.mpwpb_selected_category:hover{
  color: #333333;
}

.mpwpd_padding_bottom{
  padding-bottom: 10px;
}

@media only screen and (min-width: 10px) {
  div.mpwpb_registration .woocommerce-page span.woocommerce-input-wrapper,
  div.mpwpb_registration .woocommerce-page table span {
    display: initial;
  }
  div.mpwpb_registration .woocommerce-page label {
    margin: 0 0 var(--mpwpb_dmp_xs) 0;
  }
  div.mpwpb_registration table th,
  div.mpwpb_registration table td {
    border: none;
  }
  div.mpwpb_registration .woocommerce form .form-row {
    margin-bottom: var(--mpwpb_dmp_xs);
  }
  div.mpwpb_registration #customer_details {
    background-color: #F7F7F7;
    padding: var(--mpwpb_dmp_xs);
    margin: 0;
  }
  div.mpwpb_registration #order_review {
    background-color: #FFF;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
  }
  div.mpwpb_registration .mpwpb_order_details_area {
    background-color: #FFF;
    padding: var(--mpwpb_dmp_xs) var(--mpwpb_dmp_xs) var(--mpwpb_dmp_xs) var(--mpwpb_dmp);
    margin: 0;
  }
  div.mpwpb_registration .woocommerce-page input[type=radio].shipping_method + label,
  div.mpwpb_registration .woocommerce-page input[type=radio][name=payment_method] + label {
    display: inline-block;
  }
  div.mpwpb_registration .woocommerce #payment #place_order,
  div.mpwpb_registration .woocommerce-page #payment #place_order {
    margin: var(--mpwpb_dmp_xs) 0;
  }

  div.mpwpb_registration .service-items{
    border-radius: 10px ;
  }

}
/********************************************************************************************************************/
@media only screen and (min-width: 10px) {
  div.mpwpb_style div.mpwpb_registration {
    margin: 0 0 var(--mpwpb_dmpl) 0;
  }
  span.mpwpb_item_check {
    position: absolute;
    top: 7px;
    right: 10px;
    font-size: var(--mpwpb_fs_h6);
    opacity: 0;
    margin: 0;
  }
  /*************/
  /*************/
  div.registration_tab_item {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    border-radius: var(--mpwpb_dbr);
    cursor: pointer;
    font-size: var(--mpwpb_fs_h6);
    opacity: 0.7;
    padding: var(--mpwpb_dmp_xs);
  }
  div.registration_tab_item:hover,
  div.registration_tab_item.mpActive {
    opacity: 1;
    color: var(--mpwpb_color_theme);
    font-weight: var(--mpwpb_fw-bold);
  }
  div.registration_tab_item img {
    border: 1px solid var(--d_color);
    width: 25px !important;
    padding: 5px;
    margin: 0 10px 0 0;
    background-color: var(--d_color);
  }
  div.registration_tab_item:hover img,
  div.registration_tab_item.mpActive img {
    border-color: var(--mpwpb_color_theme);
    background-color: var(--mpwpb_color_theme);
  }
  div.mpwpb_sub_category_area,
  div.mpwpb_service_area,
  div.mpwpb_extra_service_area,
  div.mpwpb_date_time_area,
  div.next_service_area,
  div.next_date_area,
  div.mpwpb_order_proceed_area {
    display: none;
  }
  div.mpwpb_sub_category_area > div {
    padding: var(--mpwpb_dmp_xs);
    background-color: #FFF;
  }
  div.mpwpb_service_area header {
    background-color: transparent;
    /*border-bottom: 1px solid var(--mpwpb_color_theme);*/
    /*padding: var(--mpwpb_dmp_xs) 0;*/
    font-weight: normal;
    color: var(--mpwpb_color_theme);
  }
  div.mpwpb_extra_service_area h5 {
    background-color: transparent;
    border-bottom: 1px solid var(--mpwpb_color_theme);
    padding: var(--mpwpb_dmp_xs) 0;
    font-weight: normal;
    color: var(--mpwpb_color_theme);
  }
  div.next_service_area {
    background-color: #FFF;
  }
  div.mpwpb_date_time_area header {
    background-color: rgba(54, 85, 250, 0.06);
    padding: var(--mpwpb_dmp_xs);
    /*border-bottom: 1px solid var(--mpwpb_color_border);*/
  }
  div.mpwpb_item_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 20px 10px;
    margin: 10px 0;
    position: relative;
    background-color: var(--mpwpb_color_light_2);
    color: var(--d_color);
    border-radius: 5px;
    border: 1px solid #ddd;
  }
  .mpwpb_item_box.mpwpb_extra_service_item {
    display: block;
    border: 1px solid var(--mpwpb_color_light_2);
    background-color: #fff;
  }
  div.mpwpb_item_box h2 {
    font-weight: bold;
    font-size: 16px;
  }
  div.mpwpb_item_box i {
    color: var(--mpwpb_color_theme);
  }
  div.mpwpb_item_box.mpActive {
    border-color: var(--mpwpb_color_theme);
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
  }
  div.mpwpb_item_box.mpActive span.mpwpb_item_check {
    opacity: 1;
    color: var(--mpwpb_color_theme);
    background-color: var(--mpwpb_color_theme_alter);
    position: relative;
    top: 0;
    right: 0;
    margin: 0;
  }
  div.mpwpb_item_box .bg_image_area {
    max-width: 50px;
    margin: 0 15px 0 0;
  }
  div.mpwpb_service_area div.mpwpb_item_box {
    background-color: transparent;
  }
  div.mpwpb_service_area div.mpwpb_service_item {
    padding: var(--mpwpb_dmp_xs);
    margin: var(--mpwpb_dmp_xs) 0;
    position: relative;
    border: 1px solid var(--mpwpb_color_light_2);
  }
  div.mpwpb_service_area div.mpwpb_service_item .mpwpb_service_button {
    color: var(--mpwpb_color_theme);
    border: 1px solid var(--mpwpb_color_theme);
    background-color: #fff;
    min-width: 100px;
    width: 100px;
  }
  div.mpwpb_service_area div.mpwpb_service_item .mpwpb_service_button.mActive {
    background-color: var(--mpwpb_color_theme);
    color: #fff;
  }
  div.mpwpb_service_area div.mpwpb_service_item .mpwpb_service_button:hover {
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
  }
  div.mpwpb_service_area div.mpwpb_service_item .mpwpb_service_button:focus {
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
  }
  div.mpwpb_service_area div.mpwpb_service_item [data-collapse] {
    margin-top: 5px;
    color: #666;
  }
  .mpwpb_extra_service_item .service-details {
    margin-top: 5px;
    color: #666;
  }
  /*************/
  div.service_img_area {
    max-width: 120px;
    margin: 0 15px 0 0;
    width: 100%;
  }
  div.mpwpb_icon_area {
    font-size: 60px;
    padding: var(--mpwpb_dmp);
  }
  /*************/
  div.mpwpb_extra_service_area div.mpwpb_item_box {
    padding: var(--mpwpb_dmp_xs);
    margin: var(--mpwpb_dmp_xs) 0;
    position: relative;
    border: 1px solid var(--mpwpb_color_light_2);
    border-radius: 0;
  }
  div.mpwpb_extra_service_area div.mpwpb_item_box .mpwpb_price_calculation {
    color: var(--mpwpb_color_theme);
    border: 1px solid var(--mpwpb_color_theme);
    background-color: #fff;
    min-width: 100px;
    width: 100px;
  }
  div.mpwpb_extra_service_area div.mpwpb_item_box .mpwpb_price_calculation.mActive {
    background-color: var(--mpwpb_color_theme);
    color: #fff;
  }
  div.mpwpb_extra_service_area div.mpwpb_item_box .mpwpb_price_calculation:hover {
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
  }
  div.mpwpb_extra_service_area div.mpwpb_item_box .mpwpb_price_calculation:focus {
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
  }
  /*************/
  div.mpwpb_summary_area_left {
    display: none;
  }
  div.mpwpb_summary_area_left .mpwpb_summary_area_left_title {
    background-color: var(--mpwpb_color_theme);
    color: var(--mpwpb_color_theme_alter);
    padding: var(--mpwpb_dmp_xs);
    text-align: center;
  }
  div.mpwpb_summary_area_left_content {
    border: 1px solid var(--mpwpb_color_border);
    padding: var(--mpwpb_dmp_xs) 20px;
    padding-right: 5px;
    background-color: #FFF;
    overflow: auto;
  }
  div.mpwpb_summary_item {
    position: relative;
    /*padding: 0 5px 15px 25px;*/
    display: none;
    /*border-left: 1px solid var(--mpwpb_color_theme);*/
    padding: 0 5px 30px 24px;
  }
  div.mpwpb_summary_item span.mpwpb_item_check {
    opacity: 1;
    right: inherit;
    left: -14px;
    font-size: var(--mpwpb_fs_small);
    top: -2px;
    border: 1px solid var(--mpwpb_color_theme);
    background-color: #fff;
    color: var(--mpwpb_color_theme);
  }
  div.mpwpb_summary_item:last-child {
    border-color: transparent;
    display: block;
  }
  /*************/
  div.mpwpb_date_carousel .owl-dots {
    display: none;
  }
}
/********************************************************************************************************************/
/********************************************************************************************************************/
@media only screen and (min-width: 10px) {
  div.mpwpb_static_theme div.mpwpb_summary_area_left {
    width: 400px;
    border-left: 2px solid var(--mpwpb_color_border);
  }
  div.mpwpb_static_theme div.mpwpb_static_service {
    width: calc(100% - 400px);
  }
  div.mpwpb_static_theme div.mpwpb_summary_area_left_content {
    border: none;
    position: absolute;
  }
  div.mpwpb_static_theme div.mpwpb_popup_body {
    padding: 0;
    margin: 0;
  }
}
/********************************************************************************************************************/
@media only screen and (min-width: 10px) {
  .mpwpb_date_carousel {
    position: relative;
  }
  .mpwpb_date_carousel .mpwpb-owl-carousel {
    overflow: hidden;
  }
  .mpwpb_date_carousel .mpwpb-owl-carousel .owl-stage {
    display: -webkit-flex;
    display: flex;
    gap: 5px;
    margin-top: 5px;
  }
  .mpwpb_date_carousel .mpwpb-owl-carousel .owl-item {
    display: -webkit-flex;
    display: flex;
  }
  .mpwpb_date_time_line {
    width: 100%;
    text-align: center;
  }
  .mpwpb_date_time_line [data-radio-check] {
    width: 100%;
    margin: 0 0 5px 0;
    -webkit-justify-content: center;
  }
  .mpwpb_date_time_line [data-radio-check]:last-child {
    margin: 0;
  }
  .mpwpb_date_time_line p {
    color: #D0D0D0;
  }
}
.mpwpb_style .mainSection {
  width: 100%;
  max-width: var(--mpwpb_main_section);
  margin: 0 var(--mpwpb_dmp) 0 0;
}

/*************************************************Responsive*******************************************************************/
@media only screen and (max-width: 900px) {
  div.mpwpb_item_box {
    width: 100%;
  }
}
@media only screen and (max-width: 800px) {
  div.mpwpb_registration div.leftSidebar,
  div.mpwpb_registration div.leftSidebar .mpwpb_sticky_area,
  div.mpwpb_registration div.mainSection {
    max-width: 100%;
    width: 100%;
    margin: var(--mpwpb_dmp_xs) 0;
  }
  div.mpwpb_summary_area_left .mpwpb_summary_area_left_title {
    text-align: left;
  }
  div.mpwpb_registration div.mpwpb_item_box h4 {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}
@media (max-width: 600px) {
  .next_date_area {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .next_date_area .mpwpb-total {
    padding: 20px 0;
  }
}
.mpwpb-payment-choice-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  width: 90%;
  margin: 10px 0;
  padding: 20px !important;
}
@media (max-width: 480px) {
  .mpwpb-payment-choice-cards {
    grid-template-columns: 1fr;
  }
}
.mpwpb-payment-choice-card {
  position: relative;
  display: block !important;
  width: 100%;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  padding: 20px !important;
  cursor: pointer;
  background: #fff;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.mpwpb-payment-choice-card:hover {
  border-color: var(--mpwpb_color_theme, #3858e9);
}
.mpwpb-payment-choice-card:has(input:checked) {
  border-color: var(--mpwpb_color_theme, #3858e9);
  box-shadow: 0 0 0 1px var(--mpwpb_color_theme, #3858e9) inset;
}
.mpwpb-payment-choice-card-input {
  position: absolute !important;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.mpwpb-payment-choice-card-eyebrow {
  display: block !important;
  width: 100%;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8a8a8a;
  margin: 0 0 6px;
}
.mpwpb-payment-choice-card-title {
  display: block !important;
  width: 100%;
  font-size: 15px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 6px;
}
.mpwpb-payment-choice-card-price {
  display: block !important;
  width: 100%;
  font-size: 14px;
  font-weight: 700;
  color: var(--mpwpb_color_theme, #3858e9);
  margin: 0;
}
.mpwpb-payment-choice-card-price-suffix {
  font-weight: 400;
  font-size: 13px;
  color: inherit;
}
/* "Proceed to Checkout" button while add_to_cart (and, in Custom Payment
   mode, the native checkout form fetch that follows it) is in flight --
   without this the button looks clickable/idle for the couple of seconds
   that AJAX round trip takes. */
.mpwpb-cta-loading {
  opacity: 0.7 !important;
  cursor: not-allowed !important;
  pointer-events: none;
}
.mpwpb-default-template .main {
  width: 100%;
}
@media (min-width: 1024px) {
  .mpwpb-default-template .main {
    width: 60%;
  }
}
.mpwpb-default-template .sidebar {
  width: 100%;
}
@media (min-width: 1024px) {
  .mpwpb-default-template .sidebar {
    width: 40%;
    top: 100px;
    height: auto;
    overflow-y: auto;
    position: -webkit-sticky;
    position: sticky;
    height: calc(100vh - 100px);
  }
}
.mpwpb-default-template .sidebar [class*=_mpBtn] {
  padding: 10px;
}
.mpwpb-default-template .sidebar .booking-area {
  background-color: #f4f5f8;
  padding:10px;
  border-radius: 10px;
}
.mpwpb-default-template .sidebar .content {
  display: flex;
  overflow: auto;
  flex-direction: column;
}

.mpwpb-default-template   .mpwpb_category_section {
  margin-bottom: 5px;
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_item_box {
  margin: 0;
  padding: 10px;
  background-color: #fff;
  align-items: center;
  color: var(--mpwpb_color_theme);
  border: 1px solid var(--mpwpb_color_theme_77);
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_category_item.mpActive {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_category_item.mpActive h6 {
  font-weight: 700;
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_category_item.mpActive .mpwpb_item_check {
  position: relative;
  right: 0;
  top: 0;
  background-color: var(--mpwpb_color_theme_alter);
  color: var(--mpwpb_color_theme);
  margin: 0;
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_sub_category_area {
  /*padding-left: 20px;*/
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_sub_category_area .mpwpb_sub_category_item {
  background-color: var(--mpwpb_color_theme_alter);
  padding: 5px;
  margin: 5px;
}
.mpwpb-default-template   .mpwpb_category_section .mpwpb_sub_category_area .mpwpb_sub_category_item.mpActive {
  background-color: var(--mpwpb_color_theme_77);
}
.mpwpb-default-template   .mpwpb_service_area {
  /*margin-top: 20px;*/
}
.mpwpb-default-template   .mpwpb_service_area header {
  background-color: transparent;
  /*border-bottom: 1px solid var(--mpwpb_color_theme);*/
  /*padding: 10px 0;*/
}
.mpwpb-default-template   .mpwpb_service_area header h5 {
  /*font-size: 16px;*/
  color: var(--mpwpb_color_theme);
  /*font-weight: 700;*/
}
.mpwpb-default-template    .mpwpb_service_item {
  background-color: #fff;
  border: 1px solid var(--mpwpb_color_light_2);
  border-radius: 3px;
}
.mpwpb-default-template    .mpwpb_service_item [data-collapse] {
  margin-top: 15px;
  color: #999;
}
.mpwpb-default-template    .mpwpb_service_item .mpwpb_service_button {
  color: var(--mpwpb_color_theme);
  border: 1px solid var(--mpwpb_color_theme);
  background-color: #fff;
  min-width: 100px;
}
.mpwpb-default-template    .mpwpb_service_item .mpwpb_service_button:hover {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template    .mpwpb_service_item .mpwpb_service_button:focus {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template    .mpwpb_service_item .mpwpb_service_button.mActive {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
  min-width: 100px;
  width: 100px;
}
.mpwpb-default-template   .mpwpb_extra_service_area h5 {
  background-color: transparent;
  font-size: 16px;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
  padding: 10px 0;
  border-bottom: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_item_box {
  background-color: #fff;
  border-radius: 0;
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item {
  display: block;
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .service-details {
  color: #999;
  padding: 10px 0;
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation {
  min-width: 100px;
  width: 100px;
  border: 1px solid var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme);
  background-color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation:hover {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation:focus {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation.mActive {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
@media (max-width: 1024px) {
  .mpwpb-default-template   .mpwpb_extra_service_area .mpwpb_extra_service_item .quantity-box {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 5px;
  }
}
.mpwpb-default-template   .mpwpb_date_carousel header {
  background-color: transparent;
  padding: 10px 0;
}
.mpwpb-default-template   .mpwpb_date_carousel h3.mpwpb_date_staff_select {
  font-size: 16px;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
}
.mpwpb-default-template   .mpwpb_date_carousel .carousel_area {
  color: var(--mpwpb_color_theme);
}
.mpwpb-default-template   .mpwpb_date_carousel .carousel_area button {
  border-radius: 0;
}
.mpwpb-default-template   .mpwpb_date_carousel .mpwpb_date_time_line .to-book {
  font-size: 14px;
}
.mpwpb-default-template   .mpwpb_date_carousel .mpwpb_date_time_line .to-book.mpActive {
  background-color: var(--mpwpb_color_theme);
  color: #fff;
}
.mpwpb-default-template   .mpwpb_date_carousel .mpwpb_date_time_line ._mpBtn {
  border-radius: 0;
  margin-bottom: 2px;
}
.mpwpb-default-template   .mpwpb_date_carousel .mpwpb_date_time_line .booked {
  font-size: 14px;
  background-color: var(--mpwpb_color_theme_aa);
}
.mpwpb-default-template   #customer_details {
  margin-bottom: 20px;
}
.mpwpb-default-template   #customer_details .col-1 {
  width: 100%;
}
.mpwpb-default-template   #customer_details h3 {
  background-color: transparent;
  font-size: 16px !important;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
  padding: 10px 0;
  border-bottom: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-default-template   #customer_details label {
  font-size: 14px;
  color: #333;
}
.mpwpb-default-template   #customer_details input.input-text {
  border-color: #d3d3d3;
}
.mpwpb-default-template   #order_review_heading {
  font-size: 16px !important;
  margin-bottom: 10px;
  color: var(--mpwpb_color_theme);
}
.mpwpb-default-template   #order_review #payment {
  background-color: #fff;
}
.mpwpb-default-template   #order_review #payment label {
  font-size: 14px;
  color: #333;
}
.mpwpb-default-template   #order_review #payment .payment_box {
  background-color: #d3d3d3;
}
.mpwpb-default-template   #order_review #payment .payment_box::before {
  border: 1em solid #d3d3d3;
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}
.mpwpb-default-template   #order_review #payment #place_order {
  background-color: var(--mpwpb_color_theme);
  border: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-default-template  .content .service-cart {
  width: auto;
  overflow-y: scroll;
  background-color: #f4f5f8;
}
.mpwpb-default-template  .content .service-cart .mpwpb_summary_area_left_content {
  background-color: transparent;
  position: relative;
}
.mpwpb-default-template  .content .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item {
  /*border-left: 1px solid var(--mpwpb_color_theme);*/
  padding: 0 5px 15px 24px;
}
.mpwpb-default-template  .content .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item .mpwpb_item_check {
  border: 1px solid var(--mpwpb_color_theme);
  background-color: #fff;
  color: var(--mpwpb_color_theme);
}
.mpwpb-default-template  .content .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item:last-child {
  padding-bottom: 0;
}
.mpwpb-default-template  .footer {
  padding: 10px;
}
.mpwpb-default-template  .footer .next_service_area {
  background-color: transparent;
}
.mpwpb-default-template  .footer .next_date_area div:nth-child(1) {
  display: flex;
  flex-direction: column;
}
.mpwpb-default-template  .footer .next_date_area div:nth-child(1) h4 {
  margin: 10px auto;
  order: 0;
}
.mpwpb-default-template  .footer .next_date_area div:nth-child(1) button {
  order: 1;
  margin: 5px;
}
.mpwpb-default-template  .footer .next_date_area .mpwpb-total {
  padding: 0;
}

.mpwpb_registration > header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: relative;
  display: flex;
  min-height: 200px;
}
.mpwpb_registration > header::before {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  background: #00000092;
  height: 100%;
  position: absolute;
  z-index: 0;
}
.mpwpb_registration > header .template-header {
  width: 100%;
  max-width: 1440px;
  margin: auto;
  padding: 10vh 10px;
}
.mpwpb_registration > header .template-header .header-content {
  z-index: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
}
.mpwpb_registration > header  h2 {
  margin: 10px 0;
}
.mpwpb_registration > header .view_more{
  color: #fff;
  margin-top: 0px;
}
.mpwpb_registration > header  h2, .mpwpb_registration > header  p {
  color: #fff;
}
.mpwpb_registration > header  ul.features {
  margin: 30px 0;
  padding: 0;
  list-style-type: none;
}
.mpwpb_registration > header  ul.features li {
  margin: 10px 0;
  color: #fff;
  font-size: 18px;
}
.mpwpb_registration > header  ul.features li i {
  margin-right: 10px;
}
/* Not scoped under "header" (or .mpwpb_registration at all) anymore --
   assets/frontend/mpwpb-service-page-modern.js relocates
   #mpwpb_view_more_popup (.popup-features) to a direct child of <body> on
   load, to escape header's overflow:hidden trapping its position:fixed
   under the sidebar/menu. Class selectors alone are enough to keep matching
   regardless of where in the DOM it now lives -- including its own internal
   ul.features list, which used to inherit its list-style/spacing reset
   purely from the header-scoped rule above (".mpwpb_registration > header
   ul.features"), now out of reach once relocated outside both ancestors. */
.popup-features ul.features {
  margin: 20px 0 0;
  padding: 0;
  list-style-type: none;
}
.popup-features ul.features li i {
  margin-right: 10px;
}
.popup-features .mpwpb_popup_main_area {
  background-color: #FFF;
  border: 2px solid #fff;
}
.popup-features  .mpwpb_popup_header {
  border-bottom: 1px solid var(--mpwpb_color_border);
}
.popup-features  .mpwpb_popup_header .mpwpb_popup_close {
  position: absolute;
  top: 0;
  right: 0;
  width: 35px;
  height: 35px;
  background-color: transparent;
  color: var(--mpwpb_color_border);
}
.mpwpb_registration .ratings {
  background-color: var(--mpwpb_color_theme);
  margin: 10px 0;
  padding: 5px 10px;
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  display: inline-block;
}
.mpwpb_registration .ratings span {
  font: 12px;
  font-weight: normal;
}
.mpwpb_registration nav {
  padding: 5px;
  margin-bottom: 20px;
  background-color: #fbffff;
}
.mpwpb_registration nav ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  gap: 5px;
  justify-content: start;
  align-items: center;
}
.mpwpb_registration nav ul li {
  color: #333;

  font-size: 16px;
  text-align: center;
}

.mpwpb_registration nav ul li.active a{
  color: #fff;
  border-radius: 10px;
  border-radius: 10px;
  font-size: 16px;
  text-align: center;
  background-color: var(--mage-primary);
}

.mpwpb_registration nav ul li:first-child {
  margin-left: 0;
}
.mpwpb_registration nav ul li a {
  display: block;
  text-decoration: none;
  height: 100%;
  width: 100%;
  padding: 10px;
  color: #333;
}
.mpwpb_registration nav ul li a:hover {
  color: var(--mpwpb_color_theme);
}
.mpwpb_registration section {
  margin: 30px 0;
}
.mpwpb_registration section h2 {
  margin: 20px 0;
  border-bottom: 1px solid #ededed;
  color: var(--mpwpb_color_theme);
}
.mpwpb_registration section dd, .mpwpb_registration section dl, .mpwpb_registration section dt, .mpwpb_registration section li, .mpwpb_registration section ol, .mpwpb_registration section ul {
  margin: 10px;
  padding: 0;
}
.mpwpb_registration section ul, .mpwpb_registration section ol {
  padding-left: 20px;
  list-style-position: inside;
  list-style-type: disc;
}
.mpwpb_registration section li {
  margin: 5px 0;
}
.mpwpb_registration section ol {
  list-style-type: decimal;
}
.mpwpb_registration section ol::marker {
  background-color: var(--mpwpb_color_theme);
}
.mpwpb_registration section dl {
  margin-bottom: 15px;
}
.mpwpb_registration section dt {
  font-weight: bold;
}
.mpwpb_registration section dd {
  margin-left: 20px;
}
.mpwpb_registration .mpwpb-serivice-faq .faq-header {
  font-weight: bold;
  margin-top: 10px;
  cursor: pointer;
}
.mpwpb_registration .mpwpb-serivice-faq .faq-header i {
  margin: 0 10px;
  color: var(--mpwpb_color_theme);
}
.mpwpb_registration .mpwpb-serivice-faq .faq-content {
  display: none;
  padding: 10px 40px;
}
.mpwpb_registration main {
  max-width: 1440px !important;
  width: 100%;
  margin: auto;
  padding: 10px;
  flex-direction: column;
  display: flex;
}
@media (min-width: 1024px) {
  .mpwpb_registration main {
    flex-direction: row;
    justify-content: space-between;
    gap: 25px;
  }
}

.mpwpb-static-template .main {
  width: 100%;
}
@media (min-width: 1024px) {
  .mpwpb-static-template .main {
    width: 70%;
  }
}
.mpwpb-static-template .sidebar {
  width: 100%;
  padding-bottom: 300px;
}
@media only screen and (min-width: 768px) {
  .mpwpb-static-template .sidebar {
    padding-bottom: 10px;
  }
}
/* The booking widget only becomes a real 30%-wide side column once the parent
   `main` actually switches to a row at >=1024px (see `.mpwpb_registration main`
   and `.mpwpb-static-template .main` above, both keyed to 1024px). Applying
   width:30% from 768px — while `main` is still flex-direction:column and
   `.main` is width:100% — squeezed the entire booking widget into a narrow
   30% strip on tablet portrait (768–1023px). Keeping it full-width until the
   layout is genuinely two-column fixes that. */
@media only screen and (min-width: 1024px) {
  .mpwpb-static-template .sidebar {
    width: 30%;
  }
}
.mpwpb-static-template .sidebar [class*=_mpBtn] {
  padding: 10px;
}
.mpwpb-static-template .sidebar  .mpwpb_popup {
  background-color: rgba(0, 0, 0, 0.5803921569);
}
.mpwpb-static-template   .mpwpb_popup .mpwpb_popup_main_area {
  border: 0;
  box-shadow: 0 0 1px #000;
  border-radius: 5px;
  width: 100%;
  max-width: auto;
  min-width: 300px;
  max-width: 400px;
  max-height:90vh;
}
@media (min-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup .mpwpb_popup_main_area {
    width: 980px;
    max-width: 1024px;
  }
}
.mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_header {
  padding: 16px 16px 10px;
  color: #333;
  border-radius: 5px 5px 0 0;
  border: 0;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.1);
}
.mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_header .mpwpb_popup_close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0;
  background: transparent;
  color: var(--mpwpb_color_d);
  width: 35px;
  height: 35px;
}
.mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body {
  overflow: auto;
  min-height: 40vh;
  height: auto;
}
.mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body .mpwpb-popup-content {
  display: flex;
  overflow: auto;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body .mpwpb-popup-content {
    flex-direction: row;
  }
}
.mpwpb-static-template   .mpwpb_popup   .service-items {
  width: 100%;
  padding: 10px;
}
@media (min-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup   .service-items {
    width: 60%;
  }
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpwpb_item_box {
  margin: 0;
  padding: 20px;
  background-color: #f4f5f8;
  margin: 10px 0;
  align-items: center;
  border: 2px solid #e2e8f0;
  border-radius:16px;
}
.mpwpb_selected_category_text.mpwpb_category_selected_item.mpActive.mpwpb_selected_category {
    font-weight: bold;
}
.mpwpb_selected_category{font-weight:normal; }

.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpwpb_item_box:hover {
  border: 2px solid var(--mpwpb_color_theme); 
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(102, 126, 234, 0.15);
}

.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpActive {
  border: 2px solid var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpActive h6 {
  font-weight: 700;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpActive .mpwpb_item_check {
  position: relative;
  right: 0;
  top: 0;
  background-color: var(--mpwpb_color_theme_alter);
  color: var(--mpwpb_color_theme);
  margin: 0;
  border:1px solid;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpwpb_sub_category_area {
  margin-left:0px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpwpb_sub_category_area .mpwpb_sub_category_item {
  background-color: #f4f5f8;
  padding: 20px;
  border: 1px solid #d3d3d3;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_category_section .mpwpb_sub_category_area .mpwpb_sub_category_item.mpActive {

}

.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area header {
  background-color: transparent;
  /*border-bottom: 1px solid var(--mpwpb_color_theme);*/
  /*padding: 10px 0;*/
}
.mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body  .mpwpb_category_area header h5,
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area header h5 {
  font-size: 16px;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item {
  background-color: #f4f5f8;
  border: 2px solid #e2e8f0;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item [data-collapse] {
  margin-top: 15px;
  color: #999;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item .mpwpb_service_button {
  color: var(--mpwpb_color_theme);
  /*border: 1px solid var(--mpwpb_color_theme);*/
  background-color: #fff;
  min-width: 100px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item .mpwpb_service_button:hover {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item .mpwpb_service_button:focus {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_service_area .mpwpb_service_item .mpwpb_service_button.mActive {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
  min-width: 100px;
  width: 100px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area h5 {
  background-color: transparent;
  font-size: 16px;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
  padding: 10px 0;
  border-bottom: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_item_box {
  background-color: #f4f5f8;
  border-radius: 0;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item {
  display: block;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .service-details {
  color: #999;
  padding: 10px 0;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation {
  min-width: 100px;
  width: 100px;
  border: 1px solid var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme);
  background-color: var(--mpwpb_color_theme_alter);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation:hover {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation:focus {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .mpwpb_price_calculation.mActive {
  background-color: var(--mpwpb_color_theme);
  color: var(--mpwpb_color_theme_alter);
}
@media (max-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_extra_service_area .mpwpb_extra_service_item .quantity-box {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 5px;
  }
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel header {
  background-color: transparent;
  padding: 10px 0;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel h3.mpwpb_date_staff_select {
  font-size: 16px;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .carousel_area {
  color: var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .carousel_area button {
  border-radius: 0;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .mpwpb_date_time_line .to-book {
  font-size: 14px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .mpwpb_date_time_line .to-book.mpActive {
  background-color: var(--mpwpb_color_theme);
  color: #fff;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .mpwpb_date_time_line ._mpBtn {
  border-radius: 0;
  margin-bottom: 2px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items .mpwpb_date_carousel .mpwpb_date_time_line .booked {
  font-size: 14px;
  background-color: var(--mpwpb_color_theme_aa);
}
.mpwpb-static-template   .mpwpb_popup   .service-items #customer_details {
  margin-bottom: 20px;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #customer_details .col-1 {
  width: 100%;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #customer_details h3 {
  background-color: transparent;
  font-size: 16px !important;
  color: var(--mpwpb_color_theme);
  font-weight: 700;
  padding: 10px 0;
  border-bottom: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup   .service-items #customer_details label {
  font-size: 14px;
  color: #333;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #customer_details input.input-text {
  border-color: #d3d3d3;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #order_review_heading {
  font-size: 16px !important;
  margin-bottom: 10px;
  color: var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup   .service-items #order_review #payment {
  background-color: #f4f5f8;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #order_review #payment label {
  font-size: 14px;
  color: #333;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #order_review #payment .payment_box {
  background-color: #d3d3d3;
}
.mpwpb-static-template   .mpwpb_popup   .service-items #order_review #payment .payment_box::before {
  border: 1em solid #d3d3d3;
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}
.mpwpb-static-template   .service-items #place_order {
  background-color: var(--mpwpb_color_theme);
  border: 1px solid var(--mpwpb_color_theme);
}
.mpwpb-static-template  .service-cart {
  width: auto;
  overflow-y: scroll;
  padding: 10px;
  margin: 10px;
  /*border: 2px solid #d3d3d3;*/
  border-radius: 10px;
  background-color: #f4f5f8;
}
@media (min-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup   .service-cart {
    width: 40%;
  }
}
.mpwpb-static-template   .mpwpb_popup   .service-cart .mpwpb_summary_area_left_content {
  background-color: transparent;
  position: relative;
}
.mpwpb-static-template   .mpwpb_popup   .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item {
  /*border-left: 1px solid var(--mpwpb_color_theme);*/
  padding: 0 5px 15px 24px;
}
.mpwpb-static-template   .mpwpb_popup   .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item:last-child {
  border-left: 0;
}
.mpwpb-static-template   .mpwpb_popup   .service-cart .mpwpb_summary_area_left_content .mpwpb_summary_item .mpwpb_item_check {
  /*border: 1px solid var(--mpwpb_color_theme);*/
  background-color: #fff;
  color: var(--mpwpb_color_theme);
}
.mpwpb-static-template   .mpwpb_popup .mpwpb_popup_close {
  background-color: var(--mpwpb_color_theme);
  color: #FFF;
}
.mpwpb-static-template   .mpwpb_popup .popupFooter {
  border-top: 0;
  padding: 10px;
  box-shadow: 2px 0px 5px 0 rgba(0, 0, 0, 0.1);
}
@media (max-width: 1024px) {
  .mpwpb-static-template   .mpwpb_popup .popupFooter .next_date_area div:nth-child(1) {
    display: flex;
    flex-direction: column;
  }
  .mpwpb-static-template   .mpwpb_popup .popupFooter .next_date_area div:nth-child(1) h4 {
    margin: 10px auto;
    order: 0;
  }
  .mpwpb-static-template   .mpwpb_popup .popupFooter .next_date_area div:nth-child(1) button {
    order: 1;
    margin: 5px;
  }
  .mpwpb-static-template   .mpwpb_popup .popupFooter .next_date_area .mpwpb-total {
    padding: 0;
  }

  .mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body .mpwpb-popup-content .service-cart {
    width: 90%;
  }

}
.mpwpb-static-template   .mpwpb_popup .popupFooter button.mpwpb_date_time_next {
  padding: 10px;
  color: #fff;
}
.mpwpb_static_area {
  width: auto;
  background: #fff;
  z-index: 10;
}

.mpwpb-static-template .sidebar .mpwpb_static_area.fixed {
  position: fixed;
  top:50px;
  z-index: 10;
}
/* "Booking widget sticky on scrolling" (General Settings). position:sticky
   releases on its own once .sidebar's containing block runs out -- .sidebar
   is a flex item of .mpwpb_registration main (display:flex, default
   align-items:stretch), so it's already stretched to match the much taller
   .main content column's height, giving the sticky widget plenty of room to
   follow scroll without any scroll-listener/left-offset JS. Scoped to
   min-width:1024px, the actual breakpoint where .sidebar becomes a real side
   column (see the .mpwpb-static-template .sidebar width:30% rule above) -- on
   tablet/mobile the widget is a full-width stacked block (or collapsed behind
   the #mpwpb_mobile_booking_mobile toggle at <=600px), where sticking a
   full-width element to the top would just cover the content below it. */
@media (min-width: 1024px) {
  .mpwpb-static-template .sidebar .mpwpb_static_area.mpwpb-sticky-enabled {
    position: sticky;
    top: 50px;
    z-index: 10;
  }
}


.mpwpb-static-template  .mpwpb_static_area .mpwpb_static {
  display: block;
  background-color:#fff;
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #ddd;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 12px 28px rgba(15, 23, 42, 0.09);
  margin: 10px;
}

.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_registration_popup_close{
  display: none;
  justify-content: end;
  position: absolute;
  right: 22px;
  color: #333333;
  font-size: 20px;
  top: 18px;
  cursor: pointer;
  font-weight: 600;
}

.mpwpb-static-template  .mpwpb_static_area .mpwpb_mobile_booking{
  display: none;
  background-color: var(--mpwpb_color_theme);
  padding: 20px 30px;
  border: 2px solid var(--mpwpb_color_theme_alter);
  border-radius: 10px;
  box-shadow: 0 0 5px #333;
  margin: 10px;
  font-size: 25px;
  color: #f6f6f6;
  cursor: pointer;
  text-align: center;
}

@media (max-width: 600px) {
  .mpwpb-static-template  .mpwpb_static_area #mpwpb_mobile_booking_mobile{
    display: block;
  }

  .mpwpb-static-template  .mpwpb_static_area #mpwpb_make_static_booking {
    display: none;
  }
  .mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_registration_popup_close{
    display: flex;
  }

  .mpwpb-static-template   .mpwpb_popup  .mpwpb_popup_body .mpwpb-popup-content .service-cart {
    width: 90%;
  }

}

@media (min-width: 1024px) {
  .mpwpb-static-template  .mpwpb_static_area .mpwpb_static {
    margin: 0;
  }
}
/* Only the actual category/service list scrolls -- the "Our services"
   header above it and the "Select a service" CTA footer below it (rendered
   as siblings outside .mpwpb_static_cateogry in static_registration.php)
   stay put outside the scrollable area instead of scrolling away with it. */
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_cateogry .mpwpb-service-tree {
  max-height: 85vh;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--mpwpb_color_theme) #f1f5f9;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_cateogry .mpwpb-service-tree::-webkit-scrollbar {
  width: 6px;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_cateogry .mpwpb-service-tree::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 999px;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_static_cateogry .mpwpb-service-tree::-webkit-scrollbar-thumb {
  background: var(--mpwpb_color_theme);
  border-radius: 999px;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mp_title {
  margin-bottom: 20px;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mp_title h2 {
  color:#fff;
  text-align: left;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mp_title p {
  color:#fff;
  text-align: left;

}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mp_title .ratings {
  background-color: #fff;
  color: #333;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_item_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 10px 5px;
  margin-bottom: 5px;
  position: relative;
  color: var(--d_color);
  border-radius: 10px;
  border: 1px solid #ebe5e5;
  background-color: #F8F9FF;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_item_box:last-child {
  margin-bottom: 0;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_item_box .alignCenter{width: 95%;}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_item_box h2 {
  font-weight: bold;
  font-size: 16px;
  color: #3f3f3f;
}
.mpwpb-static-template  .mpwpb_static_area .mpwpb_static .mpwpb_item_box i {
  color: var(--mpwpb_color_theme);
}

/*# sourceMappingURL=mpwpb_registration.css.map */

.mpwpb_popup_body{background:#f5f7fa; }
._dShadow_7.mpwpb_category_area, ._dShadow_7_mB_xs.mpwpb_service_area, ._dShadow_7_mB_xs.mpwpb_extra_service_area, ._dShadow_7.mpwpb_category_area{padding:0px; }
._dShadow_7.mpwpb_category_area {margin-top:10px !important; border-radius:10px !important; border-radius:10px !important}
.service-cart{ background: #fff !important; overflow-y: auto !important;}
.mpwpb_service_item, .mpwpb_extra_service_item {
    border-radius: 10px;
}
.mpwpb_popup_header{
 background-color: var(--mpwpb_color_theme);
}
.mpwpb_popup_header h5{font-size:28px !important;}
.mpwpb_popup_header p{font-size:16px !important;}
.mpwpb_popup_header h5, .mpwpb_popup_header p {
 color: #fff;
 text-align: center;
}
.mpwpb_service_item .mpwpb_service_button, .mpwpb_extra_service_item .mpwpb_price_calculation{
  background-color: var(--mpwpb_color_theme) !important;
}
.mpwpb_style button span{color:#fff !important;}
.mpwpb_service_button:hover{
  background-color: #f5f7fa !important;
}
.mpwpb_service_button.mActive, .mpwpb_extra_service_item .mpwpb_price_calculation.mActive{
  background-color: #4caf50 !important;
}
 div.mpwpb_service_item .mpwpb_service_button, .mpwpb_extra_service_item .mpwpb_price_calculation{border:none !important}
.mpwpb_service_area header h5, .mpwpb_extra_service_area h5{color:#333 !important;}
/*.mpwpb_service_area header,.mpwpb_extra_service_area h5{border-bottom: 1px solid #ddd !important;}*/
.mpwpb_price_qty_remove_holder p, span.mpwpb_total_bill.textTheme{padding-right: 23px !important;}
button.mpwpb_service_button_remove, button.mpwpb_ex_service_button_remove{
  position: absolute;
  right: 0;
  top: 10px;
  padding: 0;
}

.mpwpb_selected_control i.fa-solid.fa-arrow-right {
    font-size: 12px;
    color: #bbb2b2;
}

button.mpwpb_service_button:hover{
    background-color: var(--mpwpb_color_theme) !important;
    color: var(--mpwpb_color_theme_alter) !important;
}
button.mpwpb_service_button.mActive:hover{
   background-color: #4caf50 !important;
}
.mpwpb-default-template  .content .service-cart .mpwpb_summary_area_left_content
 {
    background-color: #fff;
    border-radius: 10px;
    position: relative;
}
.booking-area .service-cart {
    background: none !important;
}
.mpwpb_popup .service-cart {
    background: #fff !important;
    box-shadow: 0 0px 5px #ddd;
}
.mpwpb-popup-content{ padding: 10px; }

#service-overview h1,#service-overview h2,#service-overview h3,#service-overview h4,#service-overview h5,#service-overview h6{
  margin: 10px 0;
  margin-top: 20px;
}


/* Container */
/*.mpwpb_progress_container {
  width: 100%;
  padding: 5px 5px;
  display: flex;
  justify-content: center;
}

!* Progress Bar *!
.mpwpb_progress_bar {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 25px;
}

!* Line Behind Steps *!
.mpwpb_progress_line {
  position: absolute;
  top: 50%;
  left: 10%;
  right: 10%;
  height: 2px;
  background-color: #979292;
  z-index: 0;
  transform: translateY(-50%);
  border-radius: 2px;
}

!* Step Buttons *!
.mpwpb_progress_step {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
  border: 1px solid #ccc;
  border-radius: 50px;
  padding: 10px 15px;
  color: #666;
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
  text-align: center;
  font-size: 12px;
}

!* Active Step *!
.mpwpb_progress_step.active {
  background-color: #4CAF50;
  border-color: #4CAF50;
  color: #fff;
  box-shadow: 0 0 10px rgba(76, 175, 80, 0.4);
}

!* Optional Hover Effect *!
.mpwpb_progress_step:hover {
  border-color: #4CAF50;
  color: #4CAF50;
}*/

.mpwpb_staff_member_booking {
  width: 100%;
  padding: 10px 15px;
  font-size: 16px;
  color: #333;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
  background-repeat: no-repeat;

  box-sizing: border-box;
  max-height: 300px;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.mpwpb_select_staff_image{
  width: 70px !important;
}

.mpwpb_date_staff_select{
  cursor: pointer;
}

.mpwpb_staff_step_summary {
  background: #f8fafc;
  border: 1px solid #e5e9f0;
  border-radius: 10px;
  padding: 12px 14px;
  margin: 12px 0 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mpwpb_staff_step_summary_row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #475569;
}

.mpwpb_staff_step_summary_row i {
  width: 16px;
  text-align: center;
  color: #8892a4;
}

.mpwpb_staff_step_summary_row strong {
  margin-left: auto;
  color: #1e293b;
  font-weight: 700;
}

.mpwp_select_staff_wrapper {
  padding: 20px;
  font-family: 'Segoe UI', sans-serif;
}

/* Horizontal scroll strip of plain avatar+name picks -- no card/box chrome,
   just a clean row that scrolls instead of wrapping when there are more
   staff than fit on one line. */
.mpwp_select_staff_grid {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 6px 4px 14px;
  scrollbar-width: thin;
}

.mpwp_select_staff_card {
  flex: 0 0 auto;
  width: 84px;
  text-align: center;
  cursor: pointer;
  padding: 6px 4px;
  border-radius: 10px;
  transition: background 0.15s ease;
}

.mpwp_select_staff_card:hover {
  background: #f5f7fa;
}

.mpwp_select_staff_card.selected {
  background: #eef2ff;
}

/* Shared by both the real <img> avatars and the emoji "Any Staff" icon, so
   both render as the same size/shape circle. */
.mpwp_select_staff_avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 8px;
  font-size: 26px;
  background: #f0f0f0;
  border: 2px solid transparent;
}

.mpwp_select_staff_card.selected .mpwp_select_staff_avatar {
  border-color: #4CAF50;
}

.mpwp_select_staff_name {
  font-size: 12.5px;
  font-weight: 600;
  color: #1e293b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mpwpb_cart_progress_wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1px;
  padding: 5px;
  background: #f9fbfd;
}

.mpwpb_cart_progress_step {
  display: flex;
  /*flex-direction: column;*/
  flex-direction: row;
  align-items: center;
  color: #999;
  gap: 8px;
}

.mpwpb_cart_progress_step.active {
  color: #2563eb;
  font-weight: bold;
}

.mpwpb_cart_progress_circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #e0e0e0;
  color: #555;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  margin-bottom: 5px;
  transition: background 0.3s, color 0.3s;
}

.mpwpb_cart_progress_step.active .mpwpb_cart_progress_circle {
  background: #2563eb;
  color: white;
}

.mpwpb_cart_progress_arrow {
  color: #ccc;
  font-size: 18px;
  padding: 0 5px;
}

.mpwpb_get_date_selected{
  background-color: var(--mpwpb_color_theme) !important;
  color: aliceblue !important;
}

.mpwpb_get_date{
  background-color: var(--mpwpb_color_light);
  cursor: pointer;
  padding: 15px !important;
  min-height: 80px !important;
  border-radius: 10px;
}

.mpwpb_get_date:hover {
  border: 1px solid #ff6b9d;
  background: #fef2f2;
}

.mpwpb_get_close_date
{
  background-color: #fbeeee  !important;
  cursor: not-allowed;
  padding: 15px !important;
  min-height: 80px !important;
  border-radius: 10px;
  text-align: center;
}

/* A closed day now shows the same weekday + day-number card as every other
   day, with a "Closed" label instead of the full "12 September 2026" it used
   to print. That was the only place the month appeared anywhere in the
   picker, so open days looked like they were missing information the closed
   ones had. */
.mpwpb_get_close_date .mptrs_day_with_date,
.mpwpb_get_close_date .mpwpb-date-number{
  color: #b98d8d !important;
}

.mpwpb_close_date{
  display: block;
  font-size: 10px;
  font-weight: 600;
  color: #c2a0a0;
  text-transform: uppercase;
}

.mpwpb_get_date_passed{
  background-color: #f8fafc !important;
  cursor: not-allowed;
  padding: 15px !important;
  min-height: 80px !important;
  border-radius: 10px;
  opacity: .6;
  text-align: center;
}

.mpwpb_get_date_passed .mptrs_day_with_date,
.mpwpb_get_date_passed .mpwpb-date-number{
  color: #94a3b8 !important;
}

.mpwpb_date_passed_label{
  display: block;
  font-size: 10px;
  font-weight: 600;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .02em;
  margin-top: 2px;
}

.mpwpb_time_display{
  display: flex;
  gap: 10px;
  padding: 5px 5px 5px 0px;
  flex-wrap: wrap;
}
.mpwpb_time_display button{
  text-transform: none !important;
}
.mpwpb_time_btn{
  padding: 15px !important;
}
.mpwpb_time_btn.mpwpb-happy-hour-slot{
  position: relative;
  padding-top: 22px !important;
  border-color: #f0932b !important;
}
.mpwpb_time_btn.mpwpb-happy-hour-slot .mpwpb-happy-hour-badge{
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  background: #f0932b;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  padding: 3px 7px;
  border-radius: 999px;
  box-shadow: 0 1px 3px rgba(0,0,0,.25);
}

.mpwpb_close_text{
  position: absolute;
  color: #e76840;
  font-size: 11px;
}

.mpqpb_next_prev_btn_display {
  display: flex;
  justify-content: start;
  align-items: center;
  margin: 20px auto;
}

.mpwpb_next_prev_btn {
  background-color: #f94e87;
  color: white;
  padding: 8px 15px;
  border: none;
  border-radius: 3px;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.mpwpb_next_prev_btn:hover {
  cursor: pointer;
  background-color: #df185a;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
  transform: translateY(-2px);
}

.mpwpb_active_time{
  background-color: var(--mpwpb_color_theme) !important;
  color: #fff !important;
}
.mpwpb_without_cat_service_area .mpwpb_service_item{
  border-radius: 3px;
  padding: var(--mpwpb_dmp_xs);
  margin: var(--mpwpb_dmp_xs) 0;
  position: relative;
  border: 1px solid var(--mpwpb_color_light_2);
  background-color: #f4f5f8;
}

.mpwpb-static-template .sidebar
{
    width: 100%;
    padding-bottom: 10px;
}
/* Matches the width:30% breakpoint above: the booking widget only becomes a
   30% side column at >=1024px, where the parent `main` is actually a two-
   column row. Below that it stays full-width (was squeezed to 30% on tablet
   portrait, 768–1023px, while still stacked). */
@media only screen and (min-width: 1024px) {
  .mpwpb-static-template .sidebar
  {
      width: 30%;
      padding-bottom: 10px;
  }
}
@media only screen and (min-width: 10px) {
    div.mpwpb_style label, div.mpwpb_style [class*="_fs_label"]
    {
        font-size: 14px;
        font-weight: normal;
        margin-bottom: 5px;
    }
}
.mpwpb_select_time_holder .mpwpb_time_btn{font-weight:normal; }
span.mptrs_day_with_date {
    color: var(--mpwpb_color_theme);
}

.mpwpb_get_date_selected.mpwpb_get_date span.mptrs_day_with_date{color: aliceblue !important;}
