@charset "UTF-8";
.fancybox-slide::before {
  display: none; }

@media screen and (max-width: 1023.98px) {
  .fancybox-slide--html {
    padding: 0; } }

.skeleton {
  position: absolute;
  width: 100%;
  z-index: 200;
  height: 100%;
  background: #fff; }
  .skeleton__twotabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 1rem; }
  .skeleton > div {
    background: #e5e7eb;
    border-radius: 6px;
    position: relative;
    overflow: hidden;
    z-index: 200; }
    .skeleton > div:after {
      content: " ";
      position: absolute;
      top: 0;
      left: -150px;
      height: 100%;
      width: 150px;
      background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(255, 255, 255, 0.6)), to(transparent));
      background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
      -webkit-animation: shimmer 1.3s infinite;
              animation: shimmer 1.3s infinite; }

@-webkit-keyframes shimmer {
  100% {
    -webkit-transform: translateX(1000px);
            transform: translateX(1000px); } }

@keyframes shimmer {
  100% {
    -webkit-transform: translateX(1000px);
            transform: translateX(1000px); } }
.custom-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  padding: 17px 27px;
  background-color: #91B83F;
  border: 1px solid #91B83F;
  border-radius: 40px;
  color: #FFFFFF;
  font-size: 16px;
  line-height: 1.32;
  cursor: pointer;
  text-decoration: none;
  outline: none; }
  @media screen and (max-width: 1023.98px) {
    .custom-btn {
      padding: 11px 15px; } }
  .custom-btn--l {
    padding: 17px 35px; }
  .custom-btn--outline {
    background-color: transparent;
    border-color: #ECEFF1;
    color: #91B83F; }

.z3 {
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
  color: #4E4D4D; }
  @media screen and (max-width: 1023.98px) {
    .z3 {
      font-size: 20px;
      line-height: 1.2; } }

.z6 {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700;
  color: #4E4D4D; }
  @media screen and (max-width: 1023.98px) {
    .z6 {
      font-size: 18px;
      line-height: 1.2; } }

.doctors-appointment {
  position: relative;
  max-width: 1440px;
  width: 100%;
  padding: 0; }
  .doctors-appointment__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 40px;
    min-height: 900px; }
    .doctors-appointment__wrapper-modal {
      min-height: unset; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__wrapper {
        min-height: 100vh;
        padding: 16px;
        padding-bottom: 86px; } }
  .doctors-appointment .fancybox-close-small {
    display: none; }
  .doctors-appointment__head {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
    padding-right: 94px;
    margin-bottom: 44px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__head {
        padding-right: 0;
        margin-bottom: 20px; } }
  .doctors-appointment__close {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    top: 40px;
    right: 40px;
    width: 56px;
    height: 56px;
    border: 1px solid #8798A5;
    color: #8798A5;
    border-radius: 50%;
    cursor: pointer;
    -webkit-transition: background-color 0.3s ease, color 0.3s ease;
    transition: background-color 0.3s ease, color 0.3s ease; }
    @media (any-hover: hover) {
      .doctors-appointment__close:hover {
        background-color: #8798A5;
        color: #FFFFFF; } }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__close {
        width: 28px;
        height: 28px;
        top: 16px;
        right: 16px; } }
  .doctors-appointment__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 31px;
    border: 1px solid #ECEFF1;
    border-radius: 20px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__body {
        padding: 0;
        border: none;
        -webkit-box-flex: unset;
            -ms-flex-positive: unset;
                flex-grow: unset; } }
  .doctors-appointment__inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 40px;
    height: auto; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .doctors-appointment__main {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding-top: 20px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__main {
        padding-top: 0; } }
  .doctors-appointment__side {
    max-width: 388px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-right: 40px;
    border-right: 1px solid #0000000F; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__side {
        max-width: 100%;
        padding-right: 0;
        border-right: 0;
        -webkit-box-ordinal-group: 100;
            -ms-flex-order: 99;
                order: 99; } }
  .doctors-appointment__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 20px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__bottom {
       
        left: 0;
        width: 100%;
        padding: 12px 16px;
        border-top: 1px solid #0000001A;
        background-color: #FFFFFF; } }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment__bottom--mobile-hidden {
        display: none; } }
  .doctors-appointment__next-btn {
    margin-left: auto; }

.doctors-appointment-panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px 24px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-panel {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  .doctors-appointment-panel__title {
    font-size: 44px;
    line-height: 1.4;
    font-weight: 700;
    color: #8798A5; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-panel__title {
        padding-right: 40px; } }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-panel__title {
        font-size: 20px; } }

.doctors-appointment-contacts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-contacts {
      display: none; } }
  .doctors-appointment-contacts__item {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
    font-size: 12px;
    line-height: 1.4;
    color: #4E4D4D; }

.doctors-appointment-booking {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 42px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-booking {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0; } }
  .doctors-appointment-booking__form {
    display: none; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-booking__form {
        width: 100%;
        display: block; } }
  .doctors-appointment-booking__time {
    width: 100%;
    padding-top: 20px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-booking .doctors-appointment-calendar {
      display: none; } }

@media screen and (max-width: 1023.98px) {
  .doctors-appointment-calendar {
    display: none;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100vh;
    background-color: #FFFFFF;
    padding: 16px;
    z-index: 10; }
    .doctors-appointment-calendar.is-open {
      display: block; } }
.doctors-appointment-calendar__back {
  display: none; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-calendar__back {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 28px;
      height: 28px;
      margin-bottom: 20px;
      border-radius: 50%;
      border: 1px solid #8798A5; } }
.doctors-appointment-calendar__bottom {
  display: none; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-calendar__bottom {
      width: 100%;
      position: absolute;
      bottom: 0;
      left: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 10px;
      padding: 12px 16px;
      background-color: #FFFFFF;
      border-top: 1px solid #0000001A; } }

.doctors-appointment-closest-time {
  width: 100%; }
  .doctors-appointment-closest-time__title {
    margin-bottom: 24px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-closest-time__title {
        margin-bottom: 8px; }
        .doctors-appointment-closest-time__title span {
          display: none; } }

.doctors-appointment-details {
  width: 100%;
  padding: 24px 20px;
  background-color: #F6F7F9;
  border-radius: 16px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-details {
      padding: 12px;
      border-radius: 24px; } }
  .doctors-appointment-details__section {
    font-size: 15px;
    line-height: 1.6; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-details__section {
        font-size: 11px;
        line-height: 1.32; } }
    .doctors-appointment-details__section + .doctors-appointment-details__section {
      padding-top: 23px;
      margin-top: 24px;
      border-top: 1px solid #0000000F; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-details__section + .doctors-appointment-details__section {
          padding-top: 7px;
          margin-top: 8px; } }
  .doctors-appointment-details__block:not(:last-of-type) {
    margin-bottom: 12px; }
  .doctors-appointment-details__subtitle {
    margin-bottom: 4px;
    color: #8798A5; }
  .doctors-appointment-details__desc {
    color: #4E4D4D; }
  .doctors-appointment-details__doctor {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
    margin-top: 12px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-details__doctor {
        gap: 8px;
        margin-top: 8px; } }
    .doctors-appointment-details__doctor-img {
      display: block;
      width: 52px;
      height: 52px;
      border-radius: 50%;
      overflow: hidden;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-details__doctor-img {
          width: 40px;
          height: 40px; } }
      .doctors-appointment-details__doctor-img img {
        display: block;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .doctors-appointment-details__doctor-name {
      font-size: 17px;
      line-height: 1.2;
      font-weight: 700; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-details__doctor-name {
          font-size: 15px; } }
  .doctors-appointment-details__price {
    margin-top: 8px;
    text-align: right;
    color: #4E4D4D;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-details__price {
        font-size: 16px; } }

.doctors-appointment-select-service {
  width: 100%; }
  .doctors-appointment-select-service__title {
    font-size: 20px;
    margin-bottom: 20px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-select-service__title {
        margin-bottom: 12px; } }
  .doctors-appointment-select-service__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .doctors-appointment-select-service__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 16px 50px 16px 12px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-select-service__item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: 4px;
        padding: 16px 10px 16px 38px; } }
    .doctors-appointment-select-service__item:not(:last-of-type) {
      -webkit-box-shadow: 0px -1px 0px 0px #ECEFF1 inset;
              box-shadow: 0px -1px 0px 0px #ECEFF1 inset; }
    .doctors-appointment-select-service__item input {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      visibility: hidden; }
      .doctors-appointment-select-service__item input:checked ~ .doctors-appointment-select-service__item-toggle {
        background-color: #91B83F; }
        .doctors-appointment-select-service__item input:checked ~ .doctors-appointment-select-service__item-toggle::before {
          opacity: 1; }
    .doctors-appointment-select-service__item-title {
      font-size: 15px;
      line-height: 1.6; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-select-service__item-title {
          font-size: 13px;
          line-height: 1.5; } }
    .doctors-appointment-select-service__item-price {
      font-size: 17px;
      line-height: 1.5;
      font-weight: 700;
      text-align: right; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-select-service__item-price {
          font-size: 13px;
          font-weight: 500;
          text-align: left; } }
    .doctors-appointment-select-service__item-toggle {
      position: absolute;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 24px;
      height: 24px;
      position: absolute;
      right: 12px;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      border-radius: 50%;
      background-color: #ECEFF1; }
      @media screen and (max-width: 1023.98px) {
        .doctors-appointment-select-service__item-toggle {
          width: 16px;
          height: 16px;
          inset: 16px auto auto 10px;
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0); } }
      .doctors-appointment-select-service__item-toggle::before {
        content: '';
        background-color: #FFFFFF;
        width: 12px;
        height: 12px;
        border-radius: 50%; }
        @media screen and (max-width: 1023.98px) {
          .doctors-appointment-select-service__item-toggle::before {
            width: 8px;
            height: 8px; } }

.patient-data__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  margin-bottom: 20px; }
  .patient-data__head-login {
    color: #91B83F; }
.patient-data__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px; }
  @media screen and (max-width: 1023.98px) {
    .patient-data__form {
      gap: 20px; } }
.patient-data__fields {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px; }
  @media screen and (max-width: 1279.98px) {
    .patient-data__fields {
      gap: 12px; } }

.doctors-appointment-success {
  padding-top: 85px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-success {
      padding-top: 20px; } }
  .doctors-appointment-success__img {
    display: block;
    width: 288px;
    margin-bottom: 32px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-success__img {
        width: 210px;
        margin-bottom: 20px; } }
  .doctors-appointment-success__title {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    color: #8798A5;
    margin-bottom: 12px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-success__title {
        font-size: 19px;
        line-height: 1.3; } }
  .doctors-appointment-success__desc {
    font-size: 15px;
    line-height: 1.3;
    text-align: center;
    margin-bottom: 24px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-success__desc {
        margin-bottom: 18px; } }
  .doctors-appointment-success__tip {
    display: none; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-success__tip {
        display: block;
        text-align: center;
        font-size: 13px;
        line-height: 1.3;
        color: #35353566; } }
  .doctors-appointment-success__important {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 12px;
    padding: 15px;
    background-color: #F6F7F9;
    border-radius: 12px;
    margin-top: 24px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-success__important {
        padding: 12px 16px; } }
    .doctors-appointment-success__important-icon {
      width: 16px;
      height: 16px;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
    .doctors-appointment-success__important-title {
      font-size: 15px;
      line-height: 1;
      font-weight: 600;
      margin-bottom: 8px; }
    .doctors-appointment-success__important-desc {
      font-size: 13px;
      line-height: 1.4; }

.doctors-appointment-destination {
  max-width: 820px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: auto; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-destination {
      max-width: 100%; } }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-destination__btn {
      width: 100%; } }
  .doctors-appointment-destination__tip {
    font-size: 13px;
    line-height: 1.3;
    color: #35353566; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-destination__tip {
        display: none; } }

.doctors-appointment-cancel {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .doctors-appointment-cancel__inner {
    max-width: 578px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .doctors-appointment-cancel__img {
    display: block;
    width: 288px;
    margin-bottom: 32px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-cancel__img {
        width: 210px;
        margin-bottom: 20px; } }
  .doctors-appointment-cancel__title {
    font-size: 28px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    color: #8798A5;
    margin-bottom: 12px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-cancel__title {
        font-size: 19px;
        line-height: 1.3; } }
  .doctors-appointment-cancel__desc {
    font-size: 15px;
    line-height: 1.3;
    text-align: center; }
    .doctors-appointment-cancel__desc a {
      color: #91B83F; }
  .doctors-appointment-cancel__action {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 12px;
    padding-top: 23px;
    margin-top: 24px;
    border-top: 1px solid #0000000F; }
    @media screen and (max-width: 767.98px) {
      .doctors-appointment-cancel__action {
        display: grid;
        grid-template-columns: repeat(2, 1fr); }
        .doctors-appointment-cancel__action .custom-btn {
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1; } }

.doctors-appointment-last-step__title {
  margin-bottom: 162px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-last-step__title {
      margin-bottom: 20px; } }
.doctors-appointment-last-step__capcha {
  width: 252px;
  margin-bottom: 48px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-last-step__capcha {
      margin-bottom: 28px; } }
.doctors-appointment-last-step__acception {
  margin-bottom: 28px; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-last-step__acception {
      margin-bottom: 20px; } }
.doctors-appointment-last-step__action {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px; }
@media screen and (max-width: 1023.98px) {
  .doctors-appointment-last-step__btn-panel {
    width: 100%;
    padding: 12px 16px;
    background-color: #FFFFFF;
    position: fixed;
    bottom: 0;
    left: 0;
    border-top: 1px solid #0000001A; } }
@media screen and (max-width: 1023.98px) {
  .doctors-appointment-last-step__btn {
    width: 100%; } }
.doctors-appointment-last-step__tip {
  max-width: 300px;
  font-size: 13px;
  line-height: 1.3;
  color: #35353566; }
  .doctors-appointment-last-step__tip a {
    color: #91B83F; }

.reset-btn {
  padding: 0;
  margin: 0;
  border: none;
  outline: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px; }
  @media screen and (max-width: 1279.98px) {
    .form-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 12px; } }

.form-group {
  position: relative;
  width: 100%; }
  .form-group.is-filled .form-label {
    top: 5px;
    font-size: 10px; }

.form-block {
  width: 100%; }

.form-block-label {
  font-size: 17px;
  line-height: 1.3;
  font-weight: 700;
  padding-bottom: 16px; }

textarea.form-control {
  height: 108px; }

.form-select {
  width: 100%;
  position: relative; }
  .form-select::after {
    content: '';
    width: 32px;
    height: 24px;
    position: absolute;
    top: 50%;
    right: 1px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background-image: url("../img/icons/select-arrow.svg");
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center left;
    background-color: #FFFFFF; }
  .form-select select {
    display: block;
    width: 100%;
    height: 56px;
    padding: 20px 20px 4px 16px;
    font-size: 15px;
    line-height: 1.4;
    border: 1px solid #D7D7D7;
    border-radius: 12px;
    background-color: #FFFFFF;
    font-family: 'Gotham Pro', sans-serif;
    cursor: pointer; }
    @media screen and (max-width: 1023.98px) {
      .form-select select {
        height: 44px;
        padding: 20px 15px 4px 12px;
        font-size: 12px;
        line-height: 1.3; } }

.form-label {
  position: absolute;
  left: 20px;
  top: 18px;
  font-size: 15px;
  line-height: 1.4;
  color: #8798A5;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out; }
  @media screen and (max-width: 1023.98px) {
    .form-label {
      font-size: 12px;
      line-height: 1.3;
      left: 16px;
      top: 14px; } }

.form-control {
  display: block;
  width: 100%;
  height: 56px;
  padding: 20px 20px 4px 20px;
  font-size: 15px;
  line-height: 1.4;
  border: 1px solid #D7D7D7;
  border-radius: 12px;
  background-color: #FFFFFF; }
  @media screen and (max-width: 1023.98px) {
    .form-control {
      height: 44px;
      font-size: 12px;
      line-height: 1.3;
      padding: 20px 15px 4px 15px; } }
  .form-control:not(:placeholder-shown) + .form-label {
    top: 5px;
    font-size: 10px; }
  .form-control:focus + .form-label {
    top: 5px;
    font-size: 10px; }

.form-toggle {
  width: 100%; }
  .form-toggle__label {
    position: relative;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    cursor: pointer; }
    .form-toggle__label input {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      visibility: hidden; }
      .form-toggle__label input:checked ~ .form-toggle__control {
        background-color: #91B83F; }
        .form-toggle__label input:checked ~ .form-toggle__control::before {
          -webkit-transform: translateX(22px);
                  transform: translateX(22px); }
  .form-toggle__tip {
    font-size: 12px;
    line-height: 1.5;
    color: #35353566;
    margin-top: 8px; }
  .form-toggle__control {
    position: relative;
    display: block;
    width: 44px;
    height: 22px;
    background-color: #8798A5;
    border-radius: 20px; }
    .form-toggle__control::before {
      content: '';
      width: 18px;
      height: 18px;
      background-color: #FFFFFF;
      border-radius: 50%;
      -webkit-box-shadow: 0px 2px 4px 0px #00230B33;
              box-shadow: 0px 2px 4px 0px #00230B33;
      position: absolute;
      top: 2px;
      left: 2px;
      -webkit-transition: -webkit-transform 0.25s ease-in-out;
      transition: -webkit-transform 0.25s ease-in-out;
      transition: transform 0.25s ease-in-out;
      transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out; }

.form-checkbox {
  width: 100%;
  position: relative; }
  .form-checkbox input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden; }
    .form-checkbox input:checked + .form-checkbox__label .form-checkbox__toggle::before {
      opacity: 1; }
  .form-checkbox__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 12px;
    cursor: pointer; }
  .form-checkbox__toggle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background-color: #ECEFF1;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
    @media screen and (max-width: 1023.98px) {
      .form-checkbox__toggle {
        width: 16px;
        height: 16px;
        border-radius: 4px; } }
    .form-checkbox__toggle::before {
      content: '';
      width: 12px;
      height: 9px;
      background: url("../img/icons/checked.svg") center center/12px no-repeat;
      opacity: 0; }
      @media screen and (max-width: 1023.98px) {
        .form-checkbox__toggle::before {
          width: 10px;
          height: 7px;
          background-size: 10px; } }
  .form-checkbox__title {
    font-size: 15px;
    line-height: 1.6;
    color: #4E4D4D; }
    @media screen and (max-width: 1023.98px) {
      .form-checkbox__title {
        font-size: 13px;
        line-height: 1.25; } }

.form-calendar .form-control {
  padding-right: 60px; }
.form-calendar__clear {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 10px;
  right: 36px; }
.form-calendar__icon {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 16px;
  right: 12px; }
  @media screen and (max-width: 1023.98px) {
    .form-calendar__icon {
      top: 10px; } }

.steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px; }
  @media screen and (max-width: 1023.98px) {
    .steps {
      width: 100%;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr 24px;
      gap: 4px; } }
  .steps__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px; }
    @media screen and (max-width: 1023.98px) {
      .steps__item {
        gap: 4px; }
        .steps__item::after {
          content: '';
          width: 100%;
          height: 1px;
          background-color: #8798A5; } }
    .steps__item--current .steps__item-num {
      background-color: #8798A5;
      border-color: #8798A5;
      color: #FFFFFF; }
    .steps__item--completed .steps__item-num {
      background-color: #8798A5;
      border-color: #8798A5;
      font-size: 0px; }
      .steps__item--completed .steps__item-num::after {
        --size: 24px;
        content: '';
        width: var(--size);
        height: var(--size);
        background: url("../img/icons/complete.svg") center center/var(--size) no-repeat; }
        @media screen and (max-width: 1023.98px) {
          .steps__item--completed .steps__item-num::after {
            --size: 18px; } }
    .steps__item:last-of-type::after {
      display: none; }
    .steps__item-num {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 32px;
      height: 32px;
      background-color: #EDEDED;
      color: #8798A5;
      border-radius: 50%;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      @media screen and (max-width: 1023.98px) {
        .steps__item-num {
          width: 24px;
          height: 24px;
          -ms-flex-negative: 0;
              flex-shrink: 0; } }
    .steps__item-title {
      font-size: 14px;
      line-height: 1.5;
      color: #8798A5; }
      @media screen and (max-width: 1023.98px) {
        .steps__item-title {
          display: none; } }

.chips {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media screen and (max-width: 767.98px) {
    .chips {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 4px 5px; } }
  .chips--sm {
    gap: 4px; }

.chips-item {
  display: inline-block;
  width: auto;
  position: relative; }
  .chips-item input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0; }
    .chips-item input:checked + span {
      background-color: #8798A5;
      border-color: #8798A5;
      color: #FFFFFF; }
  .chips-item span {
    display: block;
    padding: 17px 27px;
    background-color: transparent;
    font-size: 16px;
    line-height: 1.32;
    font-weight: 500;
    text-align: center;
    font-weight: 400;
    border-radius: 40px;
    background-color: #FFFFFF;
    border: 1px solid #ECEFF1;
    color: #8798A5;
    cursor: pointer; }
    @media screen and (max-width: 1023.98px) {
      .chips-item span {
        padding: 6px 14px;
        border-radius: 20px;
        font-size: 13px;
        line-height: 1.25; } }
  .chips-item--m span {
    padding: 11px 15px;
    font-size: 15px;
    font-weight: 500; }
    @media screen and (max-width: 1023.98px) {
      .chips-item--m span {
        padding: 6px 14px;
        border-radius: 20px;
        font-size: 13px;
        line-height: 1.25; } }
  .chips-item--sm span {
    padding: 6px 10px;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 500;
    border-radius: 20px; }

.chips-more-btn {
  padding: 6px 10px;
  font-size: 13px;
  line-height: 1.25;
  border-radius: 20px;
  min-width: 62px;
  background-color: #ECEFF1;
  color: #646F78; }

/* --- Контейнер --- */
.calendar-container {
  max-width: 421px;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  display: none;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 24px; }

.calendar-container.active {
  display: block; }

/* --- Хедер --- */
.calendar-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 26px 25px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  gap: 4px; }

.calendar-header .nav-button:nth-child(2) {
  margin-left: auto; }

.month-name {
  font-size: 24px;
  font-weight: 600;
  color: #4e4d4d;
  padding: 0px; }

.nav-button {
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background: #8798a5;
  color: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: background 0.2s;
  transition: background 0.2s; }

.nav-button:hover {
  background: #5a6268; }

/* --- Основная область --- */
.calendar-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.calendar-grid {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 20px 18px; }

/* --- Сетка дней недели --- */
.weekdays {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 1px;
  margin-bottom: 10px; }

.weekday {
  font-weight: 700;
  font-size: 13px;
  line-height: 154%;
  text-align: center;
  color: #8798a5;
  padding: 5px 18px; }

/* --- Сетка дней месяца --- */
.days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 10px 14px; }

.day {
  width: 36px;
  aspect-ratio: 1;
  border: none;
  background: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #333;
  background: #eceff1;
  font-weight: 400;
  font-size: 17px;
  line-height: 165%;
  border-radius: 6px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }

.day:hover {
  background: #e9ecef; }

.day.other-month {
  color: #adb5bd;
  background: #fff;
  cursor: default; }

.day.disabled {
  background: #fff;
  cursor: default;
  font-weight: 400;
  color: rgba(53, 53, 53, 0.4); }

.day.today {
  color: #fff;
  background: #878788;
  font-weight: 600; }

.day.selected {
  background: #91b83f;
  color: #fff;
  font-weight: 600; }

.calendar-times {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.doctors-appointment-order {
  width: 100%; }
  .doctors-appointment-order__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 32px; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-order__top {
        margin-bottom: 20px; } }
  .doctors-appointment-order__inputs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    padding-bottom: 15px;
    margin-bottom: 16px;
    border-bottom: 1px solid #0000000F; }
    @media screen and (max-width: 1023.98px) {
      .doctors-appointment-order__inputs {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 12px;
        padding-bottom: 0;
        border-bottom: 0;
        margin-bottom: 20px; } }
  .doctors-appointment-order__select-specialist {
    width: 100%; }
  @media screen and (max-width: 1023.98px) {
    .doctors-appointment-order__time .chips {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      overflow-x: auto;
      gap: 8px; }
      .doctors-appointment-order__time .chips::-webkit-scrollbar {
        display: none; }
    .doctors-appointment-order__time .chips-item {
      -ms-flex-negative: 0;
          flex-shrink: 0; } }

.doctor-selection {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px; }
  .doctor-selection__list {
    width: 416px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 8px;
    max-height: 530px;
    overflow-y: auto; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection__list {
        width: 100%; } }
  .doctor-selection__main {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    position: -webkit-sticky;
    position: sticky;
    top: 20px; }

.doctor-selection-item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  padding: 12px;
  border-radius: 24px;
  border: 1px solid #ECEFF1;
  cursor: pointer; }
  .doctor-selection-item.is-selected {
    background-color: #F6F7F9;
    border-color: #F6F7F9; }
  .doctor-selection-item__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 16px; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__top {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 8px; } }
  .doctor-selection-item__person {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__person {
        width: 100%;
        gap: 8px;
        -webkit-box-ordinal-group: 100;
            -ms-flex-order: 99;
                order: 99; } }
  .doctor-selection-item__rating {
    display: none; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__rating {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 2px;
        padding: 4px 6px;
        background-color: #FFFFFF;
        border-radius: 14px;
        font-size: 11px;
        line-height: 1.4;
        color: #91B83F;
        font-weight: 700; } }
  .doctor-selection-item__img {
    display: block;
    width: 48px;
    height: 48px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    border-radius: 50%;
    overflow: hidden; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__img {
        width: 40px;
        height: 40px; } }
    .doctor-selection-item__img img {
      display: block;
      width: 100%; }
  .doctor-selection-item__name {
    font-size: 17px;
    line-height: 1.2;
    font-weight: 700; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__name {
        font-size: 15px; } }
  .doctor-selection-item__exp {
    font-size: 13px;
    line-height: 1.25;
    color: #8798A5;
    white-space: nowrap; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__exp {
        -webkit-box-ordinal-group: 0;
            -ms-flex-order: -1;
                order: -1;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1; } }
  .doctor-selection-item__desc {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    line-height: 1.4; }
  @media screen and (max-width: 1023.98px) {
    .doctor-selection-item__time .chips {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      gap: 4px;
      overflow-x: auto;
      width: calc(100% + 24px);
      padding: 0 12px;
      margin: 0 -12px; }
      .doctor-selection-item__time .chips::-webkit-scrollbar {
        display: none; }
    .doctor-selection-item__time .chips-item {
      -ms-flex-negative: 0;
          flex-shrink: 0; }
    .doctor-selection-item__time .chips-more-btn {
      display: none; } }
  .doctor-selection-item__bottom {
    display: none; }
    @media screen and (max-width: 1023.98px) {
      .doctor-selection-item__bottom {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .doctor-selection-item__price {
    font-size: 13px;
    line-height: 1.25;
    font-weight: 500; }
  .doctor-selection-item__more-info {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4px;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 500;
    color: #91B83F; }
    .doctor-selection-item__more-info::after {
      content: '';
      display: block;
      width: 16px;
      height: 16px;
      mask: url("../img/icons/chevron-right.svg") center center/16px no-repeat;
      -webkit-mask: url("../img/icons/chevron-right.svg") center center/16px no-repeat;
      background-color: #91B83F; }

@media screen and (max-width: 1023.98px) {
  .doctor-selection-info {
    display: none; } }
.doctor-selection-info__inner {
  padding: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #F6F7F9;
  border-radius: 24px;
  overflow: hidden;
  overflow: hidden;
  min-height: 530px; }
  @media screen and (max-width: 1279.98px) {
    .doctor-selection-info__inner {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      min-height: unset;
      gap: 40px; } }
.doctor-selection-info__main {
  width: 55%;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 1279.98px) {
    .doctor-selection-info__main {
      width: 100%; } }
.doctor-selection-info__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px; }
.doctor-selection-info__name {
  font-size: 28px;
  line-height: 1.3;
  font-weight: 700; }
.doctor-selection-info__rating {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background-color: #FFFFFF;
  border-radius: 20px;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 600;
  color: #91B83F; }
  .doctor-selection-info__rating img {
    display: block;
    width: 20px;
    height: 20px;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
.doctor-selection-info__desc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.25; }
.doctor-selection-info__exp {
  color: #8798A5;
  -ms-flex-negative: 0;
      flex-shrink: 0; }
.doctor-selection-info__details {
  width: 100%;
  padding: 46px 0; }
  .doctor-selection-info__details-list {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 8px; }
  .doctor-selection-info__details-more {
    padding: 3px 6px;
    font-size: 13px;
    line-height: 1.25;
    color: #91B83F;
    font-weight: 700;
    margin-top: 8px; }
.doctor-selection-info__detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-size: 13px;
  line-height: 1.25; }
  .doctor-selection-info__detail:nth-of-type(n + 4) {
    display: none; }
  .doctor-selection-info__details.is-expanded .doctor-selection-info__detail:nth-of-type(n + 4) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .doctor-selection-info__detail img {
    display: block;
    width: 20px;
    height: 20px;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
.doctor-selection-info__times {
  margin-bottom: 16px; }
  .doctor-selection-info__times .chips {
    display: grid;
    grid-template-columns: repeat(4, 74px);
    gap: 4px; }
.doctor-selection-info__price {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700; }
.doctor-selection-info__img {
  width: 50%;
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  z-index: 1; }
  @media screen and (max-width: 1279.98px) {
    .doctor-selection-info__img {
      width: 120px;
      height: 120px;
      border-radius: 50%;
      overflow: hidden;
      position: static; } }
  .doctor-selection-info__img img {
    display: block;
    width: 100%; }

/* Шаг «Выбор услуги»: убираем лишнюю высоту обёртки, чтобы кнопка «Далее» не уезжала вниз.
   Только десктоп; на мобиле обёртка остаётся 100vh (см. базовое правило выше). */
@media screen and (min-width: 1024px) {
  .doctors-appointment__wrapper--compact {
    min-height: auto; }
}

/*# sourceMappingURL=doctors-appointment.css.map */