  .step-tracker {
    display: flex;
    align-items: center;
  }

  .step-bullet {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #ccc;
    color: white;
    text-align: center;
    line-height: 30px;
    font-weight: bold;
    position: relative;
    z-index: 2;
    transition: background 0.3s;
    cursor: pointer;
  }

  .step-line {
    flex: 1;
    height: 4px;
    background: #ccc;
    margin: 0 5px;
    z-index: 1;
    transition: background 0.3s;
  }

  .step-bullet.completed {
    background: #1A2942;
    /* Green */
  }

  .step-bullet.active {
    background: #ccc;
    transform: scale(1.3);
    border: 1px solid #000;
    color: #000;
    line-height: 28px !important;
  }

  .step-line.completed {
    background: #1A2942;
    /* Green */
  }

  .step-tracker-wrapper {
    padding-bottom: 7%;
  }

  .radio-group {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
  }

  .radio-box {
    /* border: 2px solid #ccc; */
    border-radius: 8px;
    padding: 16px 24px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    width: 462px;
    height: 56px;
    text-align: left;
    box-shadow: 0px 4px 10px 0px #0000001F;
    border-radius: 16px;
  }

  .radio-box:hover {
    border-color: #0073aa;
  }

  .radio-box.selected {
    border-color: #0073aa;
    background-color: #1A2942;
    color: #fff;
  }

  .radio-label {
    font-family: 'TT Norms Pro';
    font-weight: 500;
    font-size: 20px;
    line-height: normal;
    letter-spacing: 0%;
  }

  .error-msg {
    color: red;
    font-size: 12px;
    margin-top: 6px;
  }

  .step_form_cst_style {
    padding: 20px 0;
  }

  .step_form_cst_style p.step_heading {
    font-family: 'TT Norms Pro';
    font-weight: 500;
    font-size: 24px;
    line-height: normal;
    letter-spacing: 0%;
    margin: 0;
    padding-bottom: 16px;
  }

  /* Form Css */
  .may_book_an_appoinment_form {
    border: 3px solid #1A2942;
    border-radius: 12px;
  }

  .form_heading {
    background: #1A2942;
    color: #fff;
    text-align: center;
    padding: 13px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: normal;
    border: 3px solid #1A2942;
    border-radius: 7px 7px 0 0;
  }

  .form_heading p {
    font-family: 'TT Norms Pro';
    font-weight: 500;
    font-size: 24px;
    line-height: normal;
    letter-spacing: 0.24em;
    margin: 0;
    text-transform: uppercase;
  }

  .may_book_an_appoinment_form .form_fields_Elements {
    padding: 50px 100px 40px;
  }

  .next_step_btn {
    width: 100%;
    text-align: center;
  }

  .an_appoinment_next_btn {
    background-color: #1A2942 !important;
    color: white !important;
    border-radius: 32px !important;
    box-shadow: 0px 4px 10px 0px #0000001F !important;
    border-color: #1A2942 !important;
    cursor: pointer !important;
    font-family: 'TT Norms Pro' !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: normal !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    padding: unset !important;
  }

  .an_appoinment_next_btn.two_2 {
    width: 300px !important;
    height: 56px !important;
  }

  .an_appoinment_next_btn.one_1 {
    width: 205px !important;
    height: 56px !important;
  }


  .doctor_options_section .doctors-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }


  label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor {
    margin: 0 !important;
    width: calc((100% / 4) - (60px / 4));
    display: flex;
    flex-direction: column;
    border: 1px solid var(--mf-grey);
    padding: 15px;
    border-radius: 10px;
    cursor: pointer;
    position: relative;
  }

  label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor .forminator-radio-bullet {
    border-radius: 9px !important;
  }

  label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor>input {
    width: 1px !important;
    overflow: hidden !important;
    position: absolute !important;
    white-space: nowrap !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
  }

  label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor span.forminator-radio-image span {
    width: 100% !important;
    height: unset !important;
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    background-position: center top !important;
    display: block;
    background-size: cover;
  }

  label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor span.forminator-radio-label {
    padding-top: 10px;
  }

  .doctor_options_section {
    padding-bottom: 30px;
  }

  .choosse_doctorsssssss {
    display: flex;
    /* flex-wrap: wrap; */
    align-items: stretch;
    justify-content: space-between;
    gap: 20px;
    flex-direction: column;
  }

  .choosse_doctorsssssss .doctor_options_section.hidden {
    display: none;
  }

  .choosse_doctorsssssss .doctor_options_section.open {
    display: block;
  }

  .step.step_form_cst_style .skip_doctor_btn {
    border-radius: 32px;
    border-width: 1px;
    padding-top: 12px;
    padding-right: 70px;
    padding-bottom: 12px;
    padding-left: 70px;
    background-color: unset;
    color: #1A2942;
    border-color: #1A2942;
	font-size:18px;
  }

  .btn-load-more-doctors {
    border-radius: 32px !important;
    border-width: 1px !important;
    padding-top: 10px !important;
    padding-right: 40px !important;
    padding-bottom: 10px !important;
    padding-left: 40px !important;
    background-color: unset !important;
    color: #1A2942 !important;
    border-color: #1A2942 !important;
    font-size: 16px !important;
  }

  .step.step_form_cst_style .skip_doctor_btn:hover,
  .step.step_form_cst_style .skip_doctor_btn:focus,
  .btn-load-more-doctors:hover,
  btn-load-more-doctors:focus {
    color: #fff !important;
    background-color: #1A2942 !important;
  }

  .step_actions_btn {
    gap: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
    flex-direction: row-reverse;
  }

  .step_form_cst_style .choosse_location {
    padding-bottom: 5%;
  }

  .required-placeholder::placeholder {
    color: #999;
  }

  .required-placeholder::placeholder:after {
    content: "*";
    color: red;
  }

  .date_picker_wrapper,
  .time_picker_wrapper {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px 24px;
    cursor: pointer;
    transition: all .2s ease-in-out;
    width: 462px;
    height: 56px;
    text-align: left;
    box-shadow: 0px 4px 10px 0px #0000001F;
    border-radius: 16px;
    margin: 0 !important;
  }

  .date_picker_wrapper input#appointment-date,
  .time_picker_wrapper {
    border: none;
  }

  .date_picker_wrapper>span.input-icon {
    position: absolute;
    left: 30px;
    z-index: 10;
    color: #999;
  }

  .step_3_wrapper {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
  }

  span.select2-selection.select2-selection--single {
    border: none !important;
  }

  .time_picker_wrapper {
    flex-direction: row-reverse;
    align-items: center;
    justify-content: center;
  }

  .time_picker_wrapper span.input-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  div#final-step {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding: 25px 0 30px;
  }

  .form-group.user_input_field:last-child:nth-last-child(odd) {
    grid-column: auto / span 2;
  }

  .form-group.user_input_field>input,
  .form-group.user_input_field>select,
  .form-group.user_input_field>.specificFeild_number,
  .form-group.user_input_field>.specificFeild_number:focus,
  .form-group.user_input_field>.specificFeild_number:hover,
  .form-group.user_input_field>input:hover,
  .form-group.user_input_field>select:hover,
  .form-group.user_input_field>input:focus,
  .form-group.user_input_field>select:focus {
    border-radius: 16px;
    justify-content: space-between;
    padding-top: 12px;
    padding-right: 32px;
    padding-bottom: 12px;
    padding-left: 32px;
    border: none;
    box-shadow: 0px -2px 4px 0px #0000000A;
    box-shadow: 0px 4px 10px 0px #0000001F !important;
  }

  .specificFeild_number {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .specificFeild_number p {
    margin: 0;
  }

  .specificFeild_number input {
    margin: 0;
    border: none !important;
    padding: 0 !important;
    padding-left: 0 !important;
  }

  .specificFeild_number #phone-prefix {
    margin: 0;
    border: none !important;
    padding: 0 !important;
    padding-right: 10px !important;
  }

  .form-field-checkboxes {
    display: flex;
    align-items: center;
    line-height: normal;
    gap: 1rem;
  }

  .term_and_newslatters {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .form-field-checkboxes input {
    padding: 0;
    height: initial;
    width: initial;
    margin-bottom: 0;
    display: none;
    cursor: pointer;
  }

  .form-field-checkboxes label {
    position: relative;
    cursor: pointer;
  }

  .form-field-checkboxes label:before {
    content: '';
    -webkit-appearance: none;
    background-color: transparent;
    border: 2px solid #1a2942;
    box-shadow: 0px 4px 10px 0px #0000001F;
    padding: 10px;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
    margin-right: 5px;
  }

  .form-field-checkboxes input:checked+label:after {
    content: '';
    display: block;
    position: absolute;
    top: 2px;
    left: 9px;
    width: 6px;
    height: 14px;
    border: solid #1a2942;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
  }

  .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single,
  .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single:hover,
  .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single:focus {
    height: 48px;
    box-shadow: 0px 4px 10px 0px #0000001F !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 12px;
    padding-right: 32px;
    padding-bottom: 12px;
    padding-left: 24px;
    border-radius: 16px;
    width: 100% !important;
  }

  .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single span.select2-selection__arrow {
    height: 48px !important;
    right: 15px !important;
  }

  .cst_btn-loading {
    background: #B00;
    width: 12rem;
    height: 48px;
    padding: 1em 5em;
    border: 0;
    font-weight: bold;
    border-radius: 20px;
    color: #fff;
    cursor: pointer;
    overflow: hidden;
    position: relative;
  }

  .cst_btn-loading.animation:before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid #fff;
    border-top-color: transparent;
    animation: spin 1s ease-in-out infinite;

  }

  .cst_btn-loading.animation span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    opacity: 50%;
    transition: top .5s ease-out;
  }

  @keyframes spin {
    to {
      transform: rotate(360deg)
    }
  }



  .spinner_cst .spinner {
    animation: rotate 2s linear infinite;
    z-index: 2;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -25px 0 0 -25px;
    width: 50px;
    height: 50px;
  }

  .spinner_cst .spinner .path {
    stroke: #e8f0fe;
    stroke-linecap: round;
    animation: dash 1.5s ease-in-out infinite;
  }

  @keyframes rotate {
    100% {
      transform: rotate(360deg);
    }
  }

  @keyframes dash {
    0% {
      stroke-dasharray: 1, 150;
      stroke-dashoffset: 0;
    }

    50% {
      stroke-dasharray: 90, 150;
      stroke-dashoffset: -35;
    }

    100% {
      stroke-dasharray: 90, 150;
      stroke-dashoffset: -124;
    }
  }

  button.an_appoinment_next_btn.one_1.cst_btn-loading.active {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 69px !important;
    padding: 32px 10px !important;
    border-radius: 100% !important;
  }

  .wrapper_tracker {
    position: relative;
  }
   
  .step-form-title-01,
  .step-form-title-02,
  .step-form-title-03,
  .step-form-title-04 {
    display: block;
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    white-space: nowrap;
  }

  .step-form-title-01 p,
  .step-form-title-02 p,
  .step-form-title-03 p,
  .step-form-title-04 p {
    font-family: 'TT Norms Pro';
    font-weight: 500;
    font-size: 14px;
    padding-top: 10px;
  }

  .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #1a2942 !important;
    color: white;
  }

  .flatpickr-day.selected {
    color: #ffffff !important;
    background: #1a2942 !important;
  }
	
	button.skip_doctor_btn.to_skip_btn_style {
		position: absolute;
		top: 276px;
    	right: 105px;
		font-size: 18px !important;
		height: 48px;
		line-height: normal;
		z-index: 99;
	}

	button.skip_doctor_btn.to_skip_btn_style.location_selected {
		top: 430px;
	}

span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single{
	background: transparent !important;
}

.form_payment_confirmation p, .form_payment_confirmation span {
    font-family: 'TT Norms Pro';
    margin: 0;
}

.form_payment_confirmation {
    padding: 30px 0;
}

.form_payment_confirmation p {
    font-weight: 500;
    padding-bottom: 5px;
}

.form_payment_confirmation span {
    font-style: italic;
    font-weight: 300;
}
	
@media screen and (max-width:1240px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
    	top: 468px;
	}
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 272px;
	}
}
@media screen and (max-width:1024px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
    	top: 483px;
	}
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 262px;
	}
	.step-form-title-01 p, .step-form-title-02 p, .step-form-title-03 p, .step-form-title-04 p {
		font-family: 'TT Norms Pro';
		font-weight: 500;
		font-size: 10px;
		padding-top: 10px;
	}
}
@media screen and (max-width:975px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
    	top: 452px;
	}
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 243px;
	}
}

  /* Mobile Responsive  */
  @media screen and (max-width:767px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
        top: 388px;
        height: 30px !important;
        font-size: 12px !important;
        line-height: 15px;
        padding: 7px 10px;
        width: 120px;
        font-weight: 500;
    }
	 .step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 203px;
        height: 30px !important;
        font-size: 12px !important;
        line-height: 15px;
        padding: 7px 10px;
        width: 120px;
        font-weight: 500;
	  }
	  .select-doctor-filter button.clear-filters{
		  width:100%;
	  }
	  
    .may_book_an_appoinment_form {
      margin: 0 3%;
    }

    .form_heading p {
      font-size: 16px;
    }

    .may_book_an_appoinment_form .form_fields_Elements {
      padding: 30px 25px 30px;
    }

    .step-bullet {
      width: 25px;
      height: 25px;
      line-height: 25px;
      font-size: 10px;
    }

    .step-bullet.active {
      line-height: 23px !important;
      font-size: 12px;
    }

    .step_form_cst_style p.step_heading {
      font-size: 20px;
    }

    .radio-box {
      width: 100%;
      padding: 12px 24px;
      height: 45px;
    }

    .radio-label {
      font-size: 18px;
    }

    .radio-label {
      font-family: 'TT Norms Pro';
      font-weight: 500;
      font-size: 18px !important;
    }

    .step_form_cst_style {
      padding: 30px 0 10px;
    }

    .doctor_options_section .doctors-cards {
      gap: 15px !important;
    }

    .select-doctor-filter .filter-label p {
      font-size: 18px;
      font-weight: 500;
      margin: 0;
    }

    label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor {
      margin: 0 !important;
      width: calc((100% / 2) - (40px / 4)) !important;
      display: flex !important;
      flex-direction: column !important;
      border: 1px solid var(--mf-grey) !important;
      padding: 11px !important;
      border-radius: 10px !important;
      cursor: pointer !important;
      position: relative !important;
    }

    label.forminator-radio.forminator-has_image.forminator-has_bullet.dynamic.doctor span.forminator-radio-label {
      font-size: 14px !important;
      padding-top: 12px !important;
      line-height: 16px !important;
    }

    .an_appoinment_next_btn.one_1,
    .btn-load-more-doctors {
      width: 170px !important;
      height: 45px !important;
      font-size: 16px;
    }

    .an_appoinment_next_btn.two_2 {
      width: 300px !important;
      height: 50px !important;
      font-size: 16px !important;
    }

    .step.step_form_cst_style .skip_doctor_btn,
    .an_appoinment_next_btn {
      font-size: 18px;
      height: 50px !important;
    }

    .step_actions_btn {
      flex-direction: column !important;
    }

    .date_picker_wrapper,
    .time_picker_wrapper {
      width: 100% !important;
    }

    .step_3_wrapper .form-group,
    .step_3_wrapper .appointment-time-selection {
      width: 100% !important;
    }

    .error-msg {
      color: red;
      font-size: 10px;
      margin-top: 6px;
    }

    .form-field-checkboxes label {
      position: relative;
      cursor: pointer;
      font-size: 14px;
    }

    .form-field-checkboxes label:before {
      border: 1px solid #1a2942;
    }

    .form-field-checkboxes input:checked+label:after {
      content: '';
      display: block;
      position: absolute;
      top: 1px;
      left: 6px;
      width: 6px;
      height: 12px;
      border: solid #1a2942;
      border-width: 0 2px 2px 0;
      transform: rotate(45deg);
    }

    .form-field-checkboxes label:before {
      content: '';
      -webkit-appearance: none;
      background-color: transparent;
      border: 1px solid #1a2942;
      box-shadow: 0px 4px 10px 0px #0000001F;
      padding: 8px;
      display: inline-block;
      position: relative;
      vertical-align: middle;
      cursor: pointer;
      margin-right: 5px;
      height: 10px !important;
      width: 10px !important;
    }

    .form-group.user_input_field>input,
    .form-group.user_input_field>select,
    .form-group.user_input_field>.specificFeild_number,
    .form-group.user_input_field>.specificFeild_number:focus,
    .form-group.user_input_field>.specificFeild_number:hover,
    .form-group.user_input_field>input:hover,
    .form-group.user_input_field>select:hover,
    .form-group.user_input_field>input:focus,
    .form-group.user_input_field>select:focus {
      padding-right: 15px;
      padding-left: 15px;
    }

    .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single,
    .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single:hover,
    .form-group.user_input_field span.select2.select2-container.select2-container--default span.selection span.select2-selection.select2-selection--single:focus {
      padding-right: 15px;
      padding-left: 11px;
    }

    .step-form-title-01,
    .step-form-title-02,
    .step-form-title-03,
    .step-form-title-04 {
      display: none;
    }

    .step-tracker-wrapper {
      padding-bottom: 4%;
    }
  }

@media screen and (max-width:600px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
        top: 375px;
		right: 40px;
    }
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 203px;
        right: 45px;
	}
	.select-doctor-filter {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.5rem !important;
		width: 100%;
		margin-bottom: 30px;
		flex-direction: column !important;
		align-items: baseline !important;
	}
}
@media screen and (max-width:600px) {
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style.location_selected {
        top: 405px;
		right: 40px;
    }
	.step_actions_btn button.skip_doctor_btn.to_skip_btn_style{
		top: 215px;
        right: 45px;
	}
	.select-doctor-filter {
		gap: 0.5rem !important;
	}
}