/*----- Utility Styles -----*/
	
em {
	font-style: italic;}
	
p.inline {
	display: inline-block;}

/*-----*/


/*-- Positioning --*/

.clear {
	clear: both;}
	
.relative {
	position: relative;}

.top-button {
	z-index: 99999;
	position: fixed;
	bottom: 10px;
	right: 10px;
	margin: 0;}
	
.nudge {
	position: relative;
	top: 3px;}
	
.desktop-text-left {
	text-align: left!important;}
	
.desktop-text-right {
	text-align: right!important;}

/*-----*/
	

/*-- Display --*/

.mobile,	
#archive li {
	display: none;}

/*-----*/


/*-- Widths --*/

.fullWidth {
	max-width: 100%!important;}

a.fullWidthImage,
img.fullWidthImage,
div.fullWidthImage input[type=submit] {
	width: 100%!important;}

/*-----*/


/*-- Images --*/

.icon {
	width: 50px;}

.icon2 {
	width: 100px;}
	
.livicon-evo {
	display: inline-block!important;}
	
img.overlap-image {
	position: relative;
	top: -150px;
	margin-bottom: -150px;}

/*-----*/


/*-- Lists --*/

ul.noBullets {
	margin: 0 auto;
	padding: 0;}
	
ul.noBullets li {
	display: block;
	margin: 0;
	padding: 0;}

.inline ul,
ul.inline {
	display: inline-block;
	margin: 0 auto;
	padding: 0;
	line-height: 1em;}
	
.inline ul li,
ul.inline li {
	display: inline-block;
	margin: 0 1em 0 0;
	padding: 0;}

.text-right ul.inline li {
	margin: 0 0 0 1em;}

	
ul.social {
	z-index: 99999;
	position: fixed;
	top: 45%;
	left: 0;
	margin: 0;
	padding: 0;}
	
ul.social li {
	display: block;
	margin-bottom: 5px;}
	
[class*="block-grid-"] {
	margin: 0!important;}
	
ul.archives li {
	display: inline-block;
	margin: 0 0 1em 0;
	padding: 0;}
	
ul.archives li:after {
    content: "|";}
	
ul.archives li:last-child:after {
    content: "";}
	
ul.archives li a {
	padding: 0 1em;}


/*-----*/


/*-- Padding --*/

.padding {
	padding: 3em;}

.more-padding {
	padding: 5em;}
	
.less-padding {
	padding: 2em;}
	
.even-less-padding {
	padding: 1em;}

.tile-padding {
	padding: 8em 2em 8em 2em;}
	
.padding-x {
	padding: 0 2em!important;}
	
.padding-y {
	padding: 2em 0;}
	
.less-padding-y {
	padding: 1em 0;}
	
.more-padding-y {
	padding: 5em 0;}
	
.even-more-padding-y {
	padding: 10em 0;}
	
.banner-padding-y {
	padding: 15em 0;}
	
.archive-padding-y {
	padding: 10em 0 2em 0;}
	
.padding-top {
	padding-top: 1em!important;}
	
.more-padding-top {
	padding-top: 2em!important;}
	
.padding-bottom {
	padding-bottom: 1em!important;}
	
.padding-left {
	padding-left: 1em!important;}
	
.padding-right {
	padding-right: 1em!important;}
	
.no-padding {
	padding: 0!important;}

/*-----*/


/*-- Margin --*/

.margin {
	margin: 3em;}
	
.less-margin {
	margin: 2em;}
	
.even-less-margin {
	margin: 1em;}
	
.margin-x {
	margin: 0 2em;}
	
.less-margin-x {
	margin: 0 0.5em 1em 0.5em;}
	
.margin-y {
	margin: 2em 0;}
	
.margin-top {
	margin-top: 2em!important;}
	
.margin-bottom {
	margin-bottom: 2em!important;}
	
.more-margin-bottom {
	margin-bottom: 5em!important;}
	
.less-margin-bottom {
	margin-bottom: 1em!important;}
	
.even-less-margin-bottom {
	margin-bottom: 0.5em!important;}
	
.margin-left {
	margin-left: 2em!important;}
	
.margin-right {
	margin-right: 2em!important;}
	
.no-margin {
	margin: 0!important;}

/*-----*/


/*-- Page Margins --*/
	
#page h3,
#page h4 {
	margin: 2em 0 1em 0;}
	
#page h3:first-child,
#page h4:first-child {
	margin: 0 0 1em 0;}

/*-----*/


/*----- Row Styles -----*/


/*-- Row Style | Video Background --*/

.fullscreen-bg {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: -100;}

.fullscreen-bg__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;}


/*-- Row Style | Background Image --*/

.background-image {
	background-size: 100%!important;
	background-attachment: fixed!important;}

.background-image-left,
.background-image-right {
	background-size: 75%!important;
	background-attachment: scroll!important;}


/*-- Row Style | Solid Colour --*/

.white {
	background: #fff;}

.grey {
	background: #f5f5f5;}
	
.dark-grey {
	background: #666;}
	
.charcoal {
	background: #222;}

.black {
	background: #111;}	


/*-- Row Style | Overlay Colour --*/

.white-overlay {
	background: rgba(255, 255, 255, 0.9);}

.grey-overlay {
	background: rgba(245, 245, 245, 0.9);}

.black-overlay {
	background: rgba(0, 0, 0, 0.5);}

.white-left-gradient {
	background: -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */}

.white-right-gradient {
	background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */}


.grey-left-gradient {
	background: -moz-linear-gradient(left, rgba(245,245,245,1) 0%, rgba(245,245,245,1) 50%, rgba(245,245,245,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(245,245,245,1) 0%,rgba(245,245,245,1) 50%,rgba(245,245,245,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(245,245,245,1) 0%,rgba(245,245,245,1) 50%,rgba(245,245,245,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#00f5f5f5',GradientType=1 ); /* IE6-9 */}

.grey-right-gradient {
	background: -moz-linear-gradient(left, rgba(245,245,245,0) 0%, rgba(245,245,245,1) 50%, rgba(245,245,245,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(245,245,245,0) 0%,rgba(245,245,245,1) 50%,rgba(245,245,245,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(245,245,245,0) 0%,rgba(245,245,245,1) 50%,rgba(245,245,245,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f5f5f5', endColorstr='#f5f5f5',GradientType=1 ); /* IE6-9 */}


.black-left-gradient {
	background: -moz-linear-gradient(left, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000',GradientType=1 ); /* IE6-9 */}

.black-right-gradient {
	background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 50%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=1 ); /* IE6-9 */}

/*-----*/


/*----- Media Styles -----*/	

@media only screen and (max-width: 1920px) {

.banner-padding-y {
	padding: 15em 0;}
	
}

@media only screen and (max-width: 64.063em) {
	
.background-image,
.background-image-left,
.background-image-right {
	background-size: 150%!important;
	background-attachment: scroll!important;}
	
[class*=block-grid-]>li {
	float: none!important;
	width: 100%!important;}

}


@media only screen and (max-width: 40.063em) {

.desktop,
ul.social {
	display: none!important;}

.mobile {
	display: block;}

.mobile-center {
	text-align: center;}

.padding,
.more-padding {
	padding: 2em;}

.tile-padding {
	padding: 5em 2em 5em 2em;}

.padding-y,
.more-padding-y ,
.even-more-padding-y {
	padding: 2em 0;}

.banner-padding-y {
	padding: 5em 0;}
	
.margin-right {
	margin-right: 0!important;}
	
.inline ul li, 
ul.inline li {
	margin: 0 0.5em;}

[class*="block-grid-"] > li {
	float: none;
	width: auto;
	margin: 0 auto;
	padding: 0;}


.white-left-gradient,
.white-right-gradient {
	background: rgba(255, 255, 255, 0.9);}

.grey-left-gradient,
.grey-right-gradient {
	background: rgba(245, 245, 245, 0.9);}

.black-left-gradient,
.black-right-gradient {
	background: rgba(0, 0, 0, 0.7);}
	
.desktop-text-left,
.desktop-text-right {
	text-align: center!important;}

	
.sub-footer img.icon {
	margin: 0!important;}
	
.sub-footer p.inline {
	display: block!important;
	margin-bottom: 3em;}

footer .inline ul {
	display: block;
	width: 100%;}
	
footer .inline ul li {
	display: list-item;
	margin: 0 0 1em 1em;}

}

/*-----*/


.masonry {
	column-count: 4; 
	column-gap: 1em;}

@media only screen and (max-width: 64.063em) {

.masonry {
	column-count: 2; 
	column-gap: 1em;}
	
}

@media only screen and (max-width: 40.063em) {

.masonry {
	column-count: 1; 
	column-gap: 1em;}
	
}

/*-----*/


/*----- Team Styles -----*/
	

ul.team {
	margin: 0 0 2em 0;
	padding: 0;}

ul.team li {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 250px;
	margin: 1em;}

ul.team li div.circle {
	display: block;
	overflow: hidden;
	border-radius: 1000px;
	width: 200px;
	height: 200px;
	margin: 0 auto 2em auto;
	padding: 0;}
	
ul.team li div.circle img {
	width: 100%;}

	
ul.team-page li {
	padding: 20em 0 2em 0;}
	
ul.team-page li h3,
ul.team-page li h4,
ul.team-page li h5 {
	display: inline-block;
	background: rgba(0,0,0,0.5);
	margin: 0;
	padding: 1em 5em 1em 1em;
	color: #fff;}

div.circular-image {
	display: block;
	overflow: hidden;
	border-radius: 1000px;
	width: 200px;
	height: 200px;
	margin: 0 auto 2em auto;
	padding: 0;}
	
div.circular-image img {
	width: 100%;}

/*-----*/


/*-- Blockquotes --*/
	
blockquote {
	background: #f5f5f5 url('img/quote.png') 40px 20px no-repeat;
	border-left: 5px solid #111;
	padding: 170px 3em 3em 3em;}

/*-----*/
	

/*----- Ticker -----*/

@-webkit-keyframes ticker {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: visible;}

  100% {
    -webkit-transform: translate3d(-400%, 0, 0);
    transform: translate3d(-400%, 0, 0);}
}

@keyframes ticker {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    visibility: visible;}

  100% {
    -webkit-transform: translate3d(-400%, 0, 0);
    transform: translate3d(-400%, 0, 0);}
}

.ticker-wrap {
	position: relative;
	overflow: hidden;
	width: 100%;}

.ticker {
	display: inline-block;
	white-space: nowrap;
	-webkit-animation-iteration-count: infinite; 
		  animation-iteration-count: infinite;
	-webkit-animation-timing-function: linear;
		  animation-timing-function: linear;
	-webkit-animation-name: ticker;
		 animation-name: ticker;
	-webkit-animation-duration: 120s;
	animation-duration: 120s;}

.ticker__item {
	display: inline-block;
	padding: 0;}
	
.ticker__item img {
	height: 200px;
	/* -webkit-filter: grayscale(100%);
	filter: grayscale(100%); */}
	
.inset-shadow {
	-webkit-box-shadow: inset 0px 5px 10px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: inset 0px 5px 10px 0px rgba(0,0,0,0.1);
	box-shadow: inset 0px 5px 10px 0px rgba(0,0,0,0.1);}

/*-----*/
	

.vidone {
	display: block;}
	
.vidtwo {
	display: none;}


/*----- Media Styles -----*/	

@media only screen and (max-width: 64.063em) {

.tablet {
	display: none;}
	
.vidone {
	display: none;}
	
.vidtwo {
	display: block;}

}

/*-----*/


h2.larger,
#mobile-first h2 {
	font-size: 3em!important;}

@media only screen and (max-width: 40.063em) {

h2.larger,
#mobile-first h2 {
	font-size: 2em!important;}
	
}

/*-----*/


/*----- Search & Filter Styles -----*/

.searchandfilter ul {
	display: block!important;
	margin: 0;
	padding: 0;}

.searchandfilter li {
	display: inline-block;
	width: 32%;
	padding: 0!important;
	margin-right: 2%;}

.searchandfilter li:nth-child(3) {
	margin-right: 0;}

.searchandfilter li:last-child {
	display: block;
	width: 100%;
	padding: 0!important;}
	
.searchandfilter input[type=text],
.searchandfilter select {
	width: 100%;
	margin: 0 0 1em 0;}
	
.searchandfilter input[type=submit] {
	width: 100%;}
	

@media only screen and (max-width: 40.063em) {

.searchandfilter li {
	display: block;
	width: 100%;
	margin: 0;}
	
}

/*-----*/