@font-face{
    font-family:"Montserrat";
    font-display:swap;
    src:url("../fonts/Montserrat-Light.ttf");
    font-weight:300;
    font-style:normal
}
@font-face{
    font-family:"Montserrat";
    font-display:swap;
    src:url("../fonts/Montserrat-Regular.ttf");
    font-weight:400;
    font-style:normal
}
@font-face{
    font-family:"Montserrat";
    font-display:swap;
    src:url("../fonts/Montserrat-Medium.ttf");
    font-weight:500;
    font-style:normal
}
@font-face{
    font-family:"Montserrat";
    font-display:swap;
    src:url("../fonts/Montserrat-SemiBold.ttf");
    font-weight:600;
    font-style:normal
}
*{
    font-family:"Montserrat",sans-serif;
    margin:0;
    padding:0
}
html{
    position:relative;
    max-width:100%
}
.container{
    max-width:1200px;
    margin:0 auto
}
.title{
    position:relative;
    font-weight:600;
    font-size:24px;
    text-align:center;
    color:#5e5e5e
}
.title__about{
    text-align:left
}
.title__about::after{
    content:"";
    position:absolute;
    width:69px;
    height:5px;
    left:0;
    top:47px;
    background:#fdac0f
}
.title__page{
    margin-top:34px;
    text-align:left
}
.title__page::after{
    content:"";
    position:absolute;
    width:64px;
    height:3px;
    left:145px;
    top:30px;
    background:#fdac0f
}
.button{
    width:240px;
    height:38px;
    background:#fdac0f;
    font-weight:600;
    font-size:14px;
    line-height:17px;
    text-align:center;
    color:#fff;
    border:none;
    cursor:pointer
}
.button__services{
    display:flex;
    justify-content:center;
    align-items:center;
    width:158px;
    height:42px;
    position:relative;
    margin-top:18px;
    margin-left:135px;
    background-color:#fff;
    border:1px solid #e5e5e5;
    border-right:none;
    font-weight:500;
    font-size:12px;
    line-height:15px;
    color:#fdac0f;
    transition:color .5s
}
.button__services::after{
    content:url(../icon/logo_btn.svg);
    height:42px;
    position:absolute;
    right:-8px;
    top:1.5px
}
.button__services:hover{
    width:167px;
    background-color:#fdac0f;
    border:1px solid #e5e5e5;
    color:#fff
}
.button__services:hover::after{
    right:0
}
.button__footer{
    position:relative;
    background:none;
    width:235px;
    height:49px;
    padding-top:0;
    margin-bottom:50px;
    border:1px solid #e5e5e5;
    font-weight:400;
    font-size:20px;
    color:#c4c4c4
}
.header{
    max-width:100%;
    height:197px;
    background:url(../img/header_bg.jpg) center center/cover no-repeat
}
.header__top{
    height:115px;
    padding:0 10px;
    background:rgba(1,12,69,.75);
    mix-blend-mode:normal
}
.header__contacts{
    width:785px;
    display:flex;
    justify-content:space-between;
    align-items:center
}
.header__contact{
    margin-top:55px;
    display:flex;
    align-items:center;
    gap:5px
}
.header__contact a{
    font-weight:500;
    font-size:14px;
    color:#fff;
    text-decoration:none
}
.header__bottom{
    height:82px;
    background:rgba(255,255,255,.9)
}
.header__hamburger{
    display:none
}
.header__nav{
    padding:13px 10px 0 10px;
    display:flex;
    justify-content:space-between;
    align-items:center
}
.header__links{
    display:flex;
    justify-content:center;
    gap:35px
}
.header__link{
    margin-right:15px;
    font-weight:500;
    font-size:14px;
    line-height:17px;
    color:#5e5e5e;
    text-decoration:none
}
.header__link:hover{
    text-decoration:underline;
    color:#1129a6
}
.header__overlay{
    display:none;
    position:fixed;
    top:0;
    left:0;
    height:100vh;
    width:100vw;
    background-color:rgba(255,255,255,.9);
    z-index:5
}
.header__menu{
    display:none;
    height:100%;
    width:95%;
    position:fixed;
    top:0;
    left:0;
    background-color:rgba(253,172,15,.9);
    z-index:10;
    transition:all 1s
}
.header__close{
    position:absolute;
    top:1px;
    right:20px;
    font-size:70px
}
.header__wrapper{
    padding:120px 50px;
    height:300px;
    display:flex;
    flex-direction:column;
    justify-content:space-between
}
.header__wrapper a{
    font-size:32px
}
.promo{
    max-width:100%;
    min-height:674px;
    background:url(../img/promo_bg.jpg) center center/cover no-repeat
}
.promo__main-logo{
    display:block;
    margin:0 auto;
    padding-top:110px;
    width:182px;
    height:238px
}
.promo__icons{
    margin-top:77px;
    padding:0 10px;
    display:flex;
    justify-content:space-between;
    align-items:center
}
.promo__icon{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center
}
.promo__icon-img{
    max-width:120px;
    max-height:88px
}
.promo__icon-text{
    margin-top:10px;
    font-weight:600;
    font-size:14px;
    line-height:17px;
    text-align:center;
    color:#fff
}
.services{
    margin-top:61px
}
.services__wrapper{
    margin-top:51px;
    margin-left:30px;
    display:flex;
    justify-content:space-around;
    align-items:flex-start;
    gap:20px
}
.services__item{
    position:relative;
    width:362px;
    min-height:210px;
    box-sizing:border-box;
    border:2px solid #f3f1f1;
    padding:29px 30px 35px 25px
}
.services__item::before{
    content:"";
    position:absolute;
    top:-2px;
    left:-2px;
    border:60px solid rgba(0,0,0,0);
    border-left:60px solid #fdac0f;
    border-top:60px solid #fdac0f
}
.services__item:hover{
    border:7px solid #f3f1f1;
    padding:24px 25px 30px 20px
}
.services__item:hover::before{
    top:-7px;
    left:-7px
}
.services__top{
    display:flex;
    justify-content:left;
    align-items:center
}
.services__img{
    height:150px;
    margin-left:0
}
.services__subtitle{
    font-weight:600;
    font-size:20px;
    line-height:24px;
    color:#5e5e5e
}
.services__text{
    margin-top:15px;
    margin-bottom:18px;
    font-weight:500;
    font-size:14px;
    line-height:17px;
    color:#5e5e5e
}
.about{
    margin-top:95px;
    padding-top:83px;
    min-height:662px;
    background:url(../img/about_all.png) center center/cover no-repeat
}
.about__wrapper{
    width:570px;
    margin-left:auto
}
.about__text{
    margin-top:50px;
    font-weight:500;
    font-size:14px;
    line-height:22px;
    color:#313030
}
.partners{
    margin-top:110px
}
.partners__wrapper{
    margin:77px 10px 220px 10px;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    align-content:center;
    justify-content:space-between;
    gap:10px
}
.partners__item{
    width:18%;
    display:flex;
    align-items:center
}
.partners__item img{
    width:100%
}
.footer{
    background:url(../img/footer.jpg) center center/cover no-repeat;
    padding:0 0px
}
.footer-overlay{
    background-color:rgba(0,0,102,.5);
    padding:0 20px
}
.footer__top{
    padding-top:30px;
    display:flex;
    align-items:center;
    gap:15px
}
.footer__logo{
    display:flex;
    justify-content:center;
    align-items:center
}
.footer__devider{
    width:0px;
    height:80px;
    border:1px solid #b6b8c0
}
.footer__contacts{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:65px
}
.footer__contact{
    display:flex;
    align-items:center;
    gap:5px
}
.footer__contact a{
    font-weight:400;
    font-size:14px;
    color:#c4c4c4;
    text-decoration:none
}
.footer__bottom{
    display:flex;
    justify-content:right;
    gap:150px;
    margin-top:42px
}
.footer__links{
    display:flex;
    gap:30px
}
.footer__link{
    position:relative;
    font-weight:400;
    font-size:20px;
    line-height:24px;
    color:#c4c4c4;
    text-decoration:none
}
.footer__link:hover{
    font-weight:500;
    text-decoration-line:underline;
    color:#fff
}
.feedback{
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:100vh;
    background-color:rgba(41,48,73,.4588235294);
    opacity:0;
    transition:.3s
}
.feedback.active{
    z-index:2;
    opacity:1
}
.feedback form{
    display:flex;
    flex-direction:column;
    align-items:center;
    width:320px;
    height:100%;
    padding: 5px;
    background-color:rgba(4,3,58,.8980392157)
}
.feedback form .feedback-form-close{
    align-self:flex-end;
    margin-top:10px;
    margin-right:10px;
    font-size:30px;
    color:#fff;
    background-color:rgba(0,0,0,0);
    border:none;
    cursor:pointer
}
.feedback form .feedback-form-input{
    margin-bottom:10px;
    padding:0px 10px;
    width:274px;
    height:48px;
    color:#fff;
    background-color:#031557;
    border:none
}
.wpcf7-spinner {
    display: none !important;
}
.wpcf7 form .wpcf7-response-output {
    color: #fff !important;
    margin: 2px !important;
    text-align: center !important;
    padding: 2px !important;
    font-size: 12px !important;
}
.feedback form .feedback-form-textarea{
    margin-bottom:10px;
    padding:10px 10px;
    width:274px;
    height:99px;
    color:#fff;
    background-color:#031557;
    border:none;
    resize:none
}
.feedback form .feedback-form-button{
    margin-bottom:10px;
    width:100%;
    height:38px;
    font-size:17px;
    font-weight:700;
    color:#fff;
    background:#fdac0f;
    border:none;
    cursor:pointer
}
.feedback form .feedback-form-confidential{
    text-align:center;
    color:#fff
}
.feedback-success{
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:100vh;
    background-color:rgba(41,48,73,.4588235294);
    opacity:0;
    transition:.4s
}
.feedback-success.active{
    z-index:3;
    opacity:1
}
.feedback-success-close{
    align-self:flex-end;
    font-size:30px;
    color:#000;
    background-color:rgba(0,0,0,0);
    border:none;
    cursor:pointer
}
.feedback-success-list{
    display:flex;
    flex-direction:column;
    width:520px;
    min-height:120px;
    padding:20px;
    background-color:#fff;
    border-radius:10px;
    list-style:none
}
.feedback-success-list-item{
    font-size:20px;
    font-weight:500
}
.advert{
    height:42px;
    background:#f3f1f1
}
.advert__wrapper{
    padding:10px 60px;
    display:flex;
    justify-content:space-between
}
.advert__wrapper a{
    text-decoration:none;
    font-weight:300;
    font-size:12px;
    color:#006
}
.page-about{
    width:100%
}
.page-about__wrapper{
    margin-top:100px;
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap:60px;
    margin-bottom:80px
}
.page-about__img{
    position:relative;
    max-width:896px;
    width:50%
}
.page-about__crane{
    width:100%
}
.page-about__logo{
    position:absolute;
    right:21px;
    top:13px;
    width:73px
}
.page-about__descr{
    width:50%;
    max-width:609px
}
.page-about__subtitle{
    margin-top:20px
}
.page-about__text{
    margin-top:44px;
    font-weight:500;
    font-size:14px;
    line-height:22px;
    color:#313030
}
.page-services__wrapper{
    margin-top:100px;
    margin-bottom:80px;
    display:flex;
    flex-direction:column;
    align-items:center
}
.page-services__item{
    display:flex;
    justify-content:start;
    align-items:center;
    gap:60px
}
.page-services__img{
    max-width:896px;
    display:flex
}
.page-services__img img{
    width:100%
}
.page-services__descr{
    position:relative;
    width:600px
}
.page-services__descr::before{
    content:"";
    position:absolute;
    top:0;
    left:-60px;
    border:60px solid rgba(0,0,0,0);
    border-left:60px solid #fdac0f;
    border-top:60px solid #fdac0f
}
.page-services__top{
    display:flex;
    align-items:center;
    margin-left:37px
}
.page-services__logo{
    height:95px
}
.page-services__subtitle{
    font-weight:600;
    font-size:15px;
    color:#5e5e5e;
    margin-left:15px;
    text-transform:uppercase
}
.page-services__text{
    font-size:14px;
    line-height:22px;
    margin-top:3px;
    color:#313030
}
.page-services .button__services{
    margin-left:0;
    width:300px
}
.page-contacts__wrapper{
    margin:0 auto;
    margin-top:100px;
    margin-bottom:150px;
    display:flex;
    justify-content:flex-start;
    align-items:center;
    flex-direction:column
}
.page-contacts__item{
    height:100%;
    width:676px;
    display:flex;
    justify-content:start;
    align-items:center;
    margin: 7px 0;
}
.page-contacts__subtitle{
    margin-left:7px;
    width:200px;
    font-weight:600;
    font-size:15px;
    color:#5e5e5e
}
.page-contacts__content{
    position:relative;
    margin-left:50px;
    font-weight:600;
    font-size:15px;
    width: 430px;
    color:#5e5e5e
}
.page-contacts__requisites{
    max-width:504px;
    display:block;
    position:absolute;
    top:-15px;
    left:0
}
.page-contacts__devider{
    width:676px;
    height:1px;
    background-color:#e5e5e5
}
.page-projects__wrapper{
    margin-top:100px;
    margin-bottom:80px;
    display:flex;
    flex-direction:column;
    align-items:center
}
.page-projects__item{
    display:flex;
    justify-content:start;
    align-items:flex-start;
    gap:60px
}
.page-projects__img{
    position:relative;
    max-width:896px;
    display:flex
}
.page-projects__house{
    width:100%
}
.page-projects__logo{
    position:absolute;
    right:21px;
    top:13px;
    width:73px
}
.page-projects__descr{
    max-width:600px
}
.page-projects__subtitle{
    margin-top:20px
}
.page-projects__text{
    margin-top:44px;
    font-weight:500;
    font-size:14px;
    line-height:22px;
    color:#313030
}
.wpcf7-form-control-wrap {
    text-align: center;
}

@media(max-width: 1200px){
    .container{
        max-width:960px
    }
    .button__message{
        width:210px
    }
    .button__services{
        margin-left:90px
    }
    .header__links{
        gap:20px
    }
    .services__item{
        width:300px;
        min-height:100px
    }
    .services__top{
        margin-left:30px
    }
    .services__img{
        height:150px;
        margin-left:-35px
    }
    .services__subtitle{
        font-size:16px
    }
    .about__wrapper{
        width:500px
    }
    .footer__logo img{
        width:250px
    }
    .footer__contacts{
        justify-content:center;
        align-items:center;
        gap:20px
    }
    .footer__contact{
        width:100%
    }
}
@media(max-width: 992px){
    .container{
        max-width:720px
    }
    .button__message{
        width:130px;
        height:38px;
        font-size:11px
    }
    .button__services{
        margin-left:10px
    }
    .button__footer{
        display:block;
        position:absolute;
        right:30px;
        top:-80px;
        width:200px;
        height:35px;
        margin-bottom:0;
        font-size:14px
    }
    .header__contacts{
        width:600px
    }
    .header__contact{
        max-width:230px;
        margin-top:50px
    }
    .header__contact a{
        font-size:12px
    }
    .header__nav{
        padding-top:21px
    }
    .header__nav img{
        width:180px
    }
    .header__link{
        font-weight:500;
        font-size:11px
    }
    .promo{
        transform:translateY(-1px)
    }
    .promo__icon{
        max-width:200px
    }
    .services__item{
        width:230px;
        min-height:100px;
        padding:6px 10px 20px 15px
    }
    .services__item:hover{
        padding:1px 5px 15px 10px
    }
    .services__top{
        flex-direction:column;
        gap:10px;
        justify-content:start;
        align-items:center
    }
    .services__img{
        margin-left:-20px
    }
    .services__subtitle{
        height:48px
    }
    .about__wrapper{
        width:400px
    }
    .footer__contacts{
        flex-direction:column;
        gap:5px
    }
    .footer__contact-img{
        width:20px
    }
    .footer__bottom{
        display:block;
        position:relative;
        gap:50px
    }
    .footer__links{
        justify-content:center;
        padding-bottom:30px
    }
}
@media(max-width: 768px){
    .container{
        max-width:540px
    }
    .title__about::after{
        top:37px
    }
    .button__message{
        width:220px;
        font-weight:600;
        font-size:13px;
        margin-left:40px;
        margin-right:auto
    }
    .button__services{
        margin-left:135px
    }
    .button__footer{
        left:20px;
        top:-70px;
        width:150px;
        height:32px;
        font-size:12px
    }
    .header__contacts{
        width:100%
    }
    .header__contact a{
        font-size:11px
    }
    .header__bottom{
        position:relative
    }
    .header__hamburger{
        display:block;
        position:absolute;
        transform:rotate(90deg);
        top:13px;
        right:25px;
        font-size:45px;
        font-weight:600;
        color:#006;
        cursor:pointer
    }
    .header__link_menu::after{
        content:""
    }
    .header__menu-links{
        display:none
    }
    .header__menu-link{
        padding:20px 5px
    }
    .header__menu{
        display:none
    }
    .header__wrapper{
        padding:120px 50px;
        height:300px;
        display:flex;
        flex-direction:column;
        justify-content:space-between
    }
    .header__wrapper a{
        font-size:32px;
        font-weight:600
    }
    .promo__icon-img{
        max-width:90px
    }
    .promo__icon-text{
        font-size:11px
    }
    .services__wrapper{
        flex-direction:column;
        justify-content:flex-start;
        align-items:center;
        margin-left:0
    }
    .services__item{
        width:362px;
        box-sizing:border-box;
        border:2px solid #f3f1f1;
        padding:29px 30px 35px 25px
    }
    .services__item:hover{
        padding:24px 25px 30px 20px
    }
    .services__top{
        flex-direction:column;
        gap:10px;
        justify-content:start;
        align-items:center
    }
    .services__img{
        margin-left:-20px
    }
    .services__subtitle{
        height:48px
    }
    .about{
        padding-top:0
    }
    .about__wrapper{
        width:300px
    }
    .about__text{
        margin-top:25px;
        line-height:18px
    }
    .partners__wrapper{
        margin-bottom:80px
    }
    .footer__top{
        align-items:start
    }
    .footer__logo img{
        width:180px
    }
    .footer__contact-img{
        width:17px
    }
    .footer__link{
        font-size:16px
    }
    .advert__wrapper{
        padding:10px 10px;
        flex-direction:column;
        justify-content:center;
        align-items:center
    }
    .advert__wrapper a{
        font-size:10px
    }
}
@media(max-width: 576px){
    .container{
        width:100%;
        padding:0 0px;
        margin:0
    }
    .button__message{
        position:absolute;
        top:-50px;
        right:10px;
        width:150px;
        font-size:11px
    }
    .button__services{
        margin-left:70px
    }
    .button__footer{
        position:static;
        display:block;
        margin:10px auto
    }
    .title__page{
        font-size:20px
    }
    .title__page::after{
        left:120px
    }
    .header__top{
        height:115px
    }
    .header__contacts{
        padding-top:15px;
        max-width:290px;
        flex-direction:column;
        justify-content:center;
        align-items:flex-start
    }
    .header__contact{
        max-width:290px;
        margin-top:10px;
        height:15px
    }
    .header__contact img{
        height:15px;
        width:15px
    }
    .header__contact a{
        font-size:10px
    }
    .promo__icons{
        margin-top:35px;
        display:grid;
        grid-template:repeat(2, auto)/repeat(2, 135px);
        justify-content:space-around;
        align-items:center
    }
    .services__item{
        width:290px
    }
    .about{
        background-position:right
    }
    .about__wrapper{
        margin:0 auto
    }
    .partners{
        margin-top:30px;
        margin-bottom:10px
    }
    .partners__wrapper{
        margin-top:40px;
        margin-bottom:60px
    }
    .partners__item{
        width:28%
    }
    .footer__top{
        display:block;
        padding:10px
    }
    .footer__devider{
        display:none
    }
    .footer__contacts{
        margin-top:10px
    }
    .footer__bottom{
        margin-top:5px;
        padding-bottom:5px
    }
    .footer__links{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:5px;
        padding-bottom:5px
    }
}
@media(max-width: 1920px){
    .page-about__wrapper{
        justify-content:start
    }
    .page-services__wrapper{
        align-items:flex-start
    }
    .page-services__item{
        width:100%
    }
    .page-services__text{
        padding-right:10px
    }
    .page-projects__wrapper{
        align-items:flex-start
    }
    .page-projects__item{
        width:100%
    }
    .page-projects__text{
        padding-right:10px
    }
}
@media(max-width: 1500px){
    .page-about__img{
        margin-top:85px
    }
    .page-services__item{
        margin-bottom:50px
    }
    .page-services__img{
        width:60%
    }
    .page-services__descr{
        width:40%
    }
    .page-projects__item{
        margin-bottom:50px
    }
    .page-projects__img{
        width:60%
    }
    .page-projects__descr{
        width:40%
    }
}
@media(max-width: 1200px){
    .page-about__wrapper{
        flex-direction:column;
        justify-content:center;
        align-items:center;
        align-content:center;
        gap:30px;
        margin-top:20px
    }
    .page-about__img{
        width:90%
    }
    .page-about__descr{
        max-width:800px;
        width:80%
    }
    .page-services__wrapper{
        margin-top:100px;
        margin-bottom:80px;
        display:flex;
        flex-direction:column;
        align-items:center
    }
    .page-services__item{
        flex-direction:column;
        justify-content:flex-start;
        align-items:center;
        gap:0;
        margin-bottom:70px;
        width:896px
    }
    .page-services__img{
        width:100%
    }
    .page-services__descr{
        width:100%
    }
    .page-services__descr::before{
        top:0;
        left:0
    }
    .page-services__top{
        margin-left:60px;
        margin-top:35px
    }
    .page-services__text{
        margin-top:15px
    }
    .page-projects__wrapper{
        align-items:center
    }
    .page-projects__item{
        width:896px;
        flex-direction:column;
        justify-content:flex-start;
        align-items:center;
        gap:0;
        margin-bottom:70px
    }
    .page-projects__img{
        width:100%
    }
    .page-projects__descr{
        max-width:100%;
        width:90%
    }
}
@media(max-width: 992px){
    .page-services__item{
        width:90%
    }
    .page-projects__item{
        width:90%
    }
    .page-contacts__requisites{
        max-width:440px
    }
}
@media(max-width: 768px){
    .page-contacts__item{
        width:550px
    }
    .page-contacts__subtitle{
        width:150px
    }
    .page-contacts__content{
        width:400px
    }
    .page-contacts__requisites{
        top:20px;
        left:-90px
    }
    .page-contacts__devider{
        width:500px
    }
}
@media(max-width: 576px){
    .page-about__logo{
        width:45px
    }
    .page-services__descr::before{
        content:"";
        border:40px solid rgba(0,0,0,0);
        border-left:40px solid #fdac0f;
        border-top:40px solid #fdac0f
    }
    .page-services__top{
        margin-top:20px;
        margin-left:40px
    }
    .page-services__logo{
        height:75px
    }
    .page-services__subtitle{
        font-size:13px
    }
    .page-projects__wrapper{
        margin-top:60px
    }
    .page-projects__logo{
        width:45px
    }
    .page-projects__text{
        margin-top:20px
    }
    .page-contacts__wrapper{
        margin:0;
        margin-top:50px;
        margin-bottom:140px
    }
    .page-contacts__item{
        position:relative;
        height:100%;
        padding:10px 5px;
        flex-direction:column;
        align-items:flex-start;
        width:92%
    }
    .page-contacts__icon{
        position:absolute;
        top:9px;
        left:0
    }
    .page-contacts__subtitle{
        margin-left:50px;
        width:80%
    }
    .page-contacts__content{
        margin-top:7px;
        width:75%
    }
    .page-contacts__requisites{
        max-width:90%;
        top:0;
        left:0
    }
    .page-contacts__devider{
        width:90%
    }
}
/*# sourceMappingURL=style.min.css.map */
