﻿body {
  font-family: Gotham Book, helvetica;
}

@media only screen and (max-width: 600px) {
  .sds-page {
    width: calc(100% - 20px);
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .sds-page button {
    width: 10rem;
  }
  .sds-page .wizard-steps {
    display: none;
  }
  .sds-page .calendar-control .calendar table td {
    width: 2.5rem;
    height: 2rem;
  }
  .sds-page .calendar-control .calendar .advance-buttons .sds-simple-button {
    width: 50px !important;
  }
  .sds-page .calendar-control .calendar .search-by-time span {
    display: block;
    margin-bottom: 5px;
  }
  .sds-page .calendar-control .time-slots {
    margin-top: 5px;
  }
  .sds-page .calendar-control .time-slots .doctor-container {
    display: block !important;
  }
  .sds-page .calendar-control .time-slots .doctor-container .control-caption {
    margin-bottom: 0;
  }
  .sds-page .calendar-control .time-slots .doctor-container select {
    margin-bottom: 10px;
    width: 250px;
  }
  .sds-page .calendar-control .time-slots .time-slot-container div {
    width: 5rem;
  }
  .sds-page .calendar-control .time-slots .time-slot-container .no-available-appointments {
    width: 100%;
  }
  .sds-page .calendar-control .time-slots .time-slot-container.by-time div {
    width: 100%;
  }

  .sds-store-locator-page .search-controls input {
    width: 25rem;
  }
  .sds-store-locator-page .search-controls button {
    height: 2.4rem;
    width: 10rem;
  }
  .sds-store-locator-page .map-container {
    width: 100%;
    display: block;
  }
  .sds-store-locator-page .map-container .map {
    width: 100%;
    height: 10rem;
  }
  .sds-store-locator-page .map-container .results-container {
    width: 20rem;
  }
  .sds-store-locator-page .map-container .results-container .stores .results {
    height: 36rem;
  }
  .sds-store-locator-page .map-container .results-container .stores .results .store-result .button-container a:nth-child(2) {
    display: inline !important;
  }

  .sds-sign-in-or-register-page .sds-column-layout {
    flex-direction: column-reverse;
  }
  .sds-sign-in-or-register-page .sds-column-layout .sds-column {
    margin-left: 0 !important;
    padding: 0 !important;
    width: 100%;
    border: none !important;
  }
  .sds-sign-in-or-register-page .sds-column-layout .sds-column .section-header {
    margin: 0 !important;
  }
  .sds-sign-in-or-register-page .sds-column-layout .sds-column .appointment-time {
    margin: 0 !important;
  }

  .sds-booking-confirmation-page .section-header .edit-link {
    margin-right: 0 !important;
    font-size: 0.75rem;
    margin-top: auto;
    margin-bottom: auto;
  }

  .sds-register-page .patient-edit-control form, .sds-manage-details-page .patient-edit-control form {
    display: block !important;
  }
  .sds-register-page .patient-edit-control form .left-panel, .sds-register-page .patient-edit-control form .right-panel, .sds-manage-details-page .patient-edit-control form .left-panel, .sds-manage-details-page .patient-edit-control form .right-panel {
    width: 100% !important;
  }
  .sds-register-page .patient-edit-control form .left-panel span, .sds-register-page .patient-edit-control form .right-panel span, .sds-manage-details-page .patient-edit-control form .left-panel span, .sds-manage-details-page .patient-edit-control form .right-panel span {
    display: block;
    width: 100% !important;
  }
  .sds-register-page .patient-edit-control form .button-container, .sds-manage-details-page .patient-edit-control form .button-container {
    width: 100% !important;
  }

  .sds-manage-appointments-page .appointments-header {
    display: none;
  }
  .sds-manage-appointments-page .appointment-control {
    border: none !important;
    display: block !important;
  }
  .sds-manage-appointments-page .appointment-control .button-container {
    display: flex;
  }
  .sds-manage-appointments-page .appointment-control .button-container button {
    visibility: hidden;
    position: relative !important;
    left: -12px !important;
  }
  .sds-manage-appointments-page .appointment-control .button-container button:nth-child(1):after {
    font-weight: bold;
    position: relative !important;
    left: -10px !important;
    content: "RESCHEDULE";
    visibility: visible;
    text-decoration: underline;
    top: -20px;
  }
  .sds-manage-appointments-page .appointment-control .button-container button:nth-child(3):after {
    font-weight: bold;
    position: relative !important;
    left: -12px !important;
    content: "CANCEL";
    visibility: visible;
    text-decoration: underline;
    top: -20px;
  }
  .sds-manage-appointments-page .appointment-control .button-container span {
    display: inline-block !important;
    position: relative;
    top: 1rem;
    font-size: 13px;
  }
}
@media only screen and (min-width: 600px) {
  .sds-page {
    width: 1024px;
  }
  .sds-page button {
    width: 5rem;
  }
  .sds-page .page-header {
    font-size: 2rem;
  }
  .sds-page .wizard-steps {
    display: flex;
    justify-content: space-between;
  }
  .sds-page .calendar-control {
    display: flex;
  }
  .sds-page .calendar-control .calendar table {
    width: 25rem;
  }
  .sds-page .calendar-control .calendar table td {
    width: 2.5rem;
    height: 2rem;
  }
  .sds-page .calendar-control .calendar .advance-buttons .sds-simple-button {
    width: 50px !important;
  }
  .sds-page .calendar-control .time-slots {
    margin-left: 3rem;
  }
  .sds-page .calendar-control .time-slots .time-slot-container div {
    width: 5rem;
  }
  .sds-page .calendar-control .time-slots .time-slot-container .no-available-appointments {
    width: 576px;
  }
  .sds-page .calendar-control .time-slots .time-slot-container.by-time div {
    width: 100%;
  }
  .sds-page .patient-edit-control .left-panel .validation-message {
    margin-left: 150px;
  }
  .sds-page .patient-edit-control .right-panel .validation-message {
    margin-left: 134px;
  }

  .sds-store-locator-page .search-controls {
    width: 40rem;
  }
  .sds-store-locator-page .search-controls input {
    width: 25rem;
  }
  .sds-store-locator-page .map-container {
    display: flex;
    justify-content: space-between;
  }
  .sds-store-locator-page .map-container .map {
    width: 40rem;
    height: 36rem;
  }
  .sds-store-locator-page .map-container .results-container {
    width: 20rem;
  }
  .sds-store-locator-page .map-container .results-container .stores .results {
    height: 36rem;
  }
  .sds-store-locator-page button {
    width: 10rem;
  }

  .sds-sign-in-or-register-page .sds-column-layout .sds-column {
    width: 33%;
  }

  .sds-sign-in-page .login-control {
    width: 30rem;
    margin-top: 0.5rem;
  }
}
.sds-page {
  margin-left: auto;
  margin-right: auto;
}
.sds-page .menu {
  display: flex;
}
.sds-page .menu div {
  cursor: pointer;
}
.sds-page .menu .separator {
  margin-left: 1rem;
  margin-right: 1rem;
}
.sds-page .menu .menu-username {
  position: relative;
  /*
  .sign-out {
      display: none;
      position: relative;
  }
  */
}
.sds-page .menu .menu-username .sign-out {
  display: block;
  position: absolute;
  width: 5rem;
  padding-top: 0.5rem;
  background-color: white;
  z-index: 999;
}
@media only screen and (max-width: 600px) {
  .sds-page .menu .menu-username .sign-out {
    top: 36px;
    height: 36px;
  }
}
.sds-page .page-header {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-weight: bold;
  font-weight: bold;
}
.sds-page .wizard-steps {
  width: 100%;
  margin-top: 1rem;
  margin-bottom: 2rem;
}
.sds-page .wizard-steps div {
  display: block;
  text-align: center;
  width: 100%;
  line-height: 2rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
}
.sds-page .wizard-steps div:first-child {
  margin-left: 0;
}
.sds-page .wizard-steps div:last-child {
  margin-right: 0;
}
.sds-page .wizard-steps .step-current {
  font-weight: bold;
  pointer-events: none;
}
.sds-page .wizard-steps .step-completed {
  cursor: pointer;
}
.sds-page .wizard-steps .step-not-completed {
  pointer-events: none;
}
.sds-page .step-header {
  display: none;
}
.sds-page .section-header {
  font-weight: bold;
  padding-top: 1rem;
  margin-bottom: 1rem;
}
.sds-page .control-caption {
  margin-bottom: 1rem;
}
.sds-page .screen-reader-only {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.sds-page .store-details-control {
  margin-bottom: 2rem;
}
.sds-page .store-details-control span {
  display: block;
}
.sds-page .store-details-control span:nth-child(n+4) {
  display: inline-block;
}
.sds-page .store-details-control .store-telephone-call {
  display: none;
}
.sds-page .sds-error-message {
  width: 100%;
  color: #ff0000;
}
.sds-page button {
  cursor: pointer;
}
.sds-page .sds-simple-button {
  cursor: pointer;
}
.sds-page input {
  height: 35px;
  font-size: 16px;
  box-sizing: border-box;
}
.sds-page select {
  height: 35px;
  font-size: 16px;
  box-sizing: border-box;
}
.sds-page input[type=checkbox] {
  -ms-transform: scale(1.5);
  /* IE */
  -moz-transform: scale(1.5);
  /* FF */
  -webkit-transform: scale(1.5);
  /* Safari and Chrome */
  -o-transform: scale(1.5);
  /* Opera */
  transform: scale(1.5);
}
.sds-page .email-consent-control {
  margin-top: 1rem !important;
  display: flex;
  flex-wrap: wrap;
}
.sds-page .email-consent-control div {
  position: unset;
}
.sds-page .email-consent-control .flex-container {
  margin-left: 10px;
  display: flex;
}
.sds-page .email-consent-control .flex-container span {
  margin-left: 10px;
}
.sds-page .email-consent-control .flex-container input {
  height: unset;
  margin-top: 3px;
}
.sds-page .terms-and-conditions {
  width: 100%;
  margin-bottom: 1rem;
  margin-top: 0.5rem;
  margin-left: 10px;
  position: unset;
  display: flex;
  flex-wrap: wrap;
}
.sds-page .terms-and-conditions input {
  height: unset;
  margin-top: 3px;
}
.sds-page .terms-and-conditions span {
  margin-left: 10px;
  max-width: calc(100% - 25px);
}
.sds-page .zip-control input {
  width: 177px;
}

.sds-store-locator-page .section-header {
  font-weight: normal;
  border-bottom: none !important;
}
.sds-store-locator-page .search-controls {
  display: flex;
  justify-content: space-between;
}
.sds-store-locator-page .map-container {
  margin-top: 1rem;
}
.sds-store-locator-page .map-container .results-container {
  vertical-align: top;
}
.sds-store-locator-page .map-container .results-container .stores .results {
  width: 100%;
  overflow-y: auto;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result {
  border-bottom: solid 1px grey;
  padding-bottom: 20px;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .store-name {
  font-weight: bold;
  margin-bottom: 5px;
  display: block;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .store-phone {
  font-weight: bold;
  display: block;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .store-address {
  font-size: 16px;
  display: block;
  line-height: 18px;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .store-distance {
  font-weight: bold;
  margin-bottom: 5px;
  display: block;
  line-height: 17px;
  padding-bottom: 20px;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .button-container {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
  font-size: 13px;
}
.sds-store-locator-page .map-container .results-container .stores .results .store-result .button-container a:nth-child(2) {
  display: none;
}

.sds-booking-page .calendar-control .calendar, .sds-manage-appointments-page .calendar-control .calendar {
  position: relative;
  display: table;
}
.sds-booking-page .calendar-control .calendar .calendar-header, .sds-manage-appointments-page .calendar-control .calendar .calendar-header {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  margin-left: 3px;
  margin-right: 3px;
}
.sds-booking-page .calendar-control .calendar .calendar-header .current-month, .sds-manage-appointments-page .calendar-control .calendar .calendar-header .current-month {
  line-height: 2rem;
}
.sds-booking-page .calendar-control .calendar .calendar-header .sds-simple-button, .sds-manage-appointments-page .calendar-control .calendar .calendar-header .sds-simple-button {
  line-height: 2rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.sds-booking-page .calendar-control .calendar table, .sds-manage-appointments-page .calendar-control .calendar table {
  margin-top: 0.1rem !important;
  margin-bottom: 0.6rem;
  margin-left: auto;
  margin-right: auto;
}
.sds-booking-page .calendar-control .calendar table .previous-month, .sds-manage-appointments-page .calendar-control .calendar table .previous-month {
  font-weight: normal;
}
.sds-booking-page .calendar-control .calendar table .next-month, .sds-manage-appointments-page .calendar-control .calendar table .next-month {
  font-weight: normal;
}
.sds-booking-page .calendar-control .calendar table td, .sds-manage-appointments-page .calendar-control .calendar table td {
  padding: 0;
  text-align: center;
  border: none;
}
.sds-booking-page .calendar-control .calendar table td.selected-day, .sds-manage-appointments-page .calendar-control .calendar table td.selected-day {
  border-radius: 5px;
}
.sds-booking-page .calendar-control .calendar table td.day-style, .sds-manage-appointments-page .calendar-control .calendar table td.day-style {
  text-decoration: none;
  font-size: 16px;
  cursor: pointer;
}
.sds-booking-page .calendar-control .calendar table td.today-day-style, .sds-manage-appointments-page .calendar-control .calendar table td.today-day-style {
  text-decoration: none;
  font-size: 16px;
}
.sds-booking-page .calendar-control .calendar table td.selected-day-style, .sds-manage-appointments-page .calendar-control .calendar table td.selected-day-style {
  font-size: 16px;
}
.sds-booking-page .calendar-control .calendar table td.past-day-style, .sds-manage-appointments-page .calendar-control .calendar table td.past-day-style {
  font-size: 16px;
  pointer-events: none;
}
.sds-booking-page .calendar-control .calendar table td.other-month-day-style, .sds-manage-appointments-page .calendar-control .calendar table td.other-month-day-style {
  font-size: 16px;
  text-decoration: none;
}
.sds-booking-page .calendar-control .calendar table td.unavailable-day-style, .sds-manage-appointments-page .calendar-control .calendar table td.unavailable-day-style {
  pointer-events: none;
}
.sds-booking-page .calendar-control .calendar table td:first-child, .sds-manage-appointments-page .calendar-control .calendar table td:first-child {
  border-left: none !important;
}
.sds-booking-page .calendar-control .calendar table td:last-child, .sds-manage-appointments-page .calendar-control .calendar table td:last-child {
  border-right: none !important;
}
.sds-booking-page .calendar-control .calendar table th, .sds-manage-appointments-page .calendar-control .calendar table th {
  text-align: center !important;
  font-weight: 400;
}
.sds-booking-page .calendar-control .calendar table th:first-child, .sds-manage-appointments-page .calendar-control .calendar table th:first-child {
  border-left: none !important;
}
.sds-booking-page .calendar-control .calendar table th:last-child, .sds-manage-appointments-page .calendar-control .calendar table th:last-child {
  border-right: none !important;
}
.sds-booking-page .calendar-control .calendar .advance-buttons, .sds-manage-appointments-page .calendar-control .calendar .advance-buttons {
  display: flex;
  justify-content: space-between;
}
.sds-booking-page .calendar-control .calendar .advance-buttons .sds-simple-button, .sds-manage-appointments-page .calendar-control .calendar .advance-buttons .sds-simple-button {
  margin: 0 !important;
}
.sds-booking-page .calendar-control .calendar .search-by-time span, .sds-manage-appointments-page .calendar-control .calendar .search-by-time span {
  margin-right: 0.5rem;
}
.sds-booking-page .calendar-control .time-slots .doctor-container, .sds-manage-appointments-page .calendar-control .time-slots .doctor-container {
  display: flex;
}
.sds-booking-page .calendar-control .time-slots .doctor-container .control-caption, .sds-manage-appointments-page .calendar-control .time-slots .doctor-container .control-caption {
  line-height: 2rem;
  margin-right: 1rem;
}
.sds-booking-page .calendar-control .time-slots .time-slot-container, .sds-manage-appointments-page .calendar-control .time-slots .time-slot-container {
  display: flex;
  flex-wrap: wrap;
}
.sds-booking-page .calendar-control .time-slots .time-slot-container div, .sds-manage-appointments-page .calendar-control .time-slots .time-slot-container div {
  margin-right: 1rem;
  margin-bottom: 1rem;
  cursor: pointer;
}
.sds-booking-page .calendar-control .time-slots .time-slot-container.by-time, .sds-manage-appointments-page .calendar-control .time-slots .time-slot-container.by-time {
  display: block;
}
.sds-manage-appointments-page .section-header:nth-child(2) {
  margin-top: 2rem;
}
.sds-manage-appointments-page .calendar-control {
  margin-top: 2rem;
}

.sds-sign-in-or-register-page .sds-column-layout {
  display: flex;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column {
  margin-bottom: 1rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column .section-header {
  border-bottom: none;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column div {
  width: 100%;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(1) {
  margin-right: 1.5rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(1) .register-button {
  margin-top: 3rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(2) {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(2) .sign-in-button {
  margin-top: 1rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(3) {
  margin-left: 1.5rem;
}
.sds-sign-in-or-register-page .sds-column-layout .sds-column:nth-child(3) .appointment-time {
  font-weight: bold;
  margin-bottom: 2rem;
}
.sds-sign-in-or-register-page button {
  width: 7rem;
}

.sds-sign-in-page .appointment-time {
  margin-bottom: 2rem;
}
.sds-sign-in-page .login-control span {
  display: inline-block;
  width: 8rem;
}
.sds-sign-in-page .login-control input[type=search] {
  width: 20rem;
}
.sds-sign-in-page .login-control input[type=password] {
  width: 20rem;
}
.sds-sign-in-page .login-control .username, .sds-sign-in-page .login-control .password {
  margin-bottom: 0.5rem;
}
.sds-sign-in-page .login-control .forgotten-password {
  margin-bottom: 1rem;
}
.sds-sign-in-page .login-control .forgotten-password span {
  width: unset;
  cursor: pointer;
}
.sds-sign-in-page .login-control .button-container {
  display: flex;
  justify-content: space-between;
}
.sds-sign-in-page .login-control .button-container button {
  width: 8rem;
}

.sds-register-page .appointment-time {
  margin-bottom: 2rem;
}
.sds-register-page .patient-edit-control form {
  display: flex;
  flex-wrap: wrap;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.sds-register-page .patient-edit-control form .validation-errors {
  width: 100%;
}
.sds-register-page .patient-edit-control form .left-panel {
  width: 50%;
}
.sds-register-page .patient-edit-control form .left-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-register-page .patient-edit-control form .left-panel span {
  display: inline-block;
  width: 9rem;
}
.sds-register-page .patient-edit-control form .left-panel .title-control select {
  width: 10rem;
}
.sds-register-page .patient-edit-control form .left-panel .forename-control input, .sds-register-page .patient-edit-control form .left-panel .surname-control input, .sds-register-page .patient-edit-control form .left-panel .email-address-control input {
  width: 20rem;
}
.sds-register-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(2) {
  width: 4rem;
}
.sds-register-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(3) {
  width: 4rem;
}
.sds-register-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(4) {
  width: 4.15rem;
}
.sds-register-page .patient-edit-control form .right-panel {
  width: 50%;
}
.sds-register-page .patient-edit-control form .right-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-register-page .patient-edit-control form .right-panel span {
  display: inline-block;
  width: 8rem;
}
.sds-register-page .patient-edit-control form .right-panel .address1-control input, .sds-register-page .patient-edit-control form .right-panel .address2-control input, .sds-register-page .patient-edit-control form .right-panel .address3-control input, .sds-register-page .patient-edit-control form .right-panel .address4-control input {
  width: 20rem;
}
.sds-register-page .patient-edit-control form .right-panel .address5-control select {
  width: 177px;
}
.sds-register-page .patient-edit-control form .right-panel .control-container {
  padding-left: 18.4rem;
  top: -38px;
}
.sds-register-page .patient-edit-control form .right-panel .control-container span {
  position: relative;
}
.sds-register-page .patient-edit-control form .control-container {
  display: flex;
}
.sds-register-page .patient-edit-control form .control-container span {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: 1rem;
}
.sds-register-page .patient-edit-control form .button-container {
  display: flex;
  justify-content: space-between;
  max-width: 30rem;
}
.sds-register-page .patient-edit-control form .button-container button {
  width: 7rem;
}

.sds-manage-details-page .appointment-time {
  margin-bottom: 2rem;
}
.sds-manage-details-page .patient-edit-control form {
  display: flex;
  flex-wrap: wrap;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.sds-manage-details-page .patient-edit-control form .validation-errors {
  width: 100%;
}
.sds-manage-details-page .patient-edit-control form .left-panel {
  width: 50%;
}
.sds-manage-details-page .patient-edit-control form .left-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel span {
  display: inline-block;
  width: 9rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel .title-control select {
  width: 10rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel .forename-control input, .sds-manage-details-page .patient-edit-control form .left-panel .surname-control input, .sds-manage-details-page .patient-edit-control form .left-panel .email-address-control input {
  width: 20rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(2) {
  width: 4rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(3) {
  width: 4rem;
}
.sds-manage-details-page .patient-edit-control form .left-panel .phone-number-control input:nth-child(4) {
  width: 4.15rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel {
  width: 50%;
}
.sds-manage-details-page .patient-edit-control form .right-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel span {
  display: inline-block;
  width: 8rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel .address1-control input, .sds-manage-details-page .patient-edit-control form .right-panel .address2-control input, .sds-manage-details-page .patient-edit-control form .right-panel .address3-control input, .sds-manage-details-page .patient-edit-control form .right-panel .address4-control input {
  width: 20rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel .address5-control select {
  width: 10rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel .zip-control select {
  width: 10rem;
}
.sds-manage-details-page .patient-edit-control form .right-panel .control-container {
  padding-left: 18.5rem;
  top: -38px;
}
.sds-manage-details-page .patient-edit-control form .right-panel .control-container span {
  padding-left: 0.5rem;
  padding-bottom: 0.5rem;
  top: -12px;
  position: relative;
}
.sds-manage-details-page .patient-edit-control form .related-patients {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.sds-manage-details-page .patient-edit-control form .related-patients .relation-name {
  width: 10rem;
  display: inline-block;
}
.sds-manage-details-page .patient-edit-control form .related-patients .remove-relation, .sds-manage-details-page .patient-edit-control form .related-patients .edit-relation {
  color: #0000ff;
  cursor: pointer;
}
.sds-manage-details-page .button-container button {
  width: 8rem;
}

.sds-booking-confirmation-page .appointment-time {
  margin-bottom: 2rem;
}
.sds-booking-confirmation-page .section-header {
  display: flex;
  justify-content: space-between;
}
.sds-booking-confirmation-page .section-header .edit-link {
  margin-right: 33rem;
  color: #1a9eb6;
  font-weight: normal;
}
.sds-booking-confirmation-page .section-header .edit-link:not(.sds-disabled) {
  cursor: pointer;
}
@media only screen and (min-width: 600px) {
  .sds-booking-confirmation-page .patient-info .related-patient-control form {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
  .sds-booking-confirmation-page .patient-info .related-patient-control form .validation-message {
    margin-left: 132px;
  }
}
@media only screen and (max-width: 600px) {
  .sds-booking-confirmation-page .patient-info .related-patient-control form {
    display: block !important;
  }
  .sds-booking-confirmation-page .patient-info .related-patient-control .left-panel, .sds-booking-confirmation-page .patient-info .related-patient-control .right-panel {
    width: 100% !important;
  }
  .sds-booking-confirmation-page .patient-info .related-patient-control .left-panel span, .sds-booking-confirmation-page .patient-info .related-patient-control .right-panel span {
    display: block;
    width: 100% !important;
  }
  .sds-booking-confirmation-page .patient-info .related-patient-control .left-panel .phone-number-control span, .sds-booking-confirmation-page .patient-info .related-patient-control .right-panel .phone-number-control span {
    display: block;
  }
  .sds-booking-confirmation-page .patient-info .related-patient-control .button-container {
    width: 100% !important;
  }
}
.sds-booking-confirmation-page .patient-info .left-panel {
  width: 50%;
}
.sds-booking-confirmation-page .patient-info .left-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-booking-confirmation-page .patient-info .left-panel span {
  display: inline-block;
  width: 8rem;
}
.sds-booking-confirmation-page .patient-info .left-panel .title-control select {
  width: 10rem;
}
.sds-booking-confirmation-page .patient-info .left-panel .forename-control input, .sds-booking-confirmation-page .patient-info .left-panel .surname-control input {
  width: 20rem;
}
.sds-booking-confirmation-page .patient-info .left-panel .phone-number-control input:nth-child(2) {
  width: 4rem;
}
.sds-booking-confirmation-page .patient-info .left-panel .phone-number-control input:nth-child(3) {
  width: 4rem;
}
.sds-booking-confirmation-page .patient-info .left-panel .phone-number-control input:nth-child(4) {
  width: 4.15rem;
}
.sds-booking-confirmation-page .patient-info .right-panel {
  width: 50%;
}
.sds-booking-confirmation-page .patient-info .right-panel div {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.sds-booking-confirmation-page .patient-info .right-panel span {
  display: inline-block;
  width: 8rem;
}
.sds-booking-confirmation-page .patient-info .right-panel .address1-control input, .sds-booking-confirmation-page .patient-info .right-panel .address2-control input, .sds-booking-confirmation-page .patient-info .right-panel .address3-control input, .sds-booking-confirmation-page .patient-info .right-panel .address4-control input {
  width: 20rem;
}
.sds-booking-confirmation-page .patient-info .right-panel .address5-control select {
  width: 10rem;
}
.sds-booking-confirmation-page .patient-info .right-panel .zip-control select {
  width: 10rem;
}
.sds-booking-confirmation-page .patient-info .insurance-question {
  line-height: 38px;
}
.sds-booking-confirmation-page .patient-info .insurance-type {
  margin-top: 5px;
}
.sds-booking-confirmation-page .patient-info .insurance-type span {
  display: inline-block;
  width: 230px;
}
.sds-booking-confirmation-page .patient-info .insurance-type select {
  max-width: 100%;
}
.sds-booking-confirmation-page .button-container {
  max-width: 30rem;
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
}
.sds-booking-confirmation-page .button-container button {
  width: 7rem;
}

.sds-manage-appointments-page .appointments-header {
  margin-top: 2rem;
}
.sds-manage-appointments-page .appointments-header .appointment-control {
  display: flex;
  line-height: 3rem;
  padding-left: 1rem;
  font-weight: bold;
}
.sds-manage-appointments-page .appointments-header .appointment-control .appointment-date {
  width: 15rem;
}
.sds-manage-appointments-page .appointments-header .appointment-control .appointment-location {
  width: 20rem;
}
.sds-manage-appointments-page .appointments-header .appointment-control .appointment-status {
  width: 7rem;
}
.sds-manage-appointments-page .appointments-header .appointment-control .button-container button {
  width: 8rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control {
  display: flex;
  margin-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control .appointment-date {
  width: 15rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control .appointment-location {
  width: 20rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control .appointment-status {
  width: 7rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control .button-container button {
  width: 8rem;
}
.sds-manage-appointments-page .appointments-list .appointment-control .button-container span {
  display: none;
}
.sds-manage-appointments-page .appointment-time {
  margin-bottom: 2rem;
}
.sds-manage-appointments-page .reschedule-confirmation .button-container {
  max-width: 30rem;
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
}
.sds-manage-appointments-page .reschedule-confirmation .button-container button {
  width: 7rem;
}

.sds-forgotten-password-page div {
  margin-bottom: 1rem;
}
.sds-forgotten-password-page div input {
  width: 20rem;
  margin-left: 2rem;
}
.sds-forgotten-password-page .button-container button {
  width: 8rem;
}
.sds-forgotten-password-page .sds-error-message {
  width: 100%;
  color: #ff0000;
}

.sds-reset-password-page div {
  margin-bottom: 1rem;
}
.sds-reset-password-page div input {
  width: 20rem;
  margin-left: 2rem;
}
.sds-reset-password-page div span {
  display: inline-block;
  width: 8rem;
}
.sds-reset-password-page .button-container button {
  width: 8rem;
}
.sds-reset-password-page .sds-error-message {
  width: 100%;
  color: #ff0000;
}

form .left-panel .dob-control input {
  width: 14.2rem;
}
form .left-panel .password-control input {
  width: 14.2rem;
}
