/* Colours
Dark Green: #005048;
Lighter Green: #006666;
"Light" Green: #006F66;
Dark Yellow:  #FDBD10;
Gray text: #666;

/* Typography */

@font-face {
    font-family: 'AlteHaasGroteskBold';
    src: url('fonts/altehaasgroteskbold-webfont.eot');
    src: url('fonts/altehaasgroteskbold-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/altehaasgroteskbold-webfont.woff') format('woff'),
         url('fonts/altehaasgroteskbold-webfont.ttf') format('truetype'),
         url('fonts/altehaasgroteskbold-webfont.svg#AlteHaasGroteskBold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'AlteHaasGroteskRegular';
    src: url('fonts/altehaasgroteskregular-webfont.eot');
    src: url('fonts/altehaasgroteskregular-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/altehaasgroteskregular-webfont.woff') format('woff'),
         url('fonts/altehaasgroteskregular-webfont.ttf') format('truetype'),
         url('fonts/altehaasgroteskregular-webfont.svg#AlteHaasGroteskRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}


/* Generics */
html {
	background: #fff url('../img/green-bg-full.png') top left repeat-x;
	height: 100%;
}
	html#businesses { background: url('../img/yellow-bg-full.png') top left repeat-x;}
body {
	font: 75%/1.25  "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	background: transparent url('../img/content-shadow.png') center top repeat-y;
	color: #808080;
}
	

h2 { font-size: 2em; }
h3 {
	font-size: 1em;
	line-height: 1.25em;
	margin-bottom: 0em;
	color: #005048;
	font-weight: 600;
	margin-top: 1.25em;;
}
h4 { color: #006F66; 
	font-size: 1em;
	line-height: 1.25em;
	margin-bottom: 0; 
	font-weight: normal;
}
p {
	font-size: 1em;
	line-height: 1.25em;
	margin-top: 0.625em;
	margin-bottom: 0.625em;
}
h3 + p, h3 + h4 {
	margin-top: 0;
}
ol, ul {
	font-size: 1em;
	line-height: 1.25em;
	padding-left: 1.4em; 
	margin-top: 0.625em;
	margin-bottom: 0.625em;
}
	p + ul {margin-top: -0.625em;}
	h4 + ul {margin-top: 0;}
ol li, ul li {
	margin: 0;
}
a, a:visited {
	color: #006666;
	text-decoration: none;
}

a:hover {
	color: #006F66;
}


h2, #header #slogan, .front-lift b, #page-introduction, #content-banner, .banner-overlay { 
	font-family: 'AlteHaasGroteskRegular';
}

/* Header */
#header {
	height: 105px;
	width: 940px;
	margin: 0 -6px;
	padding: 45px 6px 0;
	background: #fff url('../img/main_bg.png') repeat-x;
}
	#header #logo {
		float: left;
		width: 300px;
		margin: 0;
	}
	
	#header #slogan {
		text-align: right;
		font-size: 2em;
		margin: 10px 0 0;
		color: #006666;
	}
	
	#header #nav {
		float: right;
		overflow: hidden;
		margin: 25px 0 0;
		padding: 0;
	}
	
		#nav li {
			float: left;
			list-style-type: none;
			margin-left: 10px;
			font-size: 1.12em;
			line-height: 1.2em;
		}
		
		#nav li:first-child {
			margin: 0;
		}
			#nav li a {
				color: #666;
				text-decoration: none;
				text-transform: uppercase;
			}
			
			#nav .active a {
				color: #006666;
			}
			
			#nav li a:hover {
				color: #006666;
			}
/* Content contact-form */
#main-wrap {
	position: relative;
	height: 100%;
/*	background: url('../img/diagonal_test.png') left 150px repeat-x;*/
}
	#extra {
		min-height: 100%;
/*		background: url('../img/shadow2.png') center top repeat-y;*/
		position: relative;
	}
	#content-wrap {
		width: 941px;
		margin: 0 auto;
		position: relative;
		background-color: #fff;

	}
	
	/*#content-wrap:before {
			top: 150px;
			left: -135px;
			position: absolute;
			display: block;
			width: 135px;
			background: url('../img/halo.png') left center no-repeat;
			height: 270px;
			content: '';
		}

		#content-wrap:after {
			top: 150px;
			right: -135px;
			position: absolute;
			display: block;
			width: 135px;
			background: url('../img/halo.png') right center no-repeat;
			height: 270px;
			content: '';
		}*/
	#content {
		padding: 40px 40px 70px;
		overflow: hidden;
	}

.tab {
	clear: both;
}
#subnav {
	overflow: hidden;
	padding: 0;
	margin: 0 0 .5em 0;
}

	#subnav li {
		float: left;
		font-size: 1.2em;
		display: block;
		padding: .5em 1.2em .5em 0;
	}
	
		#subnav li + li {
			padding-left: 1.2em;
			border-left: 2px solid #FDBD10;
		}
		
		#subnav li a {
			color: #666;
			text-decoration: none;
			text-transform: uppercase;
		}
		
		#subnav .active a, #subnav li a:hover {
			color: #006F66;
		}
	/* Class for hide the tabs */
	.inactive-tab {
		display: none;
	}
/* Footer */
#footer {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 34px;
	background: #f7aa1a url('../img/footer.png') center no-repeat;
	overflow: hidden;
}

	#footer-content {
		width: 940px;
		margin: 0 auto;
		padding: 8px 5px 0;
		color: #fff;
		height: 30px;
	}
/* Main pages banner/fader */
#banner {
	height: 270px;
	overflow: hidden;
	position: relative;
	background: #006F66;
}
	#banner .data {
		display: none;
	}
	#banner ul {
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
	
		#banner ul li {
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			height: 270px;
		}
			#banner ul li img {
				display: block;
			}
			
.banner-overlay {
	position: absolute;
	top: 0;
	right: 0;
	width: 562px;
	padding: 50px 40px 0 0;
	bottom: 0;
	background: url('../img/banner_overlay.png') no-repeat;
	text-align: right;
	color: #fff;
	line-height: 1;
}

	.banner-overlay a {
		display: block;
		float: right;
		width: 109px;
		height: 24px;
		background: url('../img/case_study_link.png') no-repeat;
		color: #fff;
		text-decoration: none;
		text-transform: uppercase;
		line-height: 24px;
		text-align: center;
		font-size: .8em;
	}
	
	.banner-overlay blockquote {
		float: right;
		clear: both;
		
		margin: 30px 0 10px;
		width: 275px;
		font-weight: normal;
		font-family: AlteHaasGroteskRegular;
	}
		.banner-overlay blockquote p {margin: 0;
			font-size: 1.666667em;
			line-height: 1.2;
			
			}
		.banner-overlay blockquote p:before {
			content: "“";
		}
	
		.banner-overlay blockquote p:after {
			content: "”";
		}
	
	.banner-overlay .person {
		clear: both;
		display: block;
		font-size: 2.1em;
		float: right;
		font-weight: bold;
	}
	
	.banner-overlay .profession {
		text-transform: uppercase;
		font-size: 1.2em;
		float: right;
		clear: both;
		font-weight: bold;
	}

			
/* Front page content area (liftups) */
#page-introduction, .front-lift {
	float: left;
	width: 265px;
	margin-right: 30px;
	margin-bottom: 30px;
}
	#page-introduction h2 {
		margin-top: 0;
		color: #005048;
		font-weight: normal;
		text-transform: uppercase;
		line-height: 1;
		margin-bottom: 14px;
	}
	
	#about #page-introduction {
		color: #006F66;
	}
	
	#main-content-right {
		overflow: hidden;
		min-height: 300px;
	}
	#businesses-liftup h3 {
		margin: 0 auto 10px;
		text-align: center;
		height: 92px;
		width: 267px;
		background: url('../img/businesses-liftup.png') no-repeat;
		line-height: 92px;
		font-size: 2.2em;
		color: #fff;
		font-family: AlteHaasGroteskBold; font-weight: normal;
	}
	
	#businesses-liftup a h3 + p {
		color: #FDBD10;
		font-size: 1.166667em;
		line-height: 1.071429em;
		font-family: AlteHaasGroteskBold;
	}
#careers-liftup {
	margin: 0;
}

	#careers-liftup h3 {
		margin: 0 auto 10px;
		text-align: center;
		height: 92px;
		width: 267px;
		background: url('../img/careers-liftup.png') no-repeat;
		line-height: 92px;
		font-size: 2.2em;
		color: #fff;
		font-family: AlteHaasGroteskBold; font-weight: normal;
	}
	
	#careers-liftup a h3 + p {
		color: #006666;
		font-size: 1.166667em;
		line-height: 1.071429em;
		font-family: AlteHaasGroteskBold;
	}

	#careers-liftup a p, #businesses-liftup a p {
		color: #808080;
	}
#content-banner {
	height: 66px;
	background: url('../img/content_banner_bg.png') repeat-x;
	clear: left;
	color: #006666;
	padding: 20px 150px 20px 20px;
	position: relative;
}
	#content-banner h2, #content-banner p {
		margin: 0;
		float: left;
		clear: left;
	}
	
	#content-banner h2 {
		font-size: 1.7em;
		font-weight: normal;
	}
	
	#content-banner p {
		font-family: AlteHaasGroteskBold;
	}
	#content-banner a.vacancies {
		display: block;
		position: absolute;
		right: 20px;
		top: 53px;
		margin-top: -27px;
		height: 33px;
		line-height: 33px;
		width: 150px;
		color: #fff;
		font-size: 1.2em;
		background: url('../img/vacancies_link.png') no-repeat;
		text-decoration: none;
		text-align: center;
		text-transform: uppercase;
		font-family: AlteHaasGroteskBold;
	}
/* No banner content areas */

#content-wrap > h2 {
	margin: 0;
	padding: 15px 40px;
	color: #fff;
	background: #006F66;
}

#businesses #content-wrap > h2 {
	background: #FDBD10;
}

#main-content-left {
	float: left;
	width: 70%;
	margin-right: 24px;
}

/*div[id|="main-content"] ul {
	margin-top: 0;
}*/
/* Related links */

#related-links {
	overflow: hidden;
}
	#related-links h3 {
		text-transform: uppercase;
		font-weight: normal;
		margin-top: 0;
	}

	#related-links ul {
		background: url('../img/related_links_bg.png') repeat-x;
		min-height: 270px;
		padding: 10px;
	}
	#related-links li {
		list-style-type: none;
		margin: .4em 0;
	}

		#related-links li a {
			color: #666;
			text-decoration: none;
		}
		
		#related-links li a:hover {
			color: #066;
		}

/* Column lists */
div.column-list {
	width: 24%;
	float: left;
} 

	.column-list + .column-list {
		margin-left: 20px;
	}
	
	.column-list ul {
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
/* Vacancies Search and Contact Form*/
#job-vacansies-search {
	float: left;
	width: 70%;
	margin-right: 24px;
	margin-bottom: 30px;
}

	#job-vacansies-search fieldset {
		padding: 0;
		margin: 0;
		border: 0;
	}
	
	#job-vacansies-search li, .zemContactForm li {
		display: inline-block;
		width: 48%;
		margin-left: 7px;
		list-style-type: none;
		line-height: normal;
		margin-bottom: 40px;
	}
	.zemContactForm li {
		margin-bottom: 10px;
	}
		* + html #job-vacansies-search li, * + html .zemContactForm li {
			display: inline;
			margin-left: 12px;
		}
		
	.zemContactForm li.message-field {
		display: block;
		float: none;
		clear: both;
		width: auto;
	}
	.zemContactForm li.message-field textarea {
		width: 96.2%;
		height: 5em;
	}
	
	#job-vacansies-search label, .zemContactForm label {
		display: block;
		font-size: 1.1em; 
		color: #006F66;
		text-transform: uppercase;
		margin-bottom: 4px;
		cursor: pointer;
	}
	.zemContactForm label.zemRequired, #job-vacansies-search label.required-field {
		background: url('../img/asterisk.png') no-repeat;
		padding-left: 10px;
	}
	#job-vacansies-search select {
		width: 98%;
		padding: .3em .5em;
	}
	.zemContactForm input[type="text"]  {
		width: 94%;
		padding: .3em .5em;
		vertical-align: bottom;
	}

#vacancy-search-controls {
	text-align: right;
	margin-top: -30px;
	padding-right: 15px;
}

	#vacancy-search-controls input, .zemContactForm input[type="submit"] {
		font-size: 1.1em; 
		color: #006F66;
		text-transform: uppercase;
		overflow: visible;
		padding: .5em 1.5em;
		border: 1px solid #006F66;
		background: #F2F2F2;
	}	

	#search-instructions h3 {
		margin-bottom: .65em;
		text-transform: uppercase;
	}
	
	#search-instructions p {
		color: #006F66;
	}
	
#job-search-results {
	clear: both;
	padding-top: 30px;
	border-top: 2px solid #006F66;
	border-collapse: separate;
	text-align: left;
	width: 100%;
}

	#job-location {
		width: 20%;
	}
	
	#job-id {
		width: 8%;
	}
	
	#job-search-results th {
		font-size: 1.1em; 
		color: #006F66;
		text-transform: uppercase;
		font-weight: normal;
		padding-bottom: .5em;
	}
	
	#job-search-results td {
		vertical-align: top;
		background: #F2F2F2;
		border-bottom: 1px solid #fff;
		padding: 1em;
	}
	
	#job-search-results td + td, #job-search-results th + th { 
		border-left: 12px solid #fff;
	}
	
	#job-search-results h3 {
		margin: 0;
		font-weight: normal;
	}
	
	#job-search-results p {
		margin: 0;
	}

/* Single job view */
	#job-vacancies #content > h3 {
		font-size: 2em;
	}
	#job-vacancies dl {
		width: 44%;
		float: left;
		margin-right: 42px;
	}
	#job-vacancies dt {
		display: block;
		font-size: 1.1em; 
		color: #006F66;
		text-transform: uppercase;
		margin-bottom: 4px;
	}

	#job-vacancies dd {
		margin-bottom: 4px;
	}
	
	#job-vacancies iframe {
		float: left;
		margin-top: -2.2em;	
	}

/* Case Studies */
#case-studies-list {
	margin: 0;
	padding: 0;
	list-style: none;
}
#case-studies-list > li {
	margin-bottom: 1em;
	list-style: none;
	padding-left: 0;
	overflow: hidden;
}
#case-studies-list > li > img {
	float: left;
	margin: 1em 1em 1em 0;
}
#case-studies-list > li > p:first-child {
	margin-top: 0;
	}
	#case-studies-list > li > p br {
		height: 1em;
		display: block;
	}
/* Permalinksk and footer in general */
#permalinks {
	margin: 0;
	padding: 0;
}
	#permalinks li {
		margin: 0 10px 0 0;
		float: left;
		list-style-type: none;
	}
	#permalinks a {
		color: #fff;
		text-decoration: none;
		text-transform: uppercase;
	}

#copyright {
	float: right;
}
/* Float containment */
#content:after {
	display: table;
	content: '';
}

/* AJAX search result container */
.job-search-loading {
	background: rgba(255,255,255,0.5) url(/images/loading.gif) no-repeat center center;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}