/* MEYER RESET v1.0 | 20080212 */
html {
	overflow-y: scroll;}
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,
b, u, i, center,
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;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}


/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* GENERAL SITE WIDE STYLES */
#content p, #content ol, #content ul, #content h1,  h2, h3, h4, h5, h6, blockquote {
	margin: 0 0 17px;}
a { color: #1865ad; text-decoration: none;}
a:hover { text-decoration: underline;}

/*** ESSENTIAL STYLES - SUPERFISH MENU ***/
.sf-menu, .sf-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
}
.sf-menu {
	line-height:	1.0;
}
.sf-menu ul {
	position:		absolute;
	top:			-999em;
	width:			10em; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width:			100%;
}
.sf-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
	float:			left;
	position:		relative;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	position: absolute;
	left:			0;
	top:			2.5em; /* match top ul list item height */
	z-index:		99;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}



body {
	background: #ebebeb;
	color: #333;
	font-size: 67.5%;
	font-family: arial, verdana, sans-serif;
	text-align: center;}
	
body.smallText {
	font-size: 56%;}
body.largeText {
	font-size: 85%;}
	
#wrapper { 
	background: #fff;
	font-size: 1.1em;
	margin: 0 auto;
	text-align: left;
	width: 970px; }
#header {
	padding: 13px 17px 13px 18px;}
#header h1 {
	background: url(../assets/logo.png) no-repeat;
	float: left;
	height: 45px;
	text-indent: -9999px;
	width: 178px }
#header h1 a {
	display: block;
	height: 45px;
	overflow: hidden;
	width: 178px}
#header #nav ul {
	float: left;
	margin-top: 15px;
	margin-left: 26px;
	margin-bottom: 0;}
#header #nav ul li {
	float: left;
	letter-spacing: -0.008em; }
#header #nav ul li ul {
	background: #fff;
	margin-left: 0;
	margin-top: -11px;
	padding-top: 0px; }
#header #nav ul li ul li {
	float: none;
	background: #fff; }
#header #nav ul li a {
	color: #666;
	font-weight: bold;
	font-size: 0.95em;
	padding: 4px 6px 4px 6px;
	margin-right: 8px;
	text-decoration: none;
	text-transform: uppercase; }
#header #nav ul li ul li a {
	margin-bottom: 0;
	margin-right: 0; }
#header #nav ul li ul.sf-js-enabled li a {
	padding: 8px 6px 8px 6px; }
#header #nav ul li.current a, #header #nav ul li a:hover {
	background: #666;
	color: #fff;}
#header #nav ul li.current ul li a {
	background: #fff;
	color: #666;}
#header #nav ul li.current ul li a:hover {
	background: #666;
	color: #fff;}

#header .search {
	float: right;
	margin-top: 12px;}
#header .search ul li {
	float: left; }
#header .search ul li input {
	border: 1px solid #666;
	color: #999;
	font-size: 0.8em;
	padding: 3px;	
	height: 14px;
	width: 97px;
	float: left;
	margin: 0; }
#header .search ul li input.submit {
	background: #666;	
	border: 1px solid #666;
	color: #fff;
	font-family: arial;
	font-size: 0.95em;
	text-transform: uppercase;
	cursor: pointer;
	height: 22px;
	width: auto; }

.subnav {
	background: #e2e2e2;
	overflow: hidden; }
.subnav ul {
	overflow: hidden;
	padding: 9px 17px; }
.subnav ul li {
	border-right: 1px solid #999;
	font-size: 0.9em;
	font-weight: bold;	
	float: left;
	margin-right: 10px;
	padding-right: 10px;
	text-transform: uppercase;}
.subnav ul li a {
	color: #666;}

.subnav ul li a:hover, .subnav ul li.current a {
	color: #1865ad; }
.subnav ul li.current a {
	text-decoration: none; }


#portal-siteactions {
	background: #e2e2e2;
	padding: 6px 17px;
	overflow: hidden;}
#footer {
	background: #eee;
	color: #666;
	clear: both;
	font-size: 0.9em;
	line-height: 1.4;
	overflow: hidden; }
#footer #portal-siteactions-left  {
	float:left; }
#footer #portal-siteactions-right, #footer-right  {
	float:right;
	padding-top: 5px;}
#portal-siteactions li {
	border-right: 1px solid #acacac;
	float: left; 
	padding-right: 10px; 
	margin-right: 10px; }
#portal-siteactions li#siteaction-contact {
	border-right: none;
	margin: 0;}
#portal-siteactions li a {
	color: #333;  }
#footer-left  {
	float:left;
	padding: 11px 17px;  }
#footer-right  {
	float:right;
	padding: 11px 17px; }
.engine {
	padding-top: 10px;
	text-align: right; margin: 10px 0pt 0pt;}

	

#feature {
	background: #1865ad url(../assets/bg-feature2.jpg) no-repeat;
	min-height: 286px;
	height: auto !important;
	height: 286px; }
#feature h2 {
	color: #e8e8e8;
	padding: 80px 220px 0 220px;
	font-size: 2.5em;
	font-weight: normal;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 0;}
	
#intro {
	background: #1865ad url(../assets/intro1.jpg) no-repeat;
	min-height: 258px;
	height: auto !important;
	height: 258px;}
#intro h2 {
	background: #1865ad;
	color: #fff;
	padding: 7px 17px;
	font-size: 1.5em;
	float: left;
	font-weight: normal;
	text-transform: uppercase;
	margin-top: 210px;
	margin-bottom: 0;}
	
#content {
	float: left;
	line-height: 1.3;
	overflow: hidden;
	padding: 17px; 
	background: #fff url(../assets/bg-content.png) repeat-x;
	width: 936px;}
#content.light {
	background: #fff url(../assets/bg-content2.png) repeat-x;}
#feature + #content, #intro + #content, #feature + #content.light, #intro + #content.light {
	background: none; }
.home #content .column1,  #content.home .column1 {
	float: left;
	width: 596px;}	
.home #content .column2,  #content.home .column2 {
	float: right;
	width: 326px;}	
#content .column1 {
	float: left;
	width: 606px;}	
#content .column2 {
	float: right;
	width: 300px;}	
.main-content { padding: 8px 20px}

#content h3.section-title { 
	background: #666;
	color: #fff;
	margin-bottom: 17px;
	padding: 6px 9px 4px 9px;
	text-transform: uppercase; }
#content h3.rss-title {
	position: relative;
	z-index: 0; }
#content h4.sub-title { 
	background: #1865ad;
	color: #fff;
	clear: both;
	margin-bottom: 17px;
	padding: 6px 9px;
	font-size: 1em;
	text-transform: uppercase; }
#content h4.sub-title span {
	float: right;
	text-transform: none;
	font-size: 0.9em; font-weight: normal}

#content h3.section-title + h4.sub-title {
	margin-top: -13px; }

#content h4 { 
	font-size: 1.7em;
	margin-bottom: 18px; }
#content .img-float1 {
	float: left; 
	margin: 0 18px 17px 0;}
#content p {
	font-size: 1.02em;
	margin-bottom: 18px; }
#content a.more-link {
	text-transform: uppercase; }

h3 a.rss { 
	color: #fff; 
	font-weight:normal;
	font-size: 0.9em; 
	line-height: 15px;
	position: absolute; 
	top: 7px; 
	right: 25px; 
	text-transform: none; }
h3 a.rss-icon { 
	position: absolute; 
	top: 6px; 
	right: 5px; }

#content .blog-home {
	clear: both;
	margin-bottom: 30px;}

#content .blog-home h4 { 
	font-size: 1.3em;
	margin-bottom: 0px; }

#content .blog-home .img-float1 { 
	margin-right: 12px;
	margin-bottom: 25px; }
#content h4, #content .main-content h2 { 
	font-size: 1.7em;
	margin-bottom: 10px; }
#content .blog-meta { 
	font-size: 0.9em;
	margin-bottom: 6px; }
	
.case-studies-home, .related {
	clear: both;
	color: #666;
	margin-top: 35px; }
#content .case-studies-home h4 {
	font-weight: normal;
	font-size: 1.48em;
	margin-bottom: 11px;}
#content .case-studies-home h5 {
	font-weight: bold;
	font-size: 1em;
	margin-bottom: 11px;}
#content .related {	
	margin-top: 5px;
	float: none;;
	overflow: hidden;
	margin-bottom: 10px;
	width: 300px;}
#content .related h4 {
	color: #333;
	font-weight: bold;
	font-size: 1.25em;
	margin-bottom: 6px;}
#content .related p {
	margin-bottom: 6px;}

#content .column1 .related-block {
	overflow: hidden;
	width: 630px;}
#content .column1 .related {
	clear: none;
	float: left;
	margin-right: 19px;
	width: 189px;}
	
.case-studies-home h5 {
	background: #666 url(../assets/bg-arrow-down.png) no-repeat top right;
	color: #fff;
	font-weight: normal;
	float: left;
	font-size: 0.95em;
	margin-bottom: 10px;
	padding: 4px 20px 3px 9px;
	text-transform: uppercase;}
.case-studies-home ul {
	clear: left;
	font-size: 0.9em;}
.case-studies-home .practice ul li {
	float: left;
	margin-right: 5px;
	width: 220px;}
.case-studies-home div.sector {
	float: left;
	margin-right: 20px;
	width: 111px;}
.case-studies-home div.practice {
	float: left;
	width: 450px;}

.people img { 
	border: 2px solid #e8e8e8; 
	overflow: hidden; 
	width: 76px; }
.people a:hover img {
	border: 2px solid #1865ad;}
.people  { 
	margin-left: -14px;
	overflow: hidden;
	margin-bottom: 35px;}
.people .employeeInListing { 
	float: left;
	margin-left: 14px;
	min-height: 135px;
	height: auto !important;
	height: 135px;
	width: 80px; }
	
#TB_window #employee-portrait {
	float: left;
	margin: 0 16px 16px 0; }
#TB_window #employee-portrait img {
	border: 2px solid #e8e8e8; }
	
#TB_window  h1 {
	color: #333;
	font-size: 1.7em;
	margin-bottom: 6px; }
#TB_window  h1 + span, #TB_window h3 {
	color: #333;
	font-size: 1.2em;
	margin-bottom: 17px; }
#TB_window p, body #TB_ajaxContent p {
	margin:0 0 15px;
	padding: 0; }
#TB_window h3 {
	clear: both;
	margin-bottom: 4px;}

#TB_window .column {
	float: left;
	margin-bottom: 16px;
	width: 45%;}

.case-studies-list {
	position: relative;
	margin-left: -19px;
	width: 626px;}
.case-studies-list li {
	float: left; 
	font-size: 0,9em;
	font-weight: bold;
	min-height: 135px;
	height: auto !important;
	height: 135px;
	margin-left: 19px;
	margin-bottom: 15px;
	text-transform: uppercase;
	width: 189px;}	
.case-studies-list li img {
	display: block;
	margin-bottom: 5px;}
.case-study-finder {
	background: #e8e8e8;
	clear: both;
	padding: 15px 11px;
	margin-bottom: 20px;}

#content .case-study-finder h4 {
	clear: both;
	font-size: 1.5em;
	margin-bottom: 2px;}

#content .case-study-finder p {
	font-size: 1.1em;
	color: #666;
	margin-bottom: 10px;}
#content .case-study-finder select {
	width: 260px;}
#content .case-study-finder form ul {
	margin-bottom: 0; }
#content .case-study-finder form ul li {
	margin-bottom: 10px; }

.people-cta {
	margin-bottom: 15px;
	overflow: hidden;}
#content .people-cta h4 {
	background: url(../assets/bg-people.jpg) no-repeat;
	height: 144px;
	position: relative;}
.people-cta h4 a {
	display: block;
	height: 144px;
	overflow: hidden;}
.people-cta h4 a strong {
	background: #1865ad;
	color: #fff;
	font-size: 0.70em;
	font-weight: normal;
	position: absolute; 
	top: 0; 
	left: 0;
	padding: 6px 7px 3px 7px;
	text-transform: uppercase; }
.people-cta a {
	font-size: 0.9em;}
.people-cta .people-list img, .column2 .people-list img { 
	border: 2px solid #e8e8e8;
	width: 65px;}
.people-cta .people-list, .column2 .people-list {
	margin-bottom: 15px;
	width: 310px; 
	overflow: hidden;}
.people-cta .people-list .employeeInListing, .column2 .people-list .employeeInListing {
	width: 69px;
	float: left; 
	margin-right: 8px;
	min-height: 108px;
	height: auto !important;
	height: 108px; }

.case-study-img {
	margin-top: -17px;}

ul.client-logos {
	overflow: hidden;
	width: 630px;}
ul.client-logos li {
	float: left;
	margin-right: 19px;
	margin-bottom: 16px;}
ul.client-logos li a img {
	border: 2px solid #e8e8e8; }
ul.client-logos li a:hover img {
	border: 2px solid #1865ad; }
	
	
#content #blog h1 {
	margin-bottom: 3px;}
.blogpostInfo {
	margin-bottom: 10px;}
a.read-more {
	background: #1865ad; 
	color: #fff;
	font-size: 0.9em;
	padding: 3px 6px;
	text-transform: uppercase;}
a.comments {
	background: #e8e8e8; 
	color: #333;
	font-size: 0.9em;
	padding: 3px 6px;
	text-transform: uppercase;}
#content h3 span.rss-blog {
	float: right;}
#content h3 span.rss-blog * {
	position: relative;
	top: auto; left: auto; right: auto;}
#content h3 span.rss-blog a.rss {
	position: relative;
	top: -3px;}
#blog div.hr {
	border-top: 1px dotted #666;
	height: 1px;
	margin: 20px 0;}
#blog .blogMedia {
	margin-bottom: 15px;}
	
#blog #blogpost-title iframe {
	float: left;
	margin-right: 15px;}
#blog input.reply {
	border: none;
	background: #1865ad; 
	color: #fff;
	font-size: 0.9em;
	padding: 3px 6px;
	text-transform: uppercase;}
#blog input.addcomment {
	border: none;
	background: #e8e8e8; 
	color: #333;
	font-size: 0.9em;
	padding: 3px 6px;
	position: relative;
	top: -12px;
	margin-bottom: 20px;
	text-transform: uppercase;}
#blog .commentBody {
	margin-bottom: 15px;}
	
#blog .comment .avatar {
	border: 2px solid #e8e8e8;
	float: left;
	margin-right: 15px; 
	width: 40px;}
.commentBody, .commentTitle, .comment form {
	clear: right;
	float: right;
	margin-right: 90px;
	width: 450px; }
.documentByLine {
	text-align: right;
	color: #666;
	font-size: 1.1em;
	font-weight: normal;}
.commentTitle {
	margin-bottom: 10px;}
.commentTitle a {
	font-size: 1.3em;
	float: left;
	font-weight: bold;}
#blog .comment {
	border-bottom: 1px dotted #666;
	padding-bottom: 30px;
	overflow : hidden;
	margin-bottom: 20px;}

.authors img { 
	border: 2px solid #e8e8e8;
	width: 65px;}
.authors {
	margin-bottom: 15px;
	width: 310px; 
	overflow: hidden;}
.authors .employeeInListing {
	width: 69px;
	float: left; 
	margin-right: 8px;
	min-height: 108px;
	height: auto !important;
	height: 108px; }
.blogroll {
	margin-bottom: 20px;}
.blogroll ul li {
	margin-bottom: 10px;}
.blogroll ul li strong {
	display: block;
	font-size: 1.05em;}
.archives h2 {
	font-size: 1.35em;
	margin-bottom: 6px;
	margin-top: 5px;}
.archives a {
	display: block;
	float: left;
	font-size: 1.08em;
	margin-bottom: 10px;
	width: 30%;}

.results div.logo  {
	border: 2px solid #e8e8e8;
	float: left;
	margin-right: 18px;
	width: 190px;}
.results div.details  {
	float: left;
	width: 380px;}
.results li h4 {
	margin-bottom: 6px; }
.results li  {
	margin-bottom: 17px; 
	overflow: hidden;
	}
.results li .details li  {
	background: url(../assets/icons/arrow.png) no-repeat 0 4px;
	margin-bottom: 6px;
	padding-left: 12px;}

.vcard { font-size: 1.28em;}
.vcard .adr, .vcard .contact-no {
	margin-bottom: 17px;
	font-weight: bold;}

#content h4.title0 {
	background: #1865ad; 
	color: #fff;
	font-size: 1em;
	padding:6px 9px 4px;
	margin-bottom: 0;
	text-transform: uppercase; }
.block-cta img {
	display: block;}
.block-cta div.copy {
	background: #e8e8e8;
	padding: 10px; }
.second-adr {
	font-weight: bold;
	margin-bottom: 3px;}

/* content styling */
#content h1 {
	font-size: 1.8em;}

#content h5, #content .main-content h3 {
	font-size: 1.3em;
	margin-bottom: 6px;}
.float1 {
	float: left;
	margin: 0 15px 15px 0; }
.float2 {
	float: right;
	margin: 0 0 15px 15px; }


blockquote, .pullquote {
	background: url(../assets/bg-quote.png) no-repeat;
	color: #666;
	padding-left: 20px;
	position: relative;
	font-size: 1.3em;
	font-weight: bold;
	margin-bottom: 15px;
}

pre { margin-bottom: 15px;}

#content p.discreet { color: #898989; }
#content table.default { margin-bottom: 18px;}
#content table.default {
	border-collapse: collapse; }
#content table.default td, #content table.default th {
	padding: 5px;
	border: 1px solid #666;}
#content table.default caption {
	text-align: left;
	font-weight: boldl; font-size: 1.2em;}
address {margin-bottom: 18px;}

#content blockquote p {	
	margin-bottom: 8px;}
.open-quote {
	position: absolute;
	left: 0px}
cite {
	display: block;
	text-align: right;
	padding-right: 100px;
	color: #333;
	font-style: italic;
	font-weight: bold;
	margin-bottom: 15px; }
blockquote + cite {
	margin-top: -10px;}
	
#content.full-width .main-content {
	width: 700px;}

#content .main-content ol {
	padding-left: 20px;
	list-style-position: outside;
	list-style-type: decimal;
	margin-bottom: 17px;}
#content .main-content ul {
	padding-left: 20px;
	list-style-position: outside;
	list-style-type: disc;
	margin-bottom: 17px;}
#content .main-content dl {
	margin-bottom: 15px;}
#content .main-content dt {
	font-weight: bold;}
#content .main-content dd {
	padding-left: 10px;}


ul.sitemap  {
	overflow : hidden;}
ul.sitemap li { 
	list-style-type: none;
	float: left;
	margin-bottom: 5px;
	width: 30%;}
h5 { clear: both;}
h5.uc { text-transform: uppercase;}
#content .margin-increase { margin-bottom: 30px;}

/* BASED ON PLONE base.css from current site */
.field {
	margin-bottom: 17px;}
#feedback_form label, #join_form label {
	color: #333;
	font-size: 1.2em;
	font-weight: bold;
	width: 300px;}
#feedback_form input, #join_form input {
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: inherit;
	visibility: visible;
	border: 1px solid #ddd;
	border-color:#666 #ddd #ddd #666;
	color: #666;
	padding: 4px;
	vertical-align: middle;
	background: White url(../assets/input_background.gif) repeat-x;
}
#feedback_form textarea, #join_form textarea {
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: inherit;
	border: 1px solid #ddd;
	border-color:#666 #ddd #ddd #666;
	color: #666;
	padding: 4px;
	background: White url(../assets/input_background.gif) repeat-x;
}
#feedback_form .inputButton, #join_form .inputButton, #join_form #form-buttons-send {
	border: none;
	background: #1865ad;
	color: #fff;
	font-size: 1.2em;
	float: right;
	padding: 5px;
	margin-right: 110px;
	text-transform: uppercase; }
#join_form .inputButton, #join_form #form-buttons-send {
	padding: 3px;
	font-size: 0.85em;
	margin-right: 0px;
	float: left; clear: left;
	margin-top: 10px;}	

#feedback_form .fieldRequired, #join_form .fieldRequired {
	background: url(../assets/required.gif) no-repeat top left;
	padding-right: 15px; padding-left: 15px;
	margin-left: 10px; }
.fieldRequired.formHelp { float: left; font-weight: bold; }


.second-level ul.sitemap { padding: 0; 
	}
.second-level {
	padding-left: 15px;
	margin-left: 20px;
	border-left: 2px solid #ccc;}

.searchPage .inputButton {
	background:none repeat scroll 0 0 #666666;
	border:1px solid #666666;
	color:#FFFFFF;
	cursor:pointer;
	font-family:arial;
	font-size:0.95em;
	height:22px;
	text-transform:uppercase;
	width:auto;}
.searchPage .inputText {
	border:1px solid #666666;
	color:#666;
	float:left;
	font-size:0.8em;
	height:14px;
	margin:0;
	padding:3px;}
.searchPage {
	margin-bottom: 20px;}

dl.searchResults {
	margin-bottom: 20px;}
dl.searchResults dd {
	padding-bottom: 5px;
	margin-bottom: 5px; border-bottom: 1px solid #ddd }
.documentFirstHeading  span.discreet  {
	display: block;
	font-size: 0.6em; color: #666; font-weight: normal;}
.listingBar {
	background-color:#E6E6E6;
	border:1px solid #D3D3D3;
	margin:0 0 30px;
	padding:0.25em 1em;
}
.case-rotate { width: 566px;}
.case-rotate li {
	clear: both;
	width: 566px;}
.home-rotate-copy {
	width: 390px; float: right; clear: none;}
	
/* Comment display fixes.*/
.discussion .comment {
background-color: #fff;}

.discussion {
border-top:1px dotted #666666;
padding-top: 18px;
margin-top: 10px}
.comment  {
border: none;
border-bottom:1px dotted #666666;
padding-bottom: 20px;
margin-bottom: 20px;}

/* People page - new style */
#employee-biography ul {
	margin-bottom: 15px;
	padding-left: 18px; }
#employee-biography ul li {
	list-style-type: disc; }
#employee-biography ul#employee-posts {
	margin-bottom: 0px;
	padding-left: 0px; }
#employee-biography ul#employee-posts li {
	list-style-type: none; }
#employee-biography h3 {
	clear: both; }
#employee #employee-portrait {
	float: left;
	margin: 0 25px 15px 0;
	width: 200px;}
#employee #employee-portrait img {
	border: 4px solid #ddd}
#employee h1 + span {
	font-size: 1.4em;
	margin-bottom: 15px;}
#employee h1 {
	margin-bottom: 5px;}
	
