/*-- fixing --*/
a, a:hover, a:focus, a:active {
	color: inherit;
	font-style:inherit;
	font-weight:inherit;
	text-decoration:none;
	outline:none;
	cursor: pointer;
	}
body {
	font-family: sans-serif;
	margin:0;
	}
.a-highlighted, .a-highlighted:focus {
	color: blue;
	}
.services, .addresses, .contact {
	padding: 90px 0;
/*	box-shadow: 0px -1px 4px rgba(0,0,0,0.3);*/
	}
.addresses .info, .contact .info {
	margin-bottom: 1.8em;
	}
.section-border {
	width: 100%;
	height: 1px;
	background: url("../img/asphalt.jpg");
	box-shadow: 0px 0px 2px #000;
	z-index: 99;
	position: relative;
	}
.service-grids {
	margin: 0 2%;
	}
/*-- PopUps --*/
/* чтобы сделать попап больше экрана */
.service-grid, .address-grid {
	position: static;}
.PopUpHolder { /* каркас */
	display: block;
	position: fixed;
	z-index: 9999;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	padding: 0.2em 0 0.5em;
	text-align: center;
	white-space: nowrap;
	/* overflow: hidden; */
	background-color: rgba(0,0,0,0.3);
/*	background:url("../img/asphalt.jpg");*/
	}
.PopUpHolder::before { /* для выравнивания попы по вертикали */
	content: "";
	display: inline-block;
	height: 50%;
	width: 1px;
	margin-right: -1px;
	}
.PopUpHolder > *:first-child { /* сама попа */
	display: inline-block;
	max-height: 100%;
	overflow: auto;
/*	width: auto;*/
	vertical-align: middle;
/*	border: 1px solid #777;*/
	border-radius: 1em;
	padding: 1em;
	box-shadow: 0 2px 3px #333;
	background-color: white;
	white-space: normal;
	text-align: justify;
	margin-left: -6px; /* фикс для более точного центрирования */
}
/* попытка сделать попап больше экрана - работает, но попап не позиционируется относительно экрана, надо применять js */
/*.PopUpHolder {
	background: rgba(0,0,0,0.5);
	position: absolute;
	height: 1786px;
}
.PopUpHolder > *:first-child {
	position: absolute;
	z-index: 10000;
}*/
/* кнопка закрытия */
.ClosePopUp, .ClosePopUp:hover, .ClosePopUp:active {
	display: block;
	width: 4em;
	border-radius: 3em;
	background-color: white;
	margin: -1.2em auto auto;
/*	border: 1px solid #777;*/
	box-shadow: 0 2px 3px #333;
	text-align: center;
	font-weight: bold;
	color: #777;
	line-height: 2em;
	position: relative;
}
.address-pop-up, .service-pop-up {
	max-width: 480px;
	}
.service-pop-up h4, .service-pop-up h5 {
	text-shadow: 1px 1px 2px #8f7c56;
	}

/*-- navigation --*/
.wrap {
	width: 90%;
	margin: 0 auto;
	}
.navigation {
	background:url("../img/asphalt.jpg");
/*	border-bottom: 1px solid #555;*/
	box-shadow: 0px 1px 4px rgba(0,0,0,0.7);
	font-variant: small-caps;
	}
.nav-left {
/*	padding: 13px 0;*/
	float: left;
	font: bold 32px serif;
	color: #fff;
	}
.nav-left img {
/*	width:100%;*/
	}
.nav-left a * {
	display: inline-block;
	vertical-align: middle;
	word-wrap: normal;
	white-space: nowrap;
}
/*-- menu --*/
.nav-right span {
	display:none;
	}
/*-- //menu --*/
/*-- fixed-header --*/
.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	margin: 0 auto;
	left:0;
	z-index:9999;
}
/*-- //fixed-header --*/
.nav-right {
	float:right;
	padding-top: 0.5em;
	height: 71px;
/*	width:57%;
	margin-top: 7px;*/
	}
.nav-right ul {
	padding:0;
	margin:0;
	display:inline-block;
	vertical-align: middle;
	}
.nav-right nav {
	display:inline-block;
	vertical-align: middle;
	}
.nav-right::before { /* заменитель .menu-arranger */
	content: "";
	display: inline-block;
	height: 50%;
	width: 1px;
	margin-right: -1px;
	}
.menu-arranger {
	display:none; /* был inline-block */
	vertical-align: middle;
	height: 55px;
	width: 1px;
	}
.nav-right ul li {
	display:inline-block;
	}
.nav-right ul li a {
	color: #ffffff;
	margin: auto 5px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	display: block;
	}
.nav-right ul li a:hover {
	color:#ffffff;
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	}
/*-- effect for nav --*/
.cl-effect-1 a::before,
.cl-effect-1 a::after {
	display: inline-block;
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.2s;
	-moz-transition: -moz-transform 0.3s, opacity 0.2s;
	transition: transform 0.3s, opacity 0.2s;
}

.cl-effect-1 a::before {
	margin-right: 10px;
	content: '[';
	-webkit-transform: translateX(20px);
	-moz-transform: translateX(20px);
	transform: translateX(20px);
}

.cl-effect-1 a::after {
	margin-left: 10px;
	content: ']';
	-webkit-transform: translateX(-20px);
	-moz-transform: translateX(-20px);
	transform: translateX(-20px);
}

.cl-effect-1 a:hover::before,
.cl-effect-1 a:hover::after,
.cl-effect-1 a:focus::before,
.cl-effect-1 a:focus::after {
	opacity: 1;
	-webkit-transform: translateX(0px);
	-moz-transform: translateX(0px);
	transform: translateX(0px);
}
/*-- //effect --*/
/*-- //navigation --*/
/*-- about --*/
.info h3 {
	font-size:18px;
	margin: 0 0 14px 0;
	font-weight:700;
	color:#000000;
	text-shadow: 2px 2px 2px #8c8c8c;
	}
.strip {
	background: red;
	width: 10%;
	padding: 0.1em;
	}
/*-- //about --*/
/*-- addresses --*/
.addresses {
/*	background:#f5f5f5;*/
	background: url("../img/moscow.jpg") no-repeat center fixed;
	background-size: cover;
	}
.star-icon {
	background:url("../img/star.png") no-repeat;
	width:94px;
	height:94px;
	display:block;
	margin:0 auto;
	}
a:hover .star-icon {
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	transform: rotateY(360deg);
	}
.info p {
/*	margin: 20px 0;*/
	margin: 1.5em 0 0.7em;
	color: #222;
	font-size: 18px;
	font-weight: 300;
	text-align: justify;
	}
.address-grid {
	white-space: nowrap;
	padding: 0;
	}
.address-grid h3 {
	font-size: 15px;
	color: #000000;
	font-weight: 700;
	margin: 23px 0 12px 0;
	}
.address-grid p {
	color: #999999;
	font-size: 14px;
	margin: 12px 0 0 0;
	}
.border {
	width: 20%;
	margin: 0 auto;
	background: rgb(100, 186, 0);
	padding: 1px 0;
	}
/*-- //addresses --*/
/*-- team --*/
p.highlight {
	color: #8cc739 !important;
	}
label.sed-in {
	background: rgba(140, 199, 57, 0.55);
	width: 100%;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border: 4px solid #8cc739;
	display: none;
	}

/*-- //team --*/
/*-- portfolio --*/
/*----- Strip -----*/
/*------------------------------------------*/
/*	Animation effects
/*------------------------------------------*/
span.m_4 {
	font-size:14px;
	font-weight:400;
}
p.m_5 {
	margin: 2% auto 5%;
	width: 70%;
	color: #283A47;
	font-size: 1.1em;
	font-weight: 600;
	line-height: 1.5em;
	text-align: center;
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/*-- //portfolio --*/
/*-- services --*/
.services {
	background: url("../img/film7-vert-sharp-bluish.png");
	background-size: auto 100%;
	padding-top: 8em;
	box-shadow: none;
	}
.service-grid h3 {
	color:blue;
	font-size: 25px;
	margin: 0em 0 0.45em 0;
	padding-top: 1em;
	text-align: center;
	}
.service-grid {
	padding:0;
	text-align: center;
	}
.service-type {
	border-radius: 1em;
	text-shadow: 1px 1px 2px #8f7c56;
	white-space: nowrap;
	}
.service-type:hover {
	box-shadow: 0 2px 2px rgba(0,0,0,0.3);
	background: rgba(255,255,255,0.5);
}
.service-grid ul {
		margin:0px;
		padding:0px;
		}
.service-grid ul li {
		list-style-type:none;
		color:#000000;
/*		padding: 10px 0;
		border-bottom:2px solid #E0E9E9;*/
		}
.service-grid ul li:nth-child(odd) {
		color: blue;
		font-size: 280%;
		margin: -0.54em auto -0.41em auto;
		}
/*-- //services --*/
/*-- contact --*/
.contact {
	background-image: url("../img/sand.jpg");}
.contact-form {
	color: black;
	font-size: 16px;
	}
.contact-left {
	width:30%;
	float:left;
	}
.contact-right {
	width:68%;
	float:right;
	}
.contact-left input[type="text"], .contact-left input[type="email"] {
	width: 93%;
	margin: 0 23px 23px 0;
	padding: 12px 10px;
	outline: none;
	border: 1px solid #e8e8e8;
	}
.contact-right textarea {
	width: 100%;
	resize: none;
	height: 193px;
	padding: 15px;
	outline: none;
	border: 1px solid #e8e8e8;
	}
input, textarea {
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	}
.contact-form input[type=submit] {
	color: #ffffff;
	padding: 13px 43px;
	font-size: 16px;
	cursor: pointer;
	font-weight: 500;
	border: 2px solid rgb(100, 186, 0);
	background:rgb(100, 186, 0);
	}
.contact-form input[type=submit]:hover {
	background:#ffffff;
/*	border: 3px solid rgb(100, 186, 0);*/
	color:rgb(100, 186, 0);
	transition: .5s all;
	-webkit-transition: .5s all;
	-o-transition: .5s all;
	-ms-transition: .5s all;
	-moz-transition: .5s all;	
/*	transform: rotateY(360deg);*/
	}
.success, .error {
  padding: 1em;
  margin-bottom: 0.75rem;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  	-webkit-border-radius: 4px;
  	-moz-border-radius: 4px;
  border: 1px solid #d6e9c6;
  color: #468847;
  background-color: #dff0d8;
}
.error {
  color: #b94a48;
  background-color: #f2dede;
  border-color: rgba(185, 74, 72, 0.3);
}

/*-- //contact --*/
/*-- footer --*/
.footer {
	background:#707079;
	padding:32px 0;
	box-shadow: 0px -1px 4px rgba(0,0,0,0.3), inset 0 0 40px #606069;
	}
.footer-left {
	float:left;
	}
.footer-right {
	float:right;
	}
.footer-left p {
	font-size:15px;
	margin: 15px 0 0 0;
	color:#bbb;
	}
.footer-left p a {
	color:#ddd;
	}
.footer-left p a:hover {
	color:#8cc739;
	text-decoration:none;
	transition: 0.5s all;
	-webkit-transition: 0.5s all;
	-o-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;

	}
.footer-right ul {
	margin:0;
	padding:0;
	
	}
.footer-right ul li {
	display:inline-block;
	padding-left:3px;
	}
.footer-right ul li a.fb {
	background:url("../images/a.png") no-repeat 0px 0px;
	width:44px;
	height:44px;
	display:block;
	}
.footer-right ul li a.fb:hover {
	background:url("../images/i.png") no-repeat 0px 0px;
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	transform: rotateY(360deg);
	}
.footer-right ul li a.twit {
	background:url("../images/a.png") no-repeat -50px 0px;
	width:44px;
	height:44px;
	display:block;
	}
.footer-right ul li a.twit:hover {
	background:url("../images/i.png") no-repeat -50px 0px;
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	transform: rotateY(360deg);	
	}
.footer-right ul li a.googl {
	background:url("../images/a.png") no-repeat -100px 0px;
	width:44px;
	height:44px;
	display:block;
	}
.footer-right ul li a.googl:hover {
	background:url("../images/i.png") no-repeat -100px 0px;
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	transform: rotateY(360deg);
	}
.footer-right ul li a.linkin {
	background:url("../images/a.png") no-repeat -150px 0px;
	width:44px;
	height:44px;
	display:block;
	}
.footer-right ul li a.linkin:hover {
	background:url("../images/i.png") no-repeat -150px 0px;
	transition:.5s all;
	-webkit-transition:.5s all;
	-moz-transition:.5s all;
	-o-transition:.5s all;
	-ms-transition:.5s all;
	transform: rotateY(360deg);
	}
/*-- //footer --*/
/*-- to-top --*/
#toTop {
	display: none;
	text-decoration: none;
	position: fixed;
	bottom: 0;
	right: 0;
	overflow: hidden;
	z-index: 999; 
	border: none;
	text-indent: 100%;
	color: transparent;
	width: 40px;
	height: 33px;
	background: url("../img/up.png") no-repeat 0px 0px;
}
#toTopHover {
	width: 40px;
	height: 33px;
	display: block;
	overflow: hidden;
	float: right;
	opacity: 0;
	-moz-opacity: 0;
	filter: alpha(opacity=0);
}
/*-- //to-top --*/
@media(max-width:1440px) {
	.nav-right {
		float: right;
		/*width: 64%;*/
		}
}
@media(max-width:1366px) {
	.nav-right {
		/*width: 67.5%;
		margin-top: 3px;*/
		}
	.nav-left {
		padding: 8px 0;
		}
	.contact-form input[type=submit] {
		padding: 10px 30px;
		}
}
@media(max-width:1280px) {
	.nav-right {
		/*width: 72.5%;*/
		}
}
@media(max-width:1024px) {
	a.button, a.button2 {
		padding: 8px 18px;
		}
	.nav-right ul li a {
/*		margin: 25px 0px;*/
		}
/*	.nav-left {
		width: 5%;
		}*/
	.nav-right {
		/*width: 81.2%;*/
		}
	.address-grids {
		/*padding: 65px 0 82px 0;*/
		}
	.service-grid h3 {
		font-size: 20px;
		}
	.contact-form input[type=submit] {
			padding: 6px 19px;
			}
	.contact-left {
			width: 34%;
			}
	.contact-right {
			width: 65%;
			}
}
@media(min-width:768px) {
	#toTop {
		display: none !important;
		}
	}
@media(max-width:767px) {
	.fixed {
		position: relative;
		margin-bottom: -2em;
		}
	span.menu {
		display:inline-block;
		vertical-align: middle;
		cursor: pointer;
/*		width: 100%;*/
		position: relative;
		text-align:right;
/*		margin-top: 12px;*/
		}
	ul.nav1 {
		display:none;
		background:url("../img/asphalt.jpg");
		}
	.nav-right ul.nav1 li {
		display: inline-block;
		text-align: center;
		margin: 0;
		width: 100%;
		padding: 0px 0;
		}
	.nav-right ul li a {
		margin: 17px 0px;
		}
	.nav-right ul {
		position: absolute;
		padding: 0;
		margin-top: 36px;
		left: 0%;
		width: 100%;
		z-index: 100;
		}
	.addresses {
		padding-top: 60px;
		}
	.info p {
		font-size: 17px;
		}
	.address-grid h3 {
		margin: 1em 0 0;
		}
	.address-grids {
		/*padding: 48px 0 60px 0;*/
			}
	.services,.contact {
			padding: 60px 0;
			}
	.border {
			width: 28%;
			}
	.service-grids {
			margin: 0 7%;
			}
	.contact-left {
			width: 37%;
			}
	.contact-left input[type="text"] {
			padding: 9px;
			}
	.contact-right {
			width: 63%;
			}
	.contact-right textarea {
			height: 167px;
			padding: 8px;
			}
	.contact-form input[type=submit] {
			font-size: 14px;
			}
/*	.service-grid:nth-of-type(n+3) .service-type {
			margin-top: 2em;
			}*/
	.address-grid:nth-of-type(n+3) {
			margin-top: 2em;
			}
	#vk_community_messages {
		display: none;
		}
}
@media(max-width:640px) {
	a.button, a.button2 {
		font-size: 13px;
		}
	.info p {
		font-size: 16px;
    	margin: 0.8em 0 0.1em;
    	}
	.services {
/*		background: url("../img/film7-vert.gif") fixed;
		background-size: auto 100%;
		}*/
	.service-grid:nth-of-type(n+3) .service-type {
		margin-top: 1.3em;
		}
}
@media(max-width:480px) {
	a.button, a.button2 {
		font-size: 11px;
		}
	.strip {
		width: 20%;
		}
	.info p {
		font-size: 14px;
		}
	.address-grid p {
		font-size: 13px;
		}
	.service-grids {
		margin: 0;
		}
	.service-grid h3 {
		font-size: 17px;
		}
	.contact-left input[type="text"] {
		padding: 7px;
		}
	.contact-right textarea {
		height: 155px;
		}
	.contact-form input[type=submit] {
		font-size: 12px;
		padding: 4px 9px;
		}
	.footer-left {
		float: none;
		}
	.footer-left p {
		font-size: 14px;
		text-align:center;
		}
	.footer {
		padding: 22px 0;
		}
	.footer-right {
		float: none;
		text-align: center;
		margin-top: 15px;
		}
	.PopUp {
		padding: 0 0 0.5em;
		}
	.PopUpHolder > *:first-child {
		border-radius: 0;
		}
}
@media(max-width:320px) {
	.fixed {
		margin-bottom: -2em;
		}
		.nav-right ul li a {
		margin: 12px 0px;
		}
		a.button, a.button2 {
		font-size: 11px;
		padding: 6px 11px;
		}
		.strip {
		width: 18%;
		}
/*	.service-grid:nth-of-type(n+3) .service-type {
		margin-top: 1.1em;
		}*/
		.addresses {
		padding-top: 45px;
		}
		.info {
		width: 100%;
		}
/*		.col-md-3.address-grid {
		float: left;
		width: 100%;
		margin-bottom: 20px; 
		}*/
		.info p {
		text-align: left;
		}
		.info p.rolling {
		background: url("../img/3dots.png") no-repeat right 2.15em;
/*		margin: 10px 0;*/
		overflow: hidden;
		height: 3em;
		text-align: left;
		}
		.info p.rolling:active, .info p.rolling:hover {
		background-image: none;
		margin: 10px 0;
		overflow: auto;
		height: auto;
		}
		.PopUpHolder > *:first-child {
/*		text-align: left;*/
		}
		.address-grids {
		/*padding: 22px 0 45px 0;*/
		}
		.address-grid h3 {
		margin: 1em 0 0;
		}
		.address-grid h5 {
		margin: 0.5em 0 0.7em;
		}
		.services, .contact {
		padding: 45px 0;
		}
	.contact-left {
		width: 100%;
		}
		.contact-left input[type="text"] {
		padding: 5px;
		margin: 0px 0px 14px 0;
		width: 100%;
		}
		.contact-right {
		width: 100%;
		}
		.contact-right textarea {
		height: 124px;
		margin-bottom: 10px;
		}
		.contact-form input[type=submit] {
		font-size: 12px;
		padding: 2px 7px;
		}
		.footer-left p {
		font-size: 12px;
		}
		
}
