/*!
Theme Name: handyman
Theme URI: http://underscores.me/
Author: Rozmuar
Author URI: http://rozmuar.ru
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: handyman
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

handyman is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/


html{
    overflow-x: hidden;
}
body{
	margin: 0;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
    font-size: 14px;
    line-height: 25px;
    overflow-x: hidden;
    position: relative;
}
a{
	text-decoration: none;
}
a:hover{
	text-decoration: none;
}
p {
    font-size: 17px;
    line-height: 130%;
    color: #333;
}
ul{
    list-style: none;
    padding-left: 30px;
}
ul li{
    font-size: 17px;
    line-height: 130%;
    color: #333;
    margin: 0 0 4px;
    position: relative;
}
ul li:before{
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    background: #2f76c2;
    border-radius: 50%;
    top: 7px;
    left: -22px;
}

.black{

}
.black.active{
   position: fixed;
   top: 0;
   right: 0;
   left: 0;
   bottom: 0;     
   z-index: 99;
   background-color: rgb(0 0 0 / 42%);
}

.site-header{
    background-color: #e8e8e8;
    background-size: cover;
    background-repeat: no-repeat;
    margin: 10px 10px 40px 10px;
    border-radius: 25px;
    padding: 15px 15px 40px 15px;
    background-position: center;
    position: relative;
    overflow: hidden;
}
.site-header::after{
    z-index: 0;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgb(0 0 0 / 15%);
}
.site-header>.container{
    z-index: 9;
    position: inherit;    
}

.header_block{
    z-index: 9;
    position: inherit;
}
.header_block .menu_top_block{
    background: #fff;
    padding: 5px 10px;
    border-radius: 15px;
    box-shadow: 0 0 6px rgb(0 0 0 / 22%);
}
.header_block .menu_top_block .logo{
    display: flex;
}
.header_block .menu_top_block .logo a{
    display: flex;
}
.header_block .menu_top_block .logo img{
    width: 100%;
}
.header_block .main-navigation{

}
.header_block .main-navigation .menu{
    padding: 0;
    display: flex;
    list-style: none;
}
.header_block .main-navigation .menu li{
    margin: 0;
}
.header_block .main-navigation .menu li > a{
    color: rgb(36 36 36 / 60%);
    padding: 9px 10px;
    border-radius: 8px;
    transition: .2s;
    text-decoration: none;
    font-size: 16px;
}

table {
    border: 1px solid black;
    border-collapse: collapse;
}

.header__btns {
    display: flex;
    justify-content: start;
    align-items: center;
}

.wp-block-table {
    overflow-x: scroll;
}
.text_img-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 10px;
    border-radius: 10px;
    background-color: #b3d5fa;
}
.post_cat_body {
    padding-bottom: 0px;
}
.post_cat_description {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translate(-50%, 0);
}
.post_cat_text {
    font-size: 14px;
    font-weight: 400;
    opacity: 0.4;
    text-align: center;
}
.text_img-icon {
    width: 50px;
    height: 50px;
}
.text_img-title-nomb {
    margin-bottom: 0 !important;
}

th, td {
   border: 1px solid black;
}

th, td {
    padding: 10px 15px;
}

.header_block .main-navigation .menu li:before{
    display: none;
}
.header_block .main-navigation .menu li > a:hover{
    color: #1c1c1e;
}
.header_block .main-navigation .menu .sub-menu{
    display: none;
}
.header_block .main-navigation .menu .sub-menu li{

}
.header_block .main-navigation .menu .sub-menu li a{

}
.header_block .phone{
    color: #f8f8f8;
    line-height: 95%;
    margin: 0 0 0 15px;
    background: #2f76c2;
    padding: 10px 15px;
    border-radius: 15px;
    font-size: 18px;
    font-weight: 600;
    display: inline-block;
}

.mobile_menu{
    display: none;
}

.docs__content p a {
    text-decoration: underline;
    transition: color 0.3s;
    color: #2f76c2;
}

.docs__content p a:hover {
    /* color: #2f76c2; */
}

.site-header .get_form {
    background: #2f76c2;
    padding: 10px 20px;
    border-radius: 15px;
    font-size: 16px;
    font-weight: 600;
    display: inline-block;
    cursor: pointer;
    color: #f8f8f8;
}

.docs__btn {
    background: #2f76c2;
    padding: 10px 20px;
    border-radius: 15px;
    font-size: 16px;
    font-weight: 600;
    display: inline-block;
    cursor: pointer;
    color: #f8f8f8;
}

.docs__link {
    display: inline-block;
    margin-left: 20px;
}

.slick-menu{
    display: none;
}
.slick-menu.active{
    display: block;
}


.page_header{
    margin: 50px 0 20px;
}
.page_header h1{
    color: #fff;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-shadow: 0 0 9px rgb(0 0 0 / 71%);
}
.page_header .descr{
    color: #fff;
    margin: 20px 0 30px;
    font-size: 36px;
    line-height: 120%;
    text-shadow: 0 0 9px rgb(0 0 0 / 71%);
}

.rank-math-breadcrumb{

}
.rank-math-breadcrumb p{
    
}
.rank-math-breadcrumb a{
    color: #fff;
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: 600;
}
.rank-math-breadcrumb .separator{
    color: #fff;
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: 600;
}
.rank-math-breadcrumb .last{
    color: #2f76c2;
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: 500;
}

.post_cat_item_opacity {
    opacity: 0.55;
}

#cr_version_link{
    color: rgb(36 36 36 / 60%);
    padding: 9px 10px;
    border-radius: 8px;
    transition: .2s;
    text-decoration: none;
    font-size: 21px;
}

/**/

.block_zayavk{
    padding: 50px 0;
    margin: 40px 10px;
}
.block_zayavk .center_text{

}
.block_zayavk .center_text h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_zayavk .block_zayavk_body{
    margin: 30px 0;
}
.block_zayavk .block_zayavk_body .zayavk_item{
    background: #f2f2f7;
    padding: 20px;
    margin: 0;
    border-radius: 20px;
}
.block_zayavk .block_zayavk_body img{
    border-radius: 50%;
    width: 56px;
}
.block_zayavk .block_zayavk_body p{
    margin: 10px 0 0;
    font-size: 15px;
}

.block_zayavk .block_zayavk_body .zayavk_item:before {
    content: '';
    width: 0;
    height: 0;
    border-top: 36px solid transparent;
    border-left: 18px solid #f2f2f7;
    border-bottom: 36px solid transparent;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(1px, -50%);
}
.block_zayavk .block_zayavk_body .col-6:nth-last-child(1) .zayavk_item:before{
    display: none;
}



/**/

.block_osl{
    padding: 50px 0;
    margin: 40px 0;
}
.block_osl h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_osl .block_osl_body{
    margin: 30px 0 0;
}
.block_osl .block_osl_body .osl_item{
    background-color: #f7f7fa;
    margin: 0 0 30px;
    border-radius: 20px;
    padding: 20px;
}
.block_osl .block_osl_body .osl_item .osl_item_ico{
    
}
.block_osl .block_osl_body .osl_item .osl_item_ico svg{
    width: 50px;
    height: 50px;
    padding: 10px;
}
.block_osl .block_osl_body .osl_item .osl_item_ico svg path{
    fill: #2f76c2;
}
.block_osl .block_osl_body .osl_item .osl_item_data{
    
}
.block_osl .block_osl_body .osl_item .osl_data_title{
    color: #333;
    font-size: 25px;
    line-height: 115%;
    font-weight: 600;
    margin: 0 0 15px;
}
.block_osl .s_title{
    color: #333;
    font-size: 18px;
    line-height: 115%;
    font-weight: 600;
    margin: 15px 0 5px;
}

/**/

.block_gall{
    
}
.block_gall h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_gall .s_title{
    color: #333;
    font-size: 18px;
    line-height: 115%;
    font-weight: 600;
    text-align: center;
    margin: 15px 0 5px;
}
.block_gall .block_gall_body{
    margin: 40px 0 30px;
}
.block_gall .gall_item{
    position: relative;
    margin: 0 0 30px;
}
.block_gall .gall_item a{
    cursor: pointer;
}
.block_gall .gall_item a:before{
    content: '';
    transition: all 0.5s;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-size: 50px;
    border-radius: 10px;
}
.block_gall .block_gall_body .gall_item a:hover:before {
    background-image: url(/wp-content/themes/handyman/img/scale.svg);
    transform: scale(1.05);
    z-index: 99;
}
.block_gall .gall_item img{
    width: 100%;
    border-radius: 20px;
}

/**/

.text_img{
    background-color: #f7f7fa;
    border-radius: 20px;
    width: 100%;
    display: block;
    margin: 40px 0 70px;
}
.text_img .text_img_img{
    
}
.text_img .text_img_img img{
    border-radius: 20px;
    width: 100%;
    display: block;
}
.text_img .text_img_text{
    margin: 30px 0;
}
.text_img .text_img_text h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 36px;
    line-height: 120%;
}

/**/

.site-main{

}
.site-main .post_cat_item{
    padding: 10px;
    background: #f2f2f7;
    border-radius: 21px;
	margin-bottom: 30px;
	transition: all 0.5s;
}
.site-main .post_cat_item:hover{
	box-shadow: 0px 0px 4px rgb(0 0 0 / 15%);

}
.site-main .post_cat_item img{
    width: 100%;
    border-radius: 15px;
}
.site-main .post_cat_item .post_cat_body{

}
.site-main .post_cat_item .post_cat_body p{
    margin: 10px 0;
    font-weight: 600;
    font-size: 20px;
    line-height: 32px;
    color: #333;
}

.site-main .post_cat_item .post_cat_body .post_cat_price{
	background: #f5f5f5;
    padding: 10px;
    font-size: 14px;
    line-height: 22px;
    color: #999999;
    margin: 0 0 5px;
    font-weight: 400;
    border-radius: 10px;
}

/**/
.service_block{
    padding: 50px 0 70px;
}
.service_block .center_text{
    
}
.service_block .center_text h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.service_block .post_cat_item, .post-type-archive .post_cat_item{
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    display: grid;
    padding: 15px;
    background: #f7f7fa;
    margin-bottom: 30px;
}
.service_block .post_cat_item:hover, .post-type-archive .post_cat_item:hover{
    box-shadow: 0 0 6px rgb(0 0 0 / 18%);
}
.service_block .post_cat_item a, .post-type-archive .post_cat_item a{

}
.service_block .post_cat_item img,  .post_cat_item img{
    width: 100%;
    display: flex;
    border-radius: 12px;
}
.service_block .post_cat_item .post_cat_body, .post-type-archive .post_cat_item .post_cat_body{

}
.service_block .post_cat_item .post_cat_body .post_cat_price, .post-type-archive .post_cat_item .post_cat_body .post_cat_price{
    
}
.service_block .post_cat_item p, .post-type-archive .post_cat_item p{
    color: #333;
    font-size: 25px;
    line-height: 115%;
    font-weight: 600;
    text-align: center;
    margin: 15px 0 5px;
}

/***/

.wp-block-contact-form-7-contact-form-selector{
    background: #2f76c2;
    padding: 50px 0;
    margin: 40px 0px;
    border-radius: 20px;
}
.wp-block-contact-form-7-contact-form-selector .center_text h2{
    color: #f8f8f8;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;  
}
.wp-block-contact-form-7-contact-form-selector .s_title{
    color: #f8f8f8;
    font-size: 18px;
    line-height: 115%;
    font-weight: 600;
    text-align: center;
    margin: 15px 0 5px;
}
.wp-block-contact-form-7-contact-form-selector .wp-block-contact-form-7-contact-form-selector{
    padding: 0;
}
.wp-block-contact-form-7-contact-form-selector form{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    align-items: baseline;
    position: relative;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control-wrap{
    width: 100%;
    margin: 0 20px 0 0;
}
.wp-block-contact-form-7-contact-form-selector form>.wpcf7-form-control-wrap, .wp-block-contact-form-7-contact-form-selector form>.wpcf7-submit{
    flex: 0 0 33.333333%; 
}


.wp-block-contact-form-7-contact-form-selector input{
    font-family: inherit;
    -webkit-transition: border linear .2s,box-shadow linear .2s;
    -moz-transition: border linear .2s,box-shadow linear .2s;
    -o-transition: border linear .2s,box-shadow linear .2s;
    transition: border linear .2s,box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 15px;
    vertical-align: middle;
    width: 100%;
    color: #8d8d8d;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid rgba(119,119,119,.2);
    font-size: 14px;
    outline: none;
    line-height: inherit;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7-submit{
    background: #1c1c1e;
    color: #fff;
    padding: 10px 20px;
    cursor: pointer;
    border: 2px solid #1c1c1e;
    transition: all 0.5s;
    font-size: 16px;
    max-width: 200px;
    font-weight: 600;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7-submit:hover{
    border: 2px solid #2f76c2;
    background-color: #2f76c2;
    color: #333333;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ff0000;
    border-radius: 10px;
    position: absolute;
    bottom: -65px;
}

/**/



/* contact page */

body.page-template-cont-page{
	background: #fff;
}
.contact_page{
	margin: 0;
}

#map {
	width: 100%; 
	height: 500px; 
	padding: 0; 
	margin: 0;
}


.contact_page .cont_block{
    padding: 50px 20px;
    background-color: #f2f2f7;
    background-size: cover;
    background-position: center;
    position: relative;
    border-radius: 20px;
}



.contact_page .cont-item{

}
.contact_page .cont-item{

}
.contact_page .cont-item .phone_i{
    margin-bottom: 20px;
}
.contact_page .cont-item .phone_i a{
    font-size: 18px;
    font-weight: 600;
    padding: 10px 0 10px 50px;
    display: block;
    position: relative;
    color: #333;
}
.contact_page .cont-item .phone_i a::before{
    content: '';
    background-image: url(/wp-content/themes/handyman/img/phone_w.svg);
    background-size: 14px;
    background-repeat: no-repeat;
    background-position: center;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 4px;
    background-color: #000;
    border-radius: 50%;
}
.contact_page .cont-item .mail_i{
    margin-bottom: 20px;
}
.contact_page .cont-item .mail_i a{
    font-size: 18px;
    font-weight: 600;
    padding: 10px 0 10px 50px;
    display: block;
    position: relative;
    color: #333;
}
.contact_page .cont-item .mail_i a::before{
    content: '';
    background-image: url(/wp-content/themes/handyman/img/mail_w.svg);
    background-size: 14px;
    background-repeat: no-repeat;
    background-position: center;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 4px;
    background-color: #000;
    border-radius: 50%;
}
.contact_page .cont-item .adres_i{
    margin-bottom: 20px;
}
.contact_page .cont-item .adres_i span{
    font-size: 18px;
    font-weight: 600;
    padding: 10px 0 10px 50px;
    display: block;
    position: relative;
}
.contact_page .cont-item .adres_i span::before{
    content: '';
    background-image: url(/wp-content/themes/handyman/img/adres_w.svg);
    background-size: 14px;
    background-repeat: no-repeat;
    background-position: center;
    width: 36px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 4px;
    background-color: #000;
    border-radius: 50%;
}


.contact_page .cont_block form{

}
.contact_page .cont_block form .field-group{
	margin: 0 0 10px;
}
.contact_page .cont_block form .field-group input{
	font-family: inherit;
    -webkit-transition: border linear .2s,box-shadow linear .2s;
    -moz-transition: border linear .2s,box-shadow linear .2s;
    -o-transition: border linear .2s,box-shadow linear .2s;
    transition: border linear .2s,box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 0;
    vertical-align: middle;
    width: 100%;
    color: #8d8d8d;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid rgba(119,119,119,.2);
    font-size: 14px;
    outline: none;
    line-height: inherit;
    border-radius: 20px;
}
.contact_page .cont_block form select{
	font-family: inherit;
    -webkit-transition: border linear .2s,box-shadow linear .2s;
    -moz-transition: border linear .2s,box-shadow linear .2s;
    -o-transition: border linear .2s,box-shadow linear .2s;
    transition: border linear .2s,box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 0;
    vertical-align: middle;
    width: 100%;
    color: #8d8d8d;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid rgba(119,119,119,.2);
    font-size: 14px;
    outline: none;
    line-height: inherit;
    border-radius: 20px;
}
.contact_page .cont_block form textarea{
	font-family: inherit;
    -webkit-transition: border linear .2s,box-shadow linear .2s;
    -moz-transition: border linear .2s,box-shadow linear .2s;
    -o-transition: border linear .2s,box-shadow linear .2s;
    transition: border linear .2s,box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 0;
    vertical-align: middle;
    width: 100%;
    color: #8d8d8d;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid rgba(119,119,119,.2);
    font-size: 14px;
    outline: none;
    line-height: inherit;
    border-radius: 20px;
}
.contact_page .cont_block .wpcf7-submit{
    background-color: #333;
    color: #ffffff;
    padding: 15px 20px;
    cursor: pointer;
	transition: all 0.5s;
	font-size: 16px;
    border-radius: 20px;
    border: none;
}
.contact_page .cont_block .wpcf7-submit:hover{
    background-color: #2f76c2;
    color: #333;
}




/**/
.block_priems{
    padding: 50px 0;
    margin: 40px 10px;
    border-radius: 20px;
}
.block_priems h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_priems .s_title{
    color: #333;
    font-size: 18px;
    line-height: 115%;
    font-weight: 600;
    text-align: center;
    margin: 15px 0 5px;
}
.block_priems .block_priems_body{
    margin: 30px 0;
}
.block_priems .block_priems_body .priems_item{
    background-color: #f7f7fa;
    margin: 0 0 30px;
    border-radius: 20px;
    padding: 20px;
}
.block_priems .block_priems_body .priems_item .priems_ico{

}
.block_priems .block_priems_body .priems_item .priems_ico svg{
    width: 50px;
    height: 50px;
    padding: 10px;
}
.block_priems .block_priems_body .priems_item .priems_ico svg path{
    fill: #d1d1d6;
}
.block_priems .block_priems_body .priems_item .priems_data{

}
.block_priems .block_priems_body .priems_item .priems_data .priems_data_title{
    color: #333;
    font-size: 25px;
    line-height: 115%;
    font-weight: 600;
    margin: 0 0 15px;
}
.block_priems .block_priems_body .priems_item .priems_data p{
    color: #333;
    font-size: 17px;
    line-height: 120%;
    font-weight: 400;
    margin: 0 0 15px;
}


/**/

.block_rev{
    background: #f2f2f7;
    padding: 50px;
    margin: 40px 10px;
    border-radius: 20px; 
}
.block_rev .center_text h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_rev .rev_item{
    background: #fff;
    padding: 15px;
    border-radius: 15px;
}
.block_rev .rev_item .rev-name{
    color: #333;
    font-size: 18px;
    line-height: 115%;
    font-weight: 600;
    margin: 15px 0 5px;
}


.home-rev .owl-dots{
    text-align: center;
}
.home-rev .owl-dots button{
    width: 8px;
    height: 8px;
    background: #2f76c2;
    border-radius: 50%;
    margin: 0 3px;
}
.home-rev .owl-dots button.active{
    background: #333;
}


.owl-carousel.home-rev .owl-nav{
    
}
.owl-carousel.home-rev .owl-nav .owl-prev{
    width: 34px;
    height: 34px;
    background: #2f76c2;
    color: #fff;
    border-radius: 50%;
    position: absolute;
    top: calc( 50% - 22px );
    left: -25px;
}
.owl-carousel.home-rev .owl-nav .owl-prev span{
    font-size: 26px;
}
.owl-carousel.home-rev .owl-nav .owl-next{
    width: 34px;
    height: 34px;
    background: #2f76c2;
    color: #fff;
    border-radius: 50%;
    position: absolute;
    top: calc( 50% - 22px );
    right: -25px;
}
.owl-carousel.home-rev .owl-nav .owl-next span{
    font-size: 26px;
}


/* FAQ */
.faq{
    padding: 50px 0;
    margin: 40px 0;
}
.faq h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.faq .faq_body{

}
.faq .faq_body .faq_item{
    padding: 3px 14px;
    border: 1px solid #2f76c2;
    background: #2f76c2;
    margin: 0 0 10px;
    border-radius: 15px;
}
.faq .faq_body .faq_item.active{
    background: #ffffff;
}
.faq .faq_body .faq_item .faq_title{
    width: calc(100% - 40px);
    position: relative;
    color: #333;
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    margin-top: 15px;
    margin-bottom: 15px;
    cursor: pointer;
}
.faq .faq_body .faq_item .faq_title:before{
    content: '';
    position: absolute;
    right: -50px;
    top: -4px;
    width: 32px;
    height: 32px;
    background-color: #333333;
    background-image: url(/wp-content/themes/handyman/img/up.svg);
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
    color: #fff;
    border-radius: 50%;
    transition: all 0.5s;
    transform: rotate(90deg);
}
.faq .faq_body .faq_item .faq_descr{
    font-size: 16px;
    line-height: 22px;
    color: rgba(19, 26, 31, 0.6);
    /* display: none; */
    padding: 10px 0;
    height: 0px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    transition: all 0.5s;
}
.faq .faq_body .faq_item.active .faq_descr{
    /*display: block; */
    padding: 10px 0;
    height: auto;
    margin: 0 0 1em;
    width: calc(100% - 40px);
}
.faq .faq_body .faq_item.active .faq_title:before{
	transform: rotate(180deg);
}



/* price */
.block_price{
    padding: 50px 0;
    margin: 40px 0;
}
.block_price h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_price .block_price_body{
    margin: 40px 0 0;
}
.block_price .block_price_body p{
    position: relative;
    margin: 0 0 5px;
    display: flex;
    justify-content: space-between;
    color: #454545;
    background: #f7f7fa;
    padding: 10px;
    border-radius: 15px;
}
.block_price .block_price_body p span{
    font-weight: 600;
    color: #000000;
    white-space: nowrap;
}

/***/



.table_block {
    margin: 0 0 30px;
}
.table_block a {
    color: #5d84e7;
    font-weight: 600;
    margin: 0 0 15px;
    display: block;
}

table.price267 {
    width: 100%;
    border-radius: 15px;
}

table.price267 th {
    text-align: left;
    padding: 10px;
    background: #2f76c2;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    color: rgb(0 0 0);
    font-weight: 600;
    width: 60%;
}
table.price267 th:not(:nth-child(1)){
    max-width: 140px;
    text-align: right;
    width: 20%;
    border-left: 1px solid rgb(5 5 5 / 12%);
}


table.price267 td{
    /* color: rgb( 76, 76, 76 );*/
    line-height: 1.615;
    background: white;
    padding: 10px;
    border-bottom: 1px solid #f2f2f2;
    font-weight: 400;
    font-size: 14px;
    color: rgba(5, 5, 5, 0.7);
	white-space: nowrap;
}

table.price267 td:not(:nth-child(1)) {
    text-align: right;
    color: #000000;
    font-weight: 600;
    border-left: 1px solid #ebebeb;
}

.table-responsive p {

}
table.price267 {
    margin: 0 0 30px;
    box-shadow: 0 0 6px rgb(0 0 0 / 8%);
    overflow: hidden;
}
.table-responsive a{
    color: #000;
}

.product-table tbody tr td .get_form {
    font-weight: 700;
    font-size: 15px;
    color: #727BDE;
	cursor: pointer;
}

.table-responsive .get_form {
    color: #5d84e7;
    font-weight: 600;
    display: block;
    cursor: pointer;
}


/**/

.post_article .post_img{
    width: 100%;
    border-radius: 20px;
    margin: 0 0 15px;
}
.post_article .wp-block-image{
    margin: 20px 0;
}
.post_article .wp-block-image img {
    border-radius: 15px;
}

/**/

.footer_city{
    padding: 50px 0;
    margin: 40px 0;
}
.footer_city .title_side{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
    font-weight: 600;
}
.footer_city a {
    padding: 15px;
    display: block;
    margin: 0 0 15px;
    border-radius: 10px;
    transition: all 0.5s;
    text-align: center;
    background-color: #2f76c2;
    position: relative;
    color: #333;
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    margin-top: 15px;
    margin-bottom: 15px;

}
.footer_city a:hover {
    background-color: #333;
    color: #fff;
    display: block;
}





/**/



#map {
    width: 100%;
    height: 500px;
    padding: 0;
    margin: 30px 10px;
    border-radius: 20px;
    overflow: hidden;
}

/* footer */

.site-footer {
    background: #f2f2f7;
    padding: 30px 0;
    margin: 30px 10px 10px;
    border-radius: 20px;
}


.site-footer .f_title{
    font-weight: 600;
    font-size: 21px;
    line-height: 28px;
    margin: 0 0 10px;
    color: #333;
}
.site-footer .f_cont{
    padding: 0;
    list-style: none;
    margin: 0;
}
.site-footer .f_cont li{
	margin: 0;
    font-size: 16px;
    color: #333;
    border-bottom: 1px solid rgb(255 255 255 / 20%);
    padding: 15px 0 15px 0;
    position: relative;
}

.site-footer .f_cont li:before{
	content: '';
}

.site-footer .f_cont li.adres:before{

}
.site-footer .f_cont li.mail:before{

}
.site-footer .f_cont li.phone:before{

}

.site-footer ul{
    padding: 0;
    padding: 0;
}
.site-footer li:before{
    display: none;
}


.site-footer #footer-menu{
    list-style: none;
    padding: 0;
    margin: 0;
}
.site-footer #footer-menu li{
    position: relative;
    padding: 5px 0;
}
.site-footer #footer-menu li:before{

}
.site-footer #footer-menu a{
    color: #333;
}

.site-footer .fo_block{
    margin: 0 0 30px;
}
.site-footer .fo_block .phone{
    font-size: 25px;
    font-weight: 600;
    padding: 20px 0;
	display: inline-block;
    color: #333;
}
.site-footer .fo_block p{
    margin: 0 0 20px;
    color: #333;
    font-size: 18px;
}
.site-footer .fo_block .get_form{
	display: inline-block;
    border: none;
    padding: 10px 20px;
    color: #fff;
    font-size: 16px;
	transition: all 0.5s;
	cursor: pointer;
    background-color: #333;
    border-radius: 20px;
}
.site-footer .fo_block .get_form:hover{
	color: #333;
	background-color: #2f76c2;
}

.site-footer .f_cont li a{
	color: #333;
}
.site-footer .site-info{
	text-align: center;
    color: #333;
}


/* modal*/
.modal_form{
    display: none;
}
.modal_form.active {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 999;
    background: #fff;
    width: 350px;
    padding: 20px;
    border-radius: 10px;
    display: block;
}
.modal_form .modal_close{
    width: 30px;
    height: 30px;
    position: absolute;
    top: -15px;
    right: -15px;
    background-color: #fc2020;
    border-radius: 50%;
    cursor: pointer;
    background-image: url(/wp-content/themes/handyman/img/close.svg);
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: center;
}
.modal_form .modal_body{

}
.modal_form .modal_body>.modal_title{
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 5px;
    color: #333;
    text-transform: uppercase;
}
.modal_form .modal_body>p{
    text-align: center;
    font-size: 16px;
    margin: 0 0 15px;
    letter-spacing: 0.5px;
    color: #7d8791;
}
.modal_form .modal_body .wpcf7-text{
    font-family: inherit;
    -webkit-transition: border linear .2s,box-shadow linear .2s;
    -moz-transition: border linear .2s,box-shadow linear .2s;
    -o-transition: border linear .2s,box-shadow linear .2s;
    transition: border linear .2s,box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 10px;
    vertical-align: middle;
    width: 100%;
    color: #8d8d8d;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid rgba(119,119,119,.2);
    font-size: 14px;
    outline: none;
    line-height: inherit;
    margin: 0 0 20px;
}
.modal_form .modal_body .wpcf7-submit{
    background-color: #2f76c2;
    color: #f8f8f8;
    padding: 10px 20px;
    cursor: pointer;
    border: 2px solid #2f76c2;
    transition: all 0.5s;
    font-size: 16px;
    border-radius: 10px;
}
.modal_form .modal_body .wpcf7-submit:hover{
    border: 2px solid #333;
    background-color: #333;
    color: #fff;
}


.p404 {
    text-align: center;
    padding: 100px 0;
    font-size: 100px;
    font-weight: 900;
    color: #333;
}



span.polic {
    width: 100%;
    display: block;
    font-size: 13px;
    line-height: 16px;
    margin: 15px 0 0;
}


.testi_img{

}
.testi_img img{
    width: 100%;
}


.block_logo{
    margin: 50px 0 100px;
}
.block_logo h2{
    color: #333;
    margin: 0 0 20px;
    text-transform: uppercase;
    font-size: 50px;
    line-height: 150%;
    text-align: center;
}
.block_logo .block_gall_body{
    margin: 50px 0;
}
.marquee_block{
    overflow: hidden;
}
.marquee_block img {
    margin: 0 20px;
    max-height: 60px;
}
.marquee_block .js-marquee{
    display: flex;
    align-items: center;
    margin-right: 0px !important;
}



figure.size-full {
    margin: 30px 0;
}
figure.size-full img{
    width: 100%;
    height: auto;
}


@media (max-width: 1199px) {
    .header_block .main-navigation .menu li > a {
        padding: 9px 7px;
        font-size: 16px;
    }
    .header_block .phone {
        font-size: 16px;
    }
    .page_header h1 {
        font-size: 43px;
        line-height: 126%;
    }
}
@media (max-width: 991px) {
    .main-navigation{
        display: none;
    }
    .mobile_menu{
        display: block;
        width: 50px;
        height: 50px;
        margin: 0 0 0 15px;
        background-image: url(/wp-content/themes/handyman/img/menu.svg);
        background-position: center;
        background-repeat: no-repeat;
        cursor: pointer;
    }


    .slick-menu {
        position: absolute;
        top: 0;
        right: -350px;
        bottom: 0;
        width: 320px;
        z-index: 999;
        background: #f0f0f0;
        padding: 20px 20px 20px 40px;
        transition: all 0.5s;
    }
    .slick-menu.active{
        right: 0;
    }
    .slick-menu .close_m{
        width: 50px;
        height: 50px;
        position: absolute;
        background-color: #000000;
        background-image: url(/wp-content/themes/handyman/img/close.svg);
        background-size: 25px;
        background-repeat: no-repeat;
        background-position: center;
        border-radius: 50%;
        top: 20px;
        left: -25px;
        cursor: pointer;
    }
    .slick-menu .main-navigation-mob{
        margin-bottom: 25px;
    }
    .slick-menu .main-navigation-mob .menu{
        list-style: none;
        padding: 0;
    }
    .slick-menu .main-navigation-mob li{
        margin: 10px 0;
    }    
    .slick-menu .main-navigation-mob li a{
        color: #333;
        font-size: 18px;
    }
    .slick-menu .main-navigation-mob li:before{
        display: none;
    }
    ul.sub-menu {
        padding: 0 0 0 10px;
        list-style: none;
        border-left: 1px solid #2f76c2;
    }
    .slick-menu .top_contact{
        margin-top: 25px;
    }
    .slick-menu .top_contact .mail{
        color: #333;
        font-size: 18px;
        margin: 0 0 15px;
        display: block;
    }
    .slick-menu .top_contact .phone{
        color: #333;
        font-size: 18px;
        margin: 0 0 15px;
        display: block;
    }

    .wp-block-contact-form-7-contact-form-selector form {
        justify-content: left;
    }

    .wp-block-contact-form-7-contact-form-selector form>.wpcf7-form-control-wrap, .wp-block-contact-form-7-contact-form-selector form>.wpcf7-submit {
        flex: 0 0 100%;
        margin: 0 0 15px;
    }


    .service_block .center_text h2,
    .wp-block-contact-form-7-contact-form-selector .center_text h2,
    .block_priems h2,
    .block_gall h2,
    .block_price h2,
    .block_osl h2,
    .wp-block-contact-form-7-contact-form-selector .center_text h2,
    .block_zayavk .center_text h2,
    .block_zayavk .center_text h2,
    .block_rev .center_text h2,
    .faq h2,
    .block_logo h2,
    .footer_city .title_side{
        font-size: 35px;
        line-height: 130%;
    }

    .text_img .text_img_text {
        margin: 30px;
    }

    .block_zayavk .block_zayavk_body .zayavk_item {
        margin: 0 0 30px;
    }

}
@media (max-width:575px) {
    .header__btns {
        justify-content: space-between;
    }
    .header_block .phone {
        color: #f8f8f8;
        line-height: 90%;
        margin: 0;
        background: #2f76c2;
        padding: 10px 9px;
        border-radius: 15px;
        font-size: 14px;
        font-weight: 600;
        display: inline-block;
    }
    .mobile_menu {
        width: 46px;
        height: 46px;
        margin: 0 0 0 10px;
    }
    .page_header h1 {
        font-size: 30px;
        line-height: 126%;
    }
    .page_header .descr {
        font-size: 28px;
    }
    .service_block .center_text h2, .block_logo h2, .wp-block-contact-form-7-contact-form-selector .center_text h2, .block_priems h2, .block_gall h2, .block_price h2, .block_osl h2, .wp-block-contact-form-7-contact-form-selector .center_text h2, .block_zayavk .center_text h2, .block_zayavk .center_text h2, .block_rev .center_text h2, .faq h2, .footer_city .title_side {
        font-size: 30px;
        line-height: 130%;
    }
    .block_osl .block_osl_body .osl_item .osl_data_title {
        color: #333;
        font-size: 20px;
    }
}
@media (max-width: 450px) {
    .header_block .phone {
        margin: 0 -5px 0 -10px;
        padding: 10px 5px;
        font-size: 14px;
        white-space: pre;
        width: 100%;
        display: block;
        text-align: center;
    }
    .mobile_menu {
        margin: 0 -8px 0 10px;
        width: 44px;
        height: 44px;
    }
}
/* О нас */
  
.about {
  margin-bottom: 60px;
}
.about__inner {
  background-color: #F7F7FA;
  padding: 60px;
}
.about__title {
  text-transform: uppercase;
  font-family: "Roboto", sans-serif;
  font-size: 28px;
  color: black;
  font-weight: 600;
  line-height: 1.17;
  margin-bottom: 35px;
}
.about__text {
  font-weight: 300;
  font-size: 20px;
  line-height: 1.55;
  color: black;
  font-family: "Roboto", sans-serif;
}

.docs__inner {
  padding: 0 60px;
}

#docs {
  max-height: 0;
  transition: .3s;
  opacity: 0;
  overflow: hidden;
}
.docs__content {
  /* display: none; */
  max-height: 0;
  transition: .3s;
  opacity: 0;
  overflow: hidden;
  list-style: none;
  padding: 0 0;
  line-height: 1.55;
  font-size: 18px;
  font-family: "Roboto", sans-serif;
  color: black;
}

.docs__content p {
  margin-bottom: 22px;
}

.docs__content p:last-child {
  margin-bottom: 0;
}

.docs__content a {
  color: black;
}

.wp-block-file a {
  text-decoration: underline;
  transition: opacity 0.3s;
  color: black;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  line-height: 1.45;
}

.wp-block-file a:hover {
  opacity: 0.6;
}

.wp-block-file {
  margin-bottom: 22px;
}
.wp-block-file:last-child {
  margin-bottom: 0;
}

.docs__list {
  list-style: none;
  padding-left: 0;
}

.docs__list-item::before {
    display: none;
}
.docs__list-item {
  margin-bottom: 18px;
}
.docs__list-item:last-child {
  margin-bottom: 0;
}
.docs__list-item-title {
  transition: all 0.3s;
  display: inline;
  cursor: pointer;
  border-bottom: dashed 1px black;
  font-size: 22px;
  font-family: "Roboto", sans-serif;
  color: black;
  line-height: 1.35;
  font-weight: 600;
}

.docs__list-item-title:hover {
  opacity: 0.6;

}
/* .container {
  width: 1200px;
  margin: 0 auto;
} */
.block-elem-shown {
  transition: all 0.3s;
  opacity: 1;
  height: auto;
  max-height: unset;
  padding: 56px 0;
  padding-top: 42px;
  /* display: block; */
}/*# sourceMappingURL=style.css.map */
#docs.docs-element-shown {
  transition: all 0.3s;
  opacity: 1;
  height: auto;
  max-height: unset;
}
#info_btn {
    margin-left: 20px;
}



/* Стили для технических характеристик медицинского оборудования */
.medical-equipment-specs {
    background: #f7f7fa;
    padding: 30px;
    border-radius: 20px;
    margin: 40px 0 30px;
}

.medical-equipment-specs h3 {
    color: #333;
    margin: 0 0 30px;
    text-transform: uppercase;
    font-size: 36px;
    line-height: 120%;
    text-align: center;
}

.spec-group {
    background: #fff;
    margin: 0 0 20px;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 0 6px rgb(0 0 0 / 8%);
}

.spec-group h4 {
    color: #333;
    font-size: 25px;
    line-height: 115%;
    font-weight: 600;
    margin: 0 0 20px;
    padding: 0 0 10px;
    border-bottom: 2px solid #2f76c2;
}

.spec-item {
    margin: 0 0 15px;
    padding: 10px 15px;
    background: #f2f2f7;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.spec-item:last-child {
    margin-bottom: 0;
}

.spec-item strong {
    color: #333;
    font-size: 17px;
    line-height: 130%;
    font-weight: 600;
    flex: 1;
    margin-right: 15px;
}

.spec-item .spec-value {
    color: #2f76c2;
    font-size: 17px;
    line-height: 130%;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

.post-header {
    position: relative;
    margin-bottom: 30px;
}

.post_img {
    width: 100%;
    height: auto;
    border-radius: 20px;
    box-shadow: 0 0 6px rgb(0 0 0 / 18%);
}

.post-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 15px;
}

.post-actions.no-image {
    margin-bottom: 20px;
    justify-content: flex-start;
}

.btn-compare {
    background: linear-gradient(135deg, #2f76c2, #1c5a87);
    color: #fff;
    border: none;
    padding: 12px 20px;
    border-radius: 15px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    box-shadow: 0 0 6px rgb(47 118 194 / 30%);
}

.btn-compare:hover {
    background: linear-gradient(135deg, #1c5a87, #2f76c2);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgb(47 118 194 / 40%);
}

.btn-compare.added {
    background: linear-gradient(135deg, #4CAF50, #45a049);
    box-shadow: 0 0 6px rgb(76 175 80 / 30%);
}

.btn-compare.added:hover {
    background: linear-gradient(135deg, #45a049, #4CAF50);
}

.compare-icon {
    font-size: 18px;
}

.compare-text {
    white-space: nowrap;
}


.prod-taxonomies-filter {
    margin-bottom: 30px;
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #e9ecef;
}

.prod-taxonomies-filter h3 {
    margin: 0 0 20px 0;
    color: #495057;
    font-size: 1.4rem;
}

.taxonomies-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.taxonomy-group h4 {
    margin: 0 0 10px 0;
    color: #667eea;
    font-size: 1.1rem;
    border-bottom: 2px solid #667eea;
    padding-bottom: 5px;
}

.terms-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

.terms-list li {
    margin-bottom: 8px;
}

.terms-list li::before{
    display: none;
}

.terms-list a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: #495057;
    background: white;
    border-radius: 4px;
    border: 1px solid #dee2e6;
    transition: all 0.3s ease;
}

.terms-list a:hover {
    background: #e3f2fd;
    border-color: #2196f3;
    color: #1976d2;
}

.terms-list a.active {
    background: #667eea;
    color: white;
    border-color: #667eea;
}

.term-count {
    float: right;
    font-size: 0.9em;
    opacity: 0.7;
}

@media (max-width: 768px) {
    .taxonomies-list {
        grid-template-columns: 1fr;
    }
}



@media (max-width: 991px) {
    .medical-equipment-specs {
        padding: 20px;
        margin: 30px 0 20px;
    }
    
    .medical-equipment-specs h3 {
        font-size: 30px;
        margin-bottom: 20px;
    }
    
    .spec-group {
        padding: 15px;
        margin-bottom: 15px;
    }
    
    .spec-group h4 {
        font-size: 20px;
        margin-bottom: 15px;
    }
    
    .spec-item {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .spec-item strong {
        margin-right: 0;
        margin-bottom: 5px;
        font-size: 16px;
    }
    
    .spec-item .spec-value {
        text-align: left;
        font-size: 16px;
    }
}

@media (max-width: 575px) {
    .btn-compare {
        font-size: 14px;
        padding: 10px 15px;
        border-radius: 12px;
    }
    
    .compare-icon {
        font-size: 16px;
    }
    
    .post-actions {
        justify-content: center;
    }
    
    .medical-equipment-specs {
        padding: 15px;
    }
    
    .medical-equipment-specs h3 {
        font-size: 26px;
    }
    
    .spec-group {
        padding: 12px;
    }
    
    .spec-group h4 {
        font-size: 18px;
    }
    
    .spec-item {
        padding: 8px 12px;
    }
    
    .spec-item strong,
    .spec-item .spec-value {
        font-size: 15px;
    }
}