@media screen and (max-width: 1280px) {
  .additional-card__actions {
    justify-content: space-between;
    padding-right: 16px;
  }

  .xl-hidden {
    display: none;
  }

  .xl-block {
    display: block;
  }

  .header-nav__links {
    display: flex;
    gap: 4px;
    align-items: center;
    list-style: none;
  }

  .header-nav__links a::before {
    content: '/';
    color: inherit;
  }

  .header-nav__links li:first-child a:before {
    content: normal;
  }

  .header-nav__link.header {
    color: var(--blue);
  }

  .header-nav__links .header-nav__link.header {
    color: var(--blue);
  }

  .header-nav__link.header.active {
    color: var(--dark-blue);
  }

  .header__logo img {
    width: 100px;
    height: 37px;
  }

  .header-nav {
    display: none;
    animation: fadeEffect .3s;
  }

  .header-nav.open {
    display: block;
    position: absolute;
    top: 45px;
    right: 60px;

    border: 1px solid var(--dark-blue);
    border-radius: 6px;
    padding: 40px;
    width: 220px;

    background: var(--white);

    z-index: 99999999;
  }

  .header-nav__list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .header-nav__link.header {
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    padding: 0;
    text-align: start;
    color: var(--dark-blue);
  }

  .header-actions {
    flex-direction: row-reverse;
  }

  .header-actions__burger,
  .header-actions__cart {
    display: inline-flex;
    width: 28px;
    height: 28px;
  }

  .header-actions__cart i[data-icon],
  .header-actions__burger i[data-icon] {
    font-size: 28px;
    font-variation-settings:
      "FILL"0,
      "wght"200,
      "GRAD"0,
      "opsz"34;
  }

  .header-actions__account {
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    text-align: center;
    color: var(--dark-blue);
  }

  .header {
    padding: 8px 60px;
  }

  .telemedicine {
    padding: 60px;
  }

  .telemedicine__inner {
    width: 660px;
    margin: 0 auto;
  }

  .telemedicine__grid {
    grid-template-columns: 320px 320px;
    gap: 20px;
  }

  .service-card {
    width: 320px;
    height: auto;
    min-height: 356px;
  }

  .service-card__title {
    margin-bottom: 24px;
    line-height: 27px;
  }

  .service-card {
    gap: 0;
  }

  .service-card__meta {
    gap: 12px;
  }

  .additional {
    padding: 60px;
  }

  .additional__inner {
    width: 660px;
    margin: 0 auto;
  }

  .additional__grid {
    grid-template-columns: 320px 320px;
    gap: 20px;
  }

  .additional-card {
    width: 320px;
    height: 340px;
    gap: 0;
  }

  .additional-card__title {
    margin-bottom: 24px;
    line-height: 28px;
    min-height: 56px;
    text-align: center;
    width: 275px;
  }

  .additional-card__text {
    min-height: 140px;
    line-height: 20px;
  }

  .benefits {
    padding: 60px;
  }

  .benefits-center {
    gap: 16px;
    flex-direction: column;
  }

  .benefits-center__logo {
    width: 164px;
    height: 62px;
  }

  .benefits__grid {
    display: grid;
    grid-template-columns: 320px 320px 164px;
    grid-template-rows: auto auto auto;
    column-gap: 20px;
    row-gap: 32px;
    justify-content: center;
  }

  .benefits-card-1 {
    grid-column: 1;
    grid-row: 1;
  }

  .benefits-card-2 {
    grid-column: 2;
    grid-row: 1;
  }

  .benefits-card-3 {
    grid-column: 1 / 3;
    grid-row: 2;
  }

  .benefits-center {
    grid-column: 3;
    grid-row: 2;
  }

  .benefits-card-4 {
    grid-column: 4;
    grid-row: 2;
  }

  .benefits-card-5 {
    grid-column: 1;
    grid-row: 3;
  }

  .benefits-card-6 {
    grid-column: 2;
    grid-row: 3;
  }

  .benefits-card-w {
    width: 320px;
    height: 197px;
    padding: 8px;
  }

  .benefits-card-h {
    width: 216px;
    height: 437px;
    flex-direction: column;
    gap: 4px;
  }

  .benefits-card-h .benefits-card__body {
    margin-top: 0;
  }

  .benefits-card-h .benefits-card__img {
    width: 144px;
    height: 100px;
    position: static;
  }

  .benefits-card-h .benefits-card__text {
    width: auto;
  }



  .benefits-card-5,
  .benefits-card-6 {
    position: static;
  }

  .reviews {
    padding: 60px;
  }

  .review-card {
    width: 320px;
  }

  .review-card:nth-child(3) {
    display: none;
  }

  .faq,
  .contacts {
    padding: 60px;
  }

  .contacts__content {
    flex-direction: column;
  }

  .contacts__map {
    width: 660px;
  }

  .request__form {
    width: 660px;
    height: auto;
    padding: 12px;
  }

  .form-files {
    flex-direction: column;
    align-items: flex-start;
  }

  .cabinet {
    padding: 60px;
  }

  .cabinet__layout {
    flex-direction: column;
  }

  .cabinet-menu {
    display: none;
  }

  .cabinet-content {
    width: 660px;
  }

  .cabinet-profile__avatar {
    width: auto;
    min-width: 60px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .cabinet-menu-toggle {
    display: flex;
    align-items: center;
    gap: 4px;
    border: none;
    border-radius: 8px;
    background: var(--white);
    cursor: pointer;
    color: var(--dark-blue);
  }

  .cabinet-menu__header {
    color: var(--dark-blue);
  }

  .cabinet__sidebar {
    position: relative;
    width: 660px;
  }

  .cabinet-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 221px;
    height: 504px;
    padding: 16px;
    border: 1px solid var(--dark-blue);
    border-radius: 8px;
    background: var(--white);
    z-index: 9999;
    display: none;
  }

  .cabinet-menu.is-open {
    display: block;
  }

  .cabinet-menu__group {
    border: none;
    width: 189px;
    padding: 0;
    margin-bottom: 16px;
  }

  .cabinet-profile__info {
    width: 424px;
    align-items: flex-start;
  }

  .cabinet-review {
    font-size: 14px;
    line-height: 140%;
    color: var(--dark-blue);
    width: 189px;
  }

  .payment {
    padding: 60px;
  }

  .payment__card {
    width: 660px;
    height: 237px;
  }

  .payment__btn {
    gap: 6px;
    border-radius: 4px;
    padding: 8px 24px;
    height: auto;
    letter-spacing: normal;
    white-space: nowrap;
  }

  .payment__btn:nth-child(1) {
    width: 208px;
  }

  .payment__btn:nth-child(2) {
    width: 346px;
    padding: 8px;
  }

  .payment__actions {
    justify-content: space-between;
    gap: 32px;
  }

  .payment__meta {
    flex-direction: column;
    align-items: flex-start;
  }

  .payment__btn-text--full {
    display: none;
  }

  .payment__btn-text--short {
    display: inline;
  }

  .header-actions a i[data-icon] {
    width: 28px !important;
    height: 28px !important;
  }

  .service-card__bottom .service-card__price {
    display: inline;
  }

  .service-card__meta .service-card__price {
    display: none;
  }

  .service-card__actions {
    flex-direction: row;
    gap: 8px;
  }

  .service-card__actions .btn {
    width: auto;
    font-weight: 600;
  }

  .service-card__bottom {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .service-card__content {
    min-height: 240px;
  }

  .contacts__panel {
    width: 660px;
  }

  .contacts__cta {
    width: auto;
  }

  .contacts__link {
    width: auto;
  }
}

@media (max-width: 760px) {

  .login-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .45);
    display: none;
    z-index: 9999;
    padding-top: 0;
    padding-bottom: 0;
  }

  .register-overlay {
    padding-top: 0;
    padding-bottom: 0;
  }

  .login-overlay.is-open {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }

  .login-modal,
  .register-modal {
    position: relative;
    width: 380px;
    height: min-content;
    padding: 40px 16px;
    box-sizing: border-box;

    border: 1px solid var(--dark-blue);
    border-radius: 8px;
    background: var(--white);

    display: flex;
    flex-direction: column;
    gap: 32px;
  }

  .login-modal {
    height: 100%;
  }

  .login-modal__title {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 32px;
    line-height: 140%;
    text-align: center;
    color: var(--black);
    margin: 0;
  }

  .login-modal__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;

    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .login-modal__close i[data-icon] {
    width: 32px;
    height: 32px;
    font-size: 32px;
    line-height: 32px;
    color: var(--dark-blue);
    font-variation-settings: "FILL"0, "wght"200, "GRAD"0, "opsz"32;
  }

  .login-modal__form {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .login-inputs {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 0;
  }

  .login-actions {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .login-input,
  .register-input {
    width: 348px;
  }

  .login-button {
    width: 348px;
  }

  .register-modal__note {
    text-align: center;
  }

  .cabinet__sidebar {
    width: 348px;
  }

  .cabinet-content {
    width: 348px;
  }

  .cabinet-card__status {
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    text-align: center;
  }

  .cabinet-card__top {
    align-items: center;
  }

  .cabinet-card {
    gap: 8px;
    padding: 12px;
  }

  .footer-bottom__inner {
    padding: 20px 16px;
  }

  .header {
    padding: 8px 16px;
  }

  .header__inner {
    gap: 40px;
    justify-content: center;
  }

  .cabinet {
    padding: 40px 16px;
  }

  .cabinet-menu {
    position: fixed;
    inset: 0;
    z-index: 9999;

    width: 380px;
    height: auto;
    max-height: 100%;

    margin: auto;
    padding: 40px 16px;

    border: 1px solid var(--dark-blue);
    border-radius: 8px;
    background: var(--white);

    display: none;
    flex-direction: column;
    gap: 16px;

    box-sizing: border-box;

    overflow: auto;
  }

  .cabinet-menu.is-open {
    display: flex;
  }

  .cabinet-menu__close {
    position: absolute;
    top: 16px;
    right: 16px;
  }

  .cabinet-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .cabinet__sidebar {
    position: relative;
  }

  .cabinet-review {
    width: 348px;
  }

  .payment {
    padding: 40px 24px;
  }

  .payment__card {
    width: 348px;
    height: auto;
    padding: 16px 8px;
  }

  .payment__actions {
    flex-direction: column-reverse;
    gap: 16px;
  }

  .payment__btn {
    width: 332px !important;
  }

  .payment__meta-item-pay {
    margin: 0 auto;
  }

  .request__head {
    width: 348px;
    margin: 0 auto;
  }

  .request__form {
    width: 348px;
  }

  .form-files {
    gap: 8px;
  }

  .request__row {
    flex-direction: column;
  }

  .request__label {
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    color: var(--dark-blue);
  }

  .request__choices {
    flex-direction: column;
    gap: 8px;
  }

  .form-files__row .form-file:nth-child(n+3) {
    display: none;
  }

  .form-files__loaded {
    gap: 4px;
  }

  .form-files__upload-text,
  .form-files__loaded-title {
    font-weight: 500;
    font-size: 14px;
    line-height: 140%;
    color: var(--dark-blue);
  }

  .telemedicine,
  .additional,
  .reviews,
  .faq,
  .contacts {
    padding: 40px 16px;
  }

  .telemedicine__grid,
  .additional__grid,
  .reviews__grid {
    grid-template-columns: repeat(1, 348px);
    justify-content: center;
  }

  .service-card,
  .additional__grid .service-card,
  .review-card {
    width: 348px;
  }

  .reviews__top {
    flex-direction: column;
    gap: 32px;
    align-items: flex-start;
  }

  .faq__list {
    width: 348px;
    margin: 0 auto;
  }

  .contacts__map {
    width: 348px;
  }

  .contacts__panel {
    width: 348px;
  }

  .contacts__field {
    width: 348px;
  }

  .contacts__content {
    align-items: center;
  }

  .telemedicine__inner,
  .additional__inner {
    width: 348px;
  }
}

@media (max-width: 500px) {

  .service-card__content {
    min-height: auto;
  }

  .service-card {
    height: auto !important;
    min-height: 328px;
  }

  .header-nav.open {
    width: 100%;
    position: fixed;
    top: 50px;
    height: calc(100% - 50px);
    right: 0;
  }

  html.menu-open,
  body.menu-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
    height: 100%;
    top: var(--scroll-top, 0);
    left: 0;
  }

  .sm-hidden {
    display: none;
  }

  .sm-block {
    display: block;
  }
}