@charset "utf-8";
@import "callback-btn.css";
@import "callback-modal.css";
@import "typography.css";

/* Класс для увеличения картинки */

.zoom-img {}


/* Класс для галлереи */

.gallery {}


/* Класс для формы */

.form-submit-toggle {}


/* Класс для кнопки заказать звонок */

.callback-toggle {}


/******** Magnific-Popup *********/

.mfp-fade.mfp-bg {
    opacity: 0;
    transition: all 0.15s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8;
}

.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    transition: all 0.15s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}


/******* Image Cover ********/

.img-cover {
    background-size: cover;
    background-position: center;
}

.img-cover_inited>img {
    visibility: hidden;
}


/**********************************/



/* Пагинация */

.pagination>ul {
    margin-top: 15px;
    display: flex;
    list-style: none;
    margin-bottom: 5px;
}

.pagination>ul li {
    margin-right: 20px;
}

.pagination>ul li a {
    text-decoration: none;
    font-weight: 600;
}


@font-face {
    font-family: 'Eurostile'; 
    src: url(../fonts/Eurostile-Medium.ttf) format('truetype');
    font-weight: 500;
}
@font-face {
    font-family: 'Eurostile'; 
    src: url(../fonts/Eurostile-Bold.ttf) format('truetype');
    font-weight: 700;
}

@font-face {
    font-family: 'Eurostile'; 
    src: url(../fonts/Eurostile-Heavy.ttf) format('truetype');
    font-weight: 850;
}

@font-face {
    font-family: 'Roboto'; 
    src: url(../fonts/Roboto-Light.ttf) format('truetype');
    font-weight: 300;
}
@font-face {
    font-family: 'Roboto'; 
    src: url(../fonts/Roboto-Regular.ttf) format('truetype');
    font-weight: 400;
}
@font-face {
    font-family: 'Roboto'; 
    src: url(../fonts/Roboto-Medium.ttf) format('truetype');
    font-weight: 500;
}
@font-face {
    font-family: 'Roboto'; 
    src: url(../fonts/Roboto-Bold.ttf) format('truetype');
    font-weight: 700;
}
@font-face {
    font-family: 'Roboto'; 
    src: url(../fonts/Roboto-Black.ttf) format('truetype');
    font-weight: 900;
}

:root{
    --colorMain:#80C625;
}




body{
    color: #000;
    font-size: 15px;
    font-family: "Roboto";
    font-weight: 400;
    line-height: 1.2;
}
body p{
    margin-top: 0;  
    margin-bottom: 10px;
}
.homepage .h1,.homepage h1{
    margin-bottom: 20px;
    font-size: 50px;
    font-weight: 700;
    padding-left: 0px;
}

.h2,h2,.h1,h1{
    color: #000;
    font-family: Eurostile;
    font-size: 30px;
    font-weight: 850;
    padding-left: 20px;
    margin: 0 0 50px;
    position: relative;
}
.h2:before,h2:before,.insidepage .h1:before,.insidepage  h1:before{
    position: absolute;
    left: 0;
    top: 50%;
    width: 5px;
    border-radius: 3px;
    height: 43px;
    content: '';
    transform: translateY(-50%);
    background: var(--colorMain);
}
.wrapper{
    max-width: 1920px;
    margin: 0 auto;
    min-height:100vh;
    position:relative;
    overflow: clip;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}


.wrapLabel{
    position: relative;
    margin-bottom: 0;
}
.wrapLabel span{
    font-weight: 400;
    padding-left: 25px;
    font-size: 15px;
    display: block;
    position: relative;
    color: #A8A8A8;
}
.wrapLabel span a{
    color: #A8A8A8;
    text-decoration: underline;
}
.wrapLabel span:before{
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    top: calc(50% - 6px);
    content: '';
    border: 1px solid #A8A8A8;
    border-radius: 50%;
}
.wrapLabel span:after{
    position: absolute;
    width: 8px;
    height: 8px;
    left: 2px;
    top: calc(50% - 4px);
    content: '';
    background: var(--colorMain);
    opacity: 0;
    border-radius: 50%;
}
.wrapLabel input:checked + span:after{
    opacity: 1;
}
.wrapLabel input{
    width: 10px !important;
    height: 10px !important;
    left: 0 !important;
    top: 0 !important;
    position: absolute !important;
    opacity: 0 !important;
}
.flexSA{
    display: flex;
    justify-content:space-around;
}

.flexSB{
    display: flex;
    justify-content:space-between;
}
.flexCenter{
    display: flex;
    justify-content:center;
}

.flexAI{
    display: flex;
    align-items:center;
}

.flexW{
    display: flex;
    flex-wrap:wrap;
}
.flexColumn{
    display: flex;
    flex-direction:column;
}
.flexStart{
    display: flex;
    justify-content:flex-start;
}
.flexEnd{
    display: flex;
    justify-content:flex-end;
}



.btnStyle1{
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    display: flex;
    height: 65px;
    padding:0 25px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border:none;
    cursor: pointer;
    transition:all 0.4s;
    background: var(--colorMain);
    border-radius: 50px;
    color: #fff;
    text-decoration: none;
}
.btnStyle2{
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    display: flex;
    height: 65px;
    padding:0 35px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border:none;
    cursor: pointer;
    transition:all 0.4s;
    background: #BFBFBF;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
}
.btnStyle1:hover,.btnStyle2:hover{
    text-decoration: none;
    color: #fff;
    background: #4D7B11;
}

/*header*/
header{
    background: #F9F9FB;
}
.wrapHeader{
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
    padding:30px 0;
}
.rightHeader{
    display: flex;
    align-items: center;
    gap: 40px;
}
.headNav{
    background: #fff;
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 5;
}
header .infoBlock{
    display: grid;
    grid-template-columns: auto auto;
    grid-gap: 10px 65px;
    align-items: center;
}
header .phone,header .navSite,header .mail{
    color: #000;
    
}
.phone{
    background: url(../images/iconPhone.svg) no-repeat left center;
    padding-left: 28px;
    line-height: 20px;
}
.navSite{
    background: url(../images/iconNav.svg) no-repeat left center;
    padding-left: 28px;
    max-width: 300px;
}
.mail{
    background: url(../images/iconMail.svg) no-repeat left center;
    padding-left: 28px;
    line-height: 20px;
}
header .clockSite{
    color: var(--colorMain);
}
header .callback-toggle{
    width: 242px;
    flex:none;
}
.headNav ul{
    display: flex;
}
.headNav ul li{
    flex:auto;
}
.headNav ul a{
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    color: #000;
    padding:25px 0;
    display: flex;
    justify-content: center;
}
.headNav ul li:first-child a{
    justify-content: flex-start;
}   
.headNav ul li:last-child a{
    justify-content: flex-end;
}
.headNav ul li:last-child:before{
    display: none;
}   
.headNav ul li{
    position: relative;
}
.headNav ul li:before{
    position: absolute;
    right: 0;
    background: #EBEBEB;
    width: 1px;
    content: '';
    height: 21px;
    top: 50%;
    transform: translateY(-50%);
}



/*End header*/


/*topBannerBlock*/
.topBannerBlock{
    position: relative;
    overflow: hidden;
    margin-bottom: 70px;
}
.topBannerBlock .imgBG{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.skewTxtBlock{
    position: relative;
    z-index: 2; 
    width: 700px;
    padding:60px 0;
}
.skewTxtBlock:before{
    position: absolute;
    left: -250px;
    top: 0;
    right: -150px;
    bottom: 0;
    background: #F9F9FB;
    transform: skewX(-32deg);
    content: '';
}
.skewTxtBlock .txtBlock{
    z-index: 2;
    position: relative;

}
.skewTxtBlock .txt{
    font-size: 20px;
}
.topBannerBlock .btnsBlockTB{
    display: flex;
    gap: 10px;
    margin-top: 100px;
    justify-content: flex-start;
}
.topBannerBlock .wrapPreTb{
    display: flex;
    justify-content: space-between;
    gap: 45px;
    align-items: center;
    margin-top: 45px;

}
.nucPreTB{
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 18px;
}
.nucPreTB .imgW{
    flex:none;
}

/*End topBannerBlock*/


/*bannerMainBlock*/
.bannerMainBlock{
    margin-bottom: 70px;
}

.wrapBM{
    display: grid;
    grid-template-columns: 490px auto;
    grid-gap: 50px;
}
.smallBM{
    display: flex;
    flex-direction: column;
    gap: 23px;
}
.nucBM{
    position: relative;
}
.nucBM .imgW{
    width: 395px;
    height: 245px;
    display: block;
}
.nucBM .imgW img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.nucBM .txtBlockBM{
    position: absolute;
    right: 0;
    width: calc(100% - 255px);
    top: 18px;
    bottom: 18px;
    background: #F9F9FB;
    box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.10);
    padding: 30px 14px 30px 29px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 70px;
}
.nucBM .titleLine,.bigBM .titleLine{
    display: flex;
    gap: 20px;
    align-items: center;
}
.nucBM .name,.bigBM .name{
    color: #000;
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
}
.nucBM .btnStyle1{
    flex:none;
    width: 280px;
}

.bigBM .imgW{
    width: 100%;
    height: 327px;
}
.bigBM .imgW img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bigBM .linksBlock{
    background: #F9F9FB;
    box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.10);
    margin:-125px 33px 0;
    position: relative;
    padding: 33px 52px 33px 53px;
}
.bigBM .titleLine{
    margin-bottom: 30px;
}
.bigBM .btnStyle1{
    margin-top: 30px;
    width: 280px;
}
.bigBM ul{
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.bigBM ul a{
    color: #000;
    text-decoration: underline;
}
.bigBM ul a:hover{
    color: var(--colorMain);
}

/*End bannerMainBlock*/


/*formBlock*/
.formBlock{
    padding:35px 0;
    position: relative;
}
.formBlock .h2,.formBlock h2{
    margin-bottom: 20px;
}
.formBlock .formWrap{
    width: 775px;
}
.formBlock form{
    margin-top: 50px;
}
form .lineInputs{
    display: flex;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 30px;
}
form input[type="text"]{
    display: flex;
    height: 65px;
    padding: 10px 10px 10px 30px;
    align-items: center;
    gap: 10px;
    font-family: Eurostile;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    border-radius: 50px;
    background: #DDD;
    border:none;
}
form .btnStyle1{
    width: 211px;
    flex:none;
}

/*End formBlock*/

/*formStatic*/
.formStatic1{
    background: url(../images/leftStatForm1.png) no-repeat calc(50% - 770px) center,url(../images/rightStatForm1.png) no-repeat calc(50% + 510px) center,#F9F9FB;
    margin-bottom: 70px;
}
.formStatic2{
    background: #F9F9FB;
    margin-top: 120px;
}
.formStatic2:before{
    position: absolute;
    right: calc((100% - 1410px) / 2);
    bottom: 0;
    content: '';
    width: 427px;
    height: 430px;
    background: url(../images/decStatForm2.png) no-repeat center bottom/contain;
}


/*End formStatic*/


/*aboutCompanyBlock*/
.aboutCompanyBlock{
    margin-bottom: 70px;
}
.wrapAC{
    display: flex;
    gap: 70px;
}
.wrapAC .more{
    color: var(--colorMain);
    display: inline-block;
    margin-top: 20px;
}

.preAC{
    flex:none;
    width: 530px;
    display: grid;
    grid-template-columns: repeat(2,minmax(100px,1fr));
    grid-gap: 24px 30px;
}
.nucPreAC{
    background: #F9F9FB;
    border-left: 10px solid var(--colorMain);
    padding:24px 35px;
}
.nucPreAC .namePre{
    color: var(--colorMain);
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}



/*End aboutCompanyBlock*/

/*pgGallBlock*/
.pgGallBlock{
    margin-bottom: 70px;
}
.sliderPG{
    position: relative;
}
.sliderPG .slick-arrow{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0;
    border:none;
    border-radius: 50%;
    background-color: var(--colorMain);
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
    width: 58px;
    height: 58px;
}
.sliderPG .slick-prev{
    left: 15px;
    background-image: url(../images/arrPrev.svg);
}
.sliderPG .slick-next{
    right: 15px;
    background-image: url(../images/arrNext.svg);
}
.pgSlide img{
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1/1;

}
.pgSlide{
    padding:0 5px;
}


/*End pgGallBlock*/



/*partnersBlock*/
.partnersBlock{
    margin-bottom: 70px;
    background: #FAFAFB;
    padding:65px 0;
}
.slidePartner{
    padding:0 58px;
}
.slidePartner .imgW{
    display: flex;
    align-items: center;
    height: 100%;
}
.sliderPartners  .slick-track{
    display: flex;

}
.sliderPartners .slidePartner {
    height: auto;
}


/*End partnersBlock*/

/*photoGallBlock*/
.photoGallBlock{
    margin-bottom: 70px;
}
.wrapGall{
    display: grid;
    grid-template-columns: repeat(45,minmax(2px,1fr));
    grid-gap: 20px;
}
.wrapGall .imgW{
    display: block;
}
.wrapGall .imgW img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.wrapGall .imgW:nth-child(1),.wrapGall .imgW:nth-child(5){
    grid-column-start: span 19;
}
.wrapGall .imgW:nth-child(2),.wrapGall .imgW:nth-child(6){
    grid-column-start: span 11;
}
.wrapGall .imgW:nth-child(3),.wrapGall .imgW:nth-child(4){
    grid-column-start: span 15;
}


/*End photoGallBlock*/


/*preBlock*/
.preBlock{
    margin-bottom: 70px;

}
.wrapPre{
    display: flex;
    justify-content: space-between;
    gap: 100px;
}
.nucPre{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex:1;
}
.nucPre .imgW{
    margin-bottom: 20px;
    height: 82px;
}
.nucPre .imgW img,.nucPre .imgW svg{
    max-height: 100%;
}
.nucPre .name{
    color: var(--colorMain);
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 8px;
}
/*End preBlock*/


/*footer*/
footer{
    padding: 38px 0 63px ;
    background: #1E1E1E;
}
.topFooter{
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
    padding-bottom: 30px;
    border-bottom: 1px solid #EBEBEB;
    margin-bottom: 30px;
}
footer .infoBlock{
    display: flex;
    align-items: center;
    gap: 35px;
}
footer .phone,footer .mail{
    color: #fff;
    font-size: 20px;
    font-weight: 500;
}

.botFooter{
    display: flex;
    gap: 20px;
    justify-content: space-between;
}
.botFooter .mainServ{
    width: 450px;
}
.botFooter .name{
    color: #FFF;
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
}
.botFooter .mainServ ul{
    display: block;
    column-count: 2;
    column-gap: 40px;
}
.botFooter .mainServ ul li{ 
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 15px;
}
.botFooter .mainServ ul a{
    color: #FFF;
}
.botFooter .navF{
    color: #FFF;
    margin-bottom: 10px;
}
.botFooter .clockF{
    color: #80C625;

}
.botFooter .headMainF ul{
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 30px;
}
.botFooter .headMainF ul a{
    color: #FFF;
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
}
.botFooter .rightColF{
    max-width: 380px;
}
.rightColF .lineCont{
    margin-bottom: 15px;
    color: #FFF;
}
.rightColF .lineCont a{
    color: var(--colorMain);
    font-weight: 500;
}
.rightColF .lineCont span{
    font-weight: 500;
}
.rightColF .txt{
    color: #9A9A9A;
    margin-bottom: 20px;
}
.rightColF .links{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.rightColF .links a{
    color: #9A9A9A;
}

/*End footer*/
/*insidepage*/
.wrapContentPage ul{
    list-style-type: disc;
    padding-left: 20px;
    margin-bottom: 10px;
}
.wrapContentPage{
    padding:50px 0;
}
.insidepage .headNav{
    border-bottom: 2px solid #f9f9fb;
}
.breadcrumbs{
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
}
.breadcrumbs a span{
    color: rgba(0,0,0,.7);
    display: inline-block;
}
.breadcrumbs a span:after{
    display: inline-block;
    content: '>';
    margin:0 4px;
}
.breadcrumbs span{
    color: var(--colorMain);
}
table{
    width: 100%;
}
table td,table th{
    border:1px solid #000;
    padding:5px 10px;
}


/*End insidepage*/

/*servicePage*/
.servicePage{

}
.serviceWrapTile{
    display: grid;
    grid-template-columns: repeat(3,minmax(100px,1fr));
    grid-gap: 70px;
    margin-bottom: 80px;
}
.serviceWrapTile .nucBMIns{
    display: block;
    color: #000;
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
}
.serviceWrapTile .nucBMIns .imgW{
    height: 245px;
    display: block;
    overflow: hidden;
}
.serviceWrapTile .imgW img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:all 0.4s;
}
.serviceWrapTile .txtBlockBM{
    background: #F9F9FB;
    box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.10);
    padding: 41px 50px;
    margin:-75px 16px 0;
    display: flex; 
    flex-direction: column;
    align-items: center;
    gap: 35px;
    position: relative;
    z-index: 1;
}
.serviceWrapTile .titleLine{
 display: flex;
 gap: 20px;
 align-items: center;
}
.serviceWrapTile .name{
    text-transform: uppercase;
}
.serviceWrapTile .nucBMIns:hover{
    text-decoration: none;
}
.serviceWrapTile .nucBMIns:hover .imgW img{
    transform: scale(1.1);
}



/*End servicePage*/

/*tabsBlock*/
.tabsList{
    display: flex;
    flex-wrap: wrap;
    gap: 14px 28px;
    margin-bottom: 80px;
}
.nucTab{
    border-radius: 3px;
    background: #F9F9FB;
    padding: 10px 15px;
    font-family: Eurostile;
    font-size: 20px;
    font-weight: 700;
    transition:all 0.4s;
    cursor: pointer;
    color: #000;
}

.nucTab:hover,.nucTab.active{
    background: #80C625;
    color: #fff;
    text-decoration: none;
}
.nucTabContent{
    display: none;
}
.nucTabContent.active{
    display: block;
}


/*End tabsBlock*/
/*wrapGallTile*/
.wrapGallTile{
    display: grid;
    grid-template-columns: repeat(3,minmax(100px,1fr));
    grid-gap: 24px;
}
.wrapGallTile .imgW{
    display: block;
}
.wrapGallTile .imgW img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/*End wrapGallTile*/



/* --- Media styles --- */


@media screen and (min-width:1450px){
    .wrapper .container{
        width: 1440px;
    }



}
@media screen and (max-width:1449px){
    .logo img,.logo svg{
        width: 300px;
    }
    header .infoBlock{
        grid-gap: 10px 30px;
    }
    .wrapHeader{
        padding: 20px 0;
    }
    .nucBM .txtBlockBM{
        width: calc(100% - 180px);
        gap: 10px;
        padding: 15px;

    }
    .nucBM .name, .bigBM .name{
        font-size: 18px;
    }
    .nucBM .titleLine img, .bigBM .titleLine img,.nucBM .titleLine svg, .bigBM .titleLine svg{
        width: 34px;
    }
    .nucBM .btnStyle1{
        width: 265px;
    }
    .wrapBM{
        grid-template-columns: 410px auto;
        grid-gap: 30px;
    }
    .bigBM .linksBlock{
        padding: 15px 30px;
    }
    .nucPreAC{
        padding: 15px 20px;
    }
    .wrapPre{
        gap: 40px;
    }
    .slidePartner {
      padding: 0 20px;
  }
  .serviceWrapTile{
    gap: 40px;
    margin-bottom: 50px;
}
.serviceWrapTile .txtBlockBM{
    padding: 20px 10px;
    gap: 25px;
}

}

@media screen and (max-width:1199px){
.sliderPG .slick-arrow{
    width: 44px;
  height: 44px;
}

    .serviceWrapTile{
        grid-template-columns: repeat(2,minmax(100px,1fr));
    }
    .logo img, .logo svg {
        width: 240px;
    }
    .btnStyle1,.btnStyle2{
        font-size: 18px;
        height: 55px;
        padding: 0 15px;
    }
    header .callback-toggle {
      width: 200px;
  }
  .rightHeader{
    gap: 15px;
}
header .infoBlock {
    grid-gap: 10px 20px;
} 
.wrapHeader{
    gap: 25px;
}

.homepage .h1, .homepage h1 {
  margin-bottom: 15px;
  font-size: 36px;
}
.skewTxtBlock .txt {
  font-size: 18px;
}
.topBannerBlock .btnsBlockTB{
    margin-top: 45px;
}
.topBannerBlock .wrapPreTb{
    gap: 20px;
    margin-top: 30px;
}
.skewTxtBlock{
    width: 615px;
    padding: 45px 0;
}
.skewTxtBlock::before{
    left: -85px;
    right: -90px;
}
.nucBM .txtBlockBM{
    flex-direction: column;
    justify-content: center;
    gap: 30px;
    align-items: flex-start;
}
body{
    font-size: 14px;
}
.bannerMainBlock,.topBannerBlock,.formStatic1,.aboutCompanyBlock,.partnersBlock,.photoGallBlock,.preBlock,.pgGallBlock {
  margin-bottom: 50px;
}
.formBlock{
    padding:20px 0;
}
.partnersBlock{
    padding: 40px 0;
}
.preAC{
    width: 400px;
}
.nucPreAC {
    padding: 10px;
}
.wrapAC{
    gap: 20px;
}
.wrapPre {
    gap: 20px;
}
.formStatic2::before{
    width: 320px;
    right: calc((100% - 1240px) / 2);
}

}

@media screen and (max-width:991px){

    .serviceWrapTile{
       gap: 20px;
       margin-bottom: 30px;
   }
   .wrapGallTile{
    grid-template-columns: repeat(2,minmax(100px,1fr));
    grid-gap: 15px;
}
header .infoBlock{
    grid-template-columns: auto;
}
.headNav ul a{
    font-size: 18px;
}

.wrapBM {
    grid-template-columns: minmax(100px,1fr);
    grid-gap: 20px;
}
.formStatic1{
    background: #F9F9FB;
}
.formBlock .formWrap{
    width: 100%;
}
form .lineInputs{
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 10px;
}
.wrapAC{
    flex-direction: column;
}
.preAC {
    width: 100%;
}
.slidePartner .imgW img{
    max-width: 100%;
    max-height: 100%;
}
.slidePartner .imgW{
    height: 120px;
}
.slidePartner {
    padding: 0 10px;
}
.wrapGall{
    grid-template-columns: repeat(3,minmax(2px,1fr));
}
.wrapGall .imgW:nth-child(n){
    grid-column-start: span 1;
}
.wrapGall .imgW:nth-child(1), .wrapGall .imgW:nth-child(5){
    grid-column-start: span 2;
}
.wrapPre{
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 40px 20px;
}
.nucPre{
    width: 30%;
    flex: auto;
}
.formStatic2::before{
    display: none;
}
.botFooter{
    flex-wrap: wrap;
}
.botFooter .rightColF{
    width: 100%;
    max-width: 100%;
}
.botFooter .mainServ{
    width: 60%;
}
.botFooter .leftColF{
    width: 35%;
}
footer{
    padding:25px 0;
}
.topFooter{
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.botFooter .headMainF ul{
    gap: 10px;
}
.botFooter .headMainF ul a{
    font-size: 18px;
}
.botFooter .mainServ ul li{
    margin-bottom: 10px;
}
footer .phone, footer .mail{
    font-size: 16px;
}
.tabsList{
    gap: 10px;
    margin-bottom: 50px;
}
.nucTab{
    padding: 5px 10px;
    font-size: 16px;
} 
.formStatic2{
    margin-top: 70px;
}

}
.mobInfoMain .infoBlock{
    display: none;
}
.mobMainBtn{
    display: none;
    flex-direction: column;
    justify-content: space-between;
    padding:10px;
    width: 50px;
    height: 40px;
    background: var(--colorMain);
}
.mobMainBtn .line{
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    position: relative;
    z-index: 2;
    transition:all 0.4s;
}
.mobMainBtn .line:nth-child(2):before{
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    transition:all 0.4s;
}

@media screen and (max-width:767px){
    .wrapContentPage img{
        max-width: 100%;
        flex:none;
        margin:0 auto 20px;
        display: block;
    }
    .wrapTopBlock {
        display: block;
    }
    table{
        display: block;
        overflow: auto;
        max-width: 100%;
    }
    .mobMainBtn{
        display: flex;
    }
    .activeMain .mobMainBtn .line:nth-child(1),.activeMain .mobMainBtn .line:nth-child(3){
        opacity: 0;
    }
    .activeMain .mobMainBtn .line:nth-child(2){
        transform: rotate(-45deg);
    }
    .activeMain .mobMainBtn .line:nth-child(2):before{
        transform: rotate(90deg);
    }
    .serviceWrapTile .txtBlockBM{
        margin: -75px 0 0;
    }
    .formStatic2{
        margin-top: 40px;
    }
    .tabsList{
        gap: 5px;
        margin-bottom: 30px;
    }
    .nucTab{
        padding: 5px;
        font-size: 14px;
    }
    .wrapHeader .rightHeader{
        display: none;
    }
    header{
        position: sticky;
        z-index: 70;
        top: 0;
    }

    .headNav{
        position: fixed;
        padding:100px 0 40px;
        top: 0;
        left: 0;
        width: 100%;
        height: 100dvh;
        background: #fff;
        z-index: 15;
        transform: translateX(-110%);
        transition:all 0.4s;

    }
    .wrapHeadNav{
        display: flex;
        flex-direction: column;
        height: calc(100dvh - 140px);
        justify-content: space-between;
    }
    .mobInfoMain .infoBlock{
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    .mobInfoMain a{
        line-height: 20px;
        color: #000;
        display: inline-block;
    }
    .activeMain .headNav{
        transform: translateX(0%);
    }
    .headNav ul{
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .headNav ul li:nth-child(n) a{
        justify-content: flex-start;
        padding: 0;
    }
    .headNav ul li::before{
        display: none;
    }
    .topBannerBlock .wrapPreTb{
        flex-direction: column;
        align-items: flex-start;
    }
    .homepage .h1, .homepage h1{
        font-size: 26px;
    }
    .btnStyle1, .btnStyle2 {
        font-size: 16px;
        height: 50px;
        padding: 0 10px;
    }
    .topBannerBlock .btnsBlockTB{
        flex-direction: column;
        align-items: flex-start;
    }
    .topBannerBlock .btnsBlockTB > *{
        min-width: 320px;
    }
    .skewTxtBlock{
        width: 100%;
    }
    .skewTxtBlock::before{
        transform: skewX(0deg);
        opacity: 0.6;
    }
    .nucBM .titleLine .icon, .bigBM .titleLine .icon{
        display: none;
    }
    .nucBM .txtBlockBM{
        position: static;
        width: 100%;
        gap: 15px;
    }
    form .lineInputs{
        grid-template-columns: minmax(100px,1fr);
        grid-gap: 10px;
    }
    form input[type="text"]{
        height: 55px;
    }
    .wrapLabel span{
        font-size: 14px;
    }
    .nucBM .imgW{
        max-width: 100%;
    }
    .h2, h2, .h1, h1{
        font-size: 24px;
        margin: 0 0 30px;
    }
    .nucPre {
        width: 45%;
    }
    .botFooter .mainServ,.headMainF{
        display: none;
    }
    .botFooter .leftColF{
        width: 100%;
    }
    .topFooter{
        flex-direction: column;
        align-items: flex-start;
    }
    .rightColF .txt{
        margin-bottom: 10px;
    }
    .wrapHeader {
        padding: 5px 0;
    }

}

@media screen and (max-width:675px){

}
@media screen and (max-width:640px){

}
@media screen and (max-width:600px){
    .wrapGallTile{
        grid-template-columns: repeat(1,minmax(100px,1fr));
        grid-gap: 10px;
    }
    .wrapGall {
        grid-template-columns: repeat(1,minmax(2px,1fr));
    }
    .wrapGall .imgW:nth-child(n) {
        grid-column-start: span 1;
    }
    .serviceWrapTile {
        grid-template-columns: repeat(1,minmax(100px,1fr));
    }


}
@media screen and (max-width:485px){
    .bigBM .linksBlock{
        margin: -125px 0px 0;
    }
    .preAC{
        grid-template-columns: repeat(1,minmax(100px,1fr));
    }
    .slidePartner .imgW {
        height: 100px;
    }
}
@media screen and (max-width:425px){}
@media screen and (max-width:400px){
    footer .infoBlock{
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }
}
@media screen and (max-width:370px){
}