/* CSS RESET */
body { font-family:Georgia, Times, Times New Roman, serif; font-size:62.5%; color:#000; background-color:#fff }
* { margin:0; padding:0 }
h1, h2, h3, h4, h5, h6, p, a, table { font-size:1em }
table, img, fieldset, button { border:none }
table { width:100%; border-collapse:collapse }
ul, ol, li { list-style:none }
caption, th { text-align:left }
address, caption, cite, code, dfn, var { font-style:normal; font-weight:normal }
input, select, textarea, button { font-family:Verdana,Arial,sans-serif; font-size:1em; color:#4d4d4d }
hr, legend { display:none }
/* blockquote:before { content:'“' }
blockquote:after { content:'”' } */
cite { font-style:italic }
input, button { white-space:nowrap; background-color:transparent; border:none }
a { color:#000; text-decoration:none }
a:hover { text-decoration:underline }
a:focus { outline:none }



/* GENERIC STYLES */
.clear:after { content:"."; display:block; clear:both; height:0; visibility:hidden }
.hidden { display:none }
.invisible { visibility:hidden }
.floatLeft { float:left }
.floatRight { float:right }
.borderBottom { margin-bottom:30px; padding-bottom:20px; background:transparent url(../images/border_dotted.gif) repeat-x 0 100% }
.dividerTop { padding-top:20px; border-top:8px solid #000 }
.spaceBottomSmall { margin-bottom:10px }
.spaceBottom { margin-bottom:30px }
.padTopSmall { padding-top:7px }


/* TEXT STYLES*/
.textTiny { font-size:1.2em; line-height:1.5 }
.textSmall { font-size:1.4em; line-height:1.4 }
.textNormal { font-size:1.7em; line-height:1.3 }
.textLarge { font-size:2.1em }
.textExtraLarge { font-size:2.8em; font-weight:normal }
.textHuge { font-size:3.2em; font-weight:normal }

.textColour {  }

.textStandard { font-family:Georgia, Times, Times New Roman, serif }
.textSpecial { text-transform:uppercase }
.textHeaderUnderline { margin-bottom:30px; padding-bottom:15px; background:transparent url(../images/border_dotted.gif) repeat-x 0 100% }

.textStrong { font-weight:bold }
.textRegular { font-weight:normal }
.superCapitalise span:first-child { float:left }
.textSmall.superCapitalise span:first-child { font-size:69px; font-weight:bold; margin:-20px 10px -25px 0 }
.superCapitalise span:first-child { font-size:88px; font-weight:bold; margin:-15px 10px -15px 0 }


/* PARAGRAPH STYLES */
h2 + ul { margin-top:20px }
h3 + ul  { margin-top:10px }

h1.textHuge + h2.textLarge, h1.textHuge + ul, ul + h2.textLarge { margin-top:30px }
h2.textLarge + p.textNormal, h3.textLarge + p.textNormal { margin-top:10px }
h2.textExtraLarge + h3.textLarge, h3.textExtraLarge + .textLarge { margin-top:20px }
h3.textLarge + h4.textNormal { margin-top:20px }
h3.textLarge + .textSmall, h4.textNormal + .textSmall, p.textNormal + .textSmall { margin-top:10px }
h4.textLarge + ul { margin-top:10px }

.textSmall p + p, .textSmall ul + p, .textSmall p + h4, p.textSmall + h4, .textSmall ul + h4, p.textSmall + ul, ul.textSmall + h4 { padding-top:1em }
.textNormal p + p, .textNormal ul + p, .textNormal p + ul { padding-top:0.588em }
.textLarge p + p, .textLarge ul + p, .textLarge p + ul, .textLarge p + .column { padding-top:0.714em }

h4.textLarge + p { margin-top:5px }

.textImportant { /* position:relative; display:inline-block; margin:0 -10px; */ padding:5px 10px; background:#fff url(../images/background_text_important.jpg) no-repeat 0 0; background-size:100% 100% }
	.textImportant img { position:absolute; top:0; left:0; width:100% }
	.textImportant span { position:absolute; top:5px; left:10px; right:10px; z-index:1 }

* + h3.textLarge { margin-top:30px }


/* COLOUR STYLES */
.scheme-1 .textColour { color:#8B96AE } /* home */
.scheme-2 .textColour { color:#BC9977 } /* overview */
.scheme-3 .textColour { color:#84666F } /* what you get */
.scheme-4 .textColour { color:#7DACB7 } /* how we do it */
.scheme-5 .textColour { color:#CE8451 } /* case studies */
.scheme-6 .textColour { color:#A8A876 } /* clients */
.scheme-7 .textColour { color:#C48383 } /* people */
.scheme-8 .textColour { color:#6F7C67 } /* locations */
.scheme-9 .textColour { color:#A04E68 } /* news */
.scheme-10 .textColour { color:#9789A3 } /* careers */
.scheme-11 .textColour { color:#8B96AE } /* misc */

.scheme-1 .backgroundColour { background-color:#8B96AE }
.scheme-2 .backgroundColour { background-color:#BC9977 }
.scheme-3 .backgroundColour { background-color:#84666F }
.scheme-4 .backgroundColour { background-color:#7DACB7 }
.scheme-5 .backgroundColour { background-color:#CE8451 }
.scheme-6 .backgroundColour { background-color:#A8A876 }
.scheme-7 .backgroundColour { background-color:#C48383 }
.scheme-8 .backgroundColour { background-color:#6F7C67 }
.scheme-9 .backgroundColour { background-color:#A04E68 }
.scheme-10 .backgroundColour { background-color:#9789A3 }
a.backgroundColour:hover { background-color:#000 }

#Container.scheme-1 { background:#fff url(../content/heroes/hero_home.jpg) no-repeat 100% 0 }
#Container.scheme-2 { background:#fff url(../content/heroes/hero_overview.jpg) no-repeat 100% 0 }
#Container.scheme-3 { background:#fff url(../content/heroes/hero_what_you_get.jpg) no-repeat 100% 0 }
#Container.scheme-4 { background:#fff url(../content/heroes/hero_how_we_do_it.jpg) no-repeat 100% 0 }
#Container.scheme-5 { background:#fff url(../content/heroes/hero_success_stories.jpg) no-repeat 100% 0 }
#Container.scheme-6 { background:#fff url(../content/heroes/hero_clients.jpg) no-repeat 100% 0 }
#Container.scheme-7 { background:#fff url(../content/heroes/hero_the_team.jpg) no-repeat 100% 0 }

#Popup .textColour { color:#84666F }


/* LIST STYLES */
ul.listStandard {  }
	ul.listStandard li:before { content:'- ' }
	ul.listStandard li + li { margin-top:3px }

.listTitleContent {  }
	.listTitleContent li + li { margin-top:10px }

.listPseudoNumbered {  }
	.listPseudoNumbered li + li { margin-top:20px }
		.listPseudoNumbered ul, .listPseudoNumbered p { margin:10px 0 0 20px }
			.listPseudoNumbered ul li + li { margin-top:10px }

/* STRUCTURE */
#Container { position:relative; width:960px; margin:20px auto 50px }

	#Container #Navigation { position:fixed; top:20px; left:50%; float:left; width:165px; margin-right:45px; margin-left:-475px }
	#Container #SiteLogo { float:left }
	#Popup #SiteLogo img { margin-bottom:20px }
	#Container #Content { min-height:450px; margin-left:210px }
		#Container #UserLinks { margin-bottom:50px }

	#Container #Content .column { float:left }
	#Container #Content .column + .column { margin-left:15px }
	#Container #Content .column-one { width:240px }
	#Container #Content .column-two { width:495px }
	#Container #Content .column-three { width:750px }
	#Container #Content .column-one-of-two { width:367px }
	#Container #Content .column-breakout { width:305; margin-right:-65px }
	#Container #Content .column-separator { padding-right:14px; border-right:1px dotted #000 }
	#Container #Content .column-separator.column-one { width:225px }
	#Container #Content .column-separator.column-two { width:480px }
	#Container #Content .column-separator.column-two .column-one { width:232px }
	#Container #Content .column-separator.column-two .column-two { width:480px }

	#Container #Content .contentModule {  }
	#Container #Content .contentModule + .contentModule { padding-top:40px; border-top:8px solid #000; margin-top:40px }

	#Container #Content img.column-three { margin-bottom:30px }

#Popup { margin:20px }



/* MODULES */

/* left hand navigation */
#Navigation {  }
	#Navigation img { width:130px; height:36px; margin-bottom:84px }

/* primary navigation */
#PrimaryNavigation { height:277px; margin-top:117px; padding:30px 0; line-height:1; border-top:8px solid #000; border-bottom:8px solid #000 }
	#PrimaryNavigation li + li { margin-top:15px }
		#PrimaryNavigation li.active a { font-size:1.143em; font-weight:bold }

/* user navigation */
#UserLinks ul { text-align:right }
	#UserLinks ul li { }
 	#UserLinks ul li + li {}

/* footer */
#Footer { margin:90px 0 0 210px; padding-top:10px; border-top:1px dotted #000 }
	#FooterCopy { float:right; line-height:1.4em }
	#FooterNavigation { float:left }
		#FooterNavigation li { display:inline; padding-right:15px }

/* Intro Popup */
#InlinePopup { position:fixed; top:50%; left:50%; z-index:1000; width:640px; margin:-207px 0 0 -340px }
	#InlinePopup .content { position:relative; height:324px; padding:60px 40px; background-color:#fff }
	#InlinePopup .close { position:absolute; top:18px; right:18px; padding:5px 32px 5px 0 }
	#InlinePopup .close:hover { text-decoration:none }
		#InlinePopup .close span { position:absolute; top:0; right:0; display:block; width:26px; height:26px; background-image:url(../images/icon_sprite.png); background-repeat:no-repeat; background-position:0 -400px }
#InlinePopupOverlay { position:fixed; top:0; left:0; z-index:999; width:100%; height:100%; background-color:#000; opacity:0.75 }

/* hero strip */
.heroStrip { position:relative; margin:-6px 0 50px; padding:6px 0 9px }
	.heroStripContainer { height:270px; padding:28px 0; color:#fff; /* border-top:8px solid #000; border-bottom:8px solid #000 */ }
	.heroStripContent { padding:15px 20px }
	.heroStrip h1 { position:absolute; top:0; left:0; padding-right:10px; line-height:1; background-color:#fff }
		.heroStrip img.heroStripContentImage { float:right; width:420px; height:450px; margin:-110px -20px -110px 20px }
		.heroStrip h3, .heroStrip p { width:330px; margin-bottom:3px; letter-spacing:-1px; line-height:1.1 }
		.heroStrip p { margin-top:17px }
	.heroStrip a.heroStripAction { position:absolute; bottom:0; right:0; padding:8px 54px 8px 10px; line-height:1; background:#fff url(../images/icon_sprite.png) no-repeat 100% -160px }
	.heroStrip a.heroStripAction:hover { color:#000; text-decoration:none }
	.heroStrip .heroStripImage { position:absolute; top:43px; left:0; width:750px; height:270px }
		.heroStrip .heroStripImageFragment { position:absolute; width:50px; height:50px; background-repeat:no-repeat; opacity:0 }

/* faux hero strip */
.fauxHeroStrip { position:relative; margin-top:-6px; padding-top:6px }
	.fauxHeroStripContainer { padding:30px 0; border-top:8px solid #000 }
		.fauxHeroStrip h1 { position:absolute; top:0; left:0; padding-right:10px; line-height:1; background-color:#fff }
		.fauxHeroStrip p.textHuge + img { margin-top:20px }

/* credits section */
.creditsSection { width:495px; margin-top:15px; font-size:1.1em; line-height:1.5 }

/* info section */
.infoSectionNav { padding-bottom:10px }
	.infoSectionNav > li { padding-bottom:25px }
	.infoSectionNav > li + li { padding-top:25px; border-top:1px dotted #000 }
.infoSectionNavContent { position:relative }

/* bio section */
#PeopleDetail { height:2382px; padding:80px 0 200px; background:#fff url(../content/people/background.jpg) no-repeat 0 0 }
	#PeopleDetail .accordion {margin:25px 0 0; padding:0 0 15px; background-color:#fff }
	.bio {margin:25px 0 0 15px; padding:0; background-color:#fff }
	.bio .bioHeading { position:relative; padding:15px 0; line-height:1; border-top:8px solid #000; border-bottom:8px solid #000; background-color:#fff }
	.bio .bioHeading + .bioHeading { border-top:none }
		.bio .bioHeading h3 { margin-top:5px }
		.bio .bioHeading .bioIntro { overflow:hidden; padding-top:10px }
	.bio .bioDetail { position:relative; padding:15px 0 100px; border-bottom:8px solid #000; background-color:#fff }
		.bio .bioDetail img { float:left; width:238px; height:306px; margin:0 17px 10px 0 }
	.bio .next { position:absolute; bottom:10px; right:10px; width:26px; height:26px; background-image:url(../images/icon_sprite.png); background-repeat:no-repeat; background-position:0 -160px }
	.bio .previous { position:absolute; bottom:10px; right:54px; width:26px; height:26px; background-image:url(../images/icon_sprite.png); background-repeat:no-repeat; background-position:0 -120px }

/* what you get section */
.whatYouGetSection {  }
.whatYouGetSection + .whatYouGetSection { padding-top:30px }
	.whatYouGetSection h5.textLarge { margin-bottom:30px }
	.whatYouGetSection h4 { margin-bottom:15px }
	.whatYouGetSection h4 img { float:left; width:130px; margin-right:15px }

/* doing it our way section */
.ourWayDetail { margin-bottom:50px }
	.ourWayDetail h2 { margin-bottom:10px }
	.ourWayDetail div.textSmall + h2 { margin-top:30px }
	.ourWayDetail .infoSectionNavContent { margin-bottom:30px; padding-bottom:20px; background:#fff url(../images/border_dotted.gif) repeat-x 0 100% }

/* success stories timeline section */
.caseStudy > p { margin-bottom:20px }
.timelineDetail { height:130px; margin-bottom:20px; padding-bottom:20px; background:#fff url(../images/border_dotted.gif) repeat-x 0 100% }
	.timelineDetail em { font-size:1.333em; line-height:0.75 }

/* location section */
.locationSection { padding:30px 0 }
.locationSection:first-child { padding-top:0 }
.locationSection + .locationSection { border-top:1px dotted #000 }
	.locationSection h4 { margin-bottom:10px }
	.locationSection a.mail { text-decoration:underline }
.locationsList {  }
	.locationsList li { margin-bottom:30px }
		.locationsList li h4 { margin-bottom:5px }

/* careers section */
.careerSection {  }
.careerSection { margin-top:20px; padding-top:20px; background:#fff url(../images/border_dotted.gif) repeat-x 0 0 }
.careerSection + h2.textExtraLarge { margin-top:50px }



/* sub content section */
.subContentSectionHeader { display:inline; margin-left:5px; padding:4px 0 4px 10px; color:#fff; text-transform:uppercase; cursor:pointer }
	.subContentSectionHeader span { padding-right:34px; background:transparent url(../images/icon_sprite.png) no-repeat 100% -37px }
.subContentSection { margin:30px 0; border-top:8px solid #000; border-bottom:8px solid #000 }
	.subContentSection .subContentSectionContent { padding:30px 0 }
		.subContentSection h3 { margin:0 0 10px }
		.subContentSection img { margin-right:15px }
.subContentSection + p { margin-top:1em }

/* tabbed content section */
.tabContentSection { margin-bottom:30px; padding:15px; height:100px; background-color:#EE2B7B }

/* content navigation */
.navigateSection { display:block; margin-top:10px; padding:7px 10px; background:#00aeef url(../images/colour_sprite.png) no-repeat -750px 0 }
a.navigateSection:hover { text-decoration:none; background-position:0 0 }
	.navigateSection span { display:block; padding-right:30px; color:#fff; line-height:1; text-align:right; text-transform:uppercase; background:transparent url(../images/icon_sprite.png) no-repeat 100% 2px }

/* carousel */
.carousel { position:relative; padding:50px 0 0; background:#fff url(../images/border_dotted.gif) repeat-x 0 13px }
	.carousel ul { position:relative; margin-right:-15px }
		.carousel ul li { width:240px; margin:0 15px 30px 0 }
	.carousel .carouselNavigation { position:absolute; top:0; left:0; width:100%; height:26px; text-align:center }
		.carousel .carouselNavigation .carouselNavigationContent { display:-moz-inline-box; display:inline-block; margin:0 auto; padding:0 10px; background-color:#fff }
		.carousel .carouselNavigation .carouselNavigationContent > * { display:inline-block }
		.carousel .carouselNavigation .carouselNavigationContent > * + * { margin-left:5px }
		.carousel .carouselNavigation a:focus { outline:none }
		.carousel .carouselNavigation span { width:7px; height:26px; background:transparent url(../images/icon_sprite.png) no-repeat 0 -366px }
		.carousel .carouselNavigation span.active { background-position:0 -326px }
		.carousel .carouselNavigation .next { width:26px; height:26px; background-image:url(../images/icon_sprite.png); background-repeat:no-repeat; background-position:0 -160px }
		.carousel .carouselNavigation .previous { width:26px; height:26px; background-image:url(../images/icon_sprite.png); background-repeat:no-repeat; background-position:0 -120px }

/* text boxes */
.leadTextBox { margin-bottom:30px }
.interTextBox { margin:30px 0; padding-top:20px; background:#fff url(../images/border_dotted.gif) repeat-x 0 0 }
	.interTextBox > div:first-child { padding-bottom:20px; background:#fff url(../images/border_dotted.gif) repeat-x 0 100% }

/* quote boxes */
.quoteBox { width:240px; /* padding:10px 10px 27px 10px; color:#fff; background-image:url(../images/background_quotebox.png); background-repeat:no-repeat; background-position:0 100% */ }
	.quoteBox blockquote { margin-bottom:10px; padding-left:2px }
	.quoteBox blockquote span { float:left; margin:-28px 0 -80px; font-size:100px; font-weight:bold }
	.quoteBox cite { display:block; margin-bottom:10px; padding-left:2px; line-height:1.5 }
	.quoteBox div.textNormal { padding-left:2px } /* serif font fix */

/* wide quote boxes */
.quoteBoxWide { position:relative; overflow:hidden; margin:30px 0; color:#fff }
	.quoteBoxWide blockquote { float:left; height:25px; margin-right:10px; padding:15px 0 15px 15px; line-height:21px }
	.quoteBoxWide blockquote span { float:left; margin:0 10px -60px 0; padding-top:40px; font-size:140px }
	/* .quoteBoxWide blockquote:after { content:'' /* float:right; padding-top:40px; margin-bottom:-40px; font-size:140px; line-height:21px */ /* } */
	.quoteBoxWide cite { display:block; padding:15px 15px 15px 0; line-height:25px }

/* block headings */
.blockHeader { display:block; margin-bottom:10px; font-weight:normal; line-height:1; text-transform:uppercase; color:#fff; /* background-color:#000 */ }
a.blockHeader, h4.blockHeader { /* background:#fff url(../images/background_info_section_nav.gif) no-repeat 0 0 */ }
a.blockHeader:hover, h4.blockHeader:hover { text-decoration:none }
.blockHeader.ui-state-active { background:#000 none }
	.blockHeader span { display:block; padding:7px 10px }
	a.blockHeader span { background:transparent url(../images/icon_sprite.png) no-repeat 100% 7px }

/* tab bar */
.tabHeader { display:block; height:20px; margin-bottom:10px; padding:2px 5px; font-weight:normal; color:#fff; white-space:nowrap }
a.tabHeader:hover { text-decoration:none }
strong.tabHeader { padding-bottom:12px; background:#000 url(../images/background_sprite.png) no-repeat 50% -48px }

/* bottom action sections */
.bottomActionSection { position:relative; padding-bottom:50px; border-bottom:8px solid #000 }
	.bottomActionSection a.bottomActionSectionLink { position:absolute; bottom:-21px; right:0; padding:12px 54px 12px 10px; line-height:1; background:#fff url(../images/icon_sprite.png) no-repeat 100% -280px }
	.bottomActionSection a.bottomActionSectionLink:hover { color:#000; text-decoration:none }

/* accordion */
ul.accordion {  }
	ul.accordion > li + li { padding-top:10px }
		ul.accordion li h4 { margin:0; font-weight:normal; cursor:pointer }
		ul.accordion li .ui-icon { display:none }
		ul.accordion > li > ul { padding:10px 0 0 }
			ul.accordion li li + li { margin-top:7px }
				ul.accordion li li h5 { padding-top:10px }
				ul.accordion li li li + li { margin:0 }
				
/* Media and Press tabs */
ul.tabNavHoriz {padding:0 0 10px;}
.tabNavHoriz li {padding:0; height:57px; float:left; display:inline;}
.tabNavHoriz li a {display:block; border-right:2px solid #fff; background:#000; color:#fff; font-size:14px; font-weight:normal; text-transform: uppercase; padding: 4px 12px; height:18px; text-align:center}
.tabNavHoriz .tabActive {background:url(../images/tab_aro.gif) no-repeat center 20px}
.tabNavHoriz li a:hover {text-decoration:none; background:#000}

.tabNavHoriz.tabTwo li {width:50%}
.tabNavHoriz .tabPress {background:#a04e68}

/* Media Coverage styles*/
#MediaDetail { padding:80px 0 200px; background:#fff }
	#MediaDetail .accordion { padding:15px 0; background-color:#fff }

.bioHeading .mediaItem {margin:10px 0 0; padding:10px 0; border-top:1px dotted #777}
.bioHeading .mediaItem h3 {font-size:1.1em; color:#777; font-style:italic; padding:0 0 5px}
.bioHeading .mediaItem p.date { font-weight:bold; font-size:0.66em; color: #777; padding:4px 0 0; margin:0}
.bioHeading .mediaItem p {margin:0; padding:3px 0}

ul.mediaList li ul li {margin:0 0 0 10px}

.mediaBlock .bioDetail {font-size:1.5em}
.mediaBlock .bioDetail h2 {font-size:1.2em; color:#777; font-style:italic;  padding:0 0;  margin:15px 0 0 }
.mediaBlock .bioDetail h3 {font-size:1.1em;}
.mediaBlock .bioDetail p {margin:0; padding:3px 0; font-size:1.1em}
.mediaBlock .bioDetail p.date {font-weight:bold; font-size:0.76em; color: #777; padding:4px 0 0; margin:0}
.mediaBlock .downloadLink {padding:0 0 20px !important; border-bottom:1px dotted #777; }

.mediaBlock .bioHeading a.next, .mediaBlock .bioHeading a.previous, .mediaBlock .bioDetail a.next, .mediaBlock .bioDetail a.previous {display:none; margin:0; padding:0;}


/* Webinar styles*/
.webinar .webinarBlurb table {margin:10px 0 0}
.webinar .webinarBlurb table th {background:#8b96ae; color:#fff} 
.webinar .webinarBlurb table th, .webinar .webinarBlurb table td {padding:2px 4px}
.webinar .webinarList p {padding:10px 0 20px}
.webinar .webinarList ul {margin:2px 0 20px 30px}
.webinar .webinarList ul li {list-style:disc; padding-bottom:5px}
.webinar .webinarVideo {background:#fff url(../content/heroes/hero_webinar.jpg) no-repeat top left; width:750px; height:502px}

/* form styles */
.webinarForm {width:600px; margin:0 auto}
.webinarForm table td {background:#eeeeee; border:none; padding:6px;}
.webinarForm table th {background:#d4d4d4; border:none; padding:4px; text-align:left}
.webinarForm .asterisk {color:#cc0000}
.webinarForm input {background:#fff; border:1px solid #7f9db9; padding:1px }
.webinarForm input.submit {border:1px solid #777; border-right-width:2px; border-bottom-width:2px;  cursor:pointer}
