@media (max-width: 1799px) {
    .header-contacts{
        padding: 15px 45px;
        max-width: 1020px;
        font-size: 14px;
    }
    .header-contact__address{
        font-size: 14px;
    }
    .header__social{
        margin-right: 10px;
    }
    .header-contact .worktime span{
        display: block;
    }
    .header-contact__info{
        max-width: 170px;
    }
    .header-contact .worktime{
        max-width: 225px;
    }
    .section-title, .banner__subtitle{
        font-size: 46px;
    }
    footer .section-title{
        font-size: 36px;
    }
    .banner__title {
        font-size: 70px;
    }
    .card-service{
        --offset: 108px;
        width: 240px;
        height: 240px;
    }
    .card-service__info{
        min-height: 75px;
    }
    .card-service__info-title{
        font-size: 13px;
        padding: 0px 30px 30px;  
    }
    .service-information {
        max-width: 915px;
        grid-template-columns: 1fr repeat(2,0.7fr);
    }
    .service__info-description{
        font-size: 16px;
    }
    .callback__img{
        margin-top: -15px;
    }
    .callback_pic{
        margin-bottom: 0px;
    }
    .section-callback .section-text{
        margin-left: unset;
    }
    .card-specialist__info-title{
        font-size: 18px;
    }
    #map{
        max-width: 800px;
    }
    
}
@media (max-width: 1399px) {
    body{
        font-size: 16px;
    }
    .section-title, .banner__subtitle {
        font-size: 40px;
    }
    .banner__title {
        font-size: 70px;
    }
    .banner__text {
        font-size: 18px;
    }
    .site-btn span{
        font-size: 16px;
    }
    .site-btn span {
        min-height: 150px;
        max-width: 320px;
    }
    .banner__img{
        margin-top: -50px;
    }
    .services, .advantages{
        margin: 0px -10px 0px -10px;
        justify-content: center;
       
    }
    .card-service, .card-advantage{
        --offset: 0px;
        --margin-space-left: 10px;
        --margin-space-top: 0px;
        width: 265px;
        height: 265px;
        margin:10px !important;
      
    }
    .service__btn{
        margin-top: 30px;
    }
    .service-information {
        max-width: 100%;
        margin-top: 40px;
        grid-template-columns: repeat(3,1fr);
        
    }
    .service__btn{
        margin-right: 0px;
    }
    .section-who .section-text{
        max-width: unset;
        text-align: center;
    }
    .card-advantage__number{
        font-size: 130px;
        margin-bottom: 10px;
    }
    .card-advantage__info-title{
        font-size: 14px;
    }
    .callback-form .site-btn {
        margin-left: unset;
    }
    .review__item-content{
        margin-bottom: 45px;
    }
    .card-step {
        max-width: 650px;
    }
}
@media (max-width: 1199px) {
    .header-logo svg{
        width:80px;
        height: auto;
    }
    .header-logo__text, .footer-logo__text {
        font-size: 14px;
    }
    .header-contacts {
        padding: 15px 30px;
        max-width: 690px;
    }
    .section-title, .banner__subtitle {
        font-size: 36px;
    }
    .banner__title {
        font-size: 54px;
        margin-bottom: 30px;
    }
    .service__info-title{
        font-size: 16px;
    }
    .service__info-description {
        font-size: 15px;
    }
    .section{
        padding: 40px 0px;
    }
    .section-banner + .section{
        padding-top: 40px;
    }
    .section-text{
        font-size: 18px;
    }
    .csocials__title{
        font-size: 18px;
    }
    footer:before, footer:after{
        background-size: 3665px auto;
        background-position: calc(50% + 590px) 0%;
    }
}
@media (max-width: 991px) {
	.section-title.title-404 {
        font-size: 150px;
    }
    .subtitle-404 {
        font-size: 32px;
    }
    .mobile__menu {
        position: fixed;
        top: 0px;
        right: -100vw;
        background-color: #fff;
        width: 100vw;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-transition: var(--transition);
        transition: var(--transition);
        z-index: 99;
        height: 100%;
        padding: 50px 30px 30px;
        -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: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin-top: 0;
        border-radius: 0px;
        border:0;
        max-width: unset;
    }
    .mobile__menu.opened {
        right: 0;
    }
    .header-contact{
        flex-direction: column;
        margin-right: 0px;
        margin-bottom: 20px;
    }
    .header-contact svg{
        margin-bottom: 5px;
    }
    .header-contact__info, .header-contact .worktime {
        max-width: unset;
    }
    .header-contact__info, .header-contact .worktime{
        text-align: center
    }
    .banner_pic{
        justify-content: center;
        margin-bottom: 20px;
    }
    .banner__img{
        margin-right: 0px;
        max-width: 350px;
    }
    .banner__img .icon-drop{
        transform: translate(calc(-50% - 52px), calc(-50% + 34px));
    }
    .banner__title, .banner__subtitle, .section-title {
        text-shadow: 3px 2px 0 #1a1a1a;
    }
    .banner__title {
        font-size: 44px;
        margin-bottom: 15px;
    }
    .section{
        padding: 30px 0px;
    }
    .section-banner + .section{
        padding-top: 30px;
    }
    .section-call{
        margin-top: -50px;
    }
    .call_img{
        margin-right: unset;
        max-width: 70%;
    }
    .cgallery-grid{
        grid-template-columns: repeat(2, 1fr);
    }
    .callback_pic {
        margin-top: 10px;
    }
    .callback__img{
        margin-top: 0px;
        margin-right: unset;
        max-width: 80%;
    }
    .callback__img .icon-callback{
        transform: translate(calc(-50% - 36px), calc(-50% - 28px));
    }
    .callback-form{
        margin-top: 0px;
    }
    .review__item {
        padding: 30px;
    }
    .card-step {
        max-width: 100%;
        margin-bottom: 20px;
    }
    .card-step__number{
        min-width: 130px;
        text-align: center;
    }
    .text-gradient:before{
        left: 50%;
        transform: translateX(-50%);
    }
    footer:before, footer:after {
        background-size: 3340px auto;
        background-position: calc(50% + 590px) 0%;
    }
    footer::after {
        background-size: 3340px 1px;
       
    }
    .footer-logo{
        margin-left: unset;
        margin-right: unset;
        transform: translateX(0px);
    }
    #map{
        margin-top: 30px;
        height: 450px;
    }
    .footer-contacts .csocials__items {
        margin-top: 30px;
        margin-left: unset;
    }
    .footer-lines {
        margin-top: 20px;
    }
    .banner__img {
        margin-top: 0px;
      }
}
@media (max-width: 767px) {
    .section-title, .banner__subtitle, footer .section-title {
        font-size: 30px;
    }
    .banner__text {
        font-size: 16px;
    }
    .site-btn span {
        min-height: 130px;
        max-width: 280px;
        font-size: 14px;
    }
	.home header {
        margin-bottom: 0px;
    }
    .card-service, .card-advantage{
        width: 250px;
        height: 250px;
    }
    .service-information{
        padding-right: 30px;
        padding-left: 30px;
        grid-template-columns: repeat(2,1fr);
    }
    .service__info:first-child {
        grid-row: unset;
        grid-column: span 2;
    }
    .section{
        padding: 25px 0px;
    }
    .section-banner + .section{
        padding-top: 25px;
    }
    .section-call .section-title {
        margin-top: 115px;
    }
    .card-advantage__number{
        font-size: 110px;
    }
    .card-advantage__info-title{
        font-size: 13px;
    }
    .review__item-content {
        margin-bottom: 15px;
    }
    .card-step__number{
        font-size: 100px;
        min-width: 85px;
    }
    footer {
        padding: 90px 0px 30px;
        margin-top: 0px;
    }
}
@media (max-width: 575px) {
	.section-title.title-404 {
        font-size: 120px;
    }
    .subtitle-404 {
        font-size: 24px;
    }
    .section-title, .banner__subtitle, footer .section-title {
        font-size: 24px;
    }
    .banner__title, .banner__subtitle, .section-title {
        text-shadow: 2px 2px 0 #1a1a1a;
    }
    .banner__title {
        font-size: 32px;
        margin-bottom: 15px;
    }
    .banner__text {
        font-size: 15px;
    }
    .modal-title{
        font-size: 18px;
        font-weight: 600;
        text-shadow: 0;
    }
    .service-information{
        grid-template-columns: 1fr;
    }
    .service__info:first-child {
       grid-column: unset;
    }
    .section-text{
        font-size: 16px;
    }
    .section-call .section-title {
        margin-top: 105px;
    }
    .csocials__title{
        font-size: 16px;
        margin-right: 0px;
        margin-bottom: 10px;
    }
    .csocials{
        flex-direction: column;
    }
    .call_img{
        margin-top: 30px;
    }
    .csocials__item{
        width: 40px;
        height: 40px;
        padding: 4px; 
    }
    .csocials__item svg{
        max-width: 80%;
    }
    .cgallery-grid{
        grid-template-columns: 1fr;
    }
    .card-specialist__info-title{
        font-size: 16px;
        line-height: 130%;
        margin-bottom: 5px;    
    }
    .card-specialist__info-position{
        font-size: 14px;
    }
    .card-step__number {
        font-size: 80px;
        min-width: 60px;
    }
    .footer-contact{
        font-size: 16px;
    }
    .footer-contact__worktime span{
        display: block;
    }
    .footer-contact svg{
        width:40px;
        height:40px;
    }
}
@media (max-width: 320px) {
    .banner__img {
        max-width: 220px;
    }
    .banner__img .icon-drop {
        transform: translate(calc(-50% - 32px), calc(-50% + 19px));
    }
    .header-logo svg {
        width: 50px;
        height: auto;
    }
    .header-logo__text, .footer-logo__text {
        font-size: 12px;
    }
    .site-btn span{
        font-size: 12px;
    }
    .footer-contact {
        font-size: 13px;
    }
    .section-title.title-404 {
        font-size: 80px;
    }
}
@media (min-width: 1800px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1780px;
    }
    .modal{
        --bs-modal-width: 900px;
    }
}



