h1, h2, h3, h4, h5, h6, p, ul, ol, table, form, blockquote {
	margin-top: 1em;
}
hr {
	height: 0.1em;
	border: none;
	padding: 0;
	color: #ccc;
	background-color: #ccc;
	margin: 1.4em 0;
}
hr:last-child {
	margin-bottom: 0;
}
.shaded hr {
	color: white;
	background-color: white;
}
.shaded.light hr {
	color: #ccc;
	background-color: #ccc;
}
.clear {
	clear: both;
}
img {
	max-width: 100%;
	border: none;
}
img[height] {
	height: auto !important;
}

strong {
	font-weight: bold;
}

h1, .h1 {
	color: #333333;
	font-size: 2.20rem;
	font-weight: bold;
	margin-bottom: 1em;
}
h1::after {
	font-size: 60%;
	content: '';
	display: none;
	padding-left: 2.55em;
	background-size: contain;
	position: relative;
	top: 0.6em;
	margin-left: -2.55em;
	left: 1.35em;
	white-space: nowrap;
}
h2, .h2 {
	font-size: 2.75rem;
	font-weight: bold;
	color: #333;
}
h3 {
	font-size: 1.5rem;
	color: #333;
}
h4 {
	font-size: 1.5rem;
	color: #333;
	font-weight: normal;
}
h1 img,
h2 img,
h3 img  {
	vertical-align: middle;
	max-height: 1em;
}
h1 em, h2 em, h3 em {
	font-style: normal;
	font-weight: normal;
}
h1 strong, h2 strong, h3 strong {
	font-weight: inherit;
	text-decoration: none;
}
h1 em strong, h2 em strong, h3 em strong {
	font-weight: bold;
	text-decoration: none;
}
h1 a, h2 a, h3 a {
	color: inherit;
	text-decoration: none;
}

.content-page-banner-caption h1 {
	font-weight: strong;
	color: white;
	line-height: 92.3%;
	font-size: 10rem;
	margin-top: 2rem;
	margin-bottom: 0;
}
.small h1,
h1.small {
	font-size: 3.75rem;
}
.subtitle {
	font-size: 7rem;
	font-weight: bold;
}
.team_member_subtitle {
	margin-top: 0.25rem;
	font-size: 2.625rem;
	font-weight: bold;
	color: #b7d0f0;
}
h1 + .subtitle,
h2 + .subtitle,
h3 + .subtitle {
	margin-top: 0.25rem;
}

.small .subtitle,
.small + .subtitle,
.subtitle.small {
	font-size: 2.625rem;
}


ul, ol {
	margin-left: 1.5em;
}
ul ul, ol ol, ul ol, ol ul {
	margin-top: 0;
}
@media screen and (max-width: 800px) {
	h1, h2, h3, h4, h5, h6, p, ul, ol, table, form, hr, blockquote {
		margin-top: 0.5em;
	}
	ul, ol {
		margin-left: 0.5em;
	}
}
table {
	border-collapse: collapse;
}
table td, table th {
	padding-right: 0.75em;
	vertical-align: top;
	text-align: left;
}
th[align=left], td[align=left] { text-align: left !important; }
th[align=center], td[align=center] { text-align: center !important; }
th[align=right], td[align=right] { text-align: right !important; }
th[valign=top], td[valign=top] { vertical-align: top !important; }
th[valign=middle], td[valign=middle] { vertical-align: middle !important; }
th[valign=bottom], td[valign=bottom] { vertical-align: bottom !important; }

table.center {
    margin-left:auto; 
    margin-right:auto;
}

img.left-aligned {
	float: left;
	margin-right: 2em;
}
img.right-aligned {
	float: right;
	margin-left: 2em;
}

sup, sub {
	font-size: smaller;
	padding: 0;
	margin: 0;
	line-height: 0;
}
div.chevron-mask {
	height: 2.15em;
	background: transparent url('../images/hr-chevron-mask.png') no-repeat scroll 50% 0;
	background-size: cover;
	position: relative;
}
.vertical-padding > div.chevron-mask {
	margin-top: -2em;
}
hr.grey {
	background: transparent url('../images/hr-chevron.png') no-repeat scroll 50% 0;
	background-size: cover;
}

h1:first-child, h1.first-child, h2:first-child, h2.first-child, h3:first-child, h3.first-child, h4:first-child, h4.first-child, h5:first-child, h5.first-child, h6:first-child, h6.first-child,
p:first-child, p.first-child, ul:first-child, ul.first-child, ol:first-child, ol.first-child, table:first-child, table.first-child, form:first-child, form.first-child, hr:first-child, hr.first-child {
	margin-top: 0;
}
textarea,
input[type=text],
select {
	box-sizing: border-box;
	font-family: inherit;
	padding: 0.5em;
	border: 1px solid #6b6a6a;
	background: white;
	color: #333;
	font-size: 0.8em;
	font-family: inherit;
}
input[type=submit],
input[type=reset],
button,
a.button {
	display: inline-block;
	color: white;
	background: #2c276e;
	border: 0.1em solid #2c276e;
	border-radius: 100px;
	padding: 1.08em 2.6em;
	font-size: 1rem;
	cursor: pointer;
	margin-bottom: 0.3em;
	text-transform: uppercase;
	text-decoration: none;
}
a.button {
	margin: 0.75em 0;
}
.shaded input[type=submit],
.shaded input[type=reset],
.shaded button,
.shaded a.button,
input[type=submit].inverted,
input[type=reset].inverted,
button.inverted,
a.button.inverted {
	color: white;
	background-color: #2c276e;
	border-color: white;
	text-decoration: none;
	margin-right: 10px;
}
.shaded.light input[type=submit],
.shaded.light input[type=reset],
.shaded.light button,
.shaded.light a.button {
	color: white;
	background-color: #2c276e;
	border-color: #2c276e;
}
input[type=submit].hollow,
input[type=reset].hollow,
button.hollow,
a.button.hollow {
	color: #2c276e;
	border-color: #2c276e;
	background-color: transparent;
}
input[type=submit].shaded.highlighted,
input[type=reset].shaded.highlighted,
button.shaded.highlighted,
a.button.shaded.highlighted,
input[type=submit].selected.highlighted,
input[type=reset].selected.highlighted,
button.selected.highlighted,
a.button.selected.highlighted,
input[type=submit].highlighted:hover,
input[type=reset].highlighted:hover,
button.highlighted:hover,
a.button.highlighted:hover {
	color: white;
	background-color: #2c276e;
	text-decoration: none;
}
a.external::after {
	content: ' ';
	white-space: pre;
	display: inline-block;
	width: 2em;
	background: transparent url('../images/external-link.png') no-repeat scroll 100% 50%;
	background-size: contain;
}

div.columns a.button {
	margin-left: 0;
	margin-right: 0;
}
div.columns a.button + a.button {
	margin-left: 1.5em;
}

input[type=submit].progress-navigation,
input[type=reset].progress-navigation,
button.progress-navigation,
a.button.progress-navigation {
	box-sizing: content-box;
	width: 0.4em;
	height: 0.4em;
	border-width: 0.2em;
	border-radius: 1em;
	padding: 0;
	margin: 0 0.3em;
	overflow: hidden;
	text-indent: 10em;
	border-color: #2c276e;
	background-color: #2c276e;
}

div.columns {
	margin-top: 1em;
	-moz-column-gap: 2em;
	-moz-column-count: 2;
	-webkit-column-gap: 2em;
	-webkit-column-count: 2;
	column-gap: 2em;
	column-count: 2;
	text-align: left;
	position: relative;
}
div.columns.three {
	-moz-column-count: 3;
	-webkit-column-count: 3;
	column-count: 3;
}
div.columns:first-child,
div.columns.first-child {
	margin-top: 0;
}

div.columns div.non-breaking-column {
	overflow: hidden;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	break-inside: avoid-column;
	width: 100%;
}
.column-separator {
	position: absolute;
	width: 1px;
	top: 0;
	bottom: 0;
	background: #f4f4f4;
	z-index: 0;
}
.column-separator hr {
	display: none;
}
.column-separator::before,
.column-separator::after {
	content: ' ';
	position: absolute;
	width: 0.6rem;
	height: 0.6rem;
	background: #e8e8e8;
	border-radius: 100%;
	left: -0.3rem;
}
.column-separator::before {
	top: 0;
}
.column-separator::after {
	bottom: 0;
}
div.columns .column-separator {
	left: 50%;
}
@media screen and (max-width: 800px) {
	.column-separator {
	background: none;
	}
	.column-separator::before, .column-separator::after {
	background: none;
	}
}

@media screen and (max-width: 1200px) {
	div.columns.three {
		-moz-column-count: auto;
		-webkit-column-count: auto;
		column-count: auto;
	}
	div.columns.three div.non-breaking-column {
		margin-top: 1em !important;
	}
}
@media screen and (max-width: 800px) {
	div.columns {
		-moz-column-count: auto;
		-webkit-column-count: auto;
		column-count: auto;
	}
	div.columns div.non-breaking-column {
		margin-top: 1em !important;
	}
}
.success {
	border: 1px solid #9c9;
	background: #cfc;
	padding: 1em;
	margin-top: 1em;
}
.warning {
	border: 1px solid #cc9;
	background-color: #ffc;
	padding: 1em;
	margin-top: 1em;
}
.error {
	border: 1px solid #c99;
	background-color: #fcc;
	padding: 1em;
	margin-top: 1em;
}
.info {
	border: 1px solid #ccc;
	background: #eee;
	padding: 1em;
	margin-top: 1em;
}

.horizontal-padding {
	padding-left: 5%;
	padding-right: 5%;
}
.vertical-padding {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.limited-width {
	max-width: 90rem;
	margin-left: auto;
	margin-right: auto;
}
.narrow-width {
	max-width: 53rem;
	margin-left: auto;
	margin-right: auto;
}
.medium-width {
	max-width: 60rem;
	margin-left: auto;
	margin-right: auto;
}
.two-thirds-width {
	display: inline-block;
	width: 66%;
	margin: auto;
}
.two-thirds-width-left-align {
	display: inline-block;
	width: 66%;
	margin: auto;
	text-align: left;
}
.one-third-width {
	display: inline-block;
	vertical-align: top;
	width: 34%;
}
.one-third-width img {
	float: right;
}
.quotation {
	font-size: 0.8em;
}
blockquote.quotation {
	position: relative;
	font-size: 1.3em;
	margin-top: 2em;
	margin-bottom: 1em;
	text-align: left;
	color: white;
}
blockquote.quotation::before{
	position: absolute;
	height: 0;
	line-height: 0.5;
	text-align: left;
}

blockquote.quotation + p.testimonial-author {
	margin-top: 0;
	color: #2c266f;
	font-size: 1.125em;
	text-align: left;
	font-weight: bold;
}
p.testimonial-client {
	font-size: 2.6em;
	text-align: left;
	font-weight: bold; 
	}
p.testimonial-author-title {
	margin-top: 0px;
	color: #2c266f;
	text-align: left;
}
.shaded blockquote.quotation::before,
.shaded blockquote.quotation::after {
	color: white;
}

@media screen and (max-width: 800px) {
	blockquote.quotation p {
		font-size: 1.4em;
		padding-top: 0.5em;
		padding-left: 1em;
		padding-right: 1em;
	}
	p.testimonial-client {
	font-size: 2em;
	}
}
@media screen and (max-width: 600px) {
	blockquote.quotation p {
		font-size: 1.5em;
		padding-top: 0.6em;
		padding-left: 0;
		padding-right: 0;
	}
	p.testimonial-client {
	font-size: 2em;
	padding-top: 2em;
	}
}
@media screen and (max-width: 400px) {
	blockquote.quotation p {
		font-size: 1.25em;
		padding-top: 0.6em;
		padding-left: 0;
		padding-right: 0;
	}
	p.testimonial-client {
	font-size: 1.75em;
	}
}

.link-image-gallery {
	text-align: left;
}
.link-image-gallery-image {
	display: table;
	table-layout: fixed;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 0.4em;
	background: #f4f4f4;
}
.link-image-gallery-image-stacked {
	display: none;
}
.link-image-gallery-image.dark-colour h2 {
	color: white;
}
.link-image-gallery-image-image {
	display: table-cell;
	width: 40%;
	vertical-align: middle;
}
.link-image-gallery-image-image,
.link-image-gallery-image-stacked {
	background: transparent none no-repeat scroll center center;
	background-size: cover;
}

.link-image-gallery-image.scale-stretch .link-image-gallery-image-image,
.link-image-gallery-image.scale-stretch .link-image-gallery-image-stacked {
	background-size: 100% 100%;
}
.link-image-gallery-image.scale-clip .link-image-gallery-image-image,
.link-image-gallery-image.scale-clip .link-image-gallery-image-stacked {
	background-size: cover;
}
.link-image-gallery-image.scale-zoom .link-image-gallery-image-image,
.link-image-gallery-image.scale-zoom .link-image-gallery-image-stacked {
	background-size: contain;
}

.link-image-gallery-image-image img {
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 67%;
}
.link-image-gallery-image-content {
	display: table-cell;
	width: 60%;
	box-sizing: border-box;
}
.link-image-gallery-image-content-indent {
	padding-left: 7em;
	padding-top: 1.5em;
}
.link-image-gallery-image.image-right .link-image-gallery-image-content-indent {
	padding-left: 5em;
	padding-right: 2em;
}
.link-image-gallery-image.image-left .link-image-gallery-image-content {
	padding-right: 15%;
}
.link-image-gallery-image.image-right .link-image-gallery-image-content {
	padding-left: 15%;
}


.link-image-gallery-image-content h2 {
	position: relative;
}
.link-image-gallery-image-content h2 img {
	position: absolute;
	width: 2.5em;
	left: -3.5em;
	max-height: none;
}

@media screen and (max-width: 900px) {
	.link-image-gallery-image-image {
		display: none;
	}
	.link-image-gallery-image,
	.link-image-gallery-image-stacked,
	.link-image-gallery-image-content {
		display: block;
		width: auto;
	}
	.link-image-gallery-image-stacked {
		padding-bottom: 25%;
	}
	.link-image-gallery-image-content-indent {
		padding-left: 7em !important;
		padding-right: 2em !important;
	}
	.link-image-gallery-image-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

.shaded {
	background-color: #999;
	color: white;
}
.shaded.light {
	background-color: #f4f4f4;
	color: #333;
}

.shaded.highlighted a {
	color: inherit;
}
.shaded.highlighted strong,
.shaded.highlighted h1,
.shaded.highlighted h2,
.shaded.highlighted h3 {
	color: white;
}

.logo-and-text {
	display: table;
	width: 100%;
	table-layout: fixed;
	text-align: left;
}
.logo-and-text .logo {
	display: table-cell;
	width: 25%;
	box-sizing: border-box;
	padding-right: 2em;
	vertical-align: middle;
}
.logo-and-text .logo img {
	display: block;
	width: 100%;
}
.logo-and-text .text {
	display: table-cell;
	width: 75%;
	box-sizing: border-box;
	padding-left: 2em;
	vertical-align: middle;
}

@media screen and (max-width: 800px) {
	.logo-and-text {
		display: block;
		width: auto;
	}
	.logo-and-text .logo,
	.logo-and-text .text {
		display: block;
		width: auto;
		padding: 0;
	}
	.logo-and-text .logo {
		text-align: center;
		padding-bottom: 1em;
	}
	.logo-and-text .logo img {
		margin: 0 auto;
		max-width: 5em;
	}
	.logo-and-text .text h2 {
		text-align: center;
	}
}


@media screen and (max-width: 900px) {
	.text-and-photo .text {
		width: 65%;
	}
	.text-and-photo .photo {
		width: 35%;
	}
}
@media screen and (max-width: 700px) {
	.text-and-photo,
	.text-and-photo .text,
	.text-and-photo .photo {
		display: block;
		width: auto;
		padding: 0;
	}
	.text-and-photo h2.spacer {
		display: none;
	}
	.text-and-photo .photo {
		margin-top: 1em;
	}
}
.client-story-summary-box {
	display: inline-block;
	width: 20%;
	position: relative;
	vertical-align: top;
	margin-left: 4em;
	margin-right: 4em;
	margin-bottom: 4em;
}
.client-story-summary-box .client-story-summary-box-summary {	
	font-size: 0.8em;
	width: 100%;
	color: #333333;
	height: 12em;
}
.client-story-summary-box-image {
	min-height: 6em;
}
.client-story-summary-box-image img {
	margin: auto;
}
.client-story-summary-box-link {
	margin-top: 2em;
}

@media screen and (max-width: 900px) {
	.client-story-summary-box,
	.client-story-summary-box .client-story-summary-box-summary,
	.client-story-summary-box .client-story-summary-box-image {
		display: block;
		width: auto;
	}
}
.client-story-testimonial-box {
	margin-top: 2em;
}
.client-story-testimonial-box:first-child {
	margin-top: 0;
}
.client-story-testimonial-box p img {
	width: 100%;
	height: 0;
	padding-bottom: 20%;
	background: transparent none no-repeat scroll 50% 50%;
	background-size: contain;
}
.client-story-testimonial-box blockquote.quotation {
	font-size: 0.8em;
	padding-left: 1em;
	padding-right: 1em;
}
.client-story-testimonial-box blockquote.quotation::before,
.client-story-testimonial-box blockquote.quotation::after {
	font-size: 5rem;
}
.client-story-testimonial-boxes {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-top: 2em;
}
.client-story-testimonial-boxes:first-child {
	margin-top: 0;
}
.client-story-testimonial-boxes .client-story-testimonial-box {
	display: table-cell;
	width: 50%;
	box-sizing: border-box;
	margin-top: 0;
}
.client-story-testimonial-boxes .spacer {
	display: table-cell;
	width: 2em;
}
.client-story-testimonial-boxes.double .client-story-testimonial-box {
	padding-left: 5%;
	padding-right: 5%;
}

.chevron-mask {
	position: relative;
}
.chevron-mask + .icon-strip {
	margin-top: -2.15em;
}

.events-list {
	font-size: 0.8em;
	list-style: none;
	margin-left: 0;
	text-align: left;
	position: relative;
	margin: 2em 0;
}
.events-list li {
	padding-left: 3em;
	margin-top: 1.5em;
	min-height: 2em;
	color: #2c276e;
}
.events-list li:first-child {
	margin-top: 0;
}
.events-list li a {
	color: inherit;
	text-decoration: none;
}
.events-list li strong {
	font-weight: bold;
}
.social-media-account-widget {
	margin-top: 1em;
}
.social-media-account-widget:first-child {
	margin-top: 0;
}

.download-box {
	text-align: left;
	margin-bottom: 3em;
}
.download-box a {
	display: block;
	color: inherit;
}
.download-box strong,
.download-box em {
	display: block;
}
.download-box strong {
	font-size: 127%;
	font-weight: bold;
	margin-bottom: 0.2em;
}
.download-box em {
	font-size: 122%;
	font-style: normal;
	margin-top: 0.5em;
}
.download-box em span {
	text-decoration: underline;
}
.download-box em span.extension {
	text-decoration: none;
	display: inline-block;
	width: 2em;
	padding: 1em 0 0.2em 0;
	text-align: center;
	color: white;
	background: transparent url('../images/file.png') no-repeat scroll center center;
	background-size: contain;
	font-weight: normal;
}
.highlight-colour-grey .download-box em span.extension {
	background-image: url('../images/file-grey.png')
}
.highlight-colour-blue .download-box em span.extension {
	background-image: url('../images/file-blue.png')
}
.highlight-colour-purple .download-box em span.extension {
	background-image: url('../images/file-purple.png')
}
.highlight-colour-fuscia .download-box em span.extension {
	background-image: url('../images/file-fuscia.png')
}
.download-boxes {
	text-align: left;
	margin-top: 2em;
}
.download-boxes .download-box {
	display: inline-block;
	box-sizing: border-box;
	width: 50%;
	padding: 0 2em;
}

.sector-client-stories {
	text-align: center;
}
.sector-client-story {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 2em;
	color: #999;
	font-weight: bold;
}
.sector-client-story + .sector-client-story {
	margin-left: 2em;
}
.sector-client-story > a,
.sector-client-story > span {
	display: block;
	background-size: contain;
	color: inherit;
}

ul.tags {
	list-style: none;
	display: block;
	margin-left: 0;
	color: #999;
	font-size: 0.75rem;
}
ul.tags li {
	display: inline;
}
ul.tags li a {
	color: inherit;
}
ul.tags li + li::before {
	content: ', ';
	color: #ccc;
}

.resource-list {
	text-align: left;
	list-style: none;
	margin-left: 0;
}
.resource-list li {
	font-weight: 500;
}
.resource-list .resource-type-icon {
	display: inline-block;
	padding-left: 4em;
	background: transparent none no-repeat scroll 0 0;
	background-size: 1.75em auto;
	min-height: 2.5em;
}
.resource-list li + li {
	margin-top: 1.25em;
}
.resource-list li a {
	text-decoration: none;
}

.news-item-link-list {
	position: relative;
	list-style: none;
	margin-left: 0;
	padding: 0.6em 0;
	text-align: left;
}
.news-item-link-list::before {
	content: ' ';
	position: absolute;
	width: 1px;
	background: #92a6c1;
	top: 0;
	bottom: 0;
	left: 0.45em;
}
.news-item-link-list li {
	padding-left: 4rem;
	position: relative;
}
.news-item-link-list li::before {
	content: ' ';
	position: absolute;
	background-color: white;
	width: 0.8em;
	height: 0.8em;
	border: 0.1em solid #2c266f;
	border-radius: 100%;
	transition: background-color 0.5s;
	left: 0;
}
.news-item-link-list li + li {
	margin-top: 1.5rem;
}
.news-item-link-list li.selected::before {
	background-color: #2c266f;
}
.news-item-link-list li a {
	font-weight: bold;
	color: #2c266f;
	text-decoration: none;
}

.content-with-sidebar {
	position: relative;
	text-align: left;
}
.content-with-sidebar .content,
.content-with-sidebar .sidebar {
	box-sizing: border-box;
}
.content-with-sidebar .content {
	float: left;
	width: 75%;
	padding: 0 9.5625rem;
}
.content-with-sidebar .sidebar {
	float: right;
	width: 25%;
	padding: 0 2.5rem;
}
.content-with-sidebar .column-separator {
	left: 75%;
}
@media screen and (max-width: 1200px) {
	.content-with-sidebar .content {
		padding-right: 10%;
	}
}
@media screen and (max-width: 800px) {
	.content-with-sidebar .content,
	.content-with-sidebar .sidebar {
		padding: 0;
		float: none;
		width: auto;
	}
	.content-with-sidebar .column-separator {
		position: static;
		width: auto;
		background: transparent;
	}
	.content-with-sidebar .column-separator::before,
	.content-with-sidebar .column-separator::after {
		display: none;
	}
	.content-with-sidebar .column-separator hr {
		display: block;
		margin: 1em 0;
	}
}

.social-media-account-links {
}
.social-media-account-links a + a {
	margin-left: 0.5rem;
}
.social-media-account-links a,
.social-media-account-links img {
	display: inline-block;
}
.social-media-account-links img {
	opacity: 0.33;
	width: 1.5rem;
	height: 1.5rem;
}
img.thumbnail {
    display: inline-block;
}
img.circular {
  border-radius: 100%;
}
.page-numbers.page-number-load-more-interactive {
	display: none;
}
.page-number-load-more {
	display: none;
}
.page-number-load-more.interactive.can-load-more {
	display: block;
}
.archive-links a {
	color: #2c276e;
	text-decoration: none;
}
.archive-links a.selected,
.archive-links a:hover {
	text-decoration: underline;
}
#contact_team_member {
	margin-top: 3.1em;
}
#contact_team_member a.button {
	margin-left: 0em !important;
	margin-top: 3.1em;
}
#team_member_footer {
	margin-top: 9em;
}
#team_member_footer_back_to_team a.button  {
	margin-top: 2.6em;	
	margin-bottom: 6em;
	border: 2px solid #615d93;
	background-color: white;
	color: #615d93;
}
.back-to-top a {
	color: #2c266f;
	text-decoration: none;
}