* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    font-family: 'Roboto', sans-serif;
}

.wrapper {
    position: relative;
}

.main {
    position: relative;
    width: 100%;
    min-height: 100vh;
    background: url('../images/bgdark.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 199;
}

.main::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    min-height: 100vh;
    backdrop-filter: blur(10px);
}

.main__header {
    position: relative;
    padding-top: 40px;
    max-width: 1170px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 94px;
    z-index: 999;
}

.mainpage {
    flex: 33%;
}

.logo {
    width: 160px;
    height: 80px;
}

.main__nav {
    flex: 66%;
    /* text-align: center; */
    white-space: nowrap;
    position: relative;
}

/* --------burger */
.menu {
    position: relative;
    /* display: none; */
    display: flex;
    justify-content: center;
    align-items: center;
    
}

.menu__btn{
    display: none;
    width: 50px;
    height: 50px;
    background-color: #fff;
    border-radius: 50%;
    position: relative;
    
    
    /* box-shadow: 0px 0px 15px #fff; */
}
.menu__btn span,
.menu__btn span::before,
.menu__btn span::after {
    position: absolute;
    width: 20px;
    height: 2px;
    top: 50%;
    margin-top: -1px;
    left: 50%;
    margin-left: -10px;
    background-color: #222;
    transition: .5s;
}
.menu__btn span::before,
.menu__btn span::after {
    content: '';

}
.menu__btn span::before{
    transform: translateY(-5px);
}
.menu__btn span::after{
    transform: translateY(5px);
}

.menu__active {
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0.7;
}
/* burger----- */

.main__nav-link {
    font-weight: 500;
    font-size: 1em;
    line-height: 26px;
    text-decoration: none;
    color: #fff;
    padding: 2px;
    margin-right: 105px;
    border: 2px solid transparent;
    transition: .4s ease-in;
}

.main__nav-link:last-child{
    margin-right: 0;
}

.main__nav-link:hover{
    border-bottom: 2px solid #fff;
}

.main__body {
    display: flex;
    flex-direction: column;
    position: relative;
    max-width: 1170px;
    width: 90%;
    margin: 0 auto;
    justify-content: flex-start;
    z-index: 999;
    padding-left: 44px;
}

.main__body::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 80%;
    background-color: #fff;
}

.main__body-title {
    font-size: 30px;
    color: #fff;
    max-width: 45%;
    margin-bottom: 15px;
    width: 350px;
}

.main__body-description {
    font-family: serif;
    color: #e4e4e4;
    max-width: 45%;
    width: 350px;
    font-size: 22px;
    line-height: 28px;
    margin-bottom: 25px;
}

.main__btn {
    position: relative;
    width: 190px;
    height: 60px;
    display: inline-flex;
    align-items: center;
    background-color: transparent;
    padding: 15px 23px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: 20px;
    line-height: 23px;
    text-decoration: none;
    border: 2px solid #fff;
    margin-bottom: 30px;
    transition: .4s ease-in;
    white-space: nowrap;
}

.main__btn:hover{
    background-color: #fff;
    color: #000;
    padding: 15px 40px;
}


.icon-arrow:hover{
    display: block;
}

.icon-arrow {
    fill: #fff;
    margin-left: 15px;
    transition: .8s ease-out;
    /* display: none; */
}


/* ----------------------- */

.about {
    margin-top: 69px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.about-title {
    margin-bottom: 32px;
    font-weight: 500;
    font-size: 45px;
    line-height: 53px;
    color: #29426d; 
}

.about-description {
    color: rgba(0, 0, 0, 0.7);
    font-weight: 300;
    font-size: 20px;
    line-height: 26px;
    max-width: 965px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 38px;
    width: 80%;
}


.btn-about {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-weight: 500;
    font-size: 20px;
    line-height: 23px;
    color: #101a2b;
    padding: 15px 34px;
    border: 2px solid #101a2b;
    margin-bottom: 47px;
    transition: .4s;
}

.btn-about:hover{
    background-color: #101a2b;
    color: #fff;
}



/* ------------- */
.footer {
    background-color: #101a2b;
    padding-bottom: 30px;
    position: relative;
}

.container {
    max-width: 1170px;
    width: 90%;
    margin: 0 auto;
}

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

.footer-text {
    flex: 0 1 33.333%;
    font-weight: normal;
    font-size: 25px;
    line-height: 29px;
    text-decoration-line: underline;
    color: #fff;
}

.footer__second {
    flex: 0 1 33.333%;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: space-between;
}

.logo-footer {
    margin-top: 37px;
    margin-bottom: 60px;
}

.socials 

.footer__social-link {
    text-decoration: none;
    margin-right: 20px;
}

.icon {
    width: 40px;
    height: 40px;
    fill: #fff;
    transition: .4s ease-in-out;
}


.icon:hover {
    fill: #7c7c7c;
}

.icon:last-child{
    margin-right: 0;
}


.footer-contacts {
    flex: 0 1 33.333%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    text-align: right;

}

.footer-contact:hover{
    text-decoration: underline;
}

.email {
    text-decoration: none;
    color: #fff;
    font-size: 20px;
    line-height: 23px;
    margin-bottom: 12px;
}

.email2 {
    text-decoration: none;
    color: #fff;
    font-size: 20px;
    line-height: 23px;
    margin-bottom: 12px;
}

.phone {
    text-decoration: none;
    color: #fff;
    font-size: 20px;
    line-height: 23px;
}


/* ----адаптив------ */

@media (max-width: 1065px) {
    .footer-contact {
        font-size: 16px;
    }
    .footer-text{
        font-size: 20px;
    }
}

@media (max-width: 940px) {
    .main__body-title {
        font-size: 25px;
    }
    .main__body-description {
        font-size: 20px;
    }
    .logo{
        width: 120px;
        height: 60px;
    }
    .mainpage {
        flex: 28%;
    }
    
    .main__nav {
        flex: 72%;
        /* text-align: center; */
        white-space: nowrap;
        
    }
}

@media (max-width: 846px) {
    .mainpage {
        flex: 25%;
    }
    
    .main__nav {
        flex: 75%;
        white-space: nowrap;
    }
    .main__body-title {
        font-size: 22px;
    }
    .main__body-description {
        font-size: 20px;
        width: 250px;
    }
    .main__btn{
        width: 150px;
        height: 50px;
        font-size: 16px;
    }
    .icon-arrow {
        position: absolute;
        top: 30%;
        right: 10%;
        width: 30px;
        transition: .4s ease-out;
        /* border: 1px solid #fff; */
    }
    .main__btn:hover{
        background-color: #fff;
        color: #000;
        padding: 15px 30px;
    }
}
@media (max-width: 768px) {
    .mainpage {
        flex: 22%;
    }
    
    .main__nav {
        flex: 78%;
        white-space: nowrap;
    }
    .about-title {
        font-size: 30px;
    }
    .about-description {
        font-size: 16px;
    }
    .btn-about {
        text-decoration: none;
        display: inline-block;
        font-weight: 500;
        font-size: 16px;
        line-height: 21px;
        /* color: #50849C; */
        color: #101a2b;
        padding: 13px 30px; 
    }
    .button-contact{
        margin-right: 0;
    }
    .button-products{
        margin-left: 15px;
    }
}
@media (max-width: 700px) {
    .main__nav {
        position: fixed;
        top: 0;
        left: 0;
        /* transform: translate(-50%, -50%); */
        background-color: rgb(1, 18, 90);
        width: 100%;
        height: 100vh;
        flex-direction: column;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        clip-path: circle(100px at 110% -20%);
        -webkit-clip-path: circle(100px at 110% -20%);
        -o-clip-path: circle(100px at 110% -20%);
        -moz-clip-path: circle(100px at 110% -20%);
        -ms-clip-path: circle(100px at 110% -20%);
        transition: .5s ease-out;
        font-size: 26px;
        z-index: 99;
        
    }
    .main__nav-link{
        margin-right: 0;
        margin-bottom: 50px;
    }
    .main__nav.active{
        clip-path: circle(1000px at 50% -10%);
        -webkit-clip-path: circle(1000px at 50% -10%);
        -o-clip-path: circle(1000px at 50% -10%);
        -moz-clip-path: circle(1000px at 50% -10%);
        -ms-clip-path: circle(1000px at 50% -10%);
    }
    .menu{
        display: inline;
        z-index: 9999;
    }
    .main::before{
        backdrop-filter: blur(0px);
    }
    .main__body{
        z-index: 10;
        padding-left: 0;
    }
    .main__body-title{
        max-width: 100%;
        text-align: center;
        margin: 0 auto;
        position: relative;
        font-size: 32px;
        margin-bottom: 15px;
    }

    .main__body-description{
        max-width: 100%;
        width: 80%;
        margin: 0 auto;
        text-align: center;
        font-size: 26px;
        margin-bottom: 25px;
    }
    .main__header{
        margin-bottom: 50px;
    }
    .logo {
        width: 200px;
        height: 100px;
    }

    .main__body::before{
        content: '';
        width: 0;
        height: 0;
        display: none;
    }
    .main__btn{
        position: relative;
        max-width: 100%;
        width: 45%;
        text-align: center;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
    .menu__btn{
        display: block;
        outline: none;
    }
    
    .menu__btn.active span::before{
        transform: rotate(35deg);
        width: 10px;
        transform-origin: left bottom;
    }
    .menu__btn.active span::after{
        transform: rotate(-35deg);
        width: 10px;
        transform-origin: left top;
    }
    .footer-text {
        font-size: 16px;
        width: 100px;
        order: 2;
        text-align: center;
        visibility: hidden;
        opacity: 0;
    }
    .footer__second{
        order: 1;
    }
    .footer-contacts{
        order: 3;
    }
    .footer-contact{
        margin-bottom: 20px;
    }
    .about-description{
        color: #000;
    }
    .footer-contact:last-child{
        margin-bottom: 0;
    }
    .socials{
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translate(-50%, -10px);
    }


}

@media (max-width: 510px) {
    .footer__second{
        flex-basis: 50%;
    }
    .footer__row{
        display: flex;
        flex-direction: row;
    }
    .logo-footer{
        width: 100px;
        height: 70px;
    }
    .footer-contacts{
        flex-basis: 50%;
        font-size: 14px;
        justify-content: flex-start;
    }
    .footer-contact{
        font-size: 12px;
    }
    .socials{
        position: absolute;
        bottom: 0;
        left: 130px;
    }
    .btn-about{
        font-size: 14px;
    }

}

@media (max-width: 430px) {
    .icon-arrow{
        width: 15px;
    }
    .main__body-title{
        font-size: 28px;
    }
    .main__body-description{
        font-size: 22px;
    }
}

@media (max-width: 365px) {
    .footer-contacts{
        text-align: right;
    }
    .logo-footer{
        position: absolute;
        top: 0;
        left: 10px;
    }
    .footer-text{
        order: 0;
    }
    .logo{
        width: 120px;
        height: 60px;
    }
}