@media only screen and (max-width: 780px){
    .main-404__title {
            font-size: 4rem !important;
    }
    
    .main-404__text {
        width: 100%;
        font-size: 1.7rem;
    }
    .main-404__btn.btn.btn-middle {
        font-size: 1.2rem;
        padding: 1.5rem 4rem;
    }
}
@media only screen and (max-width: 767px) {
    
    .services-list .s_item {
        width: 100%;
        margin: 0 0 20px;
    }
    
    .services-list .s_item a:hover .info {
        transform: translateY(100%);
    }
    
    .services-list .s_item a:hover .info .title {
        margin-top: -85px;
    }
    
    .complex_item .info {
        padding: 25px 30px;
    }
    
    .complex_item .info .title {
        font-size: 32px;
        margin: 0 0 30px;
    }
    
    .complex_item .info ul li {
        font-size: 16px;
        margin: 0 0 15px;
    }
    
    .search-modal {
        padding-top: 30px;
    }
    
    .search-modal .search-field input {
        height: 60px;
        font-size: 18px;
        padding: 14px 60px;
    }
    
    .search-modal .search-field button {
        top: 15px;
        font-size: 20px;
        left: 15px;
    }
    
    .search-modal .search-field .close {
        right: 15px;
        top: 20px;
        width: 20px;
        height: 20px;
    }
    
    .search-modal .search-field .close span {
        width: 20px;
        top: 9px;
    }
    
    .catalog-filters .list-filter-check li {
        width: calc(100%/2);
        padding-right: 20px;
    }
    
    .advantages-list .item {
        width: calc(100%/2 - 20px/2);
    }
    
    .advantages-list .item:nth-child(3n) {
        margin-right: 20px;
    }
    
    .advantages-list .item:nth-child(2n) {
        margin-right: 0;
    }
    
    .main-catalog-list .item {
        width: calc(100%/2);
    }
    
    .main-catalog-list .item:nth-last-child(-n+2):not(:nth-child(even)) {
        width: 100%;
        border-right: 1px solid #DBE4E9;
    }
    
    .main-catalog-list .item:nth-child(3n) {
        border-right: none;
    }
    
    .main-catalog-list .item:nth-child(2n) {
        border-right: 1px solid #DBE4E9;
    }
    
    .error-page .error-title {
      font-size: 30px;
    }
    
    .error-page .error-catalog .catalog-title {
      font-size: 26px;
    }
    
    .error-page .error-catalog .error-catalog-list ul li {
      width: 50%;
      text-align: center;
      text-align: left;
      padding-right: 26px;
    }
    
    .error-page .error-catalog {
      padding: 20px 60px;
    }
    
    .content-why .item {
        min-height: 100px;
    }
    
    .content-why .item .text {
        width: 100%;
    }
    
    .content-why .item .icon {
        width: 100px;
        height: 100px;
        line-height: 100px;
        padding: 0 20px;
        margin-right: 10px;
    }

    .hide-sm {
        display: none;
    }
    
  .section-title h2 {
    font-size: 5.6rem;
  }
  .section-title h3 {
    font-size: 4.6rem;
  }
  .section-title p {
    font-size: 3rem;
  }
  .footer-one,
  .footer-two {
    width: 50%;
  }
  .footer-three {
    width: 100%;
  }
  .footer-three::before {
    display: none;
  }
  .img-left {
    float: none;
    margin-right: 0;
  }
  .slids-content {
    padding-top: 10rem;
    min-height: 320px;
  }
  
  .slider-main .box-icon{
    display: none;
    }
  
  .grid-width,
  .grid-col {
    width: 100%;
  }
  .category-large {
    padding-left: 23rem;
  }
  .special .special-data::before {
    display: none;
  }
  .complex .name {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .list-partner >li a {
    height: 16rem;
  }
  .Slider .slick-dots {
    bottom: 3rem;
    right: 0.4rem;
  }
  .contact {
    padding: 0;
  }
  .contact >div {
    padding: 1.5rem;
  }
  .contact-map {
    display: block;
  }
  .contact-map-box {
    width: auto;
    margin: 0 -1.5rem;
  }
  #map {
    min-height: 30rem;
  }
  .contact-map-nav {
    padding: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: auto;
    margin: -1rem -0.5rem 3rem;
  }
  .contact-map-nav >li {
    width: 50%;
    padding: 1rem 0.5rem 0;
  }
  .map-nav {
    min-height: 100%;
    padding: 1.5rem;
  }
  .map-nav::before {
    display: none;
  }
  .section-consultation {
    margin: 0 -1.5rem;
  }
  .section-consultation::before {
    display: none;
  }
  .SliderCardNav {
    display: none !important;
  }
  .card-slider {
    padding-right: 0;
  }
  .SliderCard {
    margin: 0 -3rem;
  }
  .SliderCard .slick-slide {
    padding: 0 3rem;
  }
  .card {
    padding-top: 1rem;
  }
  .slids .imgBox {
    display: none;
  }
  .slids .imgBox.mobile {
    display: block;
  }
  .slids .imgBox.mobile img {
        width: 100%;
        overflow: hidden;
    }
    .office .info {
        padding: 32px 40px;
    }
    
    .office .info .name {
        font-size: 24px;
        line-height: 1.3;
    }
    
    .office .info b, .office .info a {
        font-size: 20px;
    }
    
    .office .info span {
        font-size: 16px;
    }
    
    .office .info b br, .office .info a br {
        display: none;
    }
    
    .office .info .adress {
        margin: 0 0 22px;
    }
    
    .offices .item .photo {
        margin: 0 0 20px;
    }
    
    .offices .item .info {
        padding: 0 0 25px;
    }
    
    
    
    .offices .item .info .name {
        font-size: 18px;
        margin: 0 0 49px;
    }
    
    .offices .item .info .adress {
        padding: 40px 15px 0;
        font-size: 18px;
        line-height: 1.4;
    }
    
    .offices .item .info .adress i {
        width: 56px;
        height: 56px;
        line-height: 56px;
        font-size: 27px;
    }
    .consultation .subtitle {
        font-size: 22px;
    }
}
@media only screen and (max-width: 575px) {
    
    .main-404__content-box{
        flex-direction:column-reverse;
    }
    
    .main-404__img-wrap{
        text-align:center;
    }
    
    .main-404__img{
        width: 60%;
        display: inline-block;
    }
    
    .main-404__text-block{
        display:flex;
        flex-direction:column;
        align-items:stretch;
    }
    
    .main-404__text, .main-404__title, .main-404__text-block{
        width:100%;
        text-align:center;
        
    }
    
    .main-404__text{
        margin-top: 0;
    }
    
    .complex_o {
        margin-bottom: 50px;
    }
    
    .complex_item {
        width: 100%;
        margin: 0 0 20px !important;
    }
    
    .catalog-filters .list-filter-check li {
        width: calc(100%/2);
        padding-right: 20px;
    }
    
    .catalog-filters .name {
        padding-right: 120px;
    }
    
    .catalog-filters .btn-toggle {
        font-size: 13px;
    }
    
    .catalog-filters .name {
        font-size: 15px;
    }
    
    .catalog-filters .list-filter-check li {
        width: 100%;
        padding-left: 0;
    }
    
    .catalog-filters .list-filter-check label {
        font-size: 1.4rem;
        line-height: 1.5;
    }
    
    .item .item-name a {
        min-height: auto;
    }
    
    .main-catalog-list .item {
        height: 230px;
    }
    
    .main-catalog-list .item a {
        padding: 20px 10px 0;
    }
    
    .main-catalog-list .item .title {
        font-size: 14px;
    }
    
    .main-catalog-list .item .image img {
        max-width: 130px;
    }

  h1,
  .section-title h2 {
    font-size: 3.6rem;
  }
  .section-title {
    margin-bottom: 2rem;
  }
  .section-title h3 {
    font-size: 3.2rem;
  }
  .section-title p {
    font-size: 2.4rem;
    margin-top: -1rem;
  }
  h2 {
    font-size: 3rem;
  }
  .slids {
    font-size: 3.2rem;
  }
  .slids .slids-title {
    font-size: 3.4rem;
  }
  .logo {
    max-width: 18.5rem;
  }
  .white-box {
    padding-top: 3rem;
    padding-bottom: 8rem;
  }
  .sitebar {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .sitebar li a {
    font-size: 2rem;
  }
  blockquote {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1.8rem;
  }
  .tx {
    height: 6rem;
    font-size: 2rem;
    padding: 0 2rem;
  }
  textarea {
    font-size: 2rem;
    padding: 1.5rem 2rem;
  }
  .form-element .form-error {
    font-size: 2rem;
  }
  .btn.btn-middle {
    padding: 1.6rem 2rem;
    font-size: 2rem;
  }
  .btn.btn-large {
    font-size: 2.2rem;
    padding: 2rem 2.5rem;
  }
  .footer-one,
  .footer-two,
  .footer-three {
    width: 100%;
    padding: 0;
    margin: 0 0 3.5rem;
    border: 0;
  }
  .footer-link {
    margin-bottom: 2rem;
  }
  .copy {
    margin-bottom: 2rem;
  }
  .site-work {
    padding-top: 2rem;
  }
  .close-popup {
    top: 1rem;
    right: 1rem;
  }
  .popup-box {
    padding: 3rem 1.5rem;
  }
  .popup-thanks h2 {
    font-size: 3.6rem;
  }
  .form-popup h2 {
    font-size: 3.6rem;
  }
  .section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .category-large {
    padding-left: 14rem;
    height: 16rem;
    font-size: 2rem;
  }
  .special-main {
    display: block;
    padding: 2rem 1.5rem;
  }
  .special-main .img-box {
    width: auto;
    padding: 0;
  }
  .special-main .special-main-content {
    width: auto;
  }
  .list-partner >li a {
    height: 14rem;
  }
  .category-large {
    padding-left: 22rem;
  }
  .contact-one ul >li::before {
    display: none;
  }
  .map-nav {
    font-size: 1.4rem;
  }
  .contact-map-nav >li {
    width: 100%;
  }
  #map {
    height: 35rem;
  }
  .contact-map {
    margin-bottom: 0;
  }
  .contact-personal {
    padding-top: 5rem;
  }
  .personal {
    display: block;
  }
  .personal .personal-content {
    width: auto;
    padding-top: 1rem;
  }
  .white-box {
    padding-bottom: 5rem;
  }
  .SliderCard {
    margin: 0 -1.5rem;
  }
  .SliderCard .slick-slide {
    padding: 0 1.5rem;
  }
  .SliderCard a {
    height: 30rem;
  }
  .card {
    padding: 1rem 1.5rem 1.5rem;
    margin-bottom: 5rem;
  }
  .card-data {
    padding: 1.5rem;
  }
  .section-related {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .category-large {
    padding: 0 1.5rem 0 10rem;
    text-align: right;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .category-large.category-large-size {
    text-align: left;
    padding-top: 3rem;
    padding-left: 3rem;
  }
  
  .office .info i {
        position: relative;
        display: block;
    }
    
    .office .info .adress {
        padding: 0;
    }
    
    .office .info > div {
        padding: 0;
    }
    
    .office .info .name {
        font-size: 19px;
    }
    
    .office .info b, .office .info a {
        font-size: 18px;
        line-height: 1.4;
    }
    
    .office .info i {
        width: 50px;
        height: 50px;
        line-height: 50px;
        font-size: 25px;
    }
    
    .partners-form .consultation h2 {
        font-size: 22px;
    }
    
    .form-element.sms-code button {
        height: 60px;
        line-height: 60px;
        font-size: 12px;
        width: 110px;
        text-align: center;
        padding: 0 10px;
    }
    
    .form-element.sms-code input {
        padding-right: 110px;
    }
    
    .partners-form .form-element input {
        font-size: 15px;
    }
    
    .form-element.sms-code button i {
        font-size: 10px;
        margin-right: 5px;
    }

    .complex_categories .cc_item a {
        padding: 16px 40px 16px 20px;
        font-size: 16px;
    }
    
    .complex_categories .cc_item a:after {
        font-size: 17px;
        right: 10px;
    }


}

@media only screen and (max-width: 525px) {
    .main-404__title {
        font-size: 4rem !important;
            margin-bottom: 10px;
    }
    .advantages-list .item {
        width: 100%;
        margin: 0 0 20px !important;
    }
}

@media(max-width: 474px) {
    .error-page {
      padding: 45px 0 0;
    }
    
    .error-page .logo img {
      width: 300px;
      margin: 0 auto;
    }
    .error-page .error-catalog .error-catalog-list ul li {
        width: 100%;
    }
    
    .complex_list .item_label .text {
        width: 100%;
        margin: 0 0 15px;
    }
    
    .services-list .s_item .info .title {
        font-size: 20px;
    }
    
}

@media(max-width: 374px){
    .main-catalog-list .item {
        width: 100%;
        border-right: 1px solid #DBE4E9 !important;
        height: 200px;
    }
    
    .main-catalog-list .item .image img {
        max-height: 130px;
        max-width: 170px;
    }
}