/*---------------------------------------------------------*/
/*-- V0.3.1 - 091026 - LR ---------------------------------*/
/*---------------------------------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, a, abbr, cite, em, font, img, small, strong,
sub, sup, dl, dt, dd, ol, ul, li, fieldset, form, label, input, button, legend, table, caption, tr, th, td, blockquote {
	margin: 0;
	padding: 0;
}

ul, ol {
	list-style:none;
}

body {
	background:#FFFFFF;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
	color:#6b6b66;
}

textarea {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}

a {
	color:#0066b8;
	text-decoration:none;
}

a:hover {
	color:#000;
	text-decoration:underline;
}

a img{
	border:0 none;
}

table {
	border-collapse:collapse;
}

/*---------------------------------------------------------*/
/*-- Generic Styles ---------------------------------------*/
/*---------------------------------------------------------*/

.float_left 	{ float:left; }
.float_right	{ float:right; }
.relative		{ position:relative; }
.bordered 		{ border:1px solid #DEDEDE;	}
.clear 			{ clear:both; }
.nowrap 		{ white-space:nowrap; }
.uppercase 		{ text-transform:uppercase; }
.lowercase 		{ text-transform:lowercase; }


/*---------------------------------------------------------*/
/*-- Text Styles ------------------------------------------*/
/*---------------------------------------------------------*/

h1 {
	font-size:16px;
	font-weight:bold;
	margin:0 0 12px;
}

h1.logo, span.logo {
	background: url('../graphics/logo.png') no-repeat;
	width:235px;
	height:57px;
	float:left;
	overflow:hidden;
	text-indent:-99999px;
	margin:6px 0 0 16px;
}

h1.logo a, span.logo a {
	width:235px;
	height:57px;
	display:block;
}

h2 {
	font-size:14px;
	font-weight:bold;
	margin:0 0 12px;
}

h3 {
	font-size:12px;
	font-weight:bold;
	margin:0 0 12px;
}

p {
	margin:0 0 12px;
}

/*---------------------------------------------------------*/
/*-- Error & Notification Styles --------------------------*/
/*---------------------------------------------------------*/

.success {
	background:#F5FFF0;
	color:#009900;
	border:1px solid #009900;
	text-align:center;
	margin-bottom:12px;
	padding:8px 0;	
}

.error {
	background:#FEEDED;
	color:#990000;
	border:1px solid #990000;
	text-align:center;
	margin-bottom:12px;	
	padding:8px 0;
}

.inline_error {
	color:#FF0000;
	font-weight:bold;
}

/*---------------------------------------------------------*/
/*-- Main Page Layout -------------------------------------*/
/*---------------------------------------------------------*/

#wrapper {
	width:969px;
	margin:0 auto;
	display:block;
}

#_atssh {
	display:none;
}

#header {
	width:969px;
	height:415px;
	position:relative;
}

#header.drilldown {
	height:370px;
	overflow:hidden;
}

#header.no_bg {
	background:#1F1E1D;
	height:113px;
	overflow:hidden;
}

#header_gallery {
	width:969px;
	height:415px;
	position:relative;
	overflow:hidden;
	padding-top:5px;
}

.gallery_item {
	width:969px;
	height:415px;
}

.background_image {
	width:969px;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:50;
}

#top_header {
	background:url(../graphics/bgs/header_blue_bg.png) top left repeat-x;
	width:969px;
	height:70px;
	position:absolute;
	top:0;
	left:0;
	z-index:100;
}

#top_right_block {
	float:right;
	width:420px;
	height:60px;
	margin:8px 10px 0 0;
	color:#ffffff;
	z-index:100;
}

#top_right_block a {
	color:#ffffff;
}

#top_right_block ul {
	float:right;
	margin-bottom:17px;
}

#contact_details {
	width:380px;
	float:right;
}

#contact_details p.email {
	float:right;
	font-size:20px;
}

#contact_details p.number {
	float:left;
	font-size:20px;
}

#featured_block {
	background:url(../graphics/bgs/feature_trans_bg.png) top left no-repeat;
	width:271px;
	height:261px;
	position:absolute;
	top:124px;
	right:10px;
	padding:10px 20px;
	color:#FFFFFF;
	z-index:100;
}

#featured_block.drilldown {
	background:url(../graphics/bgs/feature_trans_drill_bg.png) top left no-repeat;
	height:202px;
}

#featured_block h2 {
	font-size:26px;
	color:#FFF;
	text-transform:uppercase;
	position:relative;
	z-index:100;
	opacity:0.9;
}

#featured_block img.main_title {
	margin:20px 0 0;
}

#featured_block p.sub_title {
	font-size:16px;
	text-transform:none;
	margin-top:0;
	z-index:100;
}

.big { 
	font-size:16px!important;
}

.highlight {
	color:#fff;	
	font-size:22px!important;
}

#featured_block a.button {
	float:left;
	margin:20px 10px 0 0;
	width:100px;
	z-index:100;
}

#carousel_block {
	float:left;
	width:648px;
	height:166px;
}

#content {
	width:969px;
	position:relative;
	padding:0;
	margin:10px 0 0;	
}

#content.bordered {
	border:solid #d8d8d8;
	border-width:1px 0;
	padding-bottom:10px;
}

#content.top_gradient {
	background:url(../graphics/bgs/content_top_gradient.jpg) top left no-repeat;
	margin-top:4px;
}

img.top_curve {
	position:absolute;
	top:-1px;
	left:0;
	z-index:100;
}

img.bottom_curve {
	position:absolute;
	bottom:-1px;
	left:0;
	z-index:100;
}


/*---------------------------------------------------------*/
/*-- Blocks -----------------------------------------------*/
/*---------------------------------------------------------*/

.image_block {
	float:left;
	width:309px;
	height:156px;
	position:relative;
	border:solid #bbb6b2;
	border-width:0 1px;
	margin:10px 13px 0 0;
}

.image_block img.top_curve {
	position:absolute;
	top:0;
	left:-1px;
}

.image_block img.bottom_curve {
	position:absolute;
	bottom:0;
	left:-1px;
}

.image_block div.image_info {
	background:url(../graphics/bgs/dark_trans.png) top left repeat;
	width:265px;
	height:56px;
	float:left;
	color:#ffffff;
	margin:10px 0 0 1px;
	padding:5px 5px 5px 20px;
}

.image_block h2 {
	font-size:16px;
	text-transform:uppercase;
	letter-spacing:2px;
	margin:0 0 5px;
	font-weight:normal;
}

.image_block p.sub_title {
	text-transform:uppercase;
	margin:0;
}

.image_block a.button {
	position:absolute;
	bottom:18px;
	right:20px;
}

.image_block_last { margin-right:0 !important; }

.bespoke_events 		{ background:url(../graphics/images/bespoke_events.jpg) top left no-repeat; }
.themed_events 			{ background:url(../graphics/images/themed_events.jpg) top left no-repeat; }

.contact_block {
	background:url(../graphics/bgs/contact_bg.jpg) top left no-repeat;
	float:left;
	width:321px;
	height:156px;
	position:relative;
	margin:10px 0 0;
	color:#6b6b66;
}

.contact_block div.contact_info {
	background:url(../graphics/bgs/header_blue_bg.png) top left repeat;
	width:275px;
	float:left;
	color:#ffffff;
	margin:10px 0 10px 1px;
	padding:5px 5px 5px 20px;
}

.contact_block h2 {
	font-size:16px;
	text-transform:uppercase;
	letter-spacing:2px;
	margin:0 0 5px;
	font-weight:normal;
}

.contact_block p.sub_title {
	text-transform:uppercase;
	margin:0;
	padding:0;
}

.contact_block p {
	padding:5px 30px 5px 20px;
}

.contact_block a.button {
	position:absolute;
	right:20px;
	bottom:17px;
}

/*---------------------------------------------------------*/
/*-- Sub Page Layout --------------------------------------*/
/*---------------------------------------------------------*/

#title_container {
	width:969px;
	float:left;
	margin:20px 0 0;
}

#title_container h1, #title_container h2 {
	font-size:32px;
	color:#0a5fb2;
	text-transform:uppercase;
	position:relative;
	z-index:100;
	opacity:0.9;
	padding-left:10px;
	margin-bottom:5px;
}

#sub_title {
	font-size:12px;
	color:#393939;
	padding-left:10px;
	text-transform:none;
}

#breadcrumb_title {
	background:url(../graphics/icons/breadcrumb_arrow.jpg) right 15px no-repeat;
	padding-right:16px;
	color:#003e6e;
}

#inner_content {
	background:url(../graphics/bgs/content_top_bg.jpg) top left no-repeat;
	width:969px;
	min-height:270px;
	float:left;
	padding:10px;
	color:#6e6e6e;
}

.reduced_text p {
	width:630px;
}

.reduced_text div.error, .reduced_text div.success {
	width:618px;
}

#inner_content h3 {
	font-size:20px;
	color:#0a5fb2;
	text-transform:uppercase;
	margin:18px 0 10px;
}

#inner_content h4{
	font-size:16px;
	color:#0a5fb2;
	text-transform:uppercase;
	margin:18px 0 10px;
}

p.introduction {
	font-size:22px;
	color:#003e6e;
}

p.quote {
	font-size:18px;
	color:#2587d2;
}

#inner_content ul {
	list-style:disc;
	padding-left:15px;
}

#inner_content li {
	color:#0a5fb2;
	padding-bottom:4px;
}

#inner_content li span, #inner_content li a, #inner_content li a:hover {
	color:#6E6E6E;
}

#our_work_block {
	background:url(../graphics/bgs/our-work/our_work_bg.png) top left repeat-y;
	width:317px;
	position:absolute;
	top:15px;
	right:7px;
}

#our_work_block h2 {
	width:295px;
	float:left;
	font-size:26px;
	color:#0a5fb2;
	text-transform:uppercase;
	position:relative;
	z-index:100;
	opacity:0.9;
	margin:10px;
}

#our_work_gallery {
	width:295px;
	height:200px;
	overflow:hidden;
	float:left;
	clear:left;
	margin:0 11px 10px;
}

#our_work_gallery.bottom_padding {
	padding-bottom:0;
}

#our_work_gallery .main {
	width:293px;
	border:1px solid #FFF;
}

.thumbs {
	float:left;
}

.thumbs img {
	width:90px;
	height:49px;
	float:left;
	margin:5px 9px 15px 0;
	border:1px solid #FFF;
}

.thumbs img.last {
	margin-right:0;
}

#service_buttons_container {
	background:#dededd;
	width:317px;
	position:absolute;
	bottom:-60px;
	left:0;
}

.service_button, .service_button:hover {
	font-size:13px;
	color:#FFF;
	padding:20px 0 24px;
	text-transform:uppercase;
	text-decoration:none;
	text-align:center;
	width:158px;
}

.portfolio {
	background:url(../graphics/buttons/service/service_light_blue_left.png) top left no-repeat;
	float:left;
}

.case_studies {
	background:url(../graphics/buttons/service/service_dark_blue_right.png) top left no-repeat;
	float:right;
}

.contact_details {
	margin:25px 0;
}

.contact_details td {
	padding:5px 5px 0 0;
	color:#393939;
	font-size:12px;
}

.contact_details td a {
	color:#393939;
	text-decoration:none;
}

/*---------------------------------------------------------*/
/*-- Portfolio Page ---------------------------------------*/
/*---------------------------------------------------------*/

.portfolio_block {
	background:url(../graphics/bgs/portfolio_bg.jpg) top left repeat-y;
	width:230px;
	float:left;
	position:relative;
	margin:10px 10px 0 0;
}

.portfolio_block img.top_curve {
	position:absolute;
	top:-3px;
	left:0;
}

.portfolio_block img.bottom_curve {
	position:absolute;
	bottom:-3px;
	left:0;
}

.portfolio_image {
	width:224px;
	height:140px;
	padding:0 0 0 4px;
	overflow:hidden;
	float:left;
	border:1px solid #FFF;
}	

.portfolio_buttons_container {
	background:#dededd;
	width:317px;
	position:absolute;
	bottom:-41px;
	left:0;
}

.portfolio_button, .portfolio_button:hover {
	font-size:13px;
	color:#FFF;
	padding:10px 0 15px;
	text-transform:none;
	text-decoration:none;
	text-align:center;
	width:158px;
}

.portfolio_images, .previous {
	background:url(../graphics/buttons/portfolio/portfolio_light_blue_left.png) top left no-repeat;
	float:left;
}

/*---------------------------------------------------------*/
/*-- Gallery Popup ----------------------------------------*/
/*---------------------------------------------------------*/

#gallery_container {
	width:568px;
	padding:20px;
}

#gallery {
	width:566px;
	height:368px;
	padding-right:2px;
	float:left;
}

.portfolio_gallery_item {
	width:566px;
	height:368px;
}

.caption {
	width:240px;
	margin:4px;
	float:left;
	font-size:12px;
	color:#04538F;
}

/*#caption_container {
	width:240px;
	margin:4px;
	float:left;
	font-size:12px;
	color:#04538F;
}*/

#gallery_controls {
	width:318px;
	float:right;
}

.next, .next:hover {
	background:url(../graphics/buttons/portfolio/portfolio_dark_blue_right.png) top left no-repeat;
	float:left;
	width:160px
}


/*---------------------------------------------------------*/
/*-- Clients Page -----------------------------------------*/
/*---------------------------------------------------------*/

.client_block {
	background:url(../graphics/bgs/clients_bg.jpg) top left no-repeat;
	width:160px;
	height:136px;
	float:left;
	position:relative;
	margin:5px 1px 0 0;
}

.client_block img {
	width:134px;
	display:block;
	margin:10px auto 0;
}

#inner_content .client_block h3 {
	width:158px;
	color:#393939;
	font-size:10px;
	margin:0;
	text-align:center;
	text-transform:uppercase;
}

#client_testimonial {
	width:600px;
	padding:50px 25px 25px;
}

#client_testimonial p.quote {
	font-size:18px;
	color:#393939;
	margin-bottom:20px;
}

#client_testimonial span.dark_blue_text {
	color:#1c6ead;
}

/*---------------------------------------------------------*/
/*-- The Team / News --------------------------------------*/
/*---------------------------------------------------------*/

.blue_block {
	background:url(../graphics/bgs/blue_box_bg.jpg) top left repeat-y;
	width:472px;
	float:left;
	position:relative;
	margin:20px 4px 10px;
}

.blue_block img.top_curve {
	position:absolute;
	top:-10px;
	left:0;
}

.blue_block img.bottom_curve {
	position:absolute;
	bottom:-10px;
	left:0;
}

.blue_block img.team_image, .blue_block img.news_image {
	width:118px;
	height:118px;
	float:left;
	margin:0 10px 5px;
	-moz-box-shadow:1px 1px 8px #393939;
	-webkit-box-shadow:1px 1px 8px #393939;
	box-shadow:1px 1px 8px #393939;
}

.blue_block div.team_info {
	width:300px;
	float:left;
	margin:5px 0 0 8px;
}

.blue_block h2, .blue_block h2 a, .blue_block h2 a:hover {
	font-size:22px;
	color:#003e6e;
	text-transform:uppercase;
	text-decoration:none;
}

span.article_date {
	font-size:16px;
	color:#BBB6B2;
}

.blue_block table td {
	padding:5px 5px 0 0;
	color:#393939;
	font-size:12px;
	text-transform:capitalize;
}

.blue_block table td a {
	color:#393939;
	text-decoration:none;
	text-transform:none;
}

.blue_block .tooltip_wrapper {
	top:0;
	right:8px;
}

.blue_block .tooltip_wrapper span {
	font-size:11px;
	padding:8px 25px 22px 16px;
}

#bio, #news_detail {
	width:472px;
	padding:20px;
	color:#393939;
}

#bio h2, #news_detail h2 {
	font-size:22px;
	color:#003e6e;
	text-transform:uppercase;
}

#news_detail img.news_image {
	width:180px;
	float:right;
	margin:0 10px 5px;
	-moz-box-shadow:1px 1px 8px #393939;
	-webkit-box-shadow:1px 1px 8px #393939;
	box-shadow:1px 1px 8px #393939;
}
	

/*---------------------------------------------------------*/
/*-- Misc Styles ------------------------------------------*/
/*---------------------------------------------------------*/

.tooltip_wrapper {
	position:absolute;
	top:-32px;
	right:45px;
	z-index:100;
	display:none;
}

.tooltip_wrapper p {
	background:url(../graphics/clients/tooltip/tooltip_left.png) top left no-repeat;
	float:left;
	padding:0 0 0 4px;	
	display:block;
}

.tooltip_wrapper span {
	background:url(../graphics/clients/tooltip/tooltip_right.png) top right no-repeat;
	padding:8px 12px 22px 4px;
	color:#FFFFFF;
	font-size:10px;
	display:block;
	white-space:nowrap;
	text-transform:uppercase;
}

.cms_edit_link {
	background:#F3F3F3;
	border:1px dotted #1B74B9;
	padding:5px;
	position:absolute;
	top:10px;
	left:10px;
	z-index:100;
	opacity:0.8;
}

/*---------------------------------------------------------*/
/*-- Button & Navigation Styles ---------------------------*/
/*---------------------------------------------------------*/

#top_right_block ul li {
	float:left;
	padding-left:4px;
}

#top_right_block ul li a {
	text-transform:uppercase;
	text-decoration:none;
	font-size:12px;
	color:#ffffff;
	float:left;
	display:block;
	padding:0 5px 2px 3px;
}

#navigation {
	background:url(../graphics/bgs/dark_trans.png) top left repeat-x;
	width:969px;
	height:29px;
	padding:13px 0 1px;
	position:absolute;
	top:70px;
	left:0;
	z-index:100;
}

#navigation ul li {
	float:left;
	padding-left:8px;
}

#navigation ul li.first {
	padding-left:20px !important;
}

#navigation ul li a {
	text-transform:uppercase;
	text-decoration:none;
	font-size:12px;
	color:#ffffff;
	display:block;
	padding:1px 0;
	border-bottom:1px solid #ffffff;
}

#navigation ul li a:hover {
	text-decoration:none;
	color:#BBB6B2;
	border-color:#BBB6B2;
}

a.button {
	background:url(../graphics/bgs/blue_gradient.jpg) top left repeat-x;
	display:block;
	overflow:visible;
	border:2px solid #0067b6;
	color:#ffffff;
	text-transform:uppercase;
	padding:5px 10px;
	text-align:center;
}

a.button:hover {
	text-decoration:none;
	color:#ffffff;
}

a.light_gradient {
	background:url(../graphics/bgs/lighter_button_gradient.jpg) top left repeat-x;
}

#large_button_container {
	background:#dededd;
	width:317px;
	position:absolute;
	bottom:-41px;
	left:0;
}

.large_button, .large_button:hover {
	font-size:16px;
	color:#FFF;
	padding:19px 0 22px;
	text-transform:none;
	text-decoration:none;
	text-align:center;
	width:317px;
}

.light_blue {
	background:url(../graphics/buttons/large_light_blue.png) top left no-repeat;
	float:left;
}

.dark_blue {
	background:url(../graphics/buttons/large_dark_blue.png) top left no-repeat;
	float:left;
}

.last {
	margin-right:0!important;
}

/*---------------------------------------------------------*/
/*-- Footer Styles ----------------------------------------*/
/*---------------------------------------------------------*/

#footer_top {
	background:url(../graphics/bgs/footer_gradient.jpg) top left no-repeat;
	float:right;
	width:969px;
	height:56px;
	margin-top:25px;
	border-bottom:1px solid #FFF;
}

#networking_block {
	float:right;
	width:276px;
	padding-top:17px;
}

#footer_top a, #footer_top p, .addthis_button {
	float:left;
	margin:0 2px 0 2px;
}

#footer_top p {
	text-transform:uppercase;
	padding:5px 0 0 34px;
}

.addthis_button {
	padding:5px 0 5px 5px;
	border-left:1px solid #eaeaea;

}
#footer {
	width:969px;
	height:63px;
	float:left;
	margin:0 auto 10px;
	background:#0067b6;
	border-top:9px solid #cccccc;
	color:#ffffff;
}

#footer_left {
	width:664px;
	padding:10px 0 0 5px;
	float:left;
	text-align:left;
}

#footer a {
	color:#FFFFFF;
	text-decoration:none;
}

#footer li {
	float:left;
	display:block;
	padding:2px;
}

#footer li a {
	float:left;
	display:block;
	padding:0 5px 0 0;
}

#footer_right {
	width:295px;
	padding:10px 5px 0 0;
	float:left;
	text-align:right;
}

/*---------------------------------------------------------*/
/*-- IE6 Holding Page CSS ---------------------------------*/
/*---------------------------------------------------------*/

#holding_content {
	margin:40px auto;
	width:700px;	
}
#holding_head {
	width:700px;
	background-color:#1A75BC;
	padding:10px;
}

#holding_head h3 {
	color:#fff;
	font-size:17px;
	float:right;
	margin:20px 0 0 20px;
}

#holding_main {
	background-color:#040612;
	padding:30px 20px;
	color:#fff;
	width:680px;
}

#holding_main h3{
	color:#fff;
	font-size:16px;
}

#holding_main h2 {
	font-size:22px;
}

#holding_main a {
	float:left;
	width:200px;
	margin:40px 20px 20px 0;
	text-align:center;
}

#holding_main a img {
	width:50px;
	margin:0 auto;
}

/*---------------------------------------------------------*/
/*-- CSS Clearfix -----------------------------------------*/
/*---------------------------------------------------------*/

.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%;
}

