
@font-face {
	font-family: "HelveticaNeueCyr";
	src: local("Helvetica Neue Cyr Thin"),
		url("fonts/helveticaneuecyr-thin.woff2") format("woff2"),
		url("fonts/helveticaneuecyr-thin.woff") format("woff"),
		url("fonts/helveticaneuecyr-thin.eot") format("embedded-opentype"),
		url("fonts/helveticaneuecyr-thin.otf") format("opentype");
	font-style: normal;
	font-weight: 100;
}

@font-face {
	font-family: "HelveticaNeueCyr";
	src: local("Helvetica Neue Cyr Bold"),
		url("fonts/helveticaneuecyr-bold.woff2") format("woff2"),
		url("fonts/helveticaneuecyr-bold.woff") format("woff"),
		url("fonts/helveticaneuecyr-bold.eot") format("embedded-opentype"),
		url("fonts/helveticaneuecyr-bold.otf") format("opentype");
	font-style: normal;
	font-weight: 700;
}

@font-face {
	font-family: "HelveticaNeueCyr";
	src: local("Helvetica Neue Cyr Light"),
		url("fonts/helveticaneuecyr-light.woff2") format("woff2"),
		url("fonts/helveticaneuecyr-light.woff") format("woff"),
		url("fonts/helveticaneuecyr-light.eot") format("embedded-opentype"),
		url("fonts/helveticaneuecyr-light.otf") format("opentype");
	font-style: normal;
	font-weight: 300;
}

@font-face {
	font-family: "Izhitsa";
	src:
		url("fonts/izhitsa.woff2") format("woff2"),
		url("fonts/izhitsa.woff") format("woff"),
		url("fonts/izhitsa.eot") format("embedded-opentype"),
		url("fonts/izhitsa.ttf") format("truetype");
	font-style: normal;
	font-weight: normal;
}

@font-face {
	font-family: "Intro-Bold-Caps";
	src: local("Intro-Bold-Caps"),
		url("fonts/intro-bold-caps.woff2") format("woff2"),
		url("fonts/intro-bold-caps.woff") format("woff"),
		url("fonts/intro-bold-caps.eot") format("embedded-opentype"),
		url("fonts/intro-bold-caps.otf") format("opentype");
	font-style: normal;
	font-weight: bold;
}

@font-face {
	font-family: "firasans-bold";
	src: local("firasans-bold"),
		url("fonts/firasans-bold.woff2") format("woff2"),
		url("fonts/firasans-bold.woff") format("woff"),
		url("fonts/firasans-bold.eot") format("embedded-opentype"),
		url("fonts/firasans-bold.otf") format("opentype");
	font-style: normal;
	font-weight: bold;
}



												/* Общие */
* {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	padding: 0;
	padding-top: 20px;
	margin: 0;
	background: #fff;
	color: #444;

	font-size: 16px;
	/*font-family: 'HelveticaNeueCyr', Helvetica, Arial, sans-serif; */
	font-family: Helvetica, Arial, sans-serif; 
	font-weight: 300;
	overflow-x: hidden;
}
.wrap {
	margin: 0 auto;
	padding: 20px 0;
	max-width: 1000px;
}
section {
	clear: both;
}
h1 {
	font-size: 36px;
	font-weight: 100;
	font-family: "HelveticaNeueCyr", "Helvetica Neue", Helvetica, Arial, sans-serif; 
	text-align: center;
}
b, strong {
	font-weight: 700;
}
a, a:visited {
	color: #00a651;
}
a:hover {
	color: #38af5a;
}
.red {
	color: red;
}
.num {
	white-space: nowrap;
}
.txt_bold {
	font-weight: bold;
}


img {
	max-width: 100%;
}

figure.photo, figure.video, figure.photo-vert {
	display: block;
	margin: 0;
	margin-bottom: 20px;
	border: 4px solid #c4eed8;
	border-radius: 4px;
	background: #eafff4;
}
figure.photo-vert {
	width: 60%;
	margin: 0 auto;
	margin-bottom: 20px;
}

.half {
	width: 48%;
	display: inline-block!important;
	vertical-align: top;
	margin-right: 1%!important;
}

.w50, .w25, .w75, .w33 {
	display: inline-block!important;
	vertical-align: top;
	margin-right: 1%!important;
}

.w33 {
	width: 31%;
}
.w50 {
	width: 48%;
}
.w25 {
	width: 24%;
}
.w75 {
	width: 73%;
}


.video-responsive{
	overflow:hidden;
	padding-bottom:56.25%;
	position:relative;
	height:0;
}
.video-responsive iframe{
	left:0;
	top:0;
	height:100%;
	width:100%;
	position:absolute;
}

figure img {
	display: block;
	width: 100%;
}

figcaption {
	font-style: italic;
	text-align: center;
	padding: 5px 5%;
}


.photo-double img {
	width: 48%;
	display: inline-block;
}
.photo-double img:first-child {
	margin-right: 2%;
}



@media screen and (max-width: 500px) {
	figure.photo-vert {
		width: 100%;
	}
	.half, .w50, .w25, .w75, .w33 {
		width: 100%;
		display: block;
		margin: 0;
	}
}



.width-50 {
	display: inline-block;
	width: 49%;
	margin: 0;
	vertical-align: top;
	padding: 10px;
}
.width-50:first-child {
	border-right: 1px solid #c4eed8;
}
@media screen and (max-width: 750px) {
	.width-50 {
		width: 100%;
		display: block;
		border: none !important;
		padding: 0
	}
	.hide-mobile {
		display: none;
	}
}




.block1 {
	border: 1px solid #eee;
	background: #F5F5F5;
	border-radius: 3px;
	box-shadow: 2px 2px 5px rgba(0,0,0,.3);
	padding: 20px;
	margin-bottom: 20px;
}

.block2 {
	background: #FEFFFB;
	box-shadow: 3px 3px 5px #eee;
	border: 1px solid #ddd;
	border-radius: 4px;
}

.block3 {
	background: #F5F5F5;
	box-shadow: 3px 3px 5px #eee;
	box-shadow: inset 0px 2px 0px #F69541;
	border: 1px solid #ddd;
	border-radius: 16px;
}


.warning {
	display: block;
	width: 80%;
	margin: 0 auto;
	text-align: center;
	padding: 20px;
	background: #00a651;
	color: #fff;
	box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.2);
/*	font-size: 20px;
	line-height: 24px;*/
}
.warning a, .warning a:visited {
	color: #fff;
}




.btn {
	display: inline-block;
	background: #00a651;
	color: #fff !important;
	border: none;
	border-radius: 25px;
	font-weight: bold;
	height: 40px;
	margin-left: 3px;
	text-decoration: none;
	padding: 10px 20px;
	white-space: nowrap;
}
.btn:hover {
	box-shadow: 1px 1px 0px 0px #666;
}
.btn:focus {
	outline: none;
}

.btn-next {
	background: #00a651 url(img/button-arrow.png) no-repeat;
	background-position: right 10px top 50%;
	padding-right: 30px;
}
.btn-prev {
	background: #00a651 url(img/button-arrow2.png) no-repeat 10px 50%;
	padding-left: 30px;
}



.callme {
	background: #00a651 url(img/tel.png) no-repeat 12px 50%;
	padding-left: 35px;
}

.calc {
	background: #00a651 url(img/calc.png) no-repeat 50% 50%;
}

.breadcrumbs {
	font-weight: bold;
}
.breadcrumbs a, .breadcrumbs a:visited {
	color: #00a651;
}
.breadcrumbs a:hover {
	color: #38af5a;
}


.blog-next, .project-next {
	text-align: right;
}


.icon {
	background: transparent url(img/icon.png) no-repeat;
	width: 25px;
	height: 25px;
	display: inline-block;
}
.icon-callme {
	background-position: -50px 0;
}

.icon-calc {
	background-position: -50px -25px;
}
.icon-home {
	background-position: -75px 0;
}
.icon-arrow {
	background-position: -75px -25px;
}



@media screen and (max-width: 1000px) {
	.header>.wrap, .footer>.wrap {
		padding: 20px;
	}
	section {
		padding: 20px;
	}
}
@media screen and (max-width: 750px) {
	h1 {
		font-size: 30px;
	}
}
@media screen and (max-width: 450px) {
	h1 {
		font-size: 25px;
	}
}







												/* Шапка */

.logo-img {
	float: left;
	margin: 0;
	margin-right: 10px;
}
.mail {
	clear: left;
}

.rb {
	font-size: 30px;
	line-height: 25px;
	font-family: "Izhitsa", sans-serif;
	color: #000;
	margin: 0;
	margin-bottom: 3px;
	text-align: left;
	white-space: nowrap;
}


.wrap-logo-mail {
	display: inline-block;
	width: 60%;
}

.wrap-tels {
	display: inline-block;
	width: 39%;
	text-align: right;
}
.tels {
	white-space: nowrap;
}



.logo {
	margin-right: 5px;
	display: inline-block;
}

.mail, .tel-spb, .tel-msk {
	text-align: right;
	padding: 5px 20px;
	min-width: 180px;
	line-height: 20px;
	display: inline-block;
}


.tel-spb, .tel-msk {
	border-left: 1px solid #ddd;
}

.tel {
	margin: 0;
	white-space: nowrap;
	font-size: 18px;
}

small {
	font-size: 13px;
	line-height: 13px;
	font-weight: 100;
	color: #999;
	display: block;
}
.mail b  {
	display: inline-block;
	height: 20px;
	vertical-align: middle;
	padding: 0;
	padding-left: 38px;
	background: transparent url(img/mail.png) no-repeat 0 50%;
}
.mail a {
	color: #999;
	text-decoration: none;
	font-size: 18px;
	font-weight: 100;
	font-family: "HelveticaNeueCyr", "Helvetica Neue", Helvetica, Arial, sans-serif; 
}
.mail a:hover {
	color: #00a651;
	text-decoration: underline;
}
.header-btn {
	display: none;
}
.callme_viewform {
	display: inline-block;
}

@media screen and (max-width: 1000px) {
	.wrap-logo-mail {
		width: 44%;
	}

	.wrap-tels {
		width: 55%;
	}
	.mail {
		display: block;
	}
	.mail>div {
		display: inline-block;
	}
	.header-btn {
		margin-top: 20px;
		text-align: center;
		display: inline-block;
	}
	.nav-btn {
		display: none;
	}
}
@media screen and (max-width: 750px) {
	.mail, .tel-spb {
		border-left: none;
		padding: 10px;
	}
	.wrap-logo-mail, .mail, .tels, .wrap-tels {
		width: 100%;
		text-align: center;
	}
}
@media screen and (max-width: 450px) {
	.tels {
		white-space: normal;
	}
	.tel-msk {
		border-left: none;
	}
	.calc {
		display: none;
	}
}






												/* язык */
.lang-block {
	position: relative;
	display: inline-block;
}
.lang {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 4px;
}
.lang-ru {
	background: transparent url(img/RU.png) no-repeat;
}
.lang-gb {
	background: transparent url(img/GB.png) no-repeat;
}
.lang-de {
	background: transparent url(img/DE.png) no-repeat;
}
.lang-jp {
	background: transparent url(img/JP.png) no-repeat;
}

.lang-change {
	display: inline-block;
	width: 25px;
	height: 25px;
	background: transparent url(img/icon.png) no-repeat -25px 0;
	cursor: pointer;
}
.lang-menu {
	display: none;
}
.lang-menu-show {
	display: block !important;
	position: absolute;
	right: 10px;
	padding: 5px;
	box-shadow: 0 0 5px rgba(0,0,0,.7);
	background: #fff;
	width: auto;
	z-index: 9999999;
	border-radius: 20px 0 0 20px;
	text-align: left;
}
.header .lang-menu-show {
	top: 10px;
}
.footer .lang-menu-show {
	bottom: 10px;
}

.lang-menu a {
	display: block;
	white-space: nowrap;
	padding: 2px 5px;
	color: #000 !important;
}




												/* Подвал */
.footer>.wrap {
	padding: 0;
}
.footer {

/* #00a651 #38AF5A */
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#00a651+0,00a651+50,38af5a+51,38af5a+100 */
background: #00a651; /* Old browsers */
background: -moz-linear-gradient(left, #00a651 0%, #00a651 30%, #38af5a 30%, #38af5a 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, #00a651 0%,#00a651 30%,#38af5a 30%,#38af5a 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, #00a651 0%,#00a651 30%,#38af5a 30%,#38af5a 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a651', endColorstr='#38af5a',GradientType=1 ); /* IE6-9 */

}


.footer, .footer small, .footer a {
	color: #fff;
}

.footer .mail a:hover {
	color: #eee;
	text-decoration: underline;
}

.rb2 {
	font-size: 25px;
	font-family: "Izhitsa", sans-serif;
	color: #fff;
	margin: 0;
	margin-bottom: 3px;
	text-align: left;
	white-space: nowrap;
}

.footer .mail b  {
	padding-left: 38px;
	background: transparent url(img/mail2.png) no-repeat 0 50%;
}


.footer .copy {
	width: 30%;
	padding: 50px 0 10px 0;
	margin: 0;
	display: inline-block;
	background: #00a651;
}

.footer .wrap-tels {
	width: 69%;
	display: inline-block;
	background: #38af5a;
	vertical-align: top;
	margin-top: 50px;
}
.footer .mail {
	width: 30%;
	display: inline-block;

}
.footer .tels {
	width: 69%;
	display: inline-block;
	text-align: right;
}

.counters {
	margin-top: 20px;
}



@media screen and (max-width: 1000px) {
	.footer .copy {
		padding: 40px 20px;
		width: 40%;
	}
	.footer .wrap-tels {
		width: 59%;
	}
	.footer .mail {
		display: block;
		white-space: nowrap;
		text-align: right;
		width: 100%;
	}
	.footer .tels {
		width: 100%;
	}
	.footer .tel-spb {
		border-left: none;
	}

}

@media screen and (max-width: 750px) {
	.footer .copy, .footer .wrap-tels, .footer .mail, .footer .tels, h1.rb2 {
		width: 100%;
		text-align: center;
	}
	.footer .wrap-tels {
		margin-top: 0; 
	}
}




	.menu-flex {
		width: 100%;
		position: relative;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-wrap: wrap;
		-webkit-align-items: baseline;
		align-items: baseline;
	}
	.menu-flex .item {
		padding: 20px;
		text-align: center;
		width: 25%;
	}
	.menu-flex .active {
		font-weight: bold;
	}
@media screen and (max-width: 900px) {
	.menu-flex .item {
		width: 50%;
	}
}
@media screen and (max-width: 500px) {
	.menu-flex .item {
		width: 100%;
	}
}





section.feedback {
	background: #eafff4;
}
section.feedback .wrap {
	/*padding: 10px;*/
}
section.feedback label {
	display: block;
	font-size: 12px;
	margin-top: 10px;
	font-weight: bold;
}
section.feedback label sup {
	color: red;
}
section.feedback input, section.feedback textarea {
	padding: 1px 5px;
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 6px;
}
section.feedback .submit {
	margin: 5px auto;
	width: 14em;
	text-align: center;
}
section.feedback .btn {
	height: 30px;
	padding: 5px;
	border-radius: 25px;
}
#submitFF:disabled {
	background: #666!important;
}
:focus {
	outline: #00a651 auto 1px;
}


.ya-share2 {
	margin-top: 50px;
	text-align: right;
}