/*  
	Coolbox Style Sheet
	--------------------------------------------------------------

	layout.css

	--------------------------------------------------------------
*/

/* 	--------------------------------------------------------------
	zero out all styles except form elements, which are left to default */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
}
/* define focus styles */
:focus {
	outline: 0;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
/* Clearing bug fix */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
.clearfix {
    display: inline-block;
}
html[xmlns] .clearfix {
    display: block;
}
* html .clearfix {
    height: 1%;
}

/*	end zero out
	-------------------------------------------------------------- */

/* 	--------------------------------------------------------------
	basic body styles */

html, body {
	height: 100%;
}
	
body {
	font-size: 0.75em; /* 12px default */
	font-family: Georgia, Verdana, Arial, Helvetica, sans-serif;
	font-weight: normal;
	color: #62655e;
}

h2 {
	font-style: italic;
	font-weight: normal;
	font-size: 1.75em; /* 21px */
}

	h2 a {
		color: #62655e;
	}
	
	h2 a:hover {
		color: #545750;
	}

h3 {
	font-weight: normal;
}

p {
	 margin: 1em 0;
	 line-height: 1.5em;
}

a {
	color: #339BDA;
	text-decoration: none;
	border-bottom: 1px dotted;
}
	a:hover {
		text-decoration: none;
		border-bottom: 1px solid;
		color: #2988cc;
	}


hr {
	border: none;
	border-top: 1px solid #E5E5E5;
	margin: 1.5em 0;
}

.hr {
	border: none;
	border-top: 1px solid #E5E5E5;
	margin: 1.5em 0;
}
	.hr hr {
		display: none;
	}

blockquote {
	background:url(../images/quote_top.gif) left top no-repeat;
	padding: 19px 0 0;
}
	blockquote p {
		background:url(../images/quote_bottom.gif) left bottom no-repeat;
		padding: 0 25px 28px 25px;	
		margin: 0;
		font-size: 1.2em;
		font-style: italic;
		color: #979797;
	}	
	
	blockquote p br {
		display: block;
		margin-top: 1.5em;
	}


/*	end basic body styles
	-------------------------------------------------------------- */
	
/* 	--------------------------------------------------------------
	set up the styles used on every page */	

#page_wrapper {
	margin: 0 0 -200px; /* allow for the footer */	
	height: auto;
	min-height: 100%;
	position: relative;
	background: #DDF0EE;
}

/* header section */

#header_wrap {
	position: absolute;
	top: 0;
	height: 85px;
	width: 100%;
	background:url(../images/header_bg.gif) left top repeat-x #DDF0EE;	
	z-index: 4;
}
	#header {
		position: relative;
		margin: 0 auto 5px;
		height: 80px;
		width: 900px;
	}
	
		#header .logo {
			display: block;
			height: 57px;
			width: 165px;
			margin: 0;
			background:url(../images/coolbox.gif) left top no-repeat;
			padding: 0;
			position: absolute;
			top: 18px;
			left: 38px;
		}
			#header .logo a {
				display: block;
				height: 57px;
				width: 165px;
				margin: 0;
				padding: 0;
				text-indent: -9999px;
				border-bottom: none;	
			}
		
		
		/* menu */
		#header ul {
			position: absolute;
			top: 32px;
			right: 37px;
			text-transform: uppercase;
			font-weight: bold;
		}
		
			#header ul li {
				float: left;
				display: block;
				margin: 0 5px;
				padding: 0 0 0 11px;
				position: relative;
			}
				#header ul li:last-child {
					margin-right: 0;
				}
				#header ul li:hover {
					background:url(../images/nav_left_hover.png) left top no-repeat;
				}
				#header ul li.cur {
					background:url(../images/nav_left_on.png) left top no-repeat;
				}
				
				#header ul li a {
					display: block;
					color: #62655e;
					text-decoration: none;
					border-bottom: none;
					padding: 6px 11px 9px 0;
				}
				
					#header ul li:hover a, #header ul#nav li a:hover {
						text-decoration: none;
						border-bottom: none;
						background:url(../images/nav_right_hover.png) right top no-repeat;
						color: #545750;
					}
					#header ul li.cur a {
						color: #FFFFFF;
						background:url(../images/nav_right_on.png) right top no-repeat;
					}

/* main body */
#main {
	position: relative;
	padding: 85px 0 200px 0; /* allow for the header and footer */
	margin: 0;
	z-index: 2;
	width: 100%;
	overflow: hidden;
}
	
	#main #content {
		width: 888px;
		margin: 0 auto;
		background: url(../images/page.gif) left top no-repeat;
		padding: 6px 6px 25px;
	}
	
		#main #content .breadcrumbs {
			height: 19px;
			text-transform: uppercase;
			font-weight: bold;
			color: #7A8380;	
			margin: 36px 36px 0 36px;
		}

			#main #content .breadcrumbs a {
				color: #C5C9C7;
				text-decoration: none;
				border-bottom: none;
				float: left;	
				background: url('../images/breadcrumbs_arrow.gif') right 2px no-repeat;
				padding-right: 11px;			
			}
				#main #content .breadcrumbs a:hover {
					text-decoration: underline;
				}
				#main #content .breadcrumbs a.right {
					color: #339BDA;
					border-bottom: 1px dotted;
					padding: 0;
					margin-right: 1em;
					text-decoration: none;
					float: right;
				}
				
				#main #content .breadcrumbs div.right {
					font-style: italic;
					font-weight: normal;
					background: none;
					text-transform: none;						
				}
				
					#main #content .breadcrumbs .right a {
						color: #339BDA;
						border-bottom: 1px dotted;
						padding: 0;
						text-decoration: none;
						background: none;	
					}
						#main #content .breadcrumbs a.right:hover, #main #content .breadcrumbs .right a:hover {
							border-bottom: 1px solid;
							color: #2988cc;
						}
					
					#main #content .breadcrumbs .right form {
						margin: -0.25em 0.5em 0 -3em;	
					}						
	
						#main #content .breadcrumbs .right form label {
							display: none;
						}	
	
						#main #content .breadcrumbs .right form select {
							font-style: italic;
							font-weight: normal;
							font-family: Georgia, Verdana, Arial, Helvetica, sans-serif;
							font-size: 0.9em;
							color: #62655e;	
						}
						
						#main #content .breadcrumbs .right form fieldset {
							float: right;
						}

						#main #content .breadcrumbs .right form button {
							color: #62655e;
							border: 1px solid #E5E5E5;
							background: #F9F9F9;
							cursor: pointer;
							margin-top:  -0.1em;
						}								

			#main #content .breadcrumbs h1 {
				float: left;	
				font-size: 1em;			
			}
			
		#main #content #content-inner {
			padding: 0 36px 36px;
			width: 816px;
			background: #FFFFFF;
			min-height: 350px;
		}
		
			#main #content #content-inner .column {
				border-top: 1px solid #DDDDDD;
				padding-top: 18px;
			}
			
			
			#main #content .pagination {
				text-align: center;
				color: #C8CCCB;
				text-transform: none;
				font-weight: normal;
			}
			
			#main #content .column.pagination {
				padding-top: 1em;
				clear: both;
				
			}
				#main #content .pagination p {
					margin: -0.25em 0 0;
				}	
				#main #content .pagination a {
					float: none;
					background: none;
					padding: 0;
					color: #339BDA;
					border-bottom: 1px dotted;
				}
					#main #content .pagination a:hover {
						border-bottom: 1px solid;
						text-decoration: none;
						color: #2988cc;
					}	
							
	#main #primary {
		min-height: 350px;
		z-index: 3;
		background:url(../images/city_scape.gif) right bottom repeat-x #DDF0EE;
	}

		#main #primary #primary_inner {
			margin: 0 auto;
			padding: 0 0 30px;
			width: 816px;
		}

	#main #secondary {
		background: #E4DBD2;
		min-height: 200px;
		z-index: 2;
		position: relative;
		width: 816px;
		padding: 0;
		margin: 0 auto;
	}

/* the city bit */
#city_scape {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 200px;
	height: 181px;
	background:url(../images/city_scape.gif) right top repeat-x;
	z-index: 1;
}

/* footer */

#footer {
	position: relative;
	margin-top: -200px; 
	height: 200px;
	clear: both;
	width: 100%;
	background:url(../images/footer_bg_thin.gif) left top repeat-x #8F8076;
	z-index: 4;
	color: #EFEEEC;
	overflow: hidden;
	font-size: 1.2em; /* 14px */
	line-height: 1em;
}	
	
	#footer a {
		text-decoration: none;
		border-bottom: none;
		color: #EFEEEC;
	}
		#footer a:hover {
			border-bottom:  1px solid;
		}
	
	#footer #footer_top {
		margin: 0 auto;
		height: 47px;
		width: 872px;
		padding: 64px 0 0 28px; 	
		background:url(../images/footer_bg.gif) 28px 9px no-repeat;
		position: relative;
	}
	
		#footer #footer_top .bookmarks {
			height: 28px;
			font-style: italic;
		}
			
			#footer #footer_top .bookmarks span {
				height: 18px;
				padding: 2px 0;
				float: left;
			}
			
			#footer #footer_top .bookmarks ul {
				float: left;
			}
		
			#footer #footer_top .bookmarks li {
				float: left;
				margin: 0 5px;
				height: 18px
			}
					
				#footer #footer_top .bookmarks a {
					padding: 3px 5px 3px 23px;
					display: block;
					font-style: normal;
					font-size: 0.8em; /* 12px */
				}
			
				#footer #footer_top .bookmarks a.delicious {	
					background: url(../images/bookmarks/delicious.gif) left top no-repeat;	
				}
				#footer #footer_top .bookmarks a.digg {
					background: url(../images/bookmarks/digg.gif) left top no-repeat;	
				}
				#footer #footer_top .bookmarks a.reddit {
					background: url(../images/bookmarks/reddit.gif) left top no-repeat;	
				}
				#footer #footer_top .bookmarks a.facebook {
					background: url(../images/bookmarks/facebook.gif) left top no-repeat;	
				}
				#footer #footer_top .bookmarks a.stumbleupon {
					background: url(../images/bookmarks/stumble_upon.gif) left top no-repeat;	
				}
				#footer #footer_top .bookmarks a.linkedin {
					background: url(../images/bookmarks/linkedin.gif) left top no-repeat;	
				}
						
			
		#footer #footer_top .rss {
			position: absolute;
			right: -61px;
			bottom: -1px;			
			height: 70px;
			width: 209px;
			background: url(../images/rss.gif) top left no-repeat;	
		}

			#footer #footer_top .rss a {
				display: block;
				margin: 0px 0 0 80px;
				height: 47px;
				width: 48px;
				text-indent: -9999px;
			}
				#footer #footer_top .rss a:hover {
					border-bottom: none;
					background: url(../images/rss_birdie.gif) top left no-repeat;
				}

			
	#footer #footer_bottom {
		border-top: 1px solid #84766D;
		height: 64px;
		width: 844px;
		margin: 0 auto;
		padding: 12px 0;
	}	

		#footer #footer_bottom p {
			margin: 0 0 0.75em;
		}
		
		#footer #footer_bottom .copyright {
			font-size: 0.75em;
			color: #D2CCC8;
		}
			#footer #footer_bottom .copyright a {
				color: #D2CCC8;
			}

/* some generic styles to daisy-chain and make life easier */

.one_third { 
	position: relative;
	width: 260px;
}
	.one_third.boxed {
		width: 218px;
		padding: 20px;
	}

.two_thirds {
	position: relative;
	width: 535px;
}
	.two_thirds img {		
		margin: 9px;
	}
	
	.two_thirds.boxed {
		width: 493px;
		padding: 20px;
		
	}

.boxed {
	border: 1px solid #E5E5E5;
}

	.boxed .hr {
		margin-left: -10px;
		margin-right: -10px;
	}

.bordered {
	border: 1px solid #E5E5E5;
}

.left {
	float: left;
	margin-right: 18px;
}

.right {
	float: right;
}

.intro {
	font-size: 1.2em;
}

.brown {
	color: #807462;
}

.auto-unhide {
	display: none;
}

.hidden {
	display: none;
}
.relative {
	position: relative;
}

/*	end every page setup
	-------------------------------------------------------------- */	
	
	
/* 	--------------------------------------------------------------
	portfolio styles */	

.case_row {
	margin-right: -18px;
}

/* portfolio previews */
.portfolio_case_preview {
	width: 252px;
	border: 1px solid #E5E5E5;		
	margin: 0 18px 18px 0;
	padding: 3px;
}
	.right .portfolio_case_preview {
		margin: 0 0 18px 0;
	}
	.portfolio_case_preview:hover {
		background: #F9F9F9;
	}
	.portfolio_case_preview img {
		margin: 6px 6px 9px;
	}
	.portfolio_case_preview a {
		text-decoration: none;
		border-bottom: none;
	}
		.portfolio_case_preview a:hover {
			border-bottom: none;
		}

	.portfolio_case_preview .portfolio_preview_info {
		padding: 15px;
		border-top: 1px solid #E5E5E5;
	}
	
		.portfolio_case_preview .portfolio_preview_info h2 {
			margin: 0;
			font-style: italic;
			font-size: 1.2em; /* 14 px */
		}
		
			.portfolio_case_preview .portfolio_preview_info h2 a {
				border-bottom: 1px dotted;
				color: #339BDA;
			}
				.portfolio_case_preview .portfolio_preview_info h2 a:hover {
					border-bottom: 1px solid;
					color: #2988cc;
				}	
		.portfolio_case_preview .portfolio_preview_info p {
			margin: 0;
			font-style: italic;
		}
		.portfolio_case_preview .portfolio_preview_info p.client {
			color: #A3A8A7;
			font-style: normal;
		}


/*	end portfolio styles
	-------------------------------------------------------------- */			


/* 	--------------------------------------------------------------
	page specific styles */	


/* portfolio page */

	.portfolio .case_previews {
		padding-top: 18px;
		border-top: 1px solid #DDDDDD;
	}
	
	.portfolio .one_third ul {
		padding: 1em 0 1em 1em;
		list-style-type: disc;
		list-style-position: outside;
	}

	.portfolio .one_third ol {
		padding: 1em 0 1em 2em;
		list-style-type: decimal;
		list-style-position: outside;
	}

		.portfolio .one_third ul li, .portfolio .one_third ol li {
			padding: 0.5em 0;
		
		}
		
/* portfolio single page */

.portfolio .two_thirds {
	margin-bottom: 18px;
}

.portfolio .two_thirds img {		
	margin: 5px 5px 0;
	padding: 4px 4px 9px;
	border-bottom: 1px solid #E5E5E5;
}

ul.gallery_images {
	padding: 12px 11px 11px 12px
}

	.gallery_images li {
		background: #EEE9E5;
		margin: 11px 12px 12px 11px;
		float: left;
	}

		.gallery_images li:hover {
			background: #DAD1C6;
		}
	
		.gallery_images li a{
			border-bottom: none;
		}

			.portfolio .two_thirds .gallery_images li a img {
				border-bottom: none;			
			}

.case_details {
	padding: 0 5px;
	border-bottom: 1px solid #F2F2F2;
	color: #7A8380;
}
	.case_details p{
		margin: 0 0 1em;
	}

.case_content {
	padding: 1em 5px;
}

	.case_content blockquote {
		margin: 1.5em -5px;
	}

	.case_content .cite {
		margin: -1.5em 0 1.5em;
	}

	.case_content cite {
	}
	
	.case_content h3 {
		text-transform: uppercase;
		font-weight: normal;
		font-size: 1.1em;
	}
	
	.case_content h3 + p {
		margin-top: 0;
	}


/* services and approach pages */

.services .two_thirds img {
	border:  1px solid #E5E5E5;
	margin: 0;
	padding: 9px;
}

.two_thirds.bigger_intro *:first-child + p {
	font-size: 1.2em;
}

.two_thirds.bigger_intro h2 {
	border-top:  1px solid #E5E5E5;
	padding-top: 0.85em;
	margin-top: 0.85em;
}

/* approach page */

#team-photo {
	position: relative;
	height: 203px;
	width: 517px;
	margin: 0 auto;
	border: 1px solid #E5E5E5;
	padding: 9px;
}

	#team-photo .photo {
		margin: -17px 0 0;
		height: 220px;
		width: 517px;
		z-index: 9;
	}
		#team-photo .photo img {
			margin: 0;
		}
	
	#team-photo a {
		border: none;
		position: absolute;
	}	
		
		#team-photo a:hover{
			background: no-repeat;
		}
		
		#team-photo a span {
			display: none;
		}
	
			#team-photo a:hover span{
				display: block;
				text-indent: 0;
				vertical-align: top;
				color: #FFFFFF;
				background-color: #353535;
				font-weight: bold;
				position: absolute;
				top: 100%;
				margin: 0;
				padding: 5px;
			}

	#nick {
		top: 8px;
		left: 220px;
		height: 110px;
		width: 89px;
		z-index: 12;
	}
		#team-photo a#nick:hover span{
			left: 20px;
		}
			
	#andy {
		top: -2px;
		left: 302px;
		height: 110px;
		width: 89px;
		z-index: 11;
	}
		#team-photo a#andy:hover span{
			left: 20px;
		}
	#carwyn {
		top: -6px;
		left: 123px;
		height: 110px;
		width: 89px;
		z-index: 11;
	}
	#team-photo a#andy:hover span{
		left: 20px;
	}

	#eddie {
		top: 8px;
		left: 392px;
		height: 110px;
		width: 95px;
		z-index: 12;
	}

	#hannah {
		top: 35px;
		left: 40px;
		height: 110px;
		width: 89px;
		z-index: 12;
	}
		#team-photo a#hannah:hover span{
			left: 10px;
		}

.approach #main .one_third {
	position: relative;
	border: 1px solid #E5E5E5;
	padding: 10px;
	width: 240px
}


	.approach #main .one_third h2 {
		font-size:1em;
		font-weight:bold;
		padding: 0 10px;
		margin-top: 10px;
	}
	
	.approach #main .one_third p {
		margin-top: 0;
		padding: 0 10px;
	}	

.staff_profile {
	border-top: 1px solid #E5E5E5;
	padding: 10px 0 0;
}

	.staff_profile.javascript_enabled {
		width: 240px;
		padding: 10px;
		display: none;
		position: absolute;
		border: 1px solid #E5E5E5;
		border-top: none;
		background: url(../images/line.jpg) center top no-repeat #FFFFFF;

		margin: -1px -11px 0;		
	}

	.staff_profile h3, .staff_profile h4 {
		font-weight:bold;
		padding: 0 10px;
		font-size: 1em;
	}
	
	.staff_profile .name {
		color: #807462;
		font-size: 1.15em;
	}
	
	.staff_profile .extra {
		display: none;
	}
	
	
#arrow {
	position: absolute;
	top: 17px;
	left: -31px;
	height: 30px;
	width: 31px;	
	z-index: 20;
	overflow: hidden;
}

/* contact page */

.contact .one_third h3 {
	font-size: 1.2em;
	font-style: italic;
}
.contact .one_third p {
	margin: 0 0 1em;
}

	.contact .one_third a.skype {
		border-bottom: none;
	}

.contact .two_thirds.boxed {
	padding: 9px;
	width: 515px;
}

 .iw .title {
	font-size: 0.75em;
}
	
/*	end page specific styles
	-------------------------------------------------------------- */		
	

