


.form-appointments,
#form-appointments.form-modal form {
  max-width: 576px;
  margin: 0 auto;
}


#ga_appointments_calendar {
  box-shadow: var(--shadow);
  -webkit-box-shadow: var(--shadow);
  -moz-box-shadow: var(--shadow);

  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}

  .appointment-calendar-wrapper {
    padding: 20px;
    background-color: #fff;
  }

  body .ga_appointments_calendar_header {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom: 1px solid #fff;
  }

    body .ga_appointments_calendar_header h3 {
      font-size: 20px;
      font-weight: 500;
      letter-spacing: 0px;
      text-transform: none;

    }

    body .ga_monthly_schedule_wrapper thead th {
      padding-top: 4% !important;
    }

    body .ga_appointments_calendar_header h3,
    body .ga_appointments_calendar_header .arrow-left,
    body .ga_appointments_calendar_header .arrow-right,
    body .ga_monthly_schedule_wrapper thead th {
      color: #000 !important;
    }

body .ga_appointments_calendar_header,
body .ga_monthly_schedule_wrapper table thead,
body .ga_monthly_schedule_wrapper table thead th,
body .ga_monthly_schedule_wrapper td.calendar_slots {
  background: var(--c-grey-l) !important;
}

body .ga_monthly_schedule_wrapper td {
  background: #fff !important;
}

  body #gappointments_calendar .ga_monthly_schedule_wrapper td span,
  body #gappointments_calendar .ga_monthly_schedule_wrapper td span {
    width: 40px;
    height: 40px;
    line-height: 40px;
  }

  body #gappointments_calendar .ga_monthly_schedule_wrapper td.day_available:hover span,
  body #gappointments_calendar .ga_monthly_schedule_wrapper td.ga_today span {
    top: 1px;
    font-weight: 500 !important;
  }

body .ga_wrapper_small .ga_monthly_schedule_wrapper td.day_available,
body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.day_available,
body .ga_wrapper_large .ga_monthly_schedule_wrapper td.day_available {
  background: #f7f7f7 !important;
  color: #000 !important;
}

  body .ga_wrapper_small .ga_monthly_schedule_wrapper td.day_available:hover,
  body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.day_available:hover,
  body .ga_wrapper_large .ga_monthly_schedule_wrapper td.day_available:hover {
    background-color: var(--c-main) !important;
    color: #ffffff !important;
    font-weight: 400 !important;
  }

body .ga_wrapper_small .ga_monthly_schedule_wrapper td.ga_today span,
body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.ga_today span,
body .ga_wrapper_large .ga_monthly_schedule_wrapper td.ga_today span {
  border: 2px solid var(--c-main) !important;
}

body .ga_wrapper_small .ga_monthly_schedule_wrapper td.day_available:hover span,
body .ga_wrapper_small .ga_monthly_schedule_wrapper td.selected span,
body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.day_available:hover span,
body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.selected span,
body .ga_wrapper_large .ga_monthly_schedule_wrapper td.day_available:hover span,
body .ga_wrapper_large .ga_monthly_schedule_wrapper td.selected span {
  background: none !important;
  border: none !important;
}

body .ga_wrapper_small .ga_monthly_schedule_wrapper td.ga_today,
body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.ga_today,
body .ga_wrapper_large .ga_monthly_schedule_wrapper td.ga_today {
  background: var(--c-grey-l) !important;
}

  body .ga_wrapper_small .ga_monthly_schedule_wrapper td.ga_today span,
  body .ga_wrapper_medium .ga_monthly_schedule_wrapper td.ga_today span,
  body .ga_wrapper_large .ga_monthly_schedule_wrapper td.ga_today span {
    border: none !important;
    background: none !important;
  }

body #gappointments_calendar .ga_monthly_schedule_wrapper td span {
  border-radius: 4px;
}

  body #gappointments_calendar_slots {}

    body #gappointments_calendar_slots .calendar_time_slots {
      max-height: none;
    }

    body #gappointments_calendar_slots label.time_slot {
      font-weight: 400;
      color: var(--c-grey-d) !important;
      border: 1px solid #d7d7d7;
    }

      body #gappointments_calendar_slots label.time_slot:hover,
      body #gappointments_calendar_slots label.time_selected div {
        background-color: var(--c-main) !important;
        color: #fff !important;
        font-weight: 400 !important;
      }

      body #gappointments_calendar_slots label.time_slot div {
        padding: 8px 0 4px !important;
      }

      body #gappointments_calendar .slot_large label.time_slot div,
      body #gappointments_calendar .ga_wrapper_small .ga_monthly_schedule_wrapper td.selected,
      body #gappointments_calendar .ga_wrapper_medium .ga_monthly_schedule_wrapper td.selected,
      body #gappointments_calendar .ga_wrapper_large .ga_monthly_schedule_wrapper td.selected,
      body #gappointments_calendar .ga_monthly_schedule_wrapper td,
      body #gappointments_calendar .ga_monthly_schedule_wrapper td.day_available,
      body #gappointments_calendar .ga_monthly_schedule_wrapper td.day_available:hover,
      body #gappointments_calendar_slots label.time_slot div {
        -webkit-transition: none !important;
        -moz-transition: none !important;
        -o-transition: none!important;
        transition: none !important;
        transition: none !important;
      }


@media (min-width: 992px) {

  body #gappointments_calendar_slots .calendar_time_slots .grid-md-12 {
    width: 25%;
  }

}


@media (min-width: 1200px) {

  body #gappointments_calendar_slots .calendar_time_slots .grid-md-12 {
    width: 25%;
  }

  #form-appointments.form-modal {
    top: 124px;
  }

    #form-appointments .modal-dialog.modal-xl {
      max-width: 1140px;
    }

}
