body {
    font-family: "Nunito Sans";
	line-height:initial;
}
@media (min-width: 1200px) {
    .container {
        max-width: 1230px;
    }
}
input:hover,
input:active,
input:focus,
a:hover,
a:active,
a:focus,
button:hover,
button:active,
button:focus,
textarea:hover,
textarea:active,
textarea:focus {
	outline:none;
}
a,
a:hover {
    text-decoration: none;
}
a {color:#fe5722;}
:root {
	--black:#151515;
	--orange:#FE5722;
	--t:0.2s ease
}

.btn {
	color:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:8px;
	background:var(--orange);
	transition:background var(--t);
}
.btn:hover {
	background:#FF6C1F;
	color:#fff;
}
.page.single.indent,
.page.category.indent {
  padding: 120px 0 0;
}
.indent {
	padding:80px 0 0;
}
.title {
	text-align:center;
	padding:0 0 32px;
}
.title h2 {
	font-size:28px;
	font-weight:bold;
	margin:0;
	text-transform:uppercase;
}
.title h2 > span {
	color:var(--orange);
}
.title p {
	text-align:center;
	margin:12px 0 0;
	font-weight:600;
}

/* ------ ------ header ------ ------ */

body {
	padding-top:92px;
}
header {
	position:fixed;
	left:0;
	right:0;
	top:0;
	background:#fff;
	z-index:999;
	box-shadow:0 1px 2px 0 rgba(0,0,0,0.2);
}
.header_top {
	padding:10px 0 8px;
	display:flex;
	border-bottom:1px solid rgba(21,21,21,0.08);
	align-items:center;
}
.header_top a {
	display:flex;
	align-items:center;
	margin:0 16px 0 0;
	color:var(--black);
	transition:color var(--t);
}
.header_top a:hover {
	color:var(--orange);
}
.header_top a img {
	margin:0 6px 0 0;
}
.header_top span {
	margin-left:auto;
}
.header_in {
	display:flex;
	align-items:center;
	padding:8px 0 10px;
	justify-content:space-between;
}

.header_info {
	display:flex;
	align-items:center;
}
.header_phone {
	margin:0 4px 0 0;
}
.header_phone a {
	font-size:20px;
	font-weight:bold;
	color:var(--black);
	transition:color var(--t)
}
.header_phone a:hover {
	color:var(--orange);
}
.header_phone img {
	display:none;
}
.header_mes,
.footer_mes {
	display:flex;
}
.header_mes a,
.footer_mes a {
	width:40px;
	display:block;
	min-width:40px;
	margin:0 4px;
	height:40px;
	background:#fff;
	border-radius:8px;
	border:1px solid var(--orange);
	position:relative;
	transition:background var(--t);
}
.header_mes a:hover,
.footer_mes a:hover {
	background:var(--orange);
}
.header_mes a img,
.footer_mes a img {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	margin:auto;
	max-width:20px;
	transition:opacity var(--t);
}
.header_mes a img:first-child,
.footer_mes a img:first-child {
	opacity:1;
}
.header_mes a img:last-child,
.footer_mes a img:last-child {
	opacity:0;
}
.header_mes a:hover img:first-child,
.footer_mes a:hover img:first-child {
	opacity:0;
}
.header_mes a:hover img:last-child,
.footer_mes a:hover img:last-child {
	opacity:1;
}
.header_modal {
	margin:0 0 0 4px;
}
.header_modal a {
	width:158px;
	height:40px;
	min-width:158px;
}

.header_in nav{
	display:flex;
	justify-content:center;
}
.header_in nav ul {
    padding: 0;
    margin: 0;
    display: flex;
}
.header_in nav li {
    list-style: none;
	margin:0 12px;
}
.header_in nav a {
    display: block;
    color: var(--black);
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
	transition:color var(--t);
}
.header_in nav a:hover {
    color: var(--orange);
}

.header_nav_btn {
    display: none;
    width: 32px;
    height: 32px;
    position: relative;
}
.header_nav_btn div,
.header_nav_btn:after,
.header_nav_btn:before {
    position: absolute;
    width: 22px;
    height: 2px;
    background: var(--orange);
    transition: all var(--t);
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    display: block;
    border-radius: 10px;
}
.header_nav_btn div {
    top: 0;
    bottom: 0;
}
.header_nav_btn:after {
    top: 8px;
}
.header_nav_btn:before {
    bottom: 8px;
}
.header_nav_btn.active {
}
.header_nav_btn.active div {
    transform: rotate(-45deg);
    bottom: initial;
    top: 16px;
}
.header_nav_btn.active:before,
.header_nav_btn.active:after {
    transform: rotate(45deg);
    bottom: initial;
    top: 16px;
}

/* ------ ------ header_mobile ------ ------ */

.header_mobile {
	display:none;
}
.header_mobile .container {
	position:relative;
	z-index:2;
}
.header_mobile_title {
	color:#878787;
	font-size:14px;
	text-transform:uppercase;
	padding:0 0 20px;
}
.header_mobile nav {
	padding:0 0 32px;
}
.header_mobile nav ul {
	display:flex;
	padding:0;
	margin:0;
}
.header_mobile nav ul li {
	list-style:none;
	margin:0 16px 0 0;
}
.header_mobile nav ul a {
	font-size:16px;
	font-weight:600;
	color:var(--black);
	transition:color var(--t);
}
.header_mobile nav ul a:hover {
	color:var(--orange);
}
.header_mobile_soc {
	display:flex;
}
.header_mobile_soc a {
	width:40px;
	display:block;
	min-width:40px;
	margin:0 8px 0 0;
	height:40px;
	background:transparent;
	border-radius:8px;
	border:1px solid var(--orange);
	position:relative;
	transition:background var(--t);
}
.header_mobile_soc a:hover {
	background:var(--orange);
}
.header_mobile_soc a img {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	max-width:20px;
	margin:auto;
	transition:opacity var(--t);
}
.header_mobile_soc a img:first-child {
	opacity:1;
}
.header_mobile_soc a img:last-child {
	opacity:0;
}
.header_mobile_soc a:hover img:first-child {
	opacity:0;
}
.header_mobile_soc a:hover img:last-child {
	opacity:1;
}
.header_mobile_phone,
.header_mobile_adress,
.header_mobile_email {
	font-size:16px;
	font-weight:600;
	color:var(--black);
	transition:0.2s var(--t);
	margin:0 0 8px;
	display:inline-flex;
}
.header_mobile_phone:hover,
.header_mobile_adress:hover,
.header_mobile_email:hover {
	color:var(--orange);
}
.header_mobile_phone {
	text-decoration:underline;
}
.header_mobile_adress {

}
.header_mobile_email {

}
.header_mobile_info {
	display:flex;
	flex-direction:column;
}
.header_mobile_time {
	padding:32px 0 0;
	font-size:14px;
}

/* ------ ------ hero ------ ------ */

.hero {
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	background-image:url(img/hero.jpg);
	overflow:hidden;
	height:600px;
	padding:108px 0 0;
	position:relative;
}
.hero:before {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	content:'';
	height:100%;
	width:100%;
	opacity:0;
	background:rgba(255,255,255,1);
}
.hero .container {
	position:relative;
	height:100%;
	z-index:2;
}
.hero_row {
	display:flex;
	white-space:pre;
	overflow:auto;
	padding:0 0 20px;
}
.hero_item {
	display:flex;
	align-items:center;
	background: linear-gradient(to right,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	padding:12px;
	border-radius:8px 0 0 8px;
}
.hero_item img {
	padding:0 8px 0 0;
}
.hero_item div {
	display:flex;
	flex-direction:column;
}
.hero_item p {
	font-size:18px;
	margin:0 0 2px;
	font-weight:600;
}
.hero_item span {
	font-size:12px;
}
.hero_title,
.hero_text {
	max-width:700px;
}
.hero_title {
	margin:20px 0 0;
}
.hero_title h1 {
	font-size:38px;
	font-weight:bold;
	line-height: 38px;
	margin:0;
	text-transform:uppercase;
}
.hero_text {
	margin:16px 0 0;
	font-size:16px;
	font-weight:600;
}
.hero_btn {
	margin:40px 0 0;
}
.hero_btn a {
	width:288px;
	height:54px;
	font-size:18px;
	font-weight:600;
}
.hero_yandex {
	position:absolute;
	bottom:40px;
	right:15px;
	z-index:2;
}
.hero_mobile {
	display:none;
}

/* ------ ------ to_map ------ ------ */

#to_map {
	padding:0;
	margin:0;
	border-radius:8px;
	overflow:hidden;
}
#to_map iframe {
	padding:0;
	margin:0;
	border:0;
	height:350px;
	width:100%;
	border-radius:8px;
}

/* ------ ------ products_row ------ ------ */

.products_row {
	display:flex;
	flex-wrap:wrap;
	margin:0 -8px -16px;
}
.product {
	padding:0 8px 16px;
	width:50%;
}
.product_in {
	height:100%;
	border:1px solid var(--orange);
	padding:20px;
	border-radius:8px;
	display:flex;
	flex-direction:column;
}

.product_slider_pk {
	margin:0 0 16px;
}
.product_slider_pk .slick-list {
	margin:0 -4px;
	width:calc(100% + 8px);
}
.product_slider_pk_item {
	margin:0 4px;
}
.slick-list {
	padding:0 !important;
}
.product_slider_pk_item > div  {
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	border-radius:8px;
	height:220px;
	position:relative;
	display:block;
}
.product_slider_pk_item div > a,
.projects_item_img a {
	position:absolute;
	right:8px;
	bottom:8px;
	background:url(img/zoom.svg) center no-repeat #fff;
	border-radius:8px;
	display:block;
	width:32px;
	height:32px;
}
.product_price_mobile,
.product_price {
	display:flex;
	align-items:center;
}
.product_price_mobile b,
.product_price b {
	color:var(--orange);
	font-size:16px;
	margin:0 8px 0 0;
}
.product_price_mobile span,
.product_price span {
	color:#878787;
	font-size:14px;
}
.product_title {
	margin:0 0 8px 0;
}
.product_title h3 {
	font-size:22px;
	margin:0;
}
.product_text {
	font-size:14px;
	margin:0 0 33px;
}
.product_text p:last-child {
	margin:0;
}
.product_bottom {
	margin-top:auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
}
.product_btn a {
	width:248px;
	height:40px;
}


.product_slider_mobile_big .slick-slide {
	height:370px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	border-radius:8px;
}
.product_slider_pk .slick-arrow,
.product_slider_mobile_big .slick-arrow {
	position:absolute;
	top:0;
	bottom:0;
	z-index:5;
	border:0;
	font-size:0;
	width:32px;
	height:32px;
	margin:auto;
	padding:0;
	border-radius:6px;
	background:url(img/arrow.svg) center no-repeat rgba(255,255,255,0.7);
	transition:background-color var(--t);
}
.product_slider_pk .slick-arrow {
	bottom:18px;
}
.product_slider_pk .slick-arrow:hover,
.product_slider_mobile_big .slick-arrow:hover {
	background-color:rgba(255,255,255,1);
}
.product_slider_pk .slick-prev,
.product_slider_mobile_big .slick-prev {
	left:8px;
}
.product_slider_pk .slick-next,
.product_slider_mobile_big .slick-next {
	right:8px;
	transform: rotate(180deg);
}
.product_slider_mobile_nav {
	margin:16px 0;
}
.product_slider_mobile_nav .slick-slide {
	height:68px;
	margin:0 4px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	border-radius:8px;
	transition:box-shadow var(--t);
	cursor:pointer;
}
.product_slider_mobile_nav .slick-current {
	box-shadow: inset 0 0 0 2px var(--orange);
}

.product_slider_mobile,
.product_price_mobile {
	display:none;
}
.fancybox-thumbs__list a:before {
	border-color:var(--orange);
}

/* ------ ------ slick-dots ------ ------ */

.slick-dots {
	padding:0;
	margin:14px 0 0;
	height:4px;
	display:flex;
	font-size:0;
	background:rgba(254,87,34,0.06);
	border-radius:8px;
    display: table;
    width: 100%;
}
.slick-dots li {
    list-style: none;
    display: table-cell;
}
.slick-dots li button {
	padding:0;
	border:0;
	height:4px;
	width:100%;
	border-radius:8px;
	cursor:pointer;
	display:block;
}
.slick-dots li.slick-active button {
	background:var(--orange);
}

/* ------ ------ price ------ ------ */

.price_title_row {
	margin:12px 0 0;
	display:flex;
	justify-content:center;
}
.price_title_item {
	display:flex;
	align-items:center;
	font-size:16px;
	padding:8px;
	border-radius:8px;
	width:260px;
	margin:0 4px;
	font-weight:600;
	background:rgba(254,87,34,0.06);
}
.price_title_item img {
	margin:0 4px 0 0;
}
.price_title_item p {
	margin:0;
}
.price_row {
	display:flex;
	margin:0 -8px -16px;
}
.price_row_item {
	padding:0 8px;
}
.price_table {
	border:1px solid #EEEDED;
	border-radius:8px;
	padding:20px;
}
.price_row_table {
	width:100%;
}
.price_table_item {
	display:flex;
	font-size:16px;
	padding:6px 0 16px;
	cursor:pointer;
	font-weight:600;
	transition:color var(--t);
	border-bottom:1px solid #EEEDED;
}
.price_table_item:last-child {
	border:0;
}
.price_item_num {
	color:var(--orange);
	width:32px;
	min-width:32px;
	margin:0 4px 0 0;
}
.price_item_title {
	width:100%;
}
.price_item_cost {
	font-size:18px;
	white-space:pre;
	font-weight:bold;
	margin:0 0 0 8px;
}
.price_table_item:hover {
	color:var(--orange);
}
.price_row_info {
	min-width:404px;
	width:404px;
}
.price_info {
	height:100%;
	display:flex;
	border-radius:8px;
	flex-direction:column;
	padding:20px;
	background:url(img/price_info.svg) center / cover no-repeat;
}
.price_info_title {
	font-size:18px;
	font-weight:bold;
	margin:0 0 12px;
}
.price_info_text {
	font-size:14px;
}
.price_info_row {
	display:flex;
	margin:auto 0 0;
	justify-content:space-between;
}
.price_info_row img {
	border-radius:8px;
	max-width:100%;
	height: 60px;
	border:1px solid #EEEDED;
}

/* ------ ------ projects ------ ------ */

.projects {

}
.projects_row {
	
}
.projects_row .slick-list {
	margin:0 -8px;
	width:calc(100% + 16px);
}
.projects_item {
	margin:0 8px;
}
.projects_item_in {
	border:1px solid #EEEDED;
	border-radius:8px;
}
.projects_item_img {
	position:relative;
	height:270px;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	border-radius:8px 8px 0 0;
}
.projects_item_bottom {
	border-radius:0 0 8px 8px;
	padding:16px;
	position:relative;
	background:#fff;
}
.projects_item_bottom:after {
	position:absolute;
	border-radius:0 0 8px 8px;
	content:'';
	display:block;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(255,233,226,1) 100%);
	opacity:0;
	transition:opacity var(--t);
}
.projects_item_in:hover .projects_item_bottom:after {
	opacity:1;
}
.projects_item_title {
	font-size:16px;
	font-weight:600;
	margin:0 0 2px;
	z-index:2;
	position:relative;
}
.projects_item_btn {
	z-index:2;
	position:relative;
}
.projects_item_btn a {
	color:var(--orange);
	font-size:14px;
	text-decoration:underline;
}
.projects_item_btn a:hover {
	text-decoration:none;
}
.projects_item_info {
	padding:8px;
	background:#fff;
	display:flex;
	position:absolute;
	align-items:center;
	left:0;
	top:16px;
	border-radius:0 8px 8px 0;
}
.projects_item_info b {
	font-size:14px;
	font-weight:600;
	color:var(--orange);
}
.projects_item_info span {
	font-size:12px;
	color:#878787;
	margin:0 0 0 4px;
}
.projects_row .slick-dots {
	margin:14px auto 0;
	max-width:280px;
}
.projects_more {
	display:none;
}

/* ------ ------ why ------ ------ */

.why_in {
	background:url(img/why_bg.svg) center / cover no-repeat;
	padding:80px 0;
}
.why_row {
	margin:0 -8px -16px;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.why_item {
	padding:0 8px 16px;
	width:25%;
}
.why_item_in {
	position:relative;
	padding:20px 20px 30px;
	border-radius:8px;
	background:#fff;
	height:100%;
}
.why_img {
	border-radius:8px;
	background:var(--orange);
	width:64px;
	height:64px;
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 0 20px;
	position:relative;
	z-index:3;
}
.why_title {
	margin:0 0 12px;
	position:relative;
	z-index:2;
}
.why_title h3 {
	font-size:18px;
	font-weight:bold;
	margin:0;
}
.why_text {
	font-size:14px;
	position:relative;
	z-index:3;
}
.why_item_in:before {
	content:'';
	display:block;
	position:absolute;
	border-radius:8px;
	left:0;
	right:0;
	top:0;
	bottom:0;
	opacity:0;
	background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(255,233,226,1) 100%);
	transition:opacity var(--t);
}
.why_item_in:hover:before {
	opacity:1;
}
.why_url {
	position:absolute;
	left:20px;
	width:calc(100% - 40px);
	bottom:10px;
	font-size:14px;
	z-index:2;
}
.why_url a {
	color:var(--orange);
	position:relative;
	display:flex;
	align-items:center;
}
.why_url a:after {
	content:'';
	width:10px;
	height:10px;
	margin:0 0 0 4px;
	display:block;
	transform: rotate(180deg);
	background:url(img/arrow.svg) center / contain no-repeat;
	transition:margin var(--t);
}
.why_url a:hover:after {
	margin:0 0 0 8px;
}

/* ------ ------ steps ------ ------ */

.steps {
	
}
.steps_row {
	margin:0 -8px -16px;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.steps_item {
	padding:0 8px;
	width:20%;
}
.steps_in {
	position:relative;
	padding:24px 20px 60px;
	border-radius:8px;
	background:#F8F8F8;
	height:100%;
	overflow:hidden;
}
.steps_in:before {
	content:'';
	display:block;
	position:absolute;
	border-radius:8px;
	left:0;
	right:0;
	top:0;
	bottom:0;
	opacity:0;
	background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(255,233,226,1) 100%);
	transition:opacity var(--t);
}
.steps_in:hover:before {
	opacity:1;
}
.step_title {
	margin:0 0 12px;
	position:relative;
	z-index:2;
}
.step_title h3 {
	font-size:18px;
	font-weight:bold;
	margin:0;
	line-height: 20px;
}
.step_text {
	font-size:14px;
	position:relative;
	z-index:3;
}
.step_num {
	position:absolute;
	z-index:2;
	color:var(--orange);
	font-size:84px;
	font-weight:600;
	line-height:84px;
	bottom:-30px;
	right:0;
}
.steps_bottom {
	background:#F8F8F8;
	padding:24px 20px;
	border-radius:8px;
	margin:40px 0 0;
	display:flex;
	align-items:center;
}
.steps_btn {
	margin:0 0 0 16px;
}
.steps_btn a {
	width:150px;
	min-width:150px;
	height:40px;
	font-size:16px;
}
.steps_bottom_in {
	width:100%;
}

/* ------ ------ form ------ ------ */

.form_in {
	background:url(img/form.webp) center / cover no-repeat;
	border-radius:16px;
	padding:40px;
}
.form_content {
	max-width:540px;
}
.form_content .title {
	color:#fff;
	padding:0 0 12px;
	text-align:left;
}
.form_content .stitle {
	display:flex;
	font-size:14px;
	margin:0 0 25px;
	color:#fff;
}
.form_content .stitle img {
	margin: 0 14px 0 0;
    position: relative;
    top: 2px;
    height: 18px;
}
.form_in .inputs {
	display:flex;
	margin:25px 0 0;
	flex-direction:column;
}
.input_row {
	margin:0 -4px;
	display:flex;
}
.input {
	width:50%;
	padding:0 4px 8px;
}
.input input {
	display:block;
	background:rgba(255,255,255,0.2);
	border:1px solid rgba(255,255,255,0.3);
	color:#fff;
	height:54px;
	width:100%;
	font-size:14px;
	font-weight:bold;
	border-radius:8px;
	padding:0 16px;
	transition:border 0.2s ease;
}
.input input::placeholder {
	color: #fff;
}
.input input:focus,
.input input:active {
	border:1px solid #fff;
}
.form .submit {
	width:100%;
	margin:20px 0 0;
	position:relative;
}
.form .submit p,
.inputs p {
	margin:0;
}
.form .submit:hover {
}
.submit input {
	padding:0;
	border:0;
	border-radius:8px;
	cursor:pointer;
	width:100%;
	background:#fff;
	height:54px;
	width:318px;
	color:var(--orange);
	border:0;
	cursor:pointer;
	font-size:18px;
	font-weight:600;
	border:2px solid #fff;
}
.wpcf7-not-valid-tip {
	color:#fff !important;
}
.wpcf7-spinner {
	left:0;
	position:absolute !important;
}
.polit {
	margin:24px 0 0;
	font-size:12px;
	cursor:pointer;
	display:flex;
	color:#fff;
}
.polit > p {
	display:none;
}
.polit > div > p {
	display:flex;
	align-items:center;
	margin:0;
}
.polit i {
	min-width:24px;
	widtH:24px;
	height:24px;
	background-color:#fff;
	margin:0 14px 0 0;
	display:block;
	border-radius:3px;
	position:relative;
	transition:border 0.5s ease,background 0.5s ease;
}
.polit.active i {

}
.polit i:after {
	background:url('data:image/svg+xml,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 9.4721L7.47222 12.9443L14.4167 5.99988" stroke="%23FE5722" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat;
	background-position:center;
	width:24px;
	height:24px;
	opacity:0;
	display:block;
	content:'';
	transition:opacity 0.5s ease;
}
.polit.active i:after {
	opacity:1;
}
.polit a {
	text-decoration:underline;
	color:var(--blue);
}
.polit a:hover {
	text-decoration:none;
}
.wpcf7-not-valid-tip {
	color:var(--blue_h)
}

.sended {
	display:none;
	padding:30px 50px;
	background:#fff;
	width:500px;
	border-radius:20px;
}
.sended_title {
	text-align:center;
	padding:0 0 16px;
}
.sended_title h2 {
}
.sended_txt {
	text-align:center;
	font-size:16px;
	font-weight:600;
	color:#444444;
}
.sended_btn {
    margin: 30px auto 0;
    display: flex;
    text-align: center;
    width: 200px;
	height:54px;
}
.form_hidden {
	display:none;
}
.form_hidden input {
	max-width:100%;
}

/* ------ ------ reviews ------ ------ */

.reviews_item {
    margin: 0 8px;
	height:initial;
}
.reviews_in {
    position: relative;
    padding: 20px;
    border-radius: 8px;
    background: #fff;
    height: 100%;
	border:1px solid #EEEDED;
	border-radius:16px;
	display:flex;
	flex-direction:column;
	height:100%;
}
.reviews_row .slick-list {
	margin:0 -8px;
	width:calc(100% + 16px);
}
.reviews_row .slick-track {
	display:flex;
}
.reviews_in:before {
	content:'';
	display:block;
	position:absolute;
	border-radius:8px;
	left:0;
	right:0;
	top:0;
	bottom:0;
	opacity:0;
	background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(255,233,226,1) 100%);
	transition:opacity var(--t);
}
.reviews_in:hover:before {
	opacity:1;
}
.reviews_in_name {
	position:relative;
	z-index:2;
	display:flex;
	font-size:14px;
	font-weight:bold;
	justify-content:space-between;
	display:flex;
}
.reviews_in_date {
	position:relative;
	z-index:2;
	font-size:14px;
	color:#878787;
	margin:8px 0 0;
}
.reviews_in_text {
	position:relative;
	z-index:2;
	margin:16px 0;
	font-size:14px;
}
.reviews_in_btn {
	font-size:14px;
	z-index:2;
	margin-top:auto;
}
.reviews_in_btn a {
	color:#878787;
	position:relative;
	display:flex;
	align-items:center;
	transition:color var(--t);
}
.reviews_in_btn a:after {
	content:'';
	width:10px;
	height:10px;
	margin:0 0 0 4px;
	display:block;
	transform: rotate(180deg);
	background:url(img/arrow_g.svg) center / contain no-repeat;
	transition:margin var(--t),background var(--t);
}
.reviews_in_btn a:hover:after {
	margin:0 0 0 8px;
	background:url(img/arrow.svg) center / contain no-repeat;
}
.reviews_in_btn a:hover {
	color:var(--orange);
}
.reviews_row .slick-dots {
	max-width:280px;
	margin:20px auto 0;
}
.reviews_add {
	margin:32px auto 0;
	display:flex;
	justify-content:center;
}
.reviews_add a {
	widtH:214px;
	height:54px;
}
.alignleft {
	float:left;
	margin-right:15px;
}
/* ------ ------ footer ------ ------ */

.footer_in {
	background:rgba(254,87,34,0.06);
	padding:60px 0 24px;
}
.footer_title {
	color:#878787;
	font-size:14px;
	text-transform:uppercase;
	padding:0 0 20px;
}
.footer_top {
	display:flex;
	padding:0 0 24px;
	position:relative;
}
.footer_left {
	min-width:390px;
	widtH:390px;
	display:flex;
	flex-direction:column;
}
.footer_desc {
	font-size:14px;
	color:#444444;
	margin:16px 0 0;
}
.footer_time {
	margin-top:auto;
	font-size:14px;
}
.footer_right {
	min-width:390px;
	widtH:390px;
	display:flex;
	flex-direction:column;
}
.to_top {
	position:absolute;
	right:0;
	top:0;
}
.footer_center {
	width:100%;
	padding:0 30px;
}
.footer_center ul {
	padding:0;
	margin:0;
}
.footer_center ul li {
	list-style:none;
	margin:0 0 8px;
}
.footer_center ul li:last-child {
	margin:0;
}
.footer_center ul li a {
	color:var(--black);
	font-size:16px;
	font-weight:600;
	transition:color var(--t);
}
.footer_center ul li a:hover {
	color:var(--orange);
}
.footer_phone {
	font-size:16px;
	color:var(--black);
	text-decoration:underline;
	transition:color var(--t);
}
.footer_phone:hover {
	color:var(--orange);
	text-decoration:none;
}
.footer_mes {
	margin:8px 0 0;
}
.footer_mes a {
	margin:0 8px 0 0;
	background:transparent;
}
.footer_adress {
	margin:8px 0 0;
}
.footer_email {
	margin:8px 0 0;
	font-size:16px;
	color:var(--black);
	transition:color var(--t);
}
.footer_email:hover {
	color:var(--orange);
}
.footer_bottom {
	display:flex;
	padding:16px 0 0;
	justify-content:space-between;
	font-size:12px;
	color:#878787;
	align-items:center;
}
.footer_bottom p {
	margin:0;
}
.footer_bottom a {
	color:#878787;
	transition:color var(--t);
	text-decoration:underline;
}
.footer_bottom a:hover {
	color:var(--orange);
	text-decoration:none;
}

/* ------ ------ about ------ ------ */

.about {
	
}
.about_in {
	display:flex;
	border-radius:8px;
	background:url(img/about_bg.jpg) center / cover no-repeat;
}
.about_img {
	width:380px;
	min-width:380px;
}
.about_img img {
	object-fit:cover;
	border-radius:8px 0 0 8px;
	max-width:100%;
}
.about_text {
	padding:150px 40px;
	border-radius:0 8px 8px 0;
}
.about_text_in {
	position:relative;
}
.about_text .title {
	text-align:left;
	padding:0 0 12px;
}
.about_text_in:before,
.about_text_in:after {
	content:'';
	display:block;
	position:absolute;
}
.about_text_in:before {
	background:url(img/about_top.png);
	top:-50px;
	left:0;
	width:48px;
	height:48px;
}
.about_text_in:after {
	background:url(img/about_bottom.png);
	bottom:-52px;
	right:0;
	width:94px;
	height:94px;
}
.about_text p {
	margin:0 0 10px;
}
.about_text p:last-child {
	margin:0;
}


/* ------ ------ 1199 ------ ------ */

@media all and (max-width: 1199px) {
    .header_nav_btn {
        display: block;
		margin:0 0 0 8px;
    }
    .header_in nav {
		display:none;
    }
	.header_top {
		display:none;
	}
	.header_logo {
		margin:0 auto 0 0;
	}
	.header_mobile {
		position:fixed;
		display:block;
		top:58px;
		width:100%;
		left:-100%;
		z-index:10002;
		background:#fff;
		border-radius:0 0 16px 16px;
		padding:32px 0;
	}
	.header_mobile:after {
		position:absolute;
		left:0;
		right:0;
		top:0;
		bottom:0;
		border-radius:0 0 16px 16px;
		background:var(--orange);
		opacity:0.06;
		content:'';
	}
	.header_mobile.active {
		left:0;
	}
	.header_in {
		padding:8px 0;
	}
	body.open_menu {
		overflow:hidden;
	}
	body {
		padding:56px 0 0;
	}
	.hero {
		height: auto;
		padding: 60px 0 0;
	}
	.hero:before {
		opacity: 0.4;
	}
	.product_slider_mobile,
	.product_price_mobile {
		display:block;
	}
	.product_slider_pk {
		display:none;
	}
	.product_price_mobile {
		margin:0 0 8px;
	}
	.product_bottom .product_price {
		display:none;
	}
	.product_btn a,.product_btn {
		width:100%;
	}
	.why_item {
		width: 33.33%;
	}
	.steps_row {
		flex-wrap:wrap;
		margin-bottom:0;
	}
	.steps_item {
		width:33.33%;
		padding:0 8px 16px;
	}
	.footer_left,
	.footer_right {
		min-width: 300px;
		widtH: 300px;
	}
	.about_text {
		padding: 50px 40px;
		align-items: center;
		display:flex;
	}
}

/* ------ ------ 991 ------ ------ */

@media all and (max-width: 991px) {
	.header_mes {

	}
	.header_mes a {
		width:32px;
		min-width:32px;
		height:32px;
		margin:0 2px;
	}
	.header_mes a img {
		max-width:18px;
		max-height:18px;
	}
	.header_modal {
		display:none;
	}
	.header_phone {
		margin:0 2px 0 0;
	}
	.header_phone a {
		width:32px;
		min-width:32px;
		height:32px;
		display: block;
		background: #fff;
		border-radius: 8px;
		margin:0;
		border: 1px solid var(--orange);
		position: relative;
		transition: background var(--t);
	}
	.header_phone a span {
		display:none;
	}
	.header_phone img {
		display: block;
		position:absolute;
		left:0;
		right:0;
		top:0;
		bottom:0;
		margin:auto;
		max-width:18px;
		max-height:18px;
	}
	.header_phone a img:first-child {
		opacity:1;
	}
	.header_phone a img:last-child {
		opacity:0;
	}
	.header_phone a:hover img:first-child {
		opacity:0;
	}
	.header_phone a:hover img:last-child {
		opacity:1;
	}
	.header_mobile {
		top:48px;
	}
	body {
		padding:48px 0 0;
	}
	.hero_title h1 {
		font-size: 34px;
	}
	.indent {
		padding:50px 0 0;
	}
	.title h2 {
		font-size: 28px;
	}
	.title p {
		font-size: 14px;
	}
	.title {
		padding: 0 0 24px;
	}
	.title h2 span {
		display:block;
	}
	.price_row {
		flex-direction:column;
		margin:0;
	}
	.price_row_item {
		padding:0;
	}
	.price_row_table {
		padding:0 0 16px;
	}
	.price_row_info {
		min-width: unset;
		width: 100%;
		/*
		height:184px;
		*/
		height:auto;
	}
	.price_info {
		padding:20px 16px;
	}
	.price_info_row {
		justify-content:start;
	}
	.price_info_row img {
		height:40px;
	}
	.price_info_row img:first-child {
		margin:0 4px 0 0;
	}
	.price_info_title {
		font-size: 16px;
	}
	.price_item_num {
		display:none;
	}
	.price_table {
		padding:12px 16px;
	}
	.why_item {
		width: 50%;
	}
	.form_in {
		position:relative;
	}
	.form_in:after {
		position:absolute;
		left:0;
		right:0;
		top:0;
		bottom:0;
		border-radius:16px;
		content:'';
		background:var(--orange);
		opacity:0.8;
	}
	.form_content {
		position:relative;
		z-index:2;
	}
	.footer_left,
	.footer_right {
		min-width: 240px;
		widtH: 240px;
	}
	
	.about_img {
		width: 300px;
		min-width: 300px;
	}

}

/* ------ ------ 767 ------ ------ */

@media all and (max-width: 767px) {
	.hero {
		background:#fff !important;
		height:auto;
		padding:24px 0 0;
	}
	.hero:before {
        background: var(--orange);
        opacity: 0.06;
	}
	.hero_row {
		padding:0 0 8px;
	}
	.hero_title {
		margin:8px 0 0;
	}
	.hero_title h1 {
		font-size:28px;
		line-height:initial;
	}
	.hero_text {
		font-size:14px;
		margin:12px 0 0;
	}
	.hero_btn {
		margin:16px 0 0;
	}
	.hero_yandex_pk {
		display:none;
	}
	.hero .container {
		padding-bottom:24px;
	}
	.hero_mobile {
		display:block;
		background-position:center;
		background-repeat:no-repeat;
		background-size:cover;
		background-image:url(img/hero_mobile.webp);
		height:290px;
	}
	.hero_yandex {
		left:15px;
		bottom:20px;
	}
	.hero br {
		display:none;
	}
	.product {
		padding: 0 0 8px;
		width: 100%;
	}
	.products_row {
		margin: 0px;
	}
	.product_in {
		padding:15px;
	}
	.product_title h3 {
		font-size: 20px;
	}
	.price_title_item p span {
		display:none;
	}
	.price_title_item {
		width:150px;
		font-size: 14px;
		padding:6px;
	}
	.price_item_title {
		font-size: 14px;
	}
	.price_item_cost {
		font-size: 14px;
	}
	.price_table_item {
		padding:4px 0 12px;
	}
	.price_info_text {
		margin:0 0 12px;
	}
	.price_info {
		height:auto;
	}
	.why_item {
		width:100%;
	}
	.why_item_in {
		display:flex;
		padding:16px;
	}
	.why_img {
		margin:0 8px 0 0;
		width:40px;
		min-width:40px;
		height:40px;
	}
	.why_url {
		position:unset;
		margin:8px 0 0;
	}
	.why_title h3 {
		font-size: 16px;
	}
	.why_title {
		margin: 0 0 8px;
	}
	.why_in {
		padding: 20px 0;
	}
	.steps_item {
		width:100%;
		padding:0 8px 8px;
	}
	.steps_in {
		padding:16px 16px 20px;
	}
	.step_title h3 {
		font-size: 16px;
	}
	.step_num {
		font-size: 56px;
		line-height: 56px;
		bottom: -19px;
	}
	.steps_bottom {
		padding:16px;
		flex-direction:column;
        align-items: baseline;
		margin:8px 0 0;
	}
	.steps_btn {
		margin:16px 0 0;
	}
	.form_in {
		padding:20px 15px;
	}
	.form_content {
		max-width:100%;
	}
	.footer_top {
		flex-direction:column;
	}
	.footer_left, .footer_right {
        min-width: unset;
        widtH: 100%;
    }
	.footer_left {
		padding:0 0 24px;
	}
	.footer_center {
		padding:0 0 24px;
	}
	.footer_center ul {
		flex-direction:row;
		display:flex;
	}
	.footer_center ul li {
		margin:0 16px 0 0;
	}
	.footer_bottom  {
		flex-direction:column;
		align-items: baseline;
	}
	.footer_bottom p {
		margin:0 0 12px;
	}
	.product_text {
		margin:0 0 12px;
	}
	.about_img {
        width: 180px;
        min-width: 180px;
    }
	.about_img img {
		height:100%;
	}
	.about_text {
        padding: 15px;
	}
	.about_text p {
		font-size: 14px;
	}
	.title h2 {
        font-size: 22px;
    }
	.about_text_in:before, .about_text_in:after {
		display:none;
	}
}

/* ------ ------ 576 ------ ------ */

@media all and (max-width: 576px) {
	.input {
		width: 100%;
	}
	.input_row {
		flex-direction:column;
	}
	.form_in {
		background:url(img/form_mobile.webp) center / cover no-repeat;
	}
	.form_in:after {
		display:none;
	}
	.form .submit {
		margin: 14px 0 0;
	}
	.submit input {
		width:100%;
	}
	.title h2 {
        font-size: 22px;
    }
	.form_content .stitle img {
		margin: 0 4px 0 0;
	}
	.sended_btn {
		width:100%;
	}
	.sended {
		padding: 30px 14px;
	}
	.sended_txt {
		font-size: 16px;
	}
	.about_in {
		flex-direction:column;
		overflow:hidden;
		background:url(img/about_bg_m.jpg) center / cover;
	}
	.about_img {
		border-radius:8px 8px 0 0;
		min-width:unset;
		width:100%;
	}
	.about_img img {
		width:100%;
		border-radius:8px 8px 0 0;
	}
	.about_text {
		border-radius:0 0 8px 8px;
		padding:64px 15px;
	}
	.about_text_in:before, 
	.about_text_in:after {
		display:block;
	}
	.about_text_in:after {
		bottom: -82px;
	}
	.page.single.indent,
	.page.category.indent {
  		padding: 70px 0 0;
	}
    .indent {
        padding: 30px 0 0;
    }
	.product_price_mobile b, .product_price b {
		font-size: 20px;
	}
	.projects_item_info b {
		font-size: 20px;
	}
	.price_item_cost {
        font-size: 18px;
    }
	.price_item_title {
		font-weight:bold;
	}
	.price_table_item {
        align-items: end;
	}
	.header_mobile nav ul {
		flex-direction:column;
	}
}

/* ------ ------ 440 ------ ------ */

@media all and (max-width: 440px) {
	.projects_item_info {
		background:rgba(255,255,255,0.8);
	}
	.projects_item_img {
		height:430px;
		border-radius:8px;
	}
	.projects_item_img a {
		display:none;
	}
	.projects_item_in {
		position:relative;
	}
	.projects_item_in:hover .projects_item_bottom {
		background:rgba(255,255,255,1);
	}
	.projects_item_bottom {
		position:absolute;
		background:rgba(255,255,255,0.8);
		display:flex;
		align-items:center;
		justify-content:space-between;
		padding:6px 8px;
		width:calc(100% - 16px);
		margin:0 auto;
		border-radius:8px;
		left:0;
		right:0;
		bottom:8px;
		transition:background var(--t);
	}
	.projects_item_bottom:after {
		display:none;
	}
	.projects_item_btn a {
		font-weight:bold;
		margin:0 0 0 8px;
	}
	.projects_item {
		margin:0 0 8px 0 ;
	}
	.projects_more {
		widtH:100%;
		margin:16px 0 0;
		height:40px;
		display:flex;
	}
	.projects_row .slick-list {
		margin:0;
		width:100%;
	}
	.header_mobile nav ul {
		flex-direction:column;
	}
}

/* ------ ------ 400 ------ ------ */

@media all and (max-width:379px) {
	.header_mobile nav ul {
		justify-content:space-between;
	}
	.header_phone a,
	.header_mes a {
        width: 28px;
        min-width: 28px;
        height: 28px;
	}
	.header_logo img {
	    max-width: 100%;
		padding: 0 14px 0 0;
	}
	.header_mobile {
		padding:15px 0;
	}
	.header_mobile_title,
	.header_mobile nav {
		padding:0 0 15px;
	}
	.header_mobile_time {
		padding:15px 0 0;
	}
	.hero_btn a {
		width:100%;
	}
	.product_slider_mobile_big .slick-slide {
		height: 270px;
	}
	.title p {
        font-size: 12px;
    }
	.why_url {
		font-size: 11px;
	}
	.title h2 {
        font-size: 18px;
    }
	.reviews_in_name {
		flex-direction:column;
		align-items: baseline;
	}
	.reviews_in_name img {
		margin:6px 0 0;
	}
	.footer_center ul {
		flex-direction:column;
	}
	.footer_center ul li {
		margin:0 0 8px;
	}
	.projects_item_bottom {
		flex-direction:column;
		text-align:center;
	}
}
.pagination {
  clear: both;
  justify-content: center;
  margin: 20px 0 0;
  display:flex;
}
.pagination a,
.pagination span {
  text-decoration: none;
  font-size: 16px;
  font-weight: 400;
  padding:6px;
  border: 1px solid #d3ced2;
  display: block;
}
.pagination span {
  background: #ebe9eb;
  color: #8a7e88;
}
.category_row {
	display:flex;
	flex-wrap:wrap;
	width:calc(100% + 16px);
	margin:0 -8px;
}
.category_item {
	width:33.33%;
	padding:0 8px 16px;
}
.category_img img{
	height:200px;
	width:100%;
	object-fit:cover;
	border-radius:10px;
	margin:0 0 16px;
}
.category_title {

}
.category_title h2 {

}
.category_title a {
    color: #212529;
}
.category_title a:hover {
    color: #212529;
}
.pagination a, .pagination span {
color: var(--orange);
}
@media all and (max-width:991px) {
	.category_title h2 {
		font-size: 18px;
	}
}
@media all and (max-width:767px) {
	.category_item {
		width: 50%;
	}
}
@media all and (max-width:500px) {
	.category_item {
		width: 100%;
	}
}