body {font-family: Bebas Neue; font-style: normal;}

a:hover,
a:focus,
a:active {outline: none;}
a:hover {text-decoration: none;}

button, 
button:active, 
button:focus {
    outline: none;
}

h1 {font-weight: 800;}
h2 {color:white; font-size: 48px;  border-left: 5px solid #003399; 
padding-left: 20px; margin-bottom: 30px;}

p {font-size: 18px;}

.page {margin-bottom: 0;}

.container {max-width: 1170px; padding: 0;}

.container-fluid.main_header {background-image: url(../img/bg_header.jpg); background-position: center; background-repeat: no-repeat; border-bottom: 5px solid #003399;}
.header_wrapper {border-bottom: 1px solid #ffffff;}
.header_wrapper .top_row {display: flex; justify-content: space-between;}
.header_wrapper .top_row a {display: block; text-align: center; color: #ffffff; text-shadow: 0px 0px 13px #000000;}

.header_wrapper .call_us, .header_wrapper .email {display: flex; flex-direction: column; align-items: center; justify-content: center; font-size: 24px; font-weight: 600; }
.header_wrapper .call_us a.tel_number {font-size: 24px; line-height: 24px;}

a.header_button {margin-top: 10px; background-color: #3366FF; padding: 10px 20px; color:#ffffff; -webkit-box-shadow: 0px 0px 20px 0px #000000; 
box-shadow: 0px 0px 20px 0px #000000;
transition: all 1s;}

a.header_button:hover {background-color: #0d39bd;}

.header_wrapper .logo {display: flex; justify-content: center; align-items: center;}

.header_wrapper .logo a.title_site {font-size: 30px;}
.header_wrapper .logo .site_title_wrap a.desc {display: block; text-align: center; font-size: 18px; 
    color: #ffffff;}

.container.header_wrapper,.container.menu_header_wrapper {padding-left: 0; padding-right: 0;}

.container.menu_header_wrapper ul.menu_header {margin:0; padding: 0; display: flex; justify-content: space-between;}

.container.menu_header_wrapper ul.menu_header li {text-decoration: none; text-transform: none; list-style-type: none; display: inline-block; padding: 10px 0;}

.container.menu_header_wrapper ul.menu_header a {color: #ffffff; font-size: 24px; text-shadow: 0px 0px 5px #000000;
transition: all 1s;
}

.container.menu_header_wrapper ul.menu_header a:hover {
text-decoration: underline;
}

/*----- Футер -------*/
.container-fluid.our_footer{background-color: #000080; border-top: 5px solid #003399; background-image: url(../img/bg_footer.jpg); background-position: center; 
background-repeat: repeat-y;}
.container-fluid.our_footer ul.menu_footer_line {margin:0; padding: 0; display: flex; justify-content: space-between;}

.container.our_footer_wrapped {border-bottom: 2px solid white;}
.container.our_footer_wrapped ul.menu_footer_line li {text-decoration: none; text-transform: none; list-style-type: none; display: inline-block; /*padding: 10px;*/}

.container.our_footer_wrapped ul.menu_footer_line a {display: inline-block; padding: 10px 20px; color: #ffffff; font-size: 24px; transition: all 1s;
}

.container.our_footer_wrapped ul.menu_footer_line a:hover {background-color: #ffffff; color:#0066CC;}

.down_line_footer {display: flex; justify-content: space-between;}
.down_line_footer .requisites {display: flex; flex-direction: column; justify-content: center;}
.down_line_footer .requisites p {margin: 0; color:#ffffff;
font-size: 18px; font-weight: 400; text-transform: none;}

.down_line_footer .footer_logo {display: flex; justify-content: center;}
.down_line_footer .footer_logo .site_title_wrap {display: flex; flex-direction: column; justify-content: center;}
.down_line_footer a.title_site {font-size: 30px; color: #ffffff;

}
.down_line_footer .site_title_wrap a.desc {display: block; text-align: center; font-size: 18px; color: #ffffff;}

.down_line_footer .get_call {display: flex; align-items: center;}
.down_line_footer a.footer_butoon {display: inline-block; font-size: 24px; background-color: #3366FF; padding: 10px 20px; color:#ffffff; -webkit-box-shadow: 0px 0px 20px 0px #000000; 
box-shadow: 0px 0px 20px 0px #000000;
transition: all .5s;}

.down_line_footer a.footer_butoon:hover {color:#3366FF; background-color: #ffffff;}

/*----- Главная страница -------*/
.container-fluid.about_us {background-image: url(../img/bg_top_block.jpg); background-position: center top; background-repeat: no-repeat; height: 584px;}
.about_us_wrapper {padding-top: 100px;}
.about_us_wrapper h1 {text-align: center; color:#ffffff; 
    font-size: 96px; text-shadow: 4px 4px 2px rgba(0, 0, 0, 1);}

.about_us_wrapper p {font-size: 32px; text-align: center; color:#ffffff;}
.about_us_wrapper a.see_more {display: block; width: 200px; margin: 0 auto; margin-top: 100px; padding: 10px 30px; background-color: #003399; color:white; text-align: center; font-size: 32px;transition: all .5s;}
.about_us_wrapper a.see_more:hover {-webkit-box-shadow: 0px 0px 20px 0px #000000; box-shadow: 0px 0px 20px 0px #000000;}

.container-fluid.why_we {background-color: white; 
    border-top:  5px solid #003399;
    border-bottom: 5px solid #003399;}
.why_we_wrapped {padding: 50px 0; display: flex; justify-content: space-between; }
.why_we_wrapped .desc p {height: 100%; display: flex; align-items: center;
    font-family: Montserrat; font-weight: bold; font-size: 24px; text-transform: uppercase; text-align: left; margin-bottom: 0;}
.why_we_wrapped .desc, .why_we_wrapped .single_factor {padding-left: 20px;}

.why_we_wrapped .single_factor .number {font-family: Montserrat; font-weight: bold; font-size: 48px; text-align: right; color: #003399; margin-bottom:0;}
.why_we_wrapped .single_factor .desc {font-family: Montserrat; font-size: 18px; text-align: right;}

/*---- наши услуги------*/
.container-fluid.our_servises {padding: 50px 0; /*background-image: url(../img/bg_2.png); background-position: center top; background-repeat: no-repeat; */background-color: #3399CC; border-bottom: 5px solid #003399;}

.our_servises_wrapped .services_catalog {display: flex; justify-content: space-between; flex-wrap: wrap;}

.our_servises_wrapped .services_catalog a.single_service {display: block; position: relative; z-index: 1; margin-bottom: 30px;}
.our_servises_wrapped .services_catalog a.single_service img {display: block; z-index: 1; width: 370px; height:280px; object-fit: cover;}
.our_servises_wrapped .services_catalog a.single_service .overlay {position: absolute; top:0; left: 0; width: 100%; height: 100%; z-index: 2; background-color: #003399; opacity: 0;
transition: opacity 1s}
.our_servises_wrapped .services_catalog a.single_service:hover .overlay {opacity: 0.6;}

.our_servises_wrapped .services_catalog a.single_service p {position: absolute; z-index: 3; width: 100%; text-align: center; top:0; bottom: 0; margin-bottom: 0; display: flex; align-items: center; justify-content: center; color:#ffffff; font-size: 38px; 
    line-height: 42px;  font-weight: bold; text-shadow: 0 0 20px #000000;}

.our_servises_wrapped .btn_all_services {display: block; width:370px; padding: 10px 20px; background-color: white; text-align: center; margin: 0 auto; font-size: 24px; background-color: #3366FF; color: #ffffff;
transition: all .5s;}
.our_servises_wrapped .btn_all_services:hover {-webkit-box-shadow: 0px 0px 20px 0px #000000; box-shadow: 0px 0px 20px 0px #000000;}


/*---- Наши работы ------*/
.container-fluid.our_works {padding: 50px 0; /*background-image: url(../img/klema-glavnaya.jpg); background-position: center top; background-repeat: no-repeat;*/ background-color: #99CCFF; border-bottom: 5px solid #003399;}
.our_works_wrapped .works_catalog {display: flex; justify-content: space-between; flex-wrap: wrap;}
.our_works_wrapped .works_catalog a.work_ithem {display: block; width: 370px; margin-bottom: 40px; transition: box-shadow .5s; position: relative;}
.our_works_wrapped .works_catalog a.work_ithem img.prev {display: block; position: relative; z-index: 2; width: 370px; height: 210px; object-fit: cover; }
.our_works_wrapped .works_catalog a.work_ithem:hover{box-shadow: 0px -2px 24px rgba(13, 57, 189, 1);}
.our_works_wrapped .works_catalog a.work_ithem p {width: 100%; padding: 0 20px; font-family:Montserrat; font-weight: bold; text-transform: uppercase; color: white; text-align: center; text-shadow: 0 0 10px #000000;
position: absolute; z-index: 3; bottom: 20px; margin-bottom: 0; }
.our_works_wrapped .btn_all_works {display: block; width:370px; padding: 10px 20px; background-color: white; text-align: center; margin: 0 auto; font-size: 24px; background-color: #3366FF; color: #ffffff;
transition: all .5s;}
.our_works_wrapped .btn_all_works:hover {-webkit-box-shadow: 0px 0px 20px 0px #000000; box-shadow: 0px 0px 20px 0px #000000;}

/*---- О нашей компании (главная)-----*/
.container-fluid.about_us_desc {padding: 50px 0; border-bottom: 5px solid #003399; 
background-color: whitesmoke;}
.container-fluid.about_us_desc h2 {color: black;}
.about_us_desc_wrapped .about_us_body {display: flex; justify-content: space-between;}
.about_us_desc_wrapped .about_us_body .desc {width: 50%;}
.about_us_desc_wrapped .about_us_body p {font-family: Montserrat; padding-right: 20px;}
.about_us_desc_wrapped .about_us_body .our_company_img {}
.about_us_desc_wrapped .about_us_body img {width: 100%; object-fit: cover; border-radius: 20px;}
.about_us_body a.see_more {display: block; width: 60%; padding: 10px 20px; background-color: white; text-align: center; margin: 0 auto; font-size: 24px; background-color: #3366FF; color: #ffffff;
transition: all .5s; margin-top: 60px;}
.about_us_body a.see_more:hover {-webkit-box-shadow: 0px 0px 20px 0px #000000; box-shadow: 0px 0px 20px 0px #000000;}
/*----- Контактные данные (главная)------*/
.container-fluid.contact_map {padding: 50px 0; background-color:#006699; background-image: url(../img/bg_contacts.jpg); background-position: center top; background-repeat: no-repeat;}
.container.contact_map_wrapped .contact_map_body {display: flex; justify-content: space-between;}
.container.contact_map_wrapped .contacts p {color:white; margin-bottom: 0; font-size: 24px;}
.container.contact_map_wrapped .contacts p.adres {padding-top: 10px;}
.contact_map_wrapped .contact_map_body .map {box-shadow: 0px -2px 24px rgba(0, 0, 0, 1);}

/*---- Отзывы клиентов------*/
.container-fluid.reviews {padding: 50px 0; background-image: url(../img/bg_reviews.jpg); background-position: center top; background-repeat: no-repeat; background-size: cover; border-bottom: 5px solid #003399; }
.container-fluid.reviews h2 {color: darkslategrey;}
.owl-carousel.reviews_slider {display: block; width: 100%; padding: 30px 0;}
.reviews_wrapper .single_review {display: flex; justify-content: center;}
.reviews_wrapper img.avatar {width: 200px; height: 200px; object-fit: cover; border-radius: 50%;}
.reviews_wrapper .review_body {position: relative; margin: 10px 0; box-shadow: 0px -2px 10px rgba(0, 0, 0, 1); background-color: aliceblue; z-index: 1; border-radius: 10px; width: 60%; margin-left: 30px;}
.reviews_wrapper .review_body .quote_open {position: absolute; width: 50px; height: 44px; background-image: url(../img/quote_open.png); background-repeat: no-repeat; top:10px; left:10px; z-index: 2;}
.reviews_wrapper .review_body .quote_close {position: absolute; width: 50px; height: 44px; background-image: url(../img/quote_close.png); background-repeat: no-repeat; bottom:10px; right:10px; z-index: 2;}
.reviews_wrapper .review_body p.desc {padding: 60px 80px; display: flex; height: 100%; justify-content: center; align-items: center; text-align: center;
font-family:Montserrat; color:#333333; font-weight: bold;
}


/*----- Страница Контаты ------*/
.container-fluid.contacts_full {padding: 50px 0; background-image: url(../img/bg_works.png);}
.container-fluid.contacts_full h2 {color: black;}
.contacts_full_wrapper .contact_map_body {display: flex; justify-content: space-between;}
.contacts_full_wrapper .contacts p {color:black; margin-bottom: 0; font-size: 24px;}
.contacts_full_wrapper .contacts p.adres {padding-top: 10px;}
.contacts_full_wrapper .map {box-shadow: 0px -2px 24px rgba(0, 0, 0, 1);}


/*----- Страница Прайс-------*/
.container-fluid.price {padding: 50px 0;}
.container-fluid.price h2 {color:black;}
.container-fluid.price p{font-family:Montserrat; color:black; }
.container-fluid.price .price_body {padding-bottom: 200px;}
.container-fluid.price .price_body img.main_img {width: 100%;}
.container-fluid.price .price_body a {font-weight: bold;}


/*---- Название поста / Хлебные крошки -------*/
.container-fluid.title_breadcrumbs {background-image: url(../img/bg_title_breadcrumbs.jpg); background-position: center top; background-repeat: no-repeat; height: 500px; position: relative; border-bottom: 5px solid #003399;}
.container-fluid .title_breadcrumbs_wrapper {position: relative; height: 100%;}
.container-fluid .title_breadcrumbs_wrapper h2 {display: flex; align-items: center; height: 100%; border-left: none; font-size: 48px; color: #333333; font-family:Montserrat; font-weight: bold; text-shadow: 0px 0px 10px rgba(255, 255, 255, .5);
text-transform: uppercase;}
.container-fluid .title_breadcrumbs_wrapper .breadcrumbs {position: absolute; bottom:20px; left:0; font-size: 24px;}

.kama_breadcrumbs a {color:white;}

/*--- Страница наши работы----------*/
.container-fluid.catalog_works {padding: 50px 0;}
.container.catalog_works_wrapper {display: flex; justify-content: space-between; flex-wrap: wrap;}
.container.catalog_works_wrapper a.tile_ithem {display: block; width: 48%; margin-bottom: 40px; transition: all .5s; position: relative; z-index: 1;}
.container.catalog_works_wrapper a.tile_ithem:hover{box-shadow: 0px -2px 24px rgba(0, 0, 0, 1);}
.container.catalog_works_wrapper a.tile_ithem img {display: block; width: 100%; height: 315px; object-fit: cover; position: relative; z-index: 2;}
.container.catalog_works_wrapper a.tile_ithem p.title_name {width: 100%; padding: 0 20px; font-family:Montserrat; font-weight: bold; text-transform: uppercase; color: white; text-align: center; text-shadow: 0 0 10px #000000;
position: absolute; z-index: 3; bottom: 20px; margin-bottom: 0;}


/*----- Страница Наша работа /услуга -------*/
.container-fluid.works {padding: 50px 0; background-image: url(../img/bg_works.png);}
.container.works_wrapper {display: flex; justify-content: space-between;}
.container.works_wrapper .work_ithem {width: 75%; font-family:Montserrat; padding-bottom: 50px;}
.container.works_wrapper .work_ithem img.works_img {height: 450px; width: 100%; object-fit: cover;}


.container.works_wrapper .sidebar_wrapper {width: 24%; }
.container.works_wrapper .sidebar_wrapper a.works_link {display: block; color: #333333; font-size:24px; 
padding-bottom: 10px; margin-bottom: 20px; background-image: url(../img/arrow-right-black.png); background-position: left bottom; background-repeat: no-repeat; transition: color .5s;}
.container.works_wrapper .sidebar_wrapper a.works_link:hover {color:#0d39bd;} 
.container.works_wrapper .sidebar_wrapper a.works_link.all {margin-top: 50px;}

/*----- Страница о нашей компании ------*/
.container-fluid.about_us_full {padding: 50px 0; background-image: url(../img/bg_works.png);}
.container.about_us_full_wrapper {font-family:Montserrat; padding-bottom: 50px;}
.container.about_us_full_wrapper img.top_img {width: 100%; object-fit: cover;}

/*---- Модальные окна ------*/

.modal-dialog {max-width: 640px; font-family:Montserrat;}
.modal-content {border-radius: 0; }
.modal-header button.close {display: block; width: 40px; height: 40px; background-color: #000000; padding: 0; opacity: 0.8;}
.modal-header button.close:hover {opacity: 1;}
.modal-header button.close span {color:#ffffff;}
.modal-body {display: flex; justify-content: space-between;}
.modal-body .modal_desc {padding:0 10px 0 40px;}
.modal-body .modal_desc,.modal-body .modal_form {width: 50%;}
.modal-body .modal_desc h2 {font-weight: bold;font-size: 32px; line-height: 48px;text-transform: uppercase; color: #1A1B29;}
.modal-body .modal_desc p {font-weight: normal; font-size: 18px; line-height: 32px; color: #1A1B29;}
.modal-body .modal_form {position: relative;}
.modal-body .modal_form input {width: 88%; height: 56px; margin-bottom: 25px; border-radius: 0; padding-left: 15px; font-size: 18px; line-height: 56px; color: #9C9C9C;background-color: transparent;}
.modal-body .modal_form input.modal_send {padding: 0; background: #158513; font-weight: 500; font-size: 16px;
line-height: 56px; text-align: center; text-transform: uppercase; color: #FFFFFF;
transition: background-color .5s ease-in-out; position: relative; z-index: 2;}
.modal-body .modal_form input.modal_send:hover {background: #000000;}
.modal_form .green_line {height: 0; width: 314px; top:270px; left:-27px;border:1px solid #158513; position: absolute; z-index: 1;}
.modal-body .wpcf7-response-output {width: 88%; margin: 0;} 
















