.table-new {
    margin: 10px auto;
    border-collapse: collapse;
    width: 80%;
  }

  .table-new th, td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
  }

  .table-new th {
    background-color: #f2f2f2;
    font-weight: bold;
  }

  .table-new tr:hover {
    background-color: blue;
    color: white;
    cursor: pointer;
  }

  .tr-main:hover {
    color: black;
    cursor: pointer;
  }


.wrap::before, .wrap::after, .vline, .infolist li::after {z-index: -1;}
.sliderhead, .slidertext, .slidericon, .smallsliderimg, .requestform, .sliderlinks, .zoom {z-index: 2;}
.headermenu ul, .headermenu.stick, .servicelist ul {z-index: 3;}
.headerbutton {z-index: 4;}
.modalblock {z-index: 5;}
.close {z-index: 2;}
.wrap, .headerbenefits>div, .triangleblock, .placeblock, .mapblock, .requestform, input, button, .formopenfull, textarea,
.mapblock #map>ymaps, .placedetail, .close, img, .placehead, .feedbackphoto, .headerbutton, .advantageimg, .textbuttons div,
.innerborderblock, .centerpanel, .smallsliderimg, .infolist li div, .landinglist li, .recommendimg, .modalrequest,
.modalcall, .modaldiscount, .menublock ul ul, .servicelist ul, .modalimg, .modalimg img {border-radius: 7px;}
.headtext, .advantageimg span, .pricelist li img, .smallsliderimg img, .menublock a, .menublock span,
.recommendimg img, .marksblock a, .marksblock span, .infoblock a, .infoblock span, .servicelist>li>a,
.servicelist>li>noindex>a {border-radius: 4px;}

.leftblock #bodymap {
	border-top-left-radius: 7px;
	border-bottom-left-radius: 7px;
}
.sliderlinks, .pricelist li div:nth-of-type(3) {
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.pricelist li div:first-of-type {
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}
@media (max-width: 750px) {
	.leftblock #bodymap {
		border-top-right-radius: 7px;
		border-bottom-left-radius: 0;
	}
}
input:focus:-moz-placeholder {opacity: 0;}
input:focus:-webkit-input-placeholder {opacity: 0;}
input:focus::-moz-placeholder {opacity: 0;}
input:focus::-webkit-input-placeholder {opacity: 0;}
body {
	width: 100%;
	overflow-x: hidden;
}
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	text-decoration: none;
	outline: none;
	resize: none;
	max-height: 99999px;
}
.errorblock {
	text-align: center;
	margin-top: 50px;
}
.errorblock .wrap {
	width: 500px;
	padding: 20px 20px 25px;
	margin: 0 auto;
}
.errorblock .wrap::before, .errorblock .wrap::after {display: none;}
.errorblock div {width: 100%;}
.errorblock .wrap>a {
	display: block;
	margin: 0 auto;
}
.vline {
	position: fixed;
	height: 100%;
	width: 10px;
	top: 0;
	left: 50%;
}
.vline:nth-of-type(1) {margin-left: -510px;}
.vline:nth-of-type(2) {margin-left: 500px;}
.headerblock, .middleblock, .headercontacts, .headermenu, .menublock, .marksblock, .infoblock, .infohead {width: 100%;}
.middleblock, .menublock, .marksblock, .infoblock {padding: 10px 0;}
.wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 950px;
}
.leftblock, .rightblock {
	position: relative;
	padding: 10px 20px;
}
.leftblock.mapblock {padding: 0;}
.leftblock, .inverseblock .rightblock {width: 33.3%;}
.rightblock, .inverseblock .leftblock {width: 66.6%;}
.leftblock.mapblock {width: 33.7%;}
.infolist {width: 66.2%;}
.leftblock #bodymap, .leftblock #bodymap>ymaps {
	overflow: hidden;
	width: 100% !important;
	height: 100% !important;
}
.wrap.mapblock #map {
	width: 100%;
	height: 350px;
}
.borderblock {padding: 10px;}
.innerborderblock {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
input, textarea, button, .formopenfull {
	display: block;
	width: 100%;
	line-height: 40px;
	border: 0px none;
}
input, button, .formopenfull {height: 40px;}
textarea {height: 100px;}
input, textarea {
	margin-top: 5px;
	padding: 5px 10px;
	line-height: 25px;
}
button, .formopenfull, .textbuttons div {
	cursor: pointer;
	background: linear-gradient(to bottom, #002, #00F, #002);
	color: #AAF;
	padding: 0 10px;
	margin-top: 28px;
	line-height: 38px;
	box-shadow: 0 0 2px #005;
	text-transform: uppercase;
	text-align: center;
}
button:hover, .formopenfull:hover, .textbuttons div:hover {background: linear-gradient(to right bottom, #002, #00F, #002);}
label {
	display: block;
	padding-bottom: 10px;
	text-transform: uppercase;
}
button + p {
	padding: 0;
	text-align: center;
}
button + p::first-letter {padding: 0;}
#scrollarrow {
	display: none;
	cursor: pointer;
	position: fixed;
	bottom: 15px;
	right: 15px;
	width: 46px;
	height: 46px;
	opacity: 0.4;
	z-index: 9;
}
#scrollarrow:hover {opacity: 0.7;}
#scrollarrow.visible {display: block;}
.liveinternet {
	position: absolute;
	display: block;
	margin-top: -69px;
	left: 50%;
	margin-left: -44px;
	opacity: 0.5;
}
@media (max-width: 950px) {
	#scrollarrow.visible {display: none;}
	.wrap {width: calc(100% - 20px);}
}


.headercontacts {min-height: 83px;}
.headerlinks {
	width: 100%;
	height: 25px;
	line-height: 16px;
	opacity: 0.5;
}
.path::before {
	content: '';
	display: inline-block;
	vertical-align: top;
	width: 11px;
	height: 11px;
	margin: 5px 3px 0 0;
}
#favorite {float: right;}
#favorite::before {
	content: '';
	display: inline-block;
	vertical-align: top;
	width: 16px;
	height: 16px;
	margin: 2px 6px 0 0;
}
.headerlogo {
	margin-top: -5px;
	padding-left: 10px;
}
.headerlogo, .headerbuttons {width: 150px;}
.headercenter {
	width: calc(100% - 300px);
	text-align: center;
	padding-top: 2px;
	padding-right: 20px;
}
.headercenter span:not(.headerphone) {
	display: inline-block;
	width: calc(50% - 112px);
	height: 40px;
	vertical-align: top;
}

.headerphone a {
	color: #fff;
	text-shadow: 0 0 1px #00f, 0 0 2px #00f;
}

.headerphone {white-space: nowrap;}
.headerbuttons {padding-top: 6px;}
.headerbutton {
	position: absolute;
	width: 157px;
	height: 35px;
	right: 0px;
	text-align: left;
	line-height: 32px;
	overflow: hidden;
}
.callform {padding: 20px;}
.callhead {
	cursor: pointer;
	text-align: right;
	padding: 0 5px;
}
.headermenu, .infohead {
	margin: -5px 0 2px 0;
	line-height: 21px;
}
.headermenu.stick {
	margin-top: 0;
	position: fixed;
	top: 0;
}
#mobilemenu {
	display: none;
	cursor: pointer;
	text-align: center;
	height: 39px;
	padding-top: 8px;
}
.headermenu div {width: 100%;}
.headermenu ul {
	list-style-type: none;
	padding: 10px 0 0 0;
	margin: 0;
	width: 100%;
	display: flex;
}
.headermenu li {
	display: block;
	width: 14.2%;
	text-align: center;
}
.headermenu a, .headermenu a:visited {
	display: block;
	width: 100%;
	height: 31px;
}
.headermenu li span {position: relative;}
.headermenu li:first-of-type span::after, .headermenu li:last-of-type span::after {
	content: '';
	display: block;
	position: absolute;
	top: 2px;
	width: 25px;
	height: 25px;
}
.headermenu li:first-of-type span::after {left: -35px;}
.headermenu li:last-of-type span::after {right: -35px;}
.bottommenu, .menublock, .marksblock {display: none;}
.menuhead {
	width: 100%;
	text-align: center;
	margin: 8px 0 5px 0;
}
.menublock ul, .marksblock ul, .marksblock ul li, .infoblock ul, .servicelist {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	list-style-type: none;
	padding: 0 5px 5px;
	justify-content: space-around;
}
.marksblock ul li {padding: 0;}
.menublock ul li, .marksblock ul ul li, .infoblock ul li, .servicelist>li {
	width: 33.3%;
	padding: 5px;
}
.menublock ul ul {
	padding: 2px;
	display: none;
}
.menublock ul ul li {
	width: 50%;
	display: inline-block;
	padding: 2px;
}
.menublock ul ul li:nth-of-type(odd):last-of-type, .marksblock ul ul ul li {width: 100%;}
.menublock a, .menublock span, .marksblock a, .marksblock span, .infoblock a, .infoblock span, .servicelist>li>a, .servicelist>li>noindex>a {
	display: block;
	width: 100%;
	line-height: 30px;
	padding: 0 10px;
	white-space: nowrap;
	overflow: hidden;
}
.menublock ul ul a, .menublock ul ul span {line-height: 20px;}
.servicelist li {position: relative;}
.serviceblock li:hover>ul {display: block;}
.serviceblock li:hover>ul ul {left: -100%;}
.servicelist>li:nth-of-type(3n+1):hover>ul ul {left: 100%;}
.servicelist>li:nth-of-type(3n+2):hover>ul ul ul {left: calc(100% - 10px);}
.servicelist ul li, .servicelist ul a {
	display: block;
	width: 100%;
}
.servicelist ul a {
	height: 100%;
	padding: 5px 10px;
}
.servicelist ul {
	display: none;
	width: calc(100% - 10px);
	position: absolute;
	top: 38px;
	left: 0;
	margin: 12px 5px;
	padding: 0;
}
.servicelist ul ul {top: -15px;}
.servicelist ul::before, .servicelist ul::after {
	content: '';
	display: block;
	position: absolute;
	top: -10px;
}
.servicelist ul::before {
	left: 50%;
	margin-left: -10px;
	border-right: 10px solid transparent;
	border-bottom: 10px solid #EFF;
	border-left: 10px solid transparent;
}
.servicelist li ul ul::before {
    left: 100%;
    margin-left: 0px;
    border-left: 10px solid #EFF;
    border-bottom: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid transparent;
    margin-top: 15px;
}
.servicelist>li:nth-of-type(3n+2) ul ul ul::before, .servicelist>li:nth-of-type(3n+1) ul ul::before {
    left: -20px;
    margin-left: 0px;
    border-left: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #EFF;
    border-top: 10px solid transparent;
    margin-top: 15px;
}
.servicelist ul::after {
	left: 0;
	width: 100%;
	height: 10px;
}
.headerbenefits {
	display: flex;
	flex-wrap: wrap;
	width: 900px;
	height: 57px;
	margin: 0 auto;
	text-align: center;
}
.headerbenefits>div {
	display: block;
	width: 20%;
	margin: 10px 2.5%;
	transform: skewX(-15deg);
	background: #00F;
	box-shadow: 0 0 2px #000;
	padding-top: 10px;
}
.headerbenefits>div:hover {
	margin: 8px 2.5% 12px 2.5%;
	box-shadow: 0 2px 2px #000;
}
.headerbenefits>div:nth-of-type(1) {background: linear-gradient(to bottom,#000,red,#000);}
.headerbenefits>div:nth-of-type(2) {background: linear-gradient(to bottom,#000,lime,#000);}
.headerbenefits>div:nth-of-type(3) {background: linear-gradient(to bottom,#000,lightgray,#000);}
.headerbenefits>div:nth-of-type(4) {background: linear-gradient(to bottom,#000,blue,#000);}
@media (max-width: 1200px) {.headermenu li:first-of-type span::after, .headermenu li:last-of-type span::after {display: none;}}
@media (max-width: 950px) {
	.headercontacts {padding: 0 10px;}
	.headerbenefits {width: 100%;}
}
@media (max-width: 905px) {
	#mobilemenu {display: block;}
	.headermenu ul {
		display: none;
		position: absolute;
		margin: 0 -10px;
		top: 39px;
		padding: 0;
		width: calc(100% + 20px);
		flex-wrap: wrap;
	}
	.headermenu li {
		width: 100%;
		padding-top: 7px;
	}
}
@media (max-width: 700px) {.headerphone {line-height: 40px;}}
@media (max-width: 525px) {
	.headerbenefits {display: none;}
	#favorite {
		width: 16px;
		white-space: nowrap;
		overflow: hidden;
	}
	.headerbuttons {display: none;}
	.headercenter {
		width: calc(100% - 150px);
		text-align: right;
		padding-right: 0;
	}
	.headercenter span:not(.headerphone) {display: none;}
}
@media (max-width: 350px) {
	.headercontacts {padding: 0 2px;}
	.headerlogo {padding: 0;}
	.headerphone {
		position: absolute;
		right: 0;
	}
}


.detail .leftblock {
	width: 42%;
	padding: 10px;
}
.detail .rightblock {width: 58%;}
.headtext {
	position: relative;
	width: 100%;
	padding: 8px 0 10px;
}
.headtext p {
	text-align: center;
	line-height: 35px;
}
.headtext p:last-of-type {line-height: 25px;}
.headtext p:first-letter {padding: 0;}
.headsell {
	position: absolute;
	padding: 5px 10px;
	top: 20px;
}
.headsell:hover {opacity: 1;}
.headsell:first-of-type {
	left: 0px;
	text-align: left;
}
.headsell:last-of-type {
	right: 0px;
	text-align: right;
}
.headsell:last-of-type span:first-of-type {margin-right: -2px;}
.headsell span {
	display: block;
	padding: 0 10px;
}
.headsellimg {
	margin-top: 5px;
	width: 150px;
	height: 30px;
}
.pricehead, .pricefooter {text-align: center;}
.pricehead {padding: 4px 24px 15px;}
.pricehead::before, .pricehead::after {
	content: '';
	display: block;
	position: absolute;
	width: 43px;
	height: 29px;
	top: 22px;
}
.pricehead::before {left: 0;}
.pricehead::after {right: 0;}
.pricefooter {
	position: absolute;
	width: calc(100% - 60px);
	left: 30px;
	bottom: 18px;
	text-align: center;
	opacity: 0.5;
}
.pricelist {
	list-style-type: none;
	padding: 0;
}
.pricelist li {position: relative;}
.pricelist li {
	height: 30px;
	margin: 3px 0;
}
.pricelist li span.zoom {
	display: none;
	cursor: pointer;
	position: absolute;
	bottom: 0;
	left: 13px;
	width: 15px;
	height: 15px;
}
.pricelist li:hover span.zoom {display: block;}
.pricelist li a, .pricelist li div {
	display: inline-block;
	height: 100%;
	line-height: 24px;
}
.pricelist li div {
	white-space: nowrap;
	overflow: hidden;
}
.pricelist li .listname span::after {
	content: '';
	display: inline-block;
	vertical-align: top;
	height: 100%;
	width: 100%;
	margin-left: 5px;
	opacity: 0.4;
}
.pricelist li span.zoom::after {display: none;}
.pricelist li a {
	width: 100%;
	padding: 0 7px 0 0;
}
.pricelist li img {
	display: block;
	position: absolute;
	left: 7px;
	bottom: 7px;
	width: 16px;
	height: 16px;
}
.pricelist li div {
	float: right;
	width: 75px;
	text-align: center;
}
.pricelist li div:nth-of-type(1) {
	width: 30px;
	float: left;
}
.pricelist li div.listname {
	width: calc(100% - 110px);
	float: none;
	text-align: left;
	padding: 0 7px;
}
.pricelist li div:nth-of-type(1), .pricelist li div:nth-of-type(4) {margin-right: 2px;}
.sliderblock {
	min-height: 410px;
	padding: 40px 40px 67px;
	position: relative;
}
.sliderarrow {
	position: absolute;
	width: 50px;
	height: 25px;
	left: -43px;
}
.sliderarrow:first-of-type {top: 14px;}
.sliderarrow:nth-of-type(2) {
	bottom: 13px;
	transform: scaleY(-1);
}
.sliderhead, .slidericon, .smallsliderimg, .sliderimg, .slidertext {position: absolute;}
.sliderhead, .slidertext {
	left: 0px;
	width: 100%;
	text-align: center;
}
.sliderhead {
	top: 5px;
	padding: 0 30px;
}
.slidertext {bottom: 7px;}
.slidericon {
	top: 13px;
	right: 0;
	opacity: 0.7;
}
.slidericon div {
	cursor: pointer;
	width: 30px;
	height: 30px;
	margin-bottom: 7px;
}
.smallsliderimg {
	cursor: pointer;
	top: 35%;
	left: 55%;
}
.smallsliderimg::after {
	content: '';
	display: none;
	position: absolute;
	bottom: 3px;
	right: 3px;
	width: 15px;
	height: 15px;
}
.smallsliderimg:hover::after {display: block;}
.smallsliderimg img {
	width: 100px;
	height: 80px;
	display: block;
}
.sliderimg {
	display: none;
	width: calc(100% - 80px);
}
.sliderimg:first-of-type {display: block;}
.sliderimg img {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: auto;
	opacity: 0.7;
}
.sliderlinks {
	position: absolute;
	top: 227px;
	left: 0;
	list-style-type: none;
	padding: 0;
	margin: 0;
	border-left: none;
	opacity: 0.8;
}
.sliderlinks li.listhead {
	position: absolute;
	top: -27px;
	left: 0;
}
.sliderlinks li {padding: 2px 10px;}
.moreimg {
	margin: 5px 0;
	display: flex;
	flex-wrap: wrap;
}
.moreimg div {
	width: 25%;
	padding: 5px;
}
.moreimg img {
	width: 100%;
	height: auto;
}
.moreimg img:hover {transform: scale(1.05);}
.mainimg {
	padding: 26px 25px;
	text-align: center;
}
.mainimg img {
	width: 100%;
	height: auto;
}
@media (max-width: 950px) {
	.detail .leftblock {
		width: 331px;
		padding: 10px 5px;
	}
	.detail .rightblock {width: calc(100% - 331px);}
	.moreimg {display: none;}
	.mainimg {padding: 26px 15px;}
}
@media (max-width: 850px) {
	.slidericon {top: 56px;}
	.sliderimg img {margin-top: 25px;}
}
@media (max-width: 800px) {.sliderimg img {margin-top: 35px;}}
@media (max-width: 750px) {.sliderimg img {margin-top: 65px;}}
@media (max-width: 700px) {
	.sliderimg img {margin-top: 95px;}
	.headsell {display: none;}
	.mainimg {padding: 26px 25px;}
	.mainimg, .mainimg + .rightblock {width: 100%;}
}
@media (max-width: 650px) {
	.sliderimg img {margin-top: 0;}
	.detail .leftblock, .detail .rightblock {width: 100%;}
	.sliderarrow {display: none;}
	.slidericon {top: 23px;}
	.pricefooter {
		position: relative;
		bottom: 0;
	}
}
@media (max-width: 520px) {
	.headtext p:last-of-type {display: none;}
	.headtext p {display: inline;}
	.headtext {
		padding: 10px 15px;
		text-align: center;
	}
}
@media (max-width: 500px) {
	.slidericon {top: 56px;}
	.sliderblock {min-height: 310px;}
}
@media (max-width: 450px) {
	.sliderimg{width: 100%;}
	.sliderblock {padding: 40px 0 67px;}
}
@media (max-width: 400px) {
	.sliderhead {font-size: 24px;}
}
@media (max-width: 350px) {
	.sliderblock {
		min-height: 280px;
		padding: 63px 0 0;
	}
}

.countersblock {margin: 10px 0;}
.counterblock {width: 50%;}
.counterblock p {
	text-align: center;
	padding: 0 22px;
	text-shadow: 0 0 5px #EFF;
}
.counterblock p::first-letter {padding-left: 0;}
.counter1, .counter4, .counter3, .counter2 {width: 240px !important;}
.counter1.flip-clock-wrapper {background:linear-gradient(to bottom,#000,blue,#000);}
.counter4.flip-clock-wrapper {background:linear-gradient(to bottom,#000,lightgray,#000);}
.counter3.flip-clock-wrapper {background:linear-gradient(to bottom,#000,lime,#000);}
.counter2.flip-clock-wrapper {background:linear-gradient(to bottom,#000,red,#000);}
.counter1.flip-clock-wrapper ul li a div div.inn {
	color: #009;
	box-shadow: 0 0 5px #02F inset, 0 0 10px #05F inset;
}
.counter4.flip-clock-wrapper ul li a div div.inn {
	color: #111;
	box-shadow: 0 0 5px #111 inset, 0 0 10px #111 inset;
}
.counter3.flip-clock-wrapper ul li a div div.inn {
	color: #040;
	box-shadow: 0 0 5px #092 inset, 0 0 10px #095 inset;
}
.counter2.flip-clock-wrapper ul li a div div.inn {
	color: #700;
	box-shadow: 0 0 5px #902 inset, 0 0 10px #905 inset;
}
.counter1 .flip-clock-dot {box-shadow: 0 0 5px rgba(0, 0, 0, 0.5), 0 0 1px #05F inset, 0 0 2px #05F inset;}
.counter4 .flip-clock-dot {box-shadow: 0 0 5px rgba(0, 0, 0, 0.5), 0 0 1px #111 inset, 0 0 2px #111 inset;}
.counter3 .flip-clock-dot {box-shadow: 0 0 5px rgba(0, 0, 0, 0.5), 0 0 1px #095 inset, 0 0 2px #095 inset;}
.counter2 .flip-clock-dot {box-shadow: 0 0 5px rgba(0, 0, 0, 0.5), 0 0 1px #905 inset, 0 0 2px #905 inset;}
@media (max-width: 480px) {.countersblock {display: none;}}


.placeblock ul {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	width: 700px;
	margin: 12px auto 10px;
	overflow: hidden;
}
.placeblock ul::before, .placeblock ul::after {
	content: '';
	display: block;
	position: absolute;
	width: 141px;
	height: 300px;
	top: 28px;
}
.placeblock ul::before {left: 0;}
.placeblock ul::after {right: 0;}
.placeblock li {
	width: 47%;
	margin: 4px 1.5%;
	padding-top: 3px;
}
.placemetro {
	cursor: pointer;
	display: inline-block;
	width: calc(100% - 132px);
	overflow: hidden;
	white-space: nowrap;
}
.placemetro::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	vertical-align: top;
	margin: 3px 5px 0 0;
}
.placemetro2 {
	cursor: pointer;
	display: inline-block;
	width: calc(100% - 132px);
	overflow: hidden;
	white-space: nowrap;
}
.placemetro2::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	vertical-align: top;
	margin: 3px 5px 0 0;
}
.placephone {
	float: right;
	width: 127px;
	padding-top: 1px;
}

.placephone a {
	display: inline-block;
}

.mapblock #map>ymaps {overflow: hidden;}
.infolist {padding: 0;}
.infolist ul {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 5px;
}
.infolist li {
	position: relative;
	display: block;
	width: 50%;
	height: 50px;
	line-height: 34px;
	padding: 5px;
}
.infolist li div {
	width: 100%;
	height: 100%;
	padding: 0 7px;
}
.infolist li:not(.fullinfolist) span:last-of-type {float: right;}
.fullinfolist span:last-of-type {display: none;}
.infolist li.fullinfolist {
	display: none;
	cursor: pointer;
	text-align: center;
	text-transform: uppercase;
}
.tableblock {padding: 21px 20px 20px;}
.pricetable {width: 100%;}
.pricetable td {
	height: 30px;
	width: 25%;
	padding: 0 20px;
}
.pricetable td:first-of-type {width: 50%;}
@media (max-width: 950px) {
	.placeblock ul::before, .placeblock ul::after {display: none;}
}
@media (max-width: 750px) {
	.mapblock.leftblock, .infolist {width: 100%;}
	.mapblock.leftblock {height: 250px;}
}
@media (max-width: 650px) {
	.placeblock li {
		width: 80%;
		margin: 4px 10%;
	}
}
@media (max-width: 500px) {
	.placeblock ul {width: 100%;}
	.placeblock li {
		width: 97%;
		margin: 4px 1.5%;
	}
	.infolist li {
		display: none;
		width: 97%;
		margin: 4px 1.5%;
		height: 30px;
		line-height: 24px;
		padding: 0;
	}
	.infolist li.infovisible, .infolist li.fullinfolist {display: block;}
}


.triangleblock {
	position: relative;
	width: 100%;
	min-height: 378px;
	overflow: hidden;
}
.triangleblock::after {
	content: '';
	display: block;
	position: absolute;
	width: 220px;
	height: 330px;
	bottom: 0;
	right: 0;
}
.centerpanel {
	position: absolute;
	left: 41%;
	bottom: 41%;
}
.centerpanel::before, .centerpanel::after {
	content: '';
	display: block;
	position: absolute;
	width: 30px;
	height: 30px;
}
.centerpanel::before {
	top: 8px;
	left: 10px;
}
.centerpanel::after {
	bottom: 8px;
	right: 10px;
}
.centerpanel div {
	margin: 0 auto;
	line-height: 47px;
	padding: 0 50px;
}
.trianglehead {
	padding: 26px 34px 8px;
	opacity: 0.7;
}
.trianglelist {
	width: 300px;
	padding: 0;
	margin: 6px 0 0 51px;
	opacity: 0.7;
	text-align: justify;
	line-height: 14px;
}
.trianglelist span {padding: 0 50%;}
.trianglelist li {
	position: relative;
	padding: 2px 0;
}
.trianglelist li:nth-of-type(4) {line-height: 22px;}
.trianglelist li:first-of-type::before {display: none;}
.trianglelist li:last-of-type::before {top: -29px;}
.trianglelist li::before {
	content: '';
	display: block;
	position: absolute;
	width: 14px;
	height: 35px;
	left: -34px;
	top: -15px;
	opacity: 0.7;
}
.trianglemotto {
	margin: -43px 0 0 41%;
	position: relative;
	width: 305px;
}
.trianglemotto::before {
	content: '';
	display: block;
	position: absolute;
	width: 124px;
	height: 82px;
	left: -147px;
	top: 28px;
}
@media (max-width: 950px) {
	.triangleblock {min-height: 200px;}
	.triangleblock::after {display: none;}
	.centerpanel div {
		padding: 0 45px;
		line-height: 40px;
	}
	.centerpanel::before {
		top: 4px;
		left: 8px;
	}
	.centerpanel::after {
		bottom: 4px;
		right: 8px;
	}
	.trianglemotto {margin: -115px 0 20px 55%;}
	.centerpanel {
		left: 55%;
		bottom: auto;
		top: 35px;
	}
}
@media (max-width: 725px) {
	.trianglemotto, .centerpanel, .trianglelist span, .trianglelist i {display: none;}
	.trianglelist, .trianglehead {
		width: 403px;
		margin: 0 auto;
	}
	.trianglehead {padding-left: 24px;}
	.trianglelist {padding-right: 22px;}
	.triangleblock {padding-bottom: 23px;}
}
@media (max-width: 500px) {.trianglelist, .trianglehead {width: calc(100% - 80px);}}


.questionblock {
	padding-top: 18px;
	text-align: center;
}
.questionblock::before {
	content: '';
	display: block;
	position: absolute;
	width: 250px;
	height: 180px;
	top: 38%;
}
.questionblock div:nth-of-type(2) {line-height: 64px;}
.questionblock div:nth-of-type(3) {
	margin-right: 7px;
	padding-top: 12px;
}
.questionblock div:nth-of-type(4) {
	margin-top: 190px;
	padding: 0 40px;
}
.advantages {
	display: flex;
	flex-wrap: wrap;
	padding: 20px 20px 30px 20px;
}
.advantagehead {
	width: 100%;
	height: 50px;
	text-align: center;
	margin-bottom: 12px;
}
.advantage {
	width: 50%;
	height: 90px;
	padding: 10px 0;
}
.advantagetext {
	width: calc(100% - 88px);
	height: 70px;
	display: table;
	opacity: 0.7;
}
.advantagetext span {
	display: table-cell;
	vertical-align: middle;
}
.advantage:nth-of-type(odd) {text-align: right;}
.advantageimg {
	position: relative;
	float: left;
	display: inline-block;
	width: 70px;
	height: 70px;
	padding: 5px;
	vertical-align: middle;
	margin: 0 15px 0 0;
}
.advantageimg span {
	display: block;
	width: 60px;
	height: 60px;
}
.advantage:nth-of-type(odd) .advantageimg {
	float: right;
	margin: 0 0 0 18px;
}
.advantageimg::after {
	content: '';
	opacity: 0.8;
	position: absolute;
	top: 50%;
	margin-top: -10px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
}
.advantage:nth-of-type(even) .advantageimg::after {
	border-left: 10px solid #e4fafd;
	right: -10px;
}
.advantage:nth-of-type(odd) .advantageimg::after {
	border-right: 10px solid #e4fafd;
	left: -10px;
}
@media (max-width: 850px) {
	.questionblock, .advantages {width: 100%;}
	.questionblock {
		text-align: left;
		padding: 18px 18% 0;
	}
	.questionblock div:nth-of-type(4) {
		margin: 20px 0;
		padding: 0;
		text-align: center;
	}
	.questionblock::before {
		right: 5%;
		top: 5%;
	}
}
@media (max-width: 700px) {
	.questionblock {padding: 18px 10% 0;}
	.questionblock::before {right: 0;}
}
@media (max-width: 550px) {
	.questionblock {padding: 18px 18px 0;}
	.advantage {
		width: calc(100% - 60px);
		margin-top: -40px;
	}
	.advantage:nth-of-type(2) {margin-top: 0;}
	.advantage:nth-of-type(odd) {margin-left: 60px;}
}
@media (max-width: 450px) {
	.advantage {
		width: 100%;
		margin-top: -30px;
	}
	.advantage:nth-of-type(odd) {margin-left: 0;}
}


.recommendhead {
	width: 100%;
	text-align: center;
	padding-top: 5px;
}
.recommendhead::before, .recommendhead::after {
	content: '';
	display: inline-block;
	width: calc(50% - 150px);
	height: 29px;
	vertical-align: top;
	margin: 8px 16px 0;
}
.recommendhead::before {background: url('/tmpl/img/smallstar2.png') right center repeat-x;}
.recommendhead::after {background: url('/tmpl/img/smallstar2.png') left center repeat-x;}
.feedback, .recommend {
	display: flex;
	flex-wrap: wrap;
	width: 33.3%;
	padding: 15px;
	text-align: center;
}
.recommend {width: 25%;}
.recommend a {display: block;}
.feedbackphoto, .recommendimg {
	width: 100%;
	position: relative;
	padding: 19px;
	margin-bottom: 5px;
}
.recommendimg {padding: 10px;}
.feedbackphoto img, .recommendimg img {
	width: 100%;
	height: auto;
}
.feedbackphoto img:hover {transform: scale(1.19);}
.recommendimg img:hover {transform: scale(1.09);}
.feedbackphoto::after, .recommendimg::after {
	content: '';
	position: absolute;
	left: 50%;
}
.feedbackphoto::after {
	margin-left: -20px;
	bottom: -20px;
	border-top: 20px solid #e4fafd;
	border-right: 20px solid transparent;
	border-left: 20px solid transparent;
}
.recommendimg::after {
	margin-left: -10px;
	bottom: -10px;
	border-top: 10px solid #e4fafd;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
.feedbackhead {
	width: 50%;
	padding: 0 25px;
}
.feedbackhead div:last-of-type {margin-top: -9px;}
.feedbackhead, .feedbackhead+.feedbackhead div:last-of-type {text-align: left;}
.feedbackhead+.feedbackhead, .feedbackhead div:last-of-type {text-align: right;}
.feedbacktext, .recommendname {	
	width: 100%;
	padding: 3px 0 6px 0;
}
.feedbacktext {margin-top: 8px;}
@media (max-width: 700px) {
	.feedback {width: 50%;}
	.feedback:nth-of-type(3n) {display: none;}
}
@media (max-width: 550px) {
	.feedbackphoto {padding: 9px;}
	.feedbackphoto img:hover {transform: scale(1.09);}
	.feedbackphoto::after {
		margin-left: -10px;
		bottom: -10px;
		border-width: 10px 10px 0 10px;
	}
	.recommend {width: 50%;}
}
@media (max-width: 420px) {
	.feedback {width: 100%;}
	.feedbackphoto img:hover {transform: none;}
}


.formblock {padding: 10px 0;}
.formblock .rightblock {min-height: 394px;}
.formblock>div {padding: 2px 11px;}
.requestform {
	position: absolute;
	width: calc(100% - 22px);
	background: rgba(0, 55, 255, 0.7);
	padding: 20px 20px 20px 20px;
	color: #EEF;
	box-sizing: border-box;
	box-shadow: 0 0 5px #005 inset;
	margin-top: 39px;
}
.requestform::before {
	content: '';
	position: absolute;
	top: -43px;
	left: 5%;
	display: block;
	width: 90%;
	height: 43px;
	background: url('/tmpl/img/chain.png') center bottom no-repeat;
	background-size: 100% 100%;
}
.formtext {
	min-height: 79px;
	padding-bottom: 25px;
	text-align: center;
}
.formopenfull {position: relative;}
.formopenfull::before {
	content: 'кликните мышкой';
	position: absolute;
	top: -40px;
	left: 0px;
	padding: 0 20px 0 10px;
	opacity: 0.5;
}
.formfull {display: none;}
h1 {
	text-align: center;
	padding-bottom: 5px;
	position: relative;
}
h1::before, h1::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 10px;
	width: 32px;
	height: 20px;
}
h1::before {
	transform: scaleX(-1);
	margin-left: -50px;
}
h1::after {margin-left: 20px;}
p {
	padding: 5px 0;
	text-align: justify;
}
p::first-letter {padding-left: 25px;}
h2 {
	width: 100%;
	text-align: center;
	margin: 8px 0 5px 0;
}
.leftimg, .rightimg {
	cursor: pointer;
	margin: 10px 10px 0;
}
.leftimg {
	float: left;
	margin-left: 0;
}
.rightimg {
	float: right;
	margin-right: 0;
}
.notextimg {
	width: 100%;
	height: auto;
}
.notextmotto {text-align: center;}
p.notextmotto::first-letter {padding-left: 0;}
.notextimg + .notextmotto {margin-top: 5px;}
.textblock ul {
	margin: 5px 0 10px 20px;
	list-style-type: none;
}
.textblock ul li::before {
	content: '';
	display: inline-block;
	width: 11px;
	height: 11px;
	vertical-align: middle;
	margin: 0 4px 0 0;
}
.textblock p {
	width: 100%;
	padding: 5px 10px;
}
.textblock {padding: 7px 15px;}
.landinglist {
	list-style-type: none;
	padding: 12px 0 0;
}
.landinglist li {
	display: block;
	width: 100%;
	height: 69px;
	margin-bottom: 11px;
	padding-top: 5px;
	text-align: center;
}
.landinglist li:last-of-type {margin: 0;}
.landinglist li:nth-of-type(4) {
	cursor: pointer;
	height: 32px;
	padding-top: 2px;
}
.landinglist li:nth-of-type(5) {height: 98px;}
.textbuttons {display: flex;}
.textbuttons div {
	width: 50%;
	margin: 10px 0;
}
.textbuttons div:first-of-type {margin-right: 4px;}
.textbuttons div:last-of-type {margin-left: 4px;}
.landinglist li span {
	display: block;
	width: 100px;
	height: 30px;
	margin: 0 auto;
}
.landinglist li:nth-of-type(5) span {margin-top: 4px;}
@media (max-width: 950px) {
	.formblock .leftblock {width: calc(100% - 300px);}
	.formblock .rightblock {width: 300px;}
}
@media (max-width: 750px) {
	.inverseblock .leftblock, .inverseblock .rightblock {width: 100%;}
}
@media (max-width: 550px) {
	h1::before, h1::after {display: none;}
}
@media (max-width: 370px) {
	.notextmotto {line-height: 31px;}
	.notextimg + .notextmotto {padding-bottom: 25px;}
}

.infohead {
	cursor: pointer;
	text-align: center;
	line-height: 50px;
	margin: 5px 0;
}
.infohead span {
	display: none;
	position: absolute;
	margin: 3px 0 0 13px;
}
.infohead:hover span {display: inline;}
.infoblock {
	display: none;
	padding-bottom: 0;
}
.infoblock li.listhead {
	width: 100%;
	padding-top: 10px;
	text-align: center;
}

.footerblock {
	margin-top: 17px;
	padding-bottom: 0px;
}
.footerblock::after {
	content: '';
	display: block;
	width: 100%;
	height: 20px;
}
.footerleft, .footerright {
	width: 50%;
	padding: 0 10px 10px 10px;
	opacity: 0.5;
}
.footerright {
	margin-top: -7px;
	padding-bottom: 7px;
	text-align: right;
	opacity: 0.7;
}


body {
	background: url('/tmpl/img/mainbgo.png') fixed #EFF;
	background-size: 100% 100%;
}
.vline {background: linear-gradient(to right, #EFF, transparent, #EFF);}
.wrap::before, .wrap::after {background: linear-gradient(to bottom, #EFF, transparent, #EFF);}
.headercontacts, .footerblock::after, .menublock ul ul, .servicelist ul {
	background: url('/tmpl/img/mainbgo.png') fixed #EFF;
	background-size: 100% 100%;
}
.headermenu, .countersblock, .footerblock, .infohead {
	background: linear-gradient(to bottom, #EFF, transparent, #EFF), url('/tmpl/img/mainbgo.png') fixed #EFF;
	background-size: 100% 100%;
}
.headerbutton {background: linear-gradient(to bottom, #EFF, transparent, #EFF), #1762bd;}
.headerbutton.callback {
	background: linear-gradient(to bottom, #EFF, transparent 10%, transparent 90%, #EFF), url('/tmpl/img/mainbgo.png') center, #1762bd;
	background-size: auto 100%;
}
.pricelist li div, .menublock a, .menublock span, .marksblock a, .marksblock span, .infoblock a,
.infoblock span, .servicelist>li>a, .servicelist>li>noindex>a {background: rgba(235, 255, 255, 0.2);}
.whiteblock, .advantageimg:hover, .pricelist li div:hover, .innerborderblock, .landinglist li:hover, .menublock a,
.infolist li div, .marksblock a:hover, .infoblock a:hover, .infoblock .listhead span,
.servicelist>li>a, .servicelist>li>noindex>a:hover, .servicelist ul li {background: rgba(235, 255, 255, 0.5);}
.fullinfolist div {background: rgba(235, 255, 255, 0.5) !important;}
.borderblock {background: url('/tmpl/img/corner-tr.png') 100% 0% no-repeat, url('/tmpl/img/corner-br.png') 100% 100% no-repeat, url('/tmpl/img/corner-bl.png') 0% 100% no-repeat, url('/tmpl/img/corner-tl.png') 0% 0% no-repeat;}
.detail .innerborderblock {background: url('/tmpl/img/akppo.png') 7% 100% no-repeat, rgba(225, 255, 255, 0.5);}
.formblock {background: url('/tmpl/img/detail1o.png') 100% 85% no-repeat, rgba(225, 255, 255, 0.5);}
.triangleblock {background: linear-gradient(to right bottom, #005, #00F 49%, transparent 50%, transparent);}
.textblock.wrap {background: url('/tmpl/img/detail3o.png') 0% 0% no-repeat, url('/tmpl/img/toolo.png') 100% 100% no-repeat, rgba(225, 255, 255, 0.5);}
.centerpanel, .sliderlinks {background: #EFF;}
input, textarea {background: url('/tmpl/img/input.png') top right no-repeat #3e6dfd;}
.modalrequest, .modalcall, .modalblock .close {background: rgba(33, 66, 255, 0.8);}
input:focus {background: linear-gradient(to bottom, #3e6dfd, #3e6dfd 5px, transparent 6px), url('/tmpl/img/textarea.png') center 5px repeat-y #3e6dfd;}
textarea:focus {background: linear-gradient(to bottom, #3e6dfd, #3e6dfd 2px, transparent 3px), url('/tmpl/img/textarea.png') center 2px repeat-y #3e6dfd;}
.headerbutton input, .headerbutton input:focus {background: url('/tmpl/img/input.png') right no-repeat #EFF;}
ymaps input, ymaps input:focus {background: transparent;}
.headerblock::before, .headerblock::after, .feedbacktext::before, .feedbacktext::after, .placeblock li::before,
.placeblock li::after, h2, .advantage::before, .advantage::after, .placehead::after, .placetext::after,
.pricetable td::before, .pricetable td::after, .infolist li::after, .menuhead,
.sliderlinks li::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
.infolist li.fullinfolist::after {background: linear-gradient(to right, transparent, #EFF, transparent, transparent, #EFF, transparent);}
.feedback:nth-of-type(3n+2)::before, .feedback:nth-of-type(3n+2)::after, .leftblock::after, .advantages::after,
.pricetable::before, .pricetable::after, .recommend::before {background: linear-gradient(to bottom, transparent, #EFF, transparent);}
.headtext {background: linear-gradient(to bottom, #FFF, transparent, #FFF);}
.placeinfo li::after, .placeinfo li::before, .centerpanel div::after {background: linear-gradient(to right, transparent, #00F, transparent);}
.modalblock {background: rgba(0, 0, 25, 0.7);}
.placedetail {background: linear-gradient(to bottom, #79F, #EFF 10%, #EFF 90%, #79F);}
.advantagehead::before, .advantagehead::after {background: url('/tmpl/img/smallstar.png');}
.placehead {background: url('/tmpl/img/smallstar.png') 50% 50% no-repeat;}
.headercenter span:not(.headerphone) {background: url('/tmpl/img/smallstar.png') center no-repeat;}
.questionblock {background: url('/tmpl/img/smallstar2.png') 8% 96% repeat-x;}
.placeinfo li, .pricelist li span::after {background: url('/tmpl/img/starpoint.png') 0% 65% repeat-x;}
.pricetable td {background: url('/tmpl/img/starpoint2.png') 0% 60% repeat-x;}
.recommendname {background: url('/tmpl/img/starpoint.png') 0% 47% no-repeat, url('/tmpl/img/starpoint.png') 100% 47% no-repeat;}
.redline {background: linear-gradient(to right, transparent, red, transparent);}
.yellowline {background: linear-gradient(to right, transparent, yellow, transparent);}
.aqualine {background: linear-gradient(to right, transparent, aqua, transparent);}
.blueline {background: linear-gradient(to right, transparent, blue, transparent);}
.violetline {background: linear-gradient(to right, transparent, darkviolet, transparent);}
.greenline {background: linear-gradient(to right, transparent, green, transparent);}
.limeline {background: linear-gradient(to right, transparent, lime, transparent);}
.orangeline {background: linear-gradient(to right, transparent, orange, transparent);}
.grayline {background: linear-gradient(to right, transparent, gray, transparent);}
.infolist li:nth-of-type(7n+1) div:hover {background: rgba(255, 55, 55, 0.5);}
.infolist li:nth-of-type(7n+2) div:hover {background: rgba(255, 155, 55, 0.5);}
.infolist li:nth-of-type(7n+3) div:hover {background: rgba(255, 255, 55, 0.5);}
.infolist li:nth-of-type(7n+4) div:hover {background: rgba(55, 255, 55, 0.5);}
.infolist li:nth-of-type(7n+5) div:hover {background: rgba(55, 255, 255, 0.5);}
.infolist li:nth-of-type(7n+6) div:hover {background: rgba(55, 55, 255, 0.5);}
.infolist li:nth-of-type(7n+7) div:hover {background: rgba(255, 55, 255, 0.5);}
.feedbacktext {background: url('/tmpl/img/thumb.png') right bottom no-repeat;}
@media (max-width: 950px) {
	.triangleblock {background: linear-gradient(to right bottom, #005, #00F 49%, transparent 50%, transparent);}
}
@media (max-width: 850px) {
	.questionblock {background: transparent;}
	.questionblock::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
}
@media (max-width: 800px) {
	.headermenu li {
		background: url('/tmpl/img/mainbgo.png') fixed #EFF;
		background-size: 100% 100%;
	}
	.headermenu li::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
}
@media (max-width: 750px) {
	.inverseblock .leftblock::after, .mapblock::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
}
@media (max-width: 700px) {
	.mainimg::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
}
@media (max-width: 650px) {
	.detail .innerborderblock {background: rgba(225, 255, 255, 0.5);}
	.detail .leftblock::after {background: linear-gradient(to right, transparent, #EFF, transparent);}
}


ymaps input, ymaps input:hover, .sliderimg img, img.logoimg, .errorblock img, img.notextimg {box-shadow: none;}
.menublock ul ul {box-shadow: 0 0 150px #EFF inset;}
.headermenu, .countersblock, .footerblock, .headerbutton, .infohead {box-shadow: 0 0 5px #EFF, 0 0 5px #EFF, 0 0 5px #EFF;}
.headerbutton:not(.callback):hover {box-shadow: 0 0 1px #EFF, 0 0 3px #EFF, 0 0 5px #EFF;}
.headerbutton.callback {box-shadow: 0 0 10px #EFF inset, 0 0 20px #EFF inset, 0 0 40px #EFF inset, 0 0 5px #EFF, 0 0 5px #EFF, 0 0 5px #EFF;}
.whiteblock, .formblock, .placeblock, .placedetail, .borderblock, .servicelist ul {box-shadow: 0 0 5px #59D, 0 0 5px #59D;}
.modalrequest, .modalcall, .modaldiscount {box-shadow: 0 0 5px #005 inset, 0 0 5px #59D, 0 0 5px #59D;}
.centerpanel, img, .mapblock #map>ymaps {box-shadow: 0 0 5px #59D;}
.close {box-shadow: 0 0 3px #EFF inset, 0 0 1px #EFF inset, 0 0 1px #0AF;}
.close:hover {box-shadow: 0 0 5px #EFF inset, 0 0 3px #EFF inset, 0 0 1px #EFF inset, 0 0 1px #0AF;}
.sliderlinks {box-shadow: 0 0 10px #EFF inset, 0 0 20px #EFF inset, 0 0 50px #EFF inset, 0 0 5px #8AF;}
.feedbackphoto, .landinglist li, .recommendimg {box-shadow: 0 0 5px #EFF inset, 0 0 10px #EFF inset, 0 0 15px #EFF inset, 0 0 5px #8AF;}
.advantageimg {box-shadow: 0 0 1px #EFF inset, 0 0 2px #EFF inset, 0 0 5px #EFF inset, 0 0 5px #8AF;}
.pricelist li div, .menublock a, .menublock span, .marksblock a, .marksblock span, .infoblock a,
.infoblock span, .servicelist>li>a, .servicelist>li>noindex>a {box-shadow: 0 0 4px #EFF inset, 0 0 7px #EFF inset, 0 0 2px #59D;}
.feedbackphoto img, .recommendimg img {box-shadow: 0 0 5px #EFF, 0 0 10px #EFF, 0 0 15px #EFF;}
.advantageimg span {box-shadow: 0 0 1px #EFF, 0 0 2px #EFF, 0 0 5px #EFF;}
input, textarea {box-shadow: 0 0 5px #00F inset, 0 0 15px #00F inset;}
input:hover, input.error:hover {box-shadow: 0 0 2px #00F inset, 0 0 5px #00F inset;}
.headerbutton input {box-shadow: 0 0 5px #05F inset, 0 0 10px #05F inset;}
.headerbutton input:hover, .headerbutton input.error:hover {box-shadow: 0 0 5px #05F inset, 0 0 10px #05F inset, 0 0 15px #05F inset;}
input.error {box-shadow: 0 0 5px #F00 inset, 0 0 15px #F00 inset;}
.headerbutton input.error {box-shadow: 0 0 5px #D00 inset, 0 0 15px #C05 inset;}
.headermenu a, .headermenu a:visited, .trianglelist li, .pricehead, #mobilemenu {text-shadow: 0 0 1px #00F, 0 0 2px #00F;}
.pricetable td:hover {text-shadow: 0 0 2px #00F;}
.callhead {text-shadow: 0 0 1px #1762bd, 0 0 2px #1762bd;}
.headermenu li:nth-of-type(3n+1) a:hover {text-shadow: 0 0 1px #0FF, 0 0 2px #00F;}
.headermenu li:nth-of-type(3n+2) a:hover {text-shadow: 0 0 1px #F00;}
.headermenu li:nth-of-type(3n) a:hover {text-shadow: 0 0 1px #0F0, 0 0 2px #00F;}
.advantagehead, .questionblock, h2, .recommendhead, .errorblock, .menuhead, .infohead,
.recommend a:hover {text-shadow: 0 0 5px #05F;}
.headerlinks a:hover, .infohead span {text-shadow: 0 0 1px #EFF;}
.headerbenefits {text-shadow: 0 0 1px #EFF, -1px -1px 1px #000;}
.advantagetext:hover, .sliderhead, .slidertext {text-shadow: 0 0 1px #EFF, 0 0 5px #EFF, 0 0 10px #EFF, 0 0 15px #EFF, 0 0 20px #EFF;}
.placeinfo span {text-shadow: 9px 0 5px #EFF, -9px 0 5px #EFF, 9px 0 5px #EFF, -9px 0 5px #EFF, 9px 0 5px #EFF,
	-9px 0 5px #EFF, 9px 0 5px #EFF, -9px 0 5px #EFF, 9px 0 5px #EFF, -9px 0 5px #EFF;}
.placemetro, .placephone, .pricelist, .centerpanel, .infoblock .listhead {text-shadow: -1px 0 1px #55F;}
.notextmotto {text-shadow: -1px 0px 1px #55F, 0px -1px 2px #55F, 1px 1px 1px #9AA;}
.pricefooter {text-shadow: 0 0 1px #EFF;}
@media (max-width: 800px) {
	.headermenu ul {box-shadow: 0 0 5px #EFF, 0 0 5px #EFF, 0 0 5px #EFF}
}
@media (max-width: 550px) {
	.advantagetext {text-shadow: 0 0 1px #EFF, 0 0 5px #EFF, 0 0 10px #EFF, 0 0 15px #EFF, 0 0 20px #EFF;}
}
@media (max-width: 525px) {.headerphone {text-shadow: 0 0 1px #00F, 0 0 2px #00F;}}


body, .pricelist li a, .infoblock .listhead, .servicelist ul a:hover {color: #002;}
.placemetro, .placephone, ymaps input {color: #000;}
.placemetro:hover, .placephone:hover, .advantagehead, .questionblock, h2, .errorblock, .menuhead, .infohead {color: #FFF;}
input, textarea, button, .formopenfull, .headercenter, .headerbuttons, .headerlinks, .headerlinks a, .headerlinks a:hover,
.headerlinks a:visited, .headermenu a, .headermenu a:visited, .trianglehead, .trianglelist, .placelink a:hover,
.formopenfull::before, .placehead, .recommendhead, .modalrequest, .modalcall, .headerbutton p, #mobilemenu,
.headerbenefits, .recommend a:hover, .sliderlinks li.listhead {color: #EFF;}
.headermenu li:nth-of-type(3n+1) a:hover {color: #0DD;}
.headermenu li:nth-of-type(3n+2) a:hover {color: #D00;}
.headermenu li:nth-of-type(3n) a:hover {color: #0D0;}
.blue, .advantagetext, .trianglemotto, .headerbutton input, .headerbutton p, a, a:visited,
.pricelist li a:hover, .sliderhead, .fullinfolist, .modaldiscount, .pricefooter, .listhead, .centerpanel,
.notextmotto {color: #00F;}
.red {color: #D00;}
.aqua, .placeinfo, .close, a:hover, .pricehead, #mobilemenu:hover, .fullinfolist:hover {color: #0AF;}
.green {color: #0C0;}
*:-moz-placeholder {color: #EFF;}
*:-webkit-input-placeholder {color: #EFF;}
*::-moz-placeholder {color: #EFF;}
*::-webkit-input-placeholder {color: #EFF;}
.headerbutton input:-moz-placeholder {color: #05F;}
.headerbutton input:-webkit-input-placeholder {color: #05F;}
.headerbutton input::-moz-placeholder {color: #05F;}
.headerbutton input::-webkit-input-placeholder {color: #05F;}


@font-face {
	font-family: narrow;
	font-display: swap;
	src: url('/tmpl/sansnarrow.woff2');
}
body, input, textarea, button, .formopenfull {
	font-family: narrow, arial;
	font-size: 15px;
	letter-spacing: 1px;
}
.formopenfull::before, .modaldiscount, .infoblock .listhead, .pricehead, .pricefooter {letter-spacing: 2px;}
.questionblock div:nth-of-type(2), .notextmotto {letter-spacing: 5px;}
.formtext {letter-spacing: 6px;}

.feedbackhead div:last-of-type, .formopenfull::before {font-size: 12px;}
.modalblock button + p, .menublock ul ul, .infohead span {font-size: 13px;}
.headerlinks {font-size: 14px;}
.headsell, .counterblock p, button + p {font-size: 15px;}
.sliderlinks li.listhead {font-size: 16px;}
.headtext p:last-of-type, .landinglist li:nth-of-type(5), .recommendname {font-size: 17px;}
.headsell span:first-of-type, .counterblock p, .placehead, .headerbuttons, .placeinfo {font-size: 18px;}
.placelink span {font-size: 19px;}
.requestform, input, button, .formopenfull, textarea, .trianglelist, .questionblock div:nth-of-type(4),
.headermenu, .errorblock, .centerpanel, .infohead {font-size: 20px;}
.headtext p, .slidertext {font-size: 21px;}
.trianglehead, .pricefooter, .modaldiscount {font-size: 26px;}
.advantagehead, .questionblock, h2, .headerphone, .sliderhead, .pricehead, .recommendhead, .menuhead, .formtext {font-size: 30px;}
.headtext p:first-of-type {font-size: 32px;}
.notextmotto {font-size: 35px;}
.trianglemotto {font-size: 42px;}
.questionblock div:nth-of-type(2) {font-size: 60px;}
.footerblock, .advantage, .feedbackname, .formtext {font-weight: bold;}
.feedbackhead, .headerlinks, .questionblock div:nth-of-type(4), .placelink, .formopenfull::before,
#favorite, .infohead span {text-transform: lowercase;}
.headerbuttons, .advantage, .headtext p:last-of-type span:hover, .trianglehead,
.trianglelist, .headerbenefits, .infohead, .infoblock .listhead, .formtext {text-transform: uppercase;}
.feedbackname {text-transform: capitalize;}
button + p, .close {text-transform: none;}
@media (max-width: 950px) {.pricefooter {letter-spacing: 7px;}}
@media (max-width: 700px) {.headerphone {font-size: 20px;}}
@media (max-width: 370px) {.notextmotto {font-size: 30px;}}


.borderblock, .innerborderblock, .smallsliderimg {border: 2px solid #EFF;}
.pricelist li div, .mainimg img, .infolist li div, .landinglist li, .menublock a, .menublock span, .menublock ul ul,
.marksblock a, .marksblock span, .infoblock a, .infoblock span, .servicelist>li>a, .servicelist>li>noindex>a,
.servicelist ul, .sliderlinks, .moreimg img {border: 3px double #EFF;}
.menublock ul ul {border-top: 0 none;}
.headerblock, .leftblock, .rightblock, .headtext, .placeblock li, .wrap, .feedback:nth-of-type(3n+2),
.feedbacktext, .advantages, .advantage, .placehead, .placeinfo li, .placetext, .pricetable,
.pricetable td, .recommend, .infolist li, .headermenu li, .centerpanel div, .sliderlinks li {position: relative;}
.headerblock::before, .headerblock::after, .leftblock::after, .headtext::after,
.placeblock li::before, .placeblock li::after, .wrap::before, .wrap::after,
.advantagehead::before, .advantagehead::after, .feedback:nth-of-type(3n+2)::before,
.feedback:nth-of-type(3n+2)::after, .feedbacktext::before, .feedbacktext::after, .advantage::after, .advantages::after,
.advantage:nth-of-type(2)::before, .advantage:nth-of-type(3)::before, .placehead::after, .placeinfo li::after,
.placeinfo li:first-of-type::before, .placetext::after, .pricetable::before, .pricetable::after, .pricetable td::after,
.pricetable tr:first-of-type td::before, .recommend::before, .infolist li::after, .headermenu li::after,
.centerpanel div::after, .sliderlinks li::after {
	content: '';
	display: block;
	position: absolute;
}
.recommendhead+.recommend::before, .centerpanel div:last-of-type::after {display: none;}
.advantagehead::before, .advantagehead::after {
	display: inline-block;
	width: 129px;
	height: 29px;
	vertical-align: top;
	margin-top: 7px;
}
.advantagehead::before {margin-left: -164px;}
.advantagehead::after {margin-left: 35px;}
.wrap::before, .wrap::after {
	width: 25px;
	height: 10px;
	top: 50%;
	margin-top: -5px;
}
.wrap::before {left: -25px;}
.wrap::after {right: -25px;}
.wrap.borderblock::before {left: -27px;}
.wrap.borderblock::after {right: -27px;}
.headerblock::before, .headerblock::after {
	height: 1px;
	left: 50%;
	width: 900px;
	margin-left: -450px;
}
.headerblock::before {top: 20px;}
.headerblock::after {bottom: 0px;}
.leftblock::after, .feedback:nth-of-type(3n+2)::before, .feedback:nth-of-type(3n+2)::after, .pricetable::before,
.pricetable::after, .recommend::before {
	width: 1px;
	height: 100%;
	top: 0px;
}
.advantages::after {
	width: 1px;
	height: 77%;
	top: 17%;
	left: 50%;
}
.feedback:nth-of-type(3n+2)::before, .recommend::before {left: 0px;}
.leftblock::after, .feedback:nth-of-type(3n+2)::after {right: 0px;}
.placeblock li::before, .placeblock li::after, .feedbacktext::before, .feedbacktext::after, .advantage::after,
.advantage:nth-of-type(2)::before, .advantage:nth-of-type(3)::before, .placehead::after, .placeinfo li::after,
.placeinfo li::before, .placetext::after, .pricetable td::before, .pricetable td::after, .centerpanel div::after,
.sliderlinks li::after {
	height: 1px;
	left: 0px;
	width: 100%;
}
.pricetable::before {right: 50%;}
.pricetable::after {right: 25%;}
.placeinfo li::before {
	top: 2px;
	opacity: 0.2;
}
.placeinfo li::after {
	bottom: -2px;
	opacity: 0.2;
}
.infolist li::after {
	width: 50%;
	height: 1px;
	left: 25%;
	top: 50%;
}
.infolist li.fullinfolist::after {
	left: 0;
	width: 100%;
}
.placeblock li::before, .feedbacktext::before, .advantage:nth-of-type(2)::before,
.advantage:nth-of-type(3)::before {top: 0px;}
.pricetable td::before {top: -2px;}
.placeblock li::after, .feedbacktext::after, .advantage::after, .placehead::after, .centerpanel div::after {bottom: 0px;}
.pricetable td::after {bottom: -1px;}
.placetext::after {bottom: 6px;}
.placemetro::after {
	content: '---------------------------------------------------------------------------------------------------------------------------------------------------------------------------';
	font-size: 10px;
	letter-spacing: -1px;
	vertical-align: top;
	line-height: 19px;
	color: #FFF;
	opacity: 0.3;
	margin-left: 7px;
}
@media (max-width: 950px) {
	.wrap::before, .wrap::after {display: none;}
}
@media (max-width: 850px) {
	.questionblock::after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
}
@media (max-width: 800px) {
	.headermenu li::after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
}
@media (max-width: 750px) {
	.inverseblock .leftblock::after, .mapblock::after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
	.formblock .leftblock::after {display: none;}
}
@media (max-width: 700px) {
	.mainimg::after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
}
@media (max-width: 650px) {
	.detail .leftblock::after {
		width: 100%;
		height: 1px;
		top: auto;
		bottom: 0;
	}
}
@media (max-width: 550px) {
	.advantages::after, .advantage::after, .advantage:nth-of-type(3)::before, .advantagehead::before,
	.advantagehead::after {display: none;}
}
@media (max-width: 400px) {
	.pricetable::before, .pricetable::after {display: none;}
}


.modalblock {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.placedetail, .modalrequest, .modalcall, .modaldiscount, .modalimg {
	display: flex;
	flex-wrap: wrap;
	position: absolute;
	top: -100%;
	left: 50px;
}
.placedetail, .modalrequest, .modalcall, .modaldiscount {width: 600px;}
.placedetail {display: none;}
.modalrequest, .modalcall, .modaldiscount {
	width: 280px;
	padding: 20px;
}
.modaldiscount {
	height: 300px;
	padding: 250px 30px 0;
}
.close {
	cursor: pointer;
	display: block;
	position: absolute;
	top: 15px;
	right: 13px;
	width: 14px;
	height: 14px;
	font-size: 14px;
	line-height: 11px;
	text-align: center;
	font-weight: bold;
}
.headerbutton:not(.callback) .close {display: none;}
.callback .close {
	top: 8px;
	right: 277px;
}
.placehead {
	width: 100%;
	padding: 10px 0 10px 15px;
	color: #FFF;
	font-weight: bold;
}
.placehead span:last-of-type {
	float: right;
	margin-right: 40px;
}
.placepicture {
	width: 270px;
	padding: 13px 15px 0px;
}
.placeinfo {
	width: calc(100% - 270px);
	position: relative;
}
.placeinfo ul {
	list-style-type: none;
	width: 100%;
	padding: 14px 8px 0 3px;
	line-height: 28px;
	max-height: 210px;
	overflow: hidden;
}
.placeinfo span:last-of-type {float: right;}
.placeinfo span {padding: 0 7px;}
.placetext {
	width: 100%;
	padding: 5px 13px 11px;
}
.placelink {
	width: 100%;
	text-align: center;
	padding-bottom: 8px;
}
.placelink span {
	display: inline-block;
	vertical-align: top;
	line-height: 20px;
}

.slidericon div {
	background: url('/tmpl/icons/allmarks.png') center;
	background-size: 200% auto;
}

.headsell.red .headsellimg, .headsell.blue .headsellimg, .pricehead::before, .pricehead::after, #scrollarrow,
.path::before, #favorite::before, .formopenfull::before, h1::before, h1::after, .placemetro::before,
.trianglelist li::before, .trianglemotto::before, .questionblock::before, .questionblock:hover::before, .a-honesty,
.a-loyal, .a-price, .a-time, .a-warranty, .a-result, .a-techno, .a-detail, .landinglist li:nth-of-type(1) span,
.landinglist li:nth-of-type(2) span, .landinglist li:nth-of-type(3) span, .landinglist li:nth-of-type(5) span,
.placeblock ul::before, .placeblock ul::after, .triangleblock::after, .textblock ul li::before,
.modaldiscount {background: url('/tmpl/img/mainsprite1.png') no-repeat;}

.placemetro2::before {background: url('/tmpl/img/mainsprite2.png') no-repeat;}

.headsell.red .headsellimg {background-position: -0px -1020px;}
.headsell.blue .headsellimg {background-position: -0px -990px;}
.pricehead::before, .pricehead::after {background-position: -220px -960px;}
#scrollarrow {background-position: -141px -1380px;}
.path::before, .textblock ul li::before {background-position: -250px -331px;}
#favorite::before {background-position: -250px -300px;}
.formopenfull::before {background-position: -141px -1050px;}
h1::before, h1::after {background-position: -150px -1020px;}
.placemetro::before {background-position: -250px -316px;}
.trianglelist li::before {background-position: -266px -300px;}
.trianglemotto::before {background-position: -141px -1088px;}
.questionblock::before {background-position: -0px -300px;}
.questionblock:hover::before {background-position: -0px -480px;}
.a-honesty {background-position: -220px -720px;}
.a-loyal {background-position: -220px -780px;}
.a-price {background-position: -220px -900px;}
.a-time {background-position: -141px -1320px;}
.a-warranty {background-position: -201px -1320px;}
.a-result {background-position: -141px -1260px;}
.a-techno {background-position: -201px -1260px;}
.a-detail {background-position: -220px -660px;}
.landinglist li:nth-of-type(1) span {background-position: -141px -1200px;}
.landinglist li:nth-of-type(2) span {background-position: -141px -1170px;}
.landinglist li:nth-of-type(3) span {background-position: -141px -1230px;}
.landinglist li:nth-of-type(5) span {background-position: -150px -990px;}
.placeblock ul::before {background-position: -0px -1350px;}
.placeblock ul::after {background-position: -0px -1050px;}
.triangleblock::after {background-position: -0px -660px;}
.modaldiscount {background-position: -0px -0px;}

@media (max-width: 900px) {
	.headerblock::before, .headerblock::after {
		width: 100%;
	}
}

.centerpanel::before {background: url('/tmpl/img/quality.png') no-repeat;}
.centerpanel::after {background: url('/tmpl/img/quality2.png') no-repeat;}
.sliderarrow {background: url('/tmpl/img/sliderarrow.png') no-repeat;}
.zoom, .smallsliderimg::after {background: url('/tmpl/img/zoom.png') no-repeat;}
.headermenu li:first-of-type span::after {background: url('/tmpl/img/services.png') no-repeat;}
.headermenu li:last-of-type span::after {background: url('/tmpl/img/message.png') no-repeat;}


.hide_point {
	overflow: hidden;
	max-height: 320px;
	margin: 10px auto;
}

.show_point {
	max-height: none;
}

.click_hide_point {
	cursor: pointer;
	display: block;
	margin-left: auto;
    color: white;
    padding: 6px;
    width: 250px;
    margin-right: auto;
    text-align: center;
    margin-top: 20px;
	background: linear-gradient(to right, transparent, #c00000, transparent);
}

.click_hide_point:hover{
	background: linear-gradient(to right, transparent, red, transparent);
	transition: 5s;
}