@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic&subset=latin,cyrillic);

/* -------------------- general -------------------- */
html, * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	line-height: 27px;
	color: #333;
	background-color: #ddd;
	margin: 0 0 50px 0;
}
.wrap {
	width: 960px;
	margin: auto;
}
ul, li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.clear {
	clear: both;
}
p {
	margin: 0 0 30px 0;
}
a {
	color: #0098c7;
	text-decoration: none;
}
a:hover {
	color: #F96200;
}

/* -------------------- header -------------------- */
.header {
	width: 100%;
	height: 600px;
	color: #fff;
	background: url("images/header.jpg") no-repeat top center #000;
	margin: 0 0 50px 0;
}
.logo {
	width: 222px;
	height: 105px;
	margin: 50px 0 100px 0;
}
.quote {
	height: 235px;
	text-align: center;
	animation: fadein 3s;
	-webkit-animation: fadein 3s; 
}
.quote span {
	font-size: 24px;
	line-height: 36px;
	font-weight: bold;
	font-style: italic;
	display: block;
}
.lang li {
	background-image: linear-gradient(to left, transparent, transparent 50%, #fff 50%, #fff);
	background-position: 100% 0;
	background-size: 200% 100%;
	float: left;
	-webkit-transition: background 0.3s ease-in-out;
	-moz-transition: background 0.3s ease-in-out;
	-ms-transition: background 0.3s ease-in-out;
	-o-transition: background 0.3s ease-in-out;
	transition: background 0.3s ease-in-out;
}
.lang li:hover, .lang li.active {
	background-position: 0 0;
}
.en, .fr, .ru {
	margin-right: 20px;
}
.lang a {
	width: 225px;
	height: 60px;
	line-height: 60px;
	color: #999;
	padding-left: 60px;
	border: 1px solid #999;
	text-decoration: none;
	display: block;
}
.lang a:hover, .lang li.active a {
	color: #000;
	border-color: #fff;
}
.en a { background: url("images/en.png") no-repeat 14px 14px; }
.fr a { background: url("images/fr.png") no-repeat 14px 14px; }
.ru a { background: url("images/ru.png") no-repeat 14px 14px; }
.bg a { background: url("images/bg.png") no-repeat 14px 14px; }

@keyframes fadein {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes fadein {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

/* -------------------- animated SVG arrow -------------------- */
.arrow {
	margin: 0 0 50px 0;
	text-align: center;
}
.arrow svg {
	width: 60px;
	height: 72px;
}
.arrow path {
	stroke: #0098c7;
	fill: transparent;
	stroke-width: 1px;	
	animation: arrow 2s infinite;
	-webkit-animation: arrow 2s infinite; 
}
@keyframes arrow {
	0% { opacity: 0; }
	40% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; }
}
@-webkit-keyframes arrow {
	0% { opacity: 0; }
	40% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; }
}
.arrow path.a1 {
	animation-delay: -1s;
	-webkit-animation-delay: -1s;
}
.arrow path.a2 {
	animation-delay: -0.5s;
	-webkit-animation-delay: -0.5s;
}
.arrow path.a3 {	
	animation-delay: 0s;
	-webkit-animation-delay: 0s;
}

/* -------------------- sections -------------------- */
.section {
	margin: 0 0 100px 0;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 36px;
	line-height: 54px;
	font-weight: bold;
	margin: 0 0 30px 0;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	border-bottom: 5px solid #0098c7;
}

/* -------------------- stats -------------------- */
.stats li {
	width: 25%;
	font-size: 24px;
	line-height: 36px;
	font-weight: bold;
	text-align: center;
	float: left;
}
.stats span {
	font-size: 36px;
	display: block;
}

.stats img {
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.stats li:hover img {
	-moz-transform: translateX(0px) translateY(-10px);
	-webkit-transform: translateX(0px) translateY(-10px);
	-o-transform: translateX(0px) translateY(-10px);
	-ms-transform: translateX(0px) translateY(-10px);
	transform: translateX(0px) translateY(-10px);
}

/* -------------------- list -------------------- */
.list li {
	list-style: square outside;
	margin: 0 0 0.5em 1em;
}

/* -------------------- contacts -------------------- */
.left {
	width: 50%;
	padding-right: 10px;
	text-align: right; /* align buttons */
	float: left;
}
.right {
	width: 50%;
	padding-left: 10px;
	float: right;
}
form {
	margin: 0;
}
input, select, textarea, button {
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	outline: none;
	-webkit-transition: background-color 0.2s ease-in-out;
	-moz-transition: background-color 0.2s ease-in-out;
	-ms-transition: background-color 0.2s ease-in-out;
	-o-transition: background-color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out;
}
input, textarea {
	width: 100%;
	background-color: #ddd;
	border: 2px solid #999;
	margin: 0 0 10px 0;
	padding: 10px;
}
textarea {
	height: 150px;
	resize: vertical;
	overflow: auto;
}
input:focus, textarea:focus {
	background-color: #fff;
}
button {
	color: #fff;
	border: none;
	margin: 0;
	padding: 10px 20px;
	cursor: pointer;
}
button[type="reset"] {
	background-color: #999;
}
button[type="reset"]:hover {
	background-color: #777;
}
button[type="submit"] {
	font-weight: bold;
	background-color: #0098c7;
}
button[type="submit"]:hover {
	background-color: #007295;
}
.honey {
	display: none;
}
.result {
	margin-right: 10px;
}
.loading {
	margin-right: 10px;
	vertical-align: middle;
	display: none;
}

/* -------------------- footer -------------------- */
.footer {
	border-top: 1px solid #999;
	padding-top: 20px;
}
.copy { float: left; }
.terms { float: right; }

/* -------------------- responsiveness -------------------- */
.mobile {
	background-color: #111;
	text-align: center;
	margin: 0 0 30px 0;
	padding: 30px;
	display: none;
}
.mobile select {
	width: 100%;
	margin: 30px 0 0 0;
}

@media screen and (max-width: 960px) {
	.wrap {
		width: 660px;
	}
	.lang a {
		width: 150px;
		overflow: hidden;
	}
}
@media screen and (max-width: 660px) {
	.wrap {
		width: 100%;
		padding: 10px;
	}
	.header, .arrow {
		display: none;
	}
	.mobile {
		display: block;
	}
	.stats li {
		width: 50%;
	}
	.left, .right {
		width: 100%;
		padding: 0;
		float: none;
	}
	.left {
		margin: 0 0 50px 0;
	}
	.copy, .terms {
		float: none;
		display: block;
	}
}


