@media (max-width: 767px) {
  header > .ext .contacts {
    display: none;
  }
  header > .ext .logo {
    display: flex;
    justify-content: center;
    float: initial;
    width: 100%;
    object-fit: contain;
  }
  header > .ext .phone {
    justify-content: center;
  }
  section > .ext > nav > .search {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }
  section > .ext > nav > noindex .prodoctorov {
    display: none;
  }
  section > .ext > nav {
    padding-top: 95px;
  }
  #form input {
    width: auto;
  }
  #form .formcont {
    width: 100%;
  }
  #form textarea {
    width: 100%;
  }
  .guru_selector .personal_select select {
    width: 100%;
  }

  #form[name=response_form]{
    padding-top: 0;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  header > .ext .phone {
    justify-content: flex-start;
  }
  header > .ext .contacts {
    width: 28%;
    height: auto;
  }
  header > .ext .phone .kod {
    margin-left: auto;
  }
  section > .ext > nav > .search {
    position: absolute;
    right: 0;
    top: -150px;
    width: 34%;
    margin-right: 5vw;
  }
  section > .ext > nav > noindex .prodoctorov {
    display: none;
  }
  section > .ext > nav {
    padding-top: 10px;
  }
}

@media (max-width: 1023px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  body {
    overflow-x: hidden;
  }
  img {
    max-width: 100%;
  }
  ul {
    padding-left: 20px;
  }
  ol > li {
    margin-left: 20px;
  }
  ul ul {
    padding-left: 20px;
  }
  ol ul {
    padding-left: 40px;
  }
  header {
    height: initial;
    padding: 20px 20px 0px 20px;
  }
  header > .ext {
    min-width: initial;
    padding: 0;
  }
  header > .ext .phone {
    display: inline-flex;
    width: 100%;
    float: initial;
    margin-top: 2vw;
    height: auto;
    font-size: 21px;
    position: initial;
  }
  header > .ext .phone .kod {
    display: inline;
    margin: 0;
    height: auto;
    width: auto;
    float: initial;
    margin-right: 5px;
    font-size: 20px;
  }
  header > .ext .phone .number {
    margin: 0;
    float: initial;
  }
  header > .ext .phone .text {
    display: none;
    position: initial;
    text-align: center;
    width: auto;
  }
  header > .ext .phone #callback, header > .ext .phone .appointment  {
    display: none;
    /*position: absolute;*/
    /*z-index: 1;*/
    /*right: 47px;*/
    /*top: 2px;*/
    /*width: auto;*/
    /*height: auto;*/
    /*padding: 0;*/
    /*background: none;*/
  }

  .mobile_phone{
    position: fixed;
    z-index: 1;
    right: 69px;
    top: 19px;
    width: auto;
    height: auto;
    padding: 0;
    background: #e4f5fd;
  }
   .mobile_phone {
    z-index: 1;
    background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjMycHgiIGhlaWdodD0iMzJweCIgdmlld0JveD0iMCAwIDUxMiA1MTIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxMiA1MTI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8cGF0aCBkPSJNMjU2LDMyYzEyMy41LDAsMjI0LDEwMC41LDIyNCwyMjRTMzc5LjUsNDgwLDI1Niw0ODBTMzIsMzc5LjUsMzIsMjU2UzEzMi41LDMyLDI1NiwzMiBNMjU2LDBDMTE0LjYyNSwwLDAsMTE0LjYyNSwwLDI1NiAgIHMxMTQuNjI1LDI1NiwyNTYsMjU2czI1Ni0xMTQuNjI1LDI1Ni0yNTZTMzk3LjM3NSwwLDI1NiwwTDI1NiwweiBNMzk4LjcxOSwzNDEuNTk0bC0xLjQzOC00LjM3NSAgIGMtMy4zNzUtMTAuMDYyLTE0LjUtMjAuNTYyLTI0Ljc1LTIzLjM3NUwzMzQuNjg4LDMwMy41Yy0xMC4yNS0yLjc4MS0yNC44NzUsMC45NjktMzIuNDA1LDguNWwtMTMuNjg4LDEzLjY4OCAgIGMtNDkuNzUtMTMuNDY5LTg4Ljc4MS01Mi41LTEwMi4yMTktMTAyLjI1bDEzLjY4OC0xMy42ODhjNy41LTcuNSwxMS4yNS0yMi4xMjUsOC40NjktMzIuNDA2TDE5OC4yMTksMTM5LjUgICBjLTIuNzgxLTEwLjI1LTEzLjM0NC0yMS4zNzUtMjMuNDA2LTI0Ljc1bC00LjMxMy0xLjQzOGMtMTAuMDk0LTMuMzc1LTI0LjUsMC4wMzEtMzIsNy41NjNsLTIwLjUsMjAuNSAgIGMtMy42NTYsMy42MjUtNiwxNC4wMzEtNiwxNC4wNjNjLTAuNjg4LDY1LjA2MywyNC44MTMsMTI3LjcxOSw3MC44MTMsMTczLjc1YzQ1Ljg3NSw0NS44NzUsMTA4LjMxMyw3MS4zNDUsMTczLjE1Niw3MC43ODEgICBjMC4zNDQsMCwxMS4wNjMtMi4yODEsMTQuNzE5LTUuOTM4bDIwLjUtMjAuNUMzOTguNjg4LDM2Ni4wNjIsNDAyLjA2MiwzNTEuNjU2LDM5OC43MTksMzQxLjU5NHoiIGZpbGw9IiMwMGE1OWYiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K);
    width: 46px;
    height: 38px;
    background-repeat: no-repeat;
    background-position-x: 8px;
     background-position-y: 3px;
    margin: 0 auto;
  }
  header .phone .call .link_call {
    z-index: 1;
    background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjMycHgiIGhlaWdodD0iMzJweCIgdmlld0JveD0iMCAwIDUxMiA1MTIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxMiA1MTI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8cGF0aCBkPSJNMjU2LDMyYzEyMy41LDAsMjI0LDEwMC41LDIyNCwyMjRTMzc5LjUsNDgwLDI1Niw0ODBTMzIsMzc5LjUsMzIsMjU2UzEzMi41LDMyLDI1NiwzMiBNMjU2LDBDMTE0LjYyNSwwLDAsMTE0LjYyNSwwLDI1NiAgIHMxMTQuNjI1LDI1NiwyNTYsMjU2czI1Ni0xMTQuNjI1LDI1Ni0yNTZTMzk3LjM3NSwwLDI1NiwwTDI1NiwweiBNMzk4LjcxOSwzNDEuNTk0bC0xLjQzOC00LjM3NSAgIGMtMy4zNzUtMTAuMDYyLTE0LjUtMjAuNTYyLTI0Ljc1LTIzLjM3NUwzMzQuNjg4LDMwMy41Yy0xMC4yNS0yLjc4MS0yNC44NzUsMC45NjktMzIuNDA1LDguNWwtMTMuNjg4LDEzLjY4OCAgIGMtNDkuNzUtMTMuNDY5LTg4Ljc4MS01Mi41LTEwMi4yMTktMTAyLjI1bDEzLjY4OC0xMy42ODhjNy41LTcuNSwxMS4yNS0yMi4xMjUsOC40NjktMzIuNDA2TDE5OC4yMTksMTM5LjUgICBjLTIuNzgxLTEwLjI1LTEzLjM0NC0yMS4zNzUtMjMuNDA2LTI0Ljc1bC00LjMxMy0xLjQzOGMtMTAuMDk0LTMuMzc1LTI0LjUsMC4wMzEtMzIsNy41NjNsLTIwLjUsMjAuNSAgIGMtMy42NTYsMy42MjUtNiwxNC4wMzEtNiwxNC4wNjNjLTAuNjg4LDY1LjA2MywyNC44MTMsMTI3LjcxOSw3MC44MTMsMTczLjc1YzQ1Ljg3NSw0NS44NzUsMTA4LjMxMyw3MS4zNDUsMTczLjE1Niw3MC43ODEgICBjMC4zNDQsMCwxMS4wNjMtMi4yODEsMTQuNzE5LTUuOTM4bDIwLjUtMjAuNUMzOTguNjg4LDM2Ni4wNjIsNDAyLjA2MiwzNTEuNjU2LDM5OC43MTksMzQxLjU5NHoiIGZpbGw9IiMwMGE1OWYiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K);
    width: 50px;
    height: 50px;
    background-repeat: no-repeat;
    background-position-x: center;
    margin: 0 auto;
  }
  header .phone .call .link_call i {
    display: none;
  }
  header #requestCallBox {
    display: none;
    width: auto;
  }
  header #requestCallBox .call_over {
    display: none;
  }
  header #requestCallBox .photo_closer {
    right: 10px;
    left: initial;
  }
  body > section {
    display: block;
  }
  section > .ext {
    display: flex;
    flex-direction: column;
    min-width: initial;
  }
  section > .ext > nav {
    width: 100%;
    padding-right: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, max-content));
    justify-content: center;
    grid-gap: 15px 3vw;
    padding-bottom: 20px;
  }
  section > .ext > .content .divpath {
    height: initial;
    background-size: 25px 20px;
    background-position: -5px 9px;
    hyphens: auto;
    word-break: break-all;
    line-height: 1.5;
    padding: 10px 0 10px 20px;
  }
  section > .ext > .content .divpath a.path {
    height: auto;
  }
  section > .ext > nav > .appointments {
    margin-top: 0;
    padding-right: 0;
    background-position-x: -14px;
    padding-left: 53px;
  }
  section > .ext > nav > .search {

    /*background: rgb(255, 110, 121);*/
    /*background: rgba(160, 160, 160, 0.2);*/
    /*background: -moz-linear-gradient( top, rgb(255, 110, 121) 0%, rgb(255, 41, 83) 100%, rgb(255, 41, 83) 100%);*/
    /*background: -webkit-gradient( linear, left top, left bottom, color-stop(0%, rgb(255, 110, 121)), color-stop(100%, rgb(255, 41, 83)), color-stop(100%, rgb(255, 41, 83)));*/
    /*background: -webkit-linear-gradient( top, rgb(255, 110, 121) 0%, rgb(255, 41, 83) 100%, rgb(255, 41, 83) 100%);*/
    /*background: -o-linear-gradient( top, rgb(255, 110, 121) 0%, rgb(255, 41, 83) 100%, rgb(255, 41, 83) 100%);*/
    /*background: -ms-linear-gradient( top, rgb(255, 110, 121) 0%, rgb(255, 41, 83) 100%, rgb(255, 41, 83) 100%);*/
    /*background: linear-gradient( to bottom, rgb(255, 110, 121) 0%, rgb(255, 41, 83) 100%, rgb(255, 41, 83) 100%);*/
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff6e79', endColorstr='#ff2953', GradientType=0);
  }

  section > .ext > nav > .appointments_border{
     display: none;
   }

  section > .ext > nav > .appointments{
    display: block;
  }

  section > .ext > nav > .search .searchtext {
    width: 100%;
  }
  section > .ext > nav > .search form {
    display: flex;
  }
  section > .ext > nav a.vk:nth-child(1), section > .ext > nav a.vk:nth-child(3) {
    margin-left: 5px;
    margin-bottom: 0;
  }
  section > .ext > nav a.vk:nth-child(3){
     clear: both;
     margin-top: 10px;
   }
  section > .ext > nav a.vk:nth-child(4){
    margin-top: 10px;
  }
  section > .ext > nav a.vk:nth-child(2), section > .ext > nav a.vk:nth-child(4) {
    margin-left: 8px;
    margin-bottom: 0;
  }
  section > .ext > nav > .leaf {
    display: none;
  }
  section > .ext > .content > .main-news {
    display: block;
  }
  section > .ext > .content > .main-news > .main-news-header {
    text-align: center;
    display: block;
    padding-right: 0;
    background-image: none;
  }
  section > .ext > .content > .main-news > .table-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, 250px);
    justify-content: center;
    grid-gap: 2.5vw;
  }
  section > .ext > .content > .main-news > .table-row > .table-cells {
    width: 100%;
    text-align: center;
  }
  section > .ext > .content > .main-news > .table-row > .table-cells.padding {
    display: none;
  }
  section > .ext > .content > .main-news > .all {
    display: block;
    text-align: center;
  }
  section > .ext > .content > h2 {
    line-height: 22px;
    display: block;
    text-align: center;
    font-size: 19px;
    max-width: 370px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
  }
  section > .ext > .content > .direction-menu {
    display: grid;
    position: initial;
    height: initial;
    grid-template-columns: repeat(auto-fill, 230px);
    grid-gap: 20px;
    justify-content: center;
    padding-bottom: 20px;
  }
  section > .ext > .content > .direction-menu .table-cells {
    width: 100%;
    height: initial;
  }
  section > .ext > .content > .direction-menu .table-cells.padding {
    display: none;
  }
  section > .ext > .content > .direction-menu .table-cells a {
    width: 100%;
    height: initial;
    min-height: 180px;
  }
  section > .ext > .content > .direction-menu .table-cells .direction-menu2 {
    background-position-x: left;
    background-position-y: top;
    text-align: left;
    padding-left: 20px;
  }
  section > .ext > .content > .direction-menu .table-cells .direction-menu3 {
    background-position-x: left;
    background-position-y: top;
    text-align: left;
    padding-left: 20px;
  }
  section > .ext > nav > .left-menu {
    display: block;
    position: fixed;
    min-width: 100%;
    min-height: 100%;
    z-index: 5;
    left: 0;
    top: 0;
    border-radius: 0;
    height: 100vh;
    padding-top: 30px;
    overflow-y: auto;
  }
  nav .left-menu a {
    font-size: 18px;
    display: block;
    line-height: 1.5;
  }
  footer {
    height: initial;
    min-width: initial;
    width: 100%;
    padding: 20px;
    padding-top: 0;
    height: auto;
  }
  footer > .ext {
    min-width: initial;
    width: 100%;
  }
  footer > .ext > .table-row {
    display: flex;
    flex-direction: column;
    height: initial;
    min-width: initial;
    width: 100%;
  }
  footer > .ext > .table-row > .table-cells:first-child {
    padding-top: 20px;
  }
  footer > .ext > .table-row > .table-cells:first-child > br {
    display: none;
  }
  footer > .ext .table-cells {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    flex-direction: column;
    width: 100% !important;
    text-align: center;
  }
  footer > .ext > .table-row .webmechanica {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    float: initial;
    text-align: center;
  }
  footer > .ext > .table-row .webmechanica br {
    display: none;
  }
  footer > .ext > .table-row b {
    padding-bottom: 5px;
  }
  footer > .ext > .table-row > .webmechanica > img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .table-gallery,
  .table-gallery > tbody {
    display: block;
  }
  .table-gallery > tbody > tr > td {
    margin-top: 0;
    margin-bottom: 0;
    width: auto;
  }
  .photo_gallery,
  .table-gallery > tbody > tr {
    display: grid;
    grid-template-columns: repeat(auto-fit, var(--column-width, 190px));
    justify-content: center;
    grid-gap: 20px 20px;
  }
  .photo_gallery > div {
    display: flex;
    float: initial;
    padding: 0;
    margin: 0;
  }
  .photo_gallery > div > a {
    display: contents;
  }
  .photo_gallery > div > a img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain;
  }
  .content > ymaps {
    width: 100% !important;
  }
  .comment {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-size: contain;
  }
  .table-3-column {
    transform: translateX(-11px);
  }
  .table-3-column > tbody {
    display: block;
  }
  .table-3-column tr {
    display: grid;
    grid-template: "title title" "column-1 column-2";
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  .table-3-column tr td {
    margin: 0;
  }
  .table-3-column tr:first-child > td:first-child {
    display: none;
  }
  .table-3-column tr:not(:first-child) > td:first-child {
    grid-area: title;
    text-align: center;
    border-top: 1px solid #c7ebfc;
    border-bottom: 1px solid #c7ebfc;
  }
  .table-3-column tr:not(:first-child) > td:nth-child(2) {
    grid-area: column-1;
  }
  .table-3-column tr:not(:first-child) > td:nth-child(3) {
    grid-area: column-2;
  }
  .table-3-column tr:not(:first-child) > td:nth-child(2),
  .table-3-column tr:not(:first-child) > td:nth-child(3) {
    word-break: break-word;
    hyphens: auto;
  }
  .table-default {
    word-break: break-word;
    hyphens: auto;
  }
  .table-with-scroll {
    display: block;
    width: 100%;
    overflow-x: scroll;
    text-align: center;
  }
  header .showmenu {
    display: inline-block;
    font-size: 30px;
    z-index: 2;
    position: fixed;
    right: 19px;
    top: 19px;
    padding: 10px;
    color: #00a59f;
    background-color: #e4f5fd;
    cursor: pointer;
  }
  .left-menu .showmenu {
    color: #fff;
    z-index: 2;
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 34px;
    border: 2px solid;
    border-radius: 50%;
    line-height: 1;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #showmenu:not(:checked) + .left-menu {
    display: none;
  }
  .vertical-table > tbody > tr {
    display: grid;
    grid-template-columns: 1fr;
  }
  .vertical-table > tbody > tr > td {
    width: 100% !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  header > .ext .phone .number {
    margin-right: auto;
  }
  header > .ext .phone .kod {
    margin-left: auto;
  }
  nav .left-menu a {
    font-size: 28px;
  }
  footer > .ext > .table-row {
    display: grid;
    grid-template: "logo text" "web text";
  }
  footer > .ext .table-cells.logotype {
    grid-area: logo;
  }
  footer > .ext .table-cells.contacts {
    grid-area: text;
  }
  footer > .ext > .table-row .webmechanica {
    grid-area: web;
  }
  footer > .ext .table-cells.padding {
    display: none;
  }
}

@media (max-width: 400px) {
  section > .ext > nav {
    width: 100%;
    padding-right: 0;
    display: grid;
    grid-template-columns: 70% 30%;
    justify-content: center;
    grid-gap: 15px 3vw;
    padding-bottom: 20px;
  }
  section > .ext > nav a.vk:nth-child(2), section > .ext > nav a.vk:nth-child(4)
  {
    display: none;
  }
  .logo img {
    width: auto;
    height: 75px;
  }
}
@media (min-width: 401px) {
  section > .ext > nav {
    grid-template-columns: repeat(auto-fit, minmax(180px, max-content));
  }
  section > .ext > nav a.vk:nth-child(2), section > .ext > nav a.vk:nth-child(4)
  {
    display: block;
  }
  .logo img {
    width: 335px;
    height: 135px;
  }
}
