/* ----------------------------------
#. HTML Body
---------------------------------- */

@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,600,700);

* {
	-webkit-font-smoothing: antialiased;
}

img {
	border: none;
}

html, body {
	margin: 0;
	padding: 0;
}

body {
	color: #888e95;
	font: 13px 'Open Sans', Helvetica, Arial, sans-serif;
	background: url('../img/diagonal-noise.png');
}

/* ----------------------------------
#. General
---------------------------------- */

.clear {
	clear: both;
}

.border-top {
	height: 4px;
	background: url('../img/border-top.jpg') repeat-x;
}

/* ----------------------------------
#. Typography
---------------------------------- */

a {
	text-decoration: none;
	-webkit-transition: color 0.3s ease;
}

p {
	line-height: 20px;
}

h1, h2, h3, h4, h5, h6 {
	color: #333;
	font-weight: 600;
}

/* ----------------------------------
#. Message
---------------------------------- */

.message {
	padding: 15px 25px;
	border: 1px solid transparent;
	
	border-radius: 3px;
	-moz-border-radius: 3px;
}

.message.error {
	color: #fff;
	
	border-color: #a4303d;
	
	box-shadow: inset 0 1px 1px #e47278;

	background-color: #e5435a;
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(229, 67, 90)), to(rgb(209, 66, 82)));
	background-image: -webkit-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
	background-image: -moz-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
	background-image: -o-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
	background-image: -ms-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
	background-image: linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#e5435a', EndColorStr='#d14252');
}

	.message.error ul {
		margin: 0;
		padding: 0;
	}
	
	.message.error ul li {
		padding: 2px 0;
		list-style: none;
	}
	
.message.success {
	color: #fff;
	
	border-color: #466f29;
	
	box-shadow: inset 0 1px 1px #93ce86;

	background-color: #81cd62;
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(129, 205, 98)), to(rgb(120, 184, 73)));
	background-image: -webkit-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
	background-image: -moz-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
	background-image: -o-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
	background-image: -ms-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
	background-image: linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#81cd62', EndColorStr='#78b849');
}

/* ----------------------------------
#. Form
---------------------------------- */

form {
	
}

form label {
	display: block;
	margin: 5px 0 15px;
}

form input[type='text'],
form textarea {
	padding: 7px 10px;
}

	form input[type='text']:focus,
	form textarea:focus {
		border-color: #999;
	}
	
form input[type='text'] {
	width: 200px;
}

form textarea {
	width: 400px;
	height: 100px;
	min-height: 100px;
	resize: vertical;
}

form input[type='submit'] {
	margin-top: 15px;
	padding: 10px 15px;
	color: #fff;
	font-size: 13px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	box-shadow: inset 0 1px 1px #00496b;
	border: 1px solid #000;
	background-color: #00496b;
}

	form input[type='submit']:hover {
		cursor: pointer;
	}

/* ----------------------------------
#. Container
---------------------------------- */

.container {
	width: 940px;
	margin: 0 auto;
	background: #fff;
}

.container-shadow {
	width: 980px;
	margin: 0 auto;
	background: url('../img/shadow.png') repeat-y;
}

/* ----------------------------------
#. Module
---------------------------------- */

.module {
	padding: 30px;
}

/* ----------------------------------
#. Top header
---------------------------------- */

.top-header {
	padding: 15px;
	background: #222;
	color: #fff;
	font-size: 18px;
	border-bottom: 3px solid #00496b;
}

	.top-header .container {
		background: none;
	}

	.top-header .telephone {
		float: right;
	}
	
	.top-header .email {
		float: left;
	}
			
	.top-header .email a {
		color: #fff;
	}
	
		.top-header .email a:hover {
	color: #666666;
		}

/* ----------------------------------
#. Header
---------------------------------- */

.header {
	background: url('../img/header-img.jpg') right bottom no-repeat;
}

	.header .logo {
		float: left;
	}
	
	.header .contact {
		float: right;
	}
	
/* ----------------------------------
#. Navigation
---------------------------------- */

.navigation {
	background: #00496b;
	box-shadow: inset 0 1px 1px #00496b;
	border-top: 1px solid #00496b;
	border-bottom: 1px solid #00496b;
}

	.navigation ul {
		margin: 0;
		padding: 0;
	}
	
	.navigation ul li {
	float: left;
	list-style: none;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
	}
	
		.navigation ul li.first {
			border-left: none;
		}
		
		.navigation ul li.last {
			border-right: none;
		}
		
		.navigation ul li.has_children {
			position: relative;
		}
		
		.navigation ul li.has_children a {
			
		}
		
			.navigation ul li.has_children:hover ul {
				display: block;
			}
		
		.navigation ul li.has_children ul {
			display: none;
		
			position: absolute;
			top: 49px;
			left: -1px;
			
			z-index: 9999;
			
	background:#00496b;
	
	box-shadow: inset 0 1px 1px #00496b;
			
			border: 1px solid #00496b;
			border-top: none;
			
			border-bottom-left-radius: 3px;
			border-bottom-right-radius: 3px;
			-moz-border-radius-bottomleft: 3px;
			-moz-border-radius-bottomright: 3px;
		}
		
		.navigation ul li.has_children ul li {
			border: none;
		}
		
		.navigation ul li.has_children ul li a {
			width: 100px;
		}
	
	.navigation ul li > a {
	display: block;
	padding: 15px 20px;
	color: #CCCCCC;
	font-weight: 600;
	-webkit-transition: color 0.3s ease, background 0.3s ease;
	}
	
		.navigation ul li > a:hover,
		.navigation ul li.current > a {
			color: #fff;
		}
		
/* ----------------------------------
#. Slider
---------------------------------- */

.slider-shadow {
	height: 40px;
	background: url('../img/slider/slider-shadow.png') top center no-repeat;
}
	
/* ----------------------------------
#. Content
---------------------------------- */

.content {
	
}

	.content .inner {
		float: left;
		width: 600px;
	}
	
		.content .inner h1 {
			margin-top: 0;
			font-size: 24px;
		}
		
		.content .inner .inner-header {
	padding: 15px 30px;
	background: #00496b;
	box-shadow: inset 0 1px 1px #64e2f8;
	border: 1px solid #00496b;
	border-bottom: none;
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-moz-border-radius-topright: 3px;
		}
		
			.content .inner .inner-header h1 {
				margin: 0;
				color: #fff;
				font-size: 18px;
			}
		
		.content .inner .inner-inner {
			padding: 20px 30px;
			border: 1px solid #e7e7e7;
			
			border-bottom-left-radius: 3px;
			border-bottom-right-radius: 3px;
			-moz-border-radius-bottomleft: 3px;
			-moz-border-radius-bottomright: 3px;
			
			box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
		}
	
	.content .sidebar {
		float: right;
		width: 248px;
		margin-left: 30px;
	}
	
		.content .sidebar h2 {
			margin-top: 0;
		}
		
		.content .sidebar form {
		
		}
		
		.content .sidebar form input[type='text'],
		.content .sidebar form textarea {
			width: 228px;
		}
		
	.content.full-width {
		
	}
	
		.content.full-width .inner {
			width: 880px;
		}
		
		.content.full-width .sidebar {
			display: none;
		}
	
/* ----------------------------------
#. Services
---------------------------------- */

.services {
	margin-top: 30px;
}

	.services ul {
		margin: 0;
		padding: 0;
	}
	
	.services ul li {
		list-style: none;
		
		float: left;
		width: 169px;
		height: 140px;
		margin-right: 15px;
		
		background-size: cover;
		background-repeat: no-repeat;
		
		overflow: hidden;
		
		border-radius: 3px;
		-moz-border-radius: 3px;
	}
	
		.services ul li.last {
			margin-right: 0;
		}
		
	.services ul li .overlay {
		display: none;
		
		width: 100%;
		height: 44%;
		padding: 28% 0;
		text-align: center;
		
		background: url('../img/overlay.png');
	}
	
		.services ul li .overlay a {
			display: inline-block;
			padding: 7px 10px;
			color: #fff;
			text-transform: uppercase;
			font-weight: 600;
			border: 2px solid #fff;
		}
	
/* ----------------------------------
#. CTA
---------------------------------- */

.cta {
	color: #fff;
	background: #00496b url('../img/contact.png') center right no-repeat;
	background-position-y: 10px;
}

	
	.cta .inner {
		width: 500px;
	}
	
		.cta .inner h2 {
			color: #fff;
			margin-top: 0;
		}
		
		.cta .inner p:last-child {
			margin-bottom: 0;
		}
		
/* ----------------------------------
#. Map
---------------------------------- */

.map {
	height: 400px;
}
		
/* ----------------------------------
#. Gallery
---------------------------------- */

.gallery {
	margin: 0;
	padding: 0;
}

	.gallery li {
		list-style: none;
		float: left;
		
		width: 190px;
		height: 140px;
		
		margin-right: 20px;
		margin-bottom: 20px;
		
		overflow: hidden;
	}
	
		.gallery li.last {
			margin-right: 0;
		}
		
	.gallery li img {
		max-width: 100%;
		min-height: 100%;
	}
	
/* ----------------------------------
#. Extra
---------------------------------- */

.extra {
	display: none;
	text-align: center;
	background: #000;
}

.extra ul {
	margin: 0;
	padding: 0;
}

.extra ul li {
	display: inline-block;
	padding: 3px 5px;	
}

.extra ul li a {
	color: #999;
	text-shadow: 0 1px 1px #000;
}

/* ----------------------------------
#. Footer
---------------------------------- */

.footer {
	color: #fff;
	background: #222;
	position: relative;
}

	.footer #toggle {
		padding: 7px 10px;
		position: absolute;
		width: 70px;
		left: 50%;
		top: -15px;
		margin-left: -46px;
		text-align: center;
		
		border: 1px solid #000;
		border-radius: 3px;
		-moz-border-radius: 3px;
		
		box-shadow: inset 0 1px 1px #555, 0 1px 3px #333;
		
		background-color: #383838;
		background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(56, 56, 56)), to(rgb(48, 48, 48)));
		background-image: -webkit-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
		background-image: -moz-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
		background-image: -o-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
		background-image: -ms-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
		background-image: linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
		filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#383838', EndColorStr='#303030');
	}
	
		.footer #toggle:hover {
			cursor: pointer;
		}

	.footer .column {
		color: #aaa;
	
		float: left;
		width: 280px;
		margin-right: 20px;
	}
	
		.footer .column.last {
			margin-right: 0;
		}
		
	.footer .column h3 {
		color: #fff;
	}
	
	.footer .column ul {
		margin: 0;
		padding: 0;
	}
	
	.footer .column ul li {
		list-style: none;
	}
	
		.footer .column ul li.has_children {
			
		}
		
		.footer .column ul li.has_children ul {
			display: none;
		}
	
	.footer .column ul li a {
		display: block;
		padding: 2px 0;
		color: #aaa;
	}
