* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;

}

body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    line-height: 1;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;

}

body._lock {
    overflow: hidden;
}

ul, ol, li {
    list-style: none;
}

a {
    text-decoration: none;
    text-shadow: 1px 1px 4px #af9999, 1px 1px 1em #fffdfd;
    color: #000;
}

*, *::before, *::after {
    padding: 0;
    margin: 0;
    border: 0;
    box-sizing: border-box;
}

ul, ol, li {
    list-style: none;
}

input {
    width: 100%;
    height: 30px;
    padding: 20px;
    border-radius: 5px;
    font-size: 17px;
}

.main {
    width: 1140px;
}

header#header {
    display: flex;
    height: 165px;
    width: 100%;
    justify-content: center;
    background-color: #FFFFFF;
    background-image: url(../img/menu.jpg);
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: cover;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
    z-index: 99;
    position: fixed;
    top: 0;
}

.header .main {
    display: flex;
    height: inherit;
    justify-content: center;
    align-items: center;
    justify-content: space-between;
}

img.logo {
   width: 8%;
}

img.logo2 {
   width: 80%;
   margin-left: 15px;
}

.logo2_mobile {
    display: none;
}

.gps {
    display: flex;
    justify-content: center;
    margin: 10px 0px;
    align-items: center;
}

.gps:hover {
    color: green;
}

.gps img {
    margin-right: 10px;
}

.menu__list {
    display: flex;
    align-items: center;
}

.menu__list > li {
    padding: 13px 0;
}

.menu__link {
    font-size: 18px;
}

a.menu__link {
    padding: 10px 15px;
    transition: all 0.3s ease 0s;
}

a.menu__link:hover {
    font-size: 20px;
}

@media (max-width: 1024px) {
    .menu__icon {
        z-index: 5;
        display: block;
        position: absolute;
        width: 40px;
        height: 40px;
        cursor: pointer;
        background: black;
        padding: 5px;
        border-radius: 5px;
        right: 10px;
        top: 7px;
        box-shadow: 1px 1px 4px #ffffff, 1px 1px 1em #fffdfd;
    }


    .menu__icon span, .menu__icon::before, .menu__icon::after {
        content: "";
        left: 6px;
        position: absolute;
        height: 5px;
        width: 70%;
        transition: all 0.3s ease 0s;
        background-color: #fff;
    }

    .menu__icon::before {
        top: 8px;
    }


    .menu__icon::after {
        bottom: 8px;
    }

    .menu__icon span {
        top: 50%;
        transform: scale(1.0) translate(0px, -50%);
    }


    .menu__icon._active span {
        transform: scale(0) translate(0px, -50%);

    }

    .menu__icon._active::before {
        top: 50%;
        transform: rotate(-45deg) translate(2px, -50%);
    }

    .menu__icon._active::after {
        top: 50%;
        transform:  rotate(45deg) translate(-2px, -50%);
    }


    .menu__body {
        position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.9);
        padding: 50px 30px 30px 30px;
        transition: left 0.3s ease 0s;
        overflow: auto;
    }

    .menu__body._active {
        left: 0;
    }

    .menu__body._active .menu__list {
        flex-direction: column;
    }

    .menu__body._active a.menu__link {
        color: #fff;
    }

    .menu__link {
        font-size: 24px;
    }
}

.contacts {
    display: flex;
    flex-direction: column;
}

.contacts a {
    display: flex;
    font-size: 17px;
    font-weight: normal;
    margin: 5px 0px;
    transition: all 0.5s ease 0s;
    align-items: center;
    justify-content: flex-end;
}

.contacts a.btn {
    text-shadow: none;
    padding: 8px;
    font-size: 16px;
    display: flex;
    justify-content: center;
    font-weight: normal;
    width: 100%;    
}

.contacts a:hover {
    color: green;
    text-shadow: 1px 1px 4px green, 1px 1px 1em #fffdfd;
}

.contacts img {
    margin-right: 10px;
}

.icon_tel::before {
    content: "\f879";
}

.sliders {
    height: 720px;
    width: 100%;
    margin-top: 130px;
}

.slide.active {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    left: 0;
    transform: scale(1);
}

.slide {
    position: absolute;
    left: -100%;
    height: inherit;
    transition: left 0.5s ease 0s;
    translate: unset;
    transform: scale(0);
    width: 100%;
}

.slide img {
    height: 100%;
}

.text_box {
    opacity: 0;
    visibility: hidden;
    transform: translate(0px, 0px);
    position: absolute;
    top: 40%;
    left: 80px;
    transition: all 1.5s ease 0s;
}

.text_box.active {
    opacity: 1;
    visibility: visible;
    transform: translate(0px, 40%);
    pointer-events: all;
}

.title_slide {
    font-size: 43px;
    font-weight: 600;
    margin-bottom: 50px;
    text-shadow: 1px 1px 4px #ffff, 1px 1px 1em #fffdfd;
}

.btn {
    padding: 17px;
    background-color: #2D3842;
    border-radius: 5px;
    color: #ffff;
    cursor: pointer;
    font-size: 16px;
}

.btn-prev {
    position: absolute;
    top: 50%;
    left: 20px;
    width: 32px;
    height: 32px;
    background-color: #0050C2;
    font-size: 22px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.5s ease 0s;
    cursor: pointer;
    z-index: 11;
}

.btn-next {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 32px;
    height: 32px;
    background-color: #0050C2;
    font-size: 22px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.5s ease 0s;
    cursor: pointer;
    z-index: 11;
}

.btn-prev:hover, .btn-next:hover {
    background-color: #073474;
}


.arrow {
    width: 13px;
    height: 13px;
    border-right: 4px solid #ffff;
    border-bottom: 4px solid #ffff;
    transform: rotate(315deg);
    margin-right: 6px;
    
}


.btn-prev .arrow {
    transform: rotate(135deg);
    margin-right: -3px;
}

.advantage {
    display: flex;
    justify-content: center;
    padding-top: 30px;
    width: 100%;
    background: url(../img/fon_1.jpg);
    background-size: auto;
}

.advantage .main {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.boxes_advantage {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.box {
    width: 23%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 60px;
    margin-right: 20px;
}

.box:nth-child(4n) {
    margin-right: 0px;
}

p.title_adv {
    font-size: 38px;
    margin-bottom: 30px;
}

p.text_advantage {
    font-size: 20px;
    text-align: center;
    margin-top: 20px;
}

section.guarantee {
    width: 100%;
    display: flex;
    justify-content: center;
    background: url(../img/fon_2.gif);
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 51% auto;
}


.guarantee .main {
    padding: 10px 0px;
    display: flex;
}

.left_grt {
    border: 2px solid #5C97FF;
    width: 48.6%;
    text-align: center;
    padding: 20px;
}

.title_grt {
    font-size: 35px;
    color: red;
    font-weight: 600;
    margin-bottom: 60px;
}

.subtitle_grt {
    font-size: 30px;
    margin-bottom: 50px;
}

.small_text {
    font-size: 15px;
    margin: 10px 0;
}

.services {
    display: flex;
    justify-content: center;
    padding: 60px 0px;
    width: 100%;
    background: url(../img/fon_1.jpg);
    background-size: auto;
}

.services .main {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.title_src {
    font-size: 38px;
    margin-bottom: 30px;
}

.boxes_src {
    display: flex;
    justify-content: center;
}

.box_src {
    margin: 10px;
    padding: 20px;
    border-style: double;
    border-width: 3px 3px 3px 3px;
    border-color: #B8B8B8;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    text-align: center;
    border-radius: 10px;
    background-color: #fff;
}

.tit_src {
    font-size: 26px;
    font-weight: 600;
}

.src {
    display: flex;
    align-items: center;
    height: 300px;
    width: 100%;
}

.cena {
    font-size: 26px;
    color: #F30C0C;
    font-weight: 600;
    margin: 20px 0px;
}


.price {
    display: flex;
    justify-content: center;
    padding-top: 60px;
    width: 100%;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
}

.price .main {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.price .main img {
    max-width: 80%;
}

.title_prc {
    font-size: 38px;
    margin-bottom: 30px;
}

.price .btn {
    margin: 20px 0px;
}

.ban_resalt {
    height: 355px;
    background: url(../img/fon_3.jpg);
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ban_resalt .main {

}

.text_rslt {
    width: 60%;
    text-align: center;
}

.title_rslt {
    color: #2D3842;
    font-family: "Open Sans", Sans-serif;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 20px;
}

.subtit_rslt {
    color: #2D3842;
    font-family: "Open Sans", Sans-serif;
    font-size: 31px;
    font-weight: 400;
}

.all_contacts {
    width: 100%;
    background-image: url(../img/fon_4.jpg);
    background-position: center center;
    background-repeat: repeat;
    background-size: auto;
    display: flex;
    justify-content: center;
    padding: 50px 0px;
}

.all_contacts .main {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.title_all_cont {
    font-size: 38px;
    margin-bottom: 30px;
}

.all_contacts .contacts {
    flex-direction: row;
    width: 100%;
    justify-content: space-around;
    margin-right: 0px;
}

.all_contacts .gps_text {
    font-size: 20px;
    font-weight: 600;
    padding: 10px;
}

.map {
    width: 100%;
    height: 400px;
}


iframe {
    width: 100%;
    height: inherit;
}

.footer {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #2D3842;
    height: 74px;
    width: 100%;
}

.text_footer {
    color: #FFFFFF;
    font-family: "Open Sans", Sans-serif;
    font-size: 14px;
    font-weight: 400;
}


/* MessageBox */
.messageBox {
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        
        background: #0e5694; /* old browsers */
        
        opacity: 0.9;
        
        position: fixed;
        right: 10px;
        top: 10px;
        
        border: 1px solid #0e5694;
        width: 280px;
        padding: 15px;
        
        text-align: center;
        
        color: white;
        z-index: 1001;
        
        box-shadow: 0px 0px 8px #ffffff,  0px 0px 8px #ffffff,  0px 0px 8px #ffffff;
}
.mb_error {
        background: #e11111 !important;
}
.mb_success {
        color: green;
}
.mb_notice {
        color: #DD5502;
}
.mb_normal {
        color: white;
}
/* MessageBox */

#bg {
        position: absolute;
        left: 0px;
        top: 0px;
        background: #000000;
        width: 100%; 
        height: 100%; 
        position: fixed; 
        z-index: 1000;
        filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50);
        -moz-opacity: 0.5;
        -khtml-opacity: 0.5;
        opacity: 0.5; 
        display: none;      
}
#modal {
        border: 1px solid #CCCCCC;
        width: 340px;
        padding: 40px 20px;
        position: absolute;
        display: none;
        z-index: 2001;
        background: #ffffff; 
        box-shadow: 0px 0px 50px #ffffff;
        border-radius: 5px;
}
#modalmsg {
        position: absolute;
        width: 600px;
        height: 310px;
        margin-left: -20px;
        margin-top: -20px;
        padding: 20px;
        background: #ffffff;
        opacity: 1;
        border-radius: 10px;
        font-size: 22px;
        text-align: center;
        display: none;
        line-height: 25px;
}
#modalmsgok {padding: 0px 35px;}
#modalzag {font-size: 26px; margin-bottom: 10px; text-align: center; color: #000000; font-weight: bold;}
#modaltext {font-size: 16px; margin-bottom: 20px; text-align: center;}
#modalform .cons {width: 300px !important; text-align: center;}
#modalform .cons input, #modalform .cons button {text-align: center; width: 250px; margin-bottom: 15px;  border-radius: 2px; border: 1px solid #444;}
#modalform .cons button {background: #444444; line-height: 40px; height: 40px; color: #FFF; border-radius: 2px;}
#modalform .cons textarea {width: 250px; box-sizing: border-box; border: 1px solid #777777; margin-bottom: 15px;}
#modalclose {position: absolute;right: -12px;top: -12px;cursor: pointer;}
#modalclose img{width: 30px;}
#modal .persdannye {margin: 10px 0px 0px 0px; text-align: center;}
#modalleft {
        width: 300px;
        float: left;
        font-size: 13px;
        z-index: 2001;
}
#modalleft img {width: 300px; padding: 100px 0px;}
#modalright {
        width: 300px;
        float: right;
        font-size: 13px;
        line-height: 20px;
}
#modalright .desc{
        font-size: 13px;
}
#modaltype {display: none;}