/* defaults
----------------------------------------*/
body {
	overflow-x: hidden;
	font-family: 'Open Sans', 'Arial', sans-serif;
	background: url('../img/img@body-bg.jpg') repeat-x top;
}

body.homepage {
	background: url('../img/img@homepage-bg.jpg') no-repeat center top;
}

.wrapper {
	width: 1170px;
	margin: 0 auto;
}

.section__hero {
	display: block;
	padding: 7px 20px;
	margin-bottom: 15px;
	color: #ddd;
	font-weight: 600;
	background: #565655;
}

.black__bg {
	display: none;
	position: fixed;
	z-index: 100;
	left: 0; top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
}

/* header
----------------------------------------*/
.page__header {
	padding-top: 30px;
}

.page__header .navigation .mail {
	margin-bottom: 15px;
	color: #009bcc;
	font-size: 17px;
	font-weight: 600;
	text-align: right;
}

.page__header .navigation {
	margin-top: 15px;
}

.page__header .navigation .mail span {
	color: #999;
}

.page__header .navigation li {
	float: left;
	margin-left: 25px;
}

.page__header .navigation li a {
	color: #5e5e5e;
	font-size: 16px;
	font-weight: 600;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.page__header .navigation li a:hover {
	color: #009bcc;
}

.page__header .mobile__toggle {
	float: right;
	display: none;
	width: 30px;
}

.page__header .mobile__toggle span {
	display: block;
	height: 3px;
	margin: 3px 0;
	background: #009bcc;
}

/* promo
----------------------------------------*/
.promo {
	padding-top: 170px;
	padding-bottom: 170px;
}

.promo .hero {
	font-size: 36px;
}

.promo .hero span {
	display: inline-block;
	color: #fff;
	padding: 2px 5px;
	font-weight: 700;
	background: #009bcc;
}

/* homepage content
----------------------------------------*/
.homepage__content {
	color: #303030;
}

.homepage__content .hero {
	font-size: 30px;
	margin-bottom: 15px;
}

.homepage__content p {
	font-size: 14px;
}

.homepage__content img {
	margin-top: -30px;
	margin-right: -60px;
}

.homepage__content .boxes {
	margin-top: 30px;
	margin-bottom: 30px;
}

.homepage__content .boxes .item {
	position: relative;
	width: 25%;
	padding-right: 30px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
					box-sizing: border-box;
}

.homepage__content .boxes .item.color {
	bottom: -25px;
	padding-right: 0;
	padding-left: 70px;
}

.homepage__content .boxes .item.color::before {
	content: '';
	display: block;
	position: absolute;
	left: 0; top: 0;
	margin-left: -20px;
	width: 1px;
	height: 100%;
	background: #95ef76;
}

.homepage__content .boxes .item .date {
	display: block;
	color: #ef7676;
	font-size: 14px;
	margin-bottom: 10px;
}

.homepage__content .boxes .item strong {
	display: block;
	color: #6a6a6a;
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 10px;
}

.homepage__content .boxes .item a {
	display: inline-block;
	padding-top: 5px;
	color: #6a6a6a;
	font-size: 13px;
	text-decoration: uppercase;
	border-top: solid 1px #ddd;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.homepage__content .boxes .item a:hover {
	color: #009bcc;
}

.homepage__content .boxes .item.color img {
	position: absolute;
	left: 0; top: 0;
	margin-top: 5px;
}

.homepage__content .boxes .item.color strong {
	font-size: 24px;
}

/* content page
----------------------------------------*/
.page__content {
	padding-top: 40px;
	padding-bottom: 40px;
}

.product__list,
.reference__logos,
.reference__projects {
	margin-left: -10px;
	margin-right: -10px;
}

.page__content .section__hero {
	margin-bottom: 20px;
}

.page__content p {
	margin-bottom: 15px;
	font-size: 14px;
	color: #252525;
	line-height: 13px;
}

.page__content .links {
	margin-top: 30px;
}

.page__content .links a {
	display: inline-block;
	margin-right: 5px;
	border: solid 2px #859a71;
}

.page__content .links a img {
	display: block;
}

.product__list li,
.reference__logos li,
.reference__projects li {
	float: left;
	width: 16.6%;
	padding: 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
					box-sizing: border-box;
}

.product__list li a {
	display: block;
	color: #565655;
	text-align: center;
	border: solid 1px #777;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.product__list li .code {
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 30px;
	font-weight: 700;
	line-height: 40px;
	border-bottom: solid 1px #777;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.product__list li .code .no {
	font-size: 42px;
	margin-top: 10px;
}

.product__list li .property {
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 14px;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.product__list li .property strong {
	color: #009bcc;
	display: block;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.product__list li .property span {
	color: #565655;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.product__list li a:hover {
	border-color: #009bcc;
}

.product__list li a:hover .code {
	color: #009bcc;
}

.product__list li a:hover .property {
	color: #fff;
	background: #009bcc;
}

.product__list li a:hover .property strong,
.product__list li a:hover .property span {
	color: #fff;
}

.reference__logos li a {
	display: block;
	border: solid 1px #ccc;
}

.reference__logos li img,
.reference__projects li img {
	display: block;
	width: 100%;
}

.reference__projects li {
	position: relative;
	width: 25%;
	overflow: hidden;
}

.reference__projects li a {
	position: relative;
	display: block;
}

.reference__projects li .text {
	position: absolute;
	left: 0; bottom: 0;
	width: 100%;
}

.reference__projects li .text span {
	display: block;
	padding: 10px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	background: rgba(0,0,0,.6);
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
					box-sizing: border-box;
}

.contact iframe {
	margin-bottom: 15px;
}
/* page footer
----------------------------------------*/
.page__footer {
	margin-top: 50px;
	padding-top: 10px;
	padding-bottom: 30px;
	border-top: solid 1px #ddd;
}

.page__footer li {
	position: relative;
	float: left;
	margin-right: 15px;
}

.page__footer li::before {
	position: relative;
	left: -7px;
	content: '-';
	color: #a6a6a6;
}

.page__footer li a {
	color: #a6a6a6;
	font-size: 13px;
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
					transition: all .5s ease;
}

.page__footer li a:hover {
	color: #009bcc;
}

.page__footer li:first-child::before {
	display: none;
}

/* responsive
----------------------------------------*/
@media(max-width: 1170px) {
	.wrapper {
		width: 95%;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
						box-sizing: border-box;
	}

	.promo {
		padding-top: 120px;
		padding-bottom: 120px;
	}

	.homepage__content .hero {
		font-size: 20px;
	}

	.homepage__content img {
		margin-right: 0;
	}

	.product__list li .property {
		font-size: 12px;
	}
}

@media(max-width: 990px) {
	.page__header .navigation li a {
		font-size: 16px;
	}

	.page__header .mobile__toggle {
		display: block;
	}

	.page__header .navigation ul {
		position: fixed;
		right: 0;
		top: 0;
		width: 240px;
		height: 100%;
		z-index: 101;
		overflow-y: scroll;
		background: #009bcc;
		-webkit-transform: translateX(100%);
		   -moz-transform: translateX(100%);
						transform: translateX(100%);
		-webkit-transition: all .5s ease;
		   -moz-transition: all .5s ease;
						transition: all .5s ease;
	}

	body.menu__active {
		overflow: hidden;
	}

	body.menu__active .page__header .navigation ul {
		-webkit-transform: translateX(0);
		   -moz-transform: translateX(0);
						transform: translateX(0);
	}

	.page__header .navigation ul li {
		float: none;
	}

	.page__header .navigation ul li:first-child {
		margin-top: 15px;
	}

	.page__header .navigation ul a {
		display: block;
		color: #fff;
		padding: 10px 0;
	}

	.page__header .navigation ul a:hover {
		color: #000;
	}

	.homepage__content img.right {
		width: 230px;
	}

	.product__list li, .reference__logos li, .reference__projects li {
		width: 33.33%;
	}
}

@media(max-width: 768px) {
	.page__header .navigation .mail {
		font-size: 14px;
	}

	body {
		background: url('../img/img@body-bg.jpg') repeat-x top!important;
	}

	.page__header .logo {
		text-align: center;
		width: 100%;
		margin-bottom: 10px;
	}

	.page__header .navigation {
		width: 100%;
	}

	.page__header .navigation .mail {
		float: left;
	}

	.page__header .logo img {
		display: block;
		width: 220px;
		margin: 0 auto;
	}

	.promo {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.homepage__content .boxes .item {
		width: 100%;
		text-align: center;
		margin-bottom: 30px;
	}

	.homepage__content .boxes .item.color {
		bottom: 0;
		padding-left: 0;
	}

	.homepage__content .boxes .item.color::before {
		display: none;
	}

	.homepage__content .boxes .item.color img {
		position: static;
		margin: 10px auto;
	}

	.product__list li, .reference__logos li, .reference__projects li {
		width: 25%;
	}

	.page__footer li {
		float: none;
		margin: 5px 0;
	}

	.page__footer li::before {
		display: none;
	}
}

@media(max-width: 690px) {
	.product__list li, .reference__logos li, .reference__projects li {
		width: 100%;
	}
}