/*
	Theme Name: Event Mafia
	Author: http://eventmafia.com.au
	Author URI: http://eventmafia.com.au
	Version: 1.0.0
*/

/*------------------------------------*\
	MAIN
\*------------------------------------*/

@font-face {
	font-family: 'KeepCalm';
	src: url('fonts/keepcalm-medium/keepcalm-medium-webfont.woff2') format('woff2'),
		 url('fonts/keepcalm-medium/keepcalm-medium-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

html {
	height: 100%;
}
body {
	height: 100%;
	min-height: 800px;
	font-family: "Nunito", sans-serif;
	font-size: 18px;
	line-height: 1.5;
	overflow-x: hidden;
}

@media (max-width: 900px) {
	body {
		min-height: 0;
	}
}

.menubar {
	position: absolute;
	top: 0;
	width: 100%;
	height: 50px;
	z-index: 101;
	background: #fff;
	font-size: 16px;
	color: #5D676F;
}
	.menubar-inner {
		display: table;
		height: 100%;
		width: 94vw;
		max-width: 1600px;
		margin: 0 auto;
	}
		.menubar-inner-row {
			display: table-row;
		}
			.menubar-left {
				display: table-cell;
				vertical-align: middle;
				width: 20%;
			}
			.menubar-center {
				display: table-cell;
				vertical-align: middle;
			}
			.menubar-right {
				display: table-cell;
				vertical-align: middle;
				width: 20%;
			}
	.menubar-phone {
		text-align: right;
		font-size: 18px;
	}
	.menubar-phone a {
		color: inherit;
		text-decoration: none;
	}

.main-menu {
	display: flex;
	flex-direction: row;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 700px;
	font-size: 18px;
}
	.main-menu > li {
		flex-grow: 1;
		text-align: center;
		margin: 0;
		padding: 0;
		font-weight: bold;
	}
		.main-menu > li > a {
			color: #5D676F;
			white-space: nowrap;
			text-decoration: none;
			text-transform: uppercase;
			transition: all .2s ease-in-out;
		}
		.main-menu > li > a:hover {
			text-decoration: underline;
			color: #11B0A9;
		}
		.main-menu > li > ul {
			text-align: left;
			padding-top: .7em;
			padding-left: .7em;
			font-size: .9em;
		}
			.main-menu > li > ul > li {
				line-height: 1.3;
			}
				.main-menu > li > ul > li > a {
					text-transform: uppercase;
					color: #fff;
					display: block;
					background-color: #11B0A9;
					text-decoration: none;
					white-space: nowrap;
					padding: 0 1em 0 .4em;
					margin-bottom: .3em;
				}
				.main-menu > li > ul > li > a:hover {
					color: #000;
				}
		.sf-menu, .sf-menu * {
			list-style-type: none;
		}
		.sf-menu li {
			position: relative;
		}
		.sf-menu ul {
			position: absolute;
			display: none;
			top: 100%;
			left: 0;
			z-index: 999;
		}
		.sf-menu > li {
			float: left;
		}
		.sf-menu li:hover > ul,
		.sf-menu li.sfHover > ul {
			display: block;
		}

		.sf-menu a {
			display: block;
			position: relative;
		}
		.sf-menu ul ul {
			top: 0;
			left: 100%;
		}

@media (max-width: 1100px) {
	.main-menu,
	.menubar-phone {
		font-size: 17px;
	}
}

.follow-links {
	list-style: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
	.follow-links > li {
		display: block;
		float: left;
	}
	.follow-links img {
		width: 31px;
		height: 31px;
	}
	.follow-links > li > a {
		display: block;
		line-height: .5;
		color: #fff;
		text-decoration: none;
		transition: opacity .3s;
		padding-left: .2em;
		padding-right: .2em;
	}
	.follow-links > li > a:hover {
		opacity: .6;
	}

.content {
	min-height: 100%;
	box-sizing: border-box;
	padding-top: 50px;
}
.content-inner {

}
.content--fullheight {
	padding-top: 0;
	height: 100%;
	position: relative;
}
.content--fullheight .content-inner {
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	bottom: 0;
}
.content--fullheightstatic {
	min-height: 100%;
	position: relative;
}
.content--fullheightstatic .content-inner {
	height: 100%;
	overflow: hidden;
}

@media (max-width: 900px) {
	.content {
		padding-top: 0;
		min-height: auto;
	}
	.content-inner {
		padding-bottom: 40px;
	}
	.content--fullheight {
		height: auto;
	}
	.content--fullheight .content-inner {
		position: static;
		padding-bottom: 40px;
	}
}

.content-heading {
	width: 94vw;
	max-width: 1600px;
	height: 150px;
	margin: 20px auto 20px auto;
	position: relative;
	overflow: hidden;
	display: table;
}
	.content-heading > .__inner {
		display: table-cell;
		vertical-align: middle;
	}
	.content-heading h1 {
		font-family: "KeepCalm", sans-serif;
		color: #000;
		margin: 0;
		text-align: center;
		font-size: 3.4em;
		line-height: 1.2;
		font-weight: normal;
	}
	.content-heading h1 u {
		text-decoration: none;
	}
	.content-heading h1 em {
		font-style: normal;
	}
	.content-heading h1.reversed {
		color: #fff;
	}
	.content-heading h1 u,
	.content-heading h1 em {
		display: inline-block;
		border-top: solid .1em #11B0A9;
	}
	.content-heading .__period {
		color: #11B0A9;
	}
	.content-heading .logo {
		height: 150px;
		width: 150px;
		position: absolute;
		top: 0;
		left: 0;
	}
	.content-heading .subheading {
		width: 100%;
		margin-top: 10px;
		text-align: center;
		font-size: 1.2em;
		letter-spacing: .1em;
		font-weight: bold;
	}

@media (max-width: 900px) {
	.content-heading,
	.content-heading > .__inner {
		display: block;
	}
	.content-heading {
		height: auto;
		margin-top: 40px;
		margin-bottom: 40px;
		overflow: visible;
	}
	.content-heading .logo-wrplink {
		display: none;
	}
}

.content-copy {
	width: 94vw;
	max-width: 1600px;
	margin: 0 auto;
	position: relative;
}

/*------------------------------------*\
	SEO Footer ARea
\*------------------------------------*/

.footer {
	color: #333;
	padding-top: 1px;
}
.footer-copy {
	width: 80%;
max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	font-size: 12px;
	color: #666;
	padding-top: 25px;
}
.footer-copy h1 {
	text-transform: uppercase;
	font-size: 14px;
	margin-top: -5px;
	margin-bottom: -5px;
}
.footer-copy h2 {
	text-transform: uppercase;
	font-size: 14px;
	margin-top: -5px;
	margin-bottom: -5px;
}
.footer-copy h3 {
	text-transform: uppercase;
	font-size: 15px;
	margin-top: -5px;
	margin-bottom: -5px;
}
.footer a {
	color: #333;
}
.footer-credits {
	width: 94vw;
	max-width: 1600px;
	margin: 0 auto;
	border-top: 1px solid #ddd;
	margin-top: 40px;
	padding-top: 20px;
	padding-bottom: 20px;
}
.footer-logo-group {
	white-space: nowrap;
}
.footer-logo {
	width: 130px;
	display: inline-block;
	vertical-align: middle;
}
.footer-we-listen {
	display: inline-block;
	vertical-align: middle;
	margin-left: 20px;
	font-family: "KeepCalm", sans-serif;
	letter-spacing: .1em;
	font-size: .9em;
}
	.footer-we-listen .__cube {
		display: inline-block;
		border-top: solid .1em #11B0A9;
	}
	.footer-we-listen .__cube-last-letter {
		letter-spacing: normal;
	}
.footer-address {
	text-align: right;
	font-size: .8em;
}
.footer-address p {
	display: inline-block;
	text-align: left;
}
.footer-menu-wrp {
	text-align: center;
}
.footer-menu {
	list-style: none;
	display: inline-block;
	text-align: center;
	margin: 0;
	padding: 0;
}
.footer-menu > li {
	display: inline-block;
	margin: 0;
	padding: 0;
}
.footer-menu > li:not(:last-child):after {
	content: " |";
}
.footer-menu > li > a {
	display: inline-block;
}
.footer-contact-btn-wrp {
    text-align: center;
    margin-top: .7em;
    margin-bottom: .3em;
}
.footer-contact-btn {
    display: inline-block;
    border: 2px solid #11B0A9;
    color: #333 !important;
    border-radius: 1em;
    padding: .2em 1.2em;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
    transition: background-color .3s ease;
}
.footer-contact-btn:hover {
	background-color: #f2fffe;
}
.footer--dark {
	background: #000;
	color: #fff;
}
.footer--dark a {
	color: #fff;
}
.footer--dark .footer-copy {
	color: #ddd;
}
.footer--dark .footer-credits {
	border-top-color: #444;
}
.footer--dark .footer-contact-btn {
	border-color: #fff;
	color: #fff !important;
}
.footer--dark .footer-contact-btn:hover {
	background-color: #333;
}

@media (max-width: 900px) {
	.footer-logo-group {
		text-align: center;
	}
	.footer-we-listen {
		text-align: left;
	}
	.footer-menu {
	    margin-top: 20px;
	    margin-bottom: 10px;
	}
	.footer-address,
	.footer-address p {
		text-align: center;
	}
}

.fullstop {
	color: #11B0A9;
}

.nobr {
	white-space: nowrap;
}

.videoWrapper {
	position: relative;
	padding-bottom: 43.5%;
	padding-top: 25px;
	height: 0;
	width: 80%;
	margin: 30px auto;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (max-width: 900px) {
	.videoWrapper {
		width: 100%;
	}
}

.logo {
	display: block;
	width: 9.5vw;
	overflow: hidden;
	border-radius: 50%;
}
	.logo img {
		display: block;
		width: 100%;
	}
	.logo > .__inner {
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
	}
	/* logo > .__inner:after {
		animation: shine 15s ease-in-out  infinite;
		animation-fill-mode: forwards;
		content: "";
		position: absolute;
		top: -110%;
		left: -210%;
		width: 200%;
		height: 200%;
		opacity: 0;
		transform: rotate(30deg);
		background: rgba(255, 255, 255, 0.13);
		background: linear-gradient(
			to right,
			rgba(255, 255, 255, 0.13) 0%,
			rgba(255, 255, 255, 0.13) 77%,
			rgba(255, 255, 255, 0.8) 92%,
			rgba(255, 255, 255, 0.0) 100%
		);
	}
	@keyframes shine {
		10% {
			opacity: 1;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
			transition-duration: 0.7s, 0.7s, 0.15s;
			transition-timing-function: ease;
		}
		30% {
			opacity: 0;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
		}
		31% {
			opacity: 0;
			top: -110%;
			left: -210%;
		}
		40% {
			opacity: 1;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
			transition-duration: 0.7s, 0.7s, 0.15s;
			transition-timing-function: ease;
		}
		60% {
			opacity: 0;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
		}
		61% {
			opacity: 0;
			top: -110%;
			left: -210%;
		}
		70% {
			opacity: 1;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
			transition-duration: 0.7s, 0.7s, 0.15s;
			transition-timing-function: ease;
		}
		90% {
			opacity: 0;
			top: -30%;
			left: -30%;
			transition-property: left, top, opacity;
		}
	} */

.module {
	display: block;
	overflow: hidden;
	position: absolute;
}
	.module .__layer1 {
		display: block;
		background-size: cover;
		transition: all 0.3s ease;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		background-repeat: no-repeat;
		background-position: center center;
		z-index: -2;
	}
	.module .__layer2 {
		display: block;
		background-size: cover;
		transition: all 0.3s ease;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		background-repeat: no-repeat;
		background-position: center center;
		z-index: -3;
	}
	.module:hover .__layer1,
	.module:focus .__layer1 {
		transform: scale(1.08);
		opacity: 0;
	}
	.module:hover .__layer2,
	.module:focus .__layer2 {
		transform: scale(1.08);
	}
	.module .__title {
		z-index: -1;
		position: absolute;
		bottom: 2vw;
		left: 2vw;
		color: #fff;
		font-family: "KeepCalm", sans-serif;
		font-size: 4.5vw;
		line-height: 1;
		text-shadow: 3px 3px 4px rgba(0,0,0,.8);
	}
		.module .__title em {
			font-style: normal;
			display: inline-block;
			border-top: solid .3vw #11B0A9;
		}

.module--fp-main {
	left: 0;
	top: 0;
	right: 50%;
	bottom: 0;
}
	.module--fp-main .__title {
		top: 2vw;
		left: 3vw;
		bottom: auto;
		font-size: 15.7vh;
		z-index: 101;
	}

.fp-pager {
	color: #fff;
	position: absolute;
	bottom: 1.8vw;
	right: 2vw;
	font-size: 1.6vw;
	z-index: 101;
}
.fp-pager .fa {
	margin-left: .7vw;
	cursor: pointer;
	opacity: .7;
}
.fp-pager .fa.cycle-pager-active {
	opacity: 1;
}

.module--fp-std-right-top {
	left: 50%;
	top: 0;
	right: 0;
	bottom: 50%;
}
.module--fp-std-right-bottom1 {
	left: 50%;
	top: 50%;
	right: 25%;
	bottom: 0;
}
.module--fp-std-right-bottom2 {
	left: 75%;
	top: 50%;
	right: 0;
	bottom: 0;
}

.fp-logo {
	pointer-events: none;
	position: absolute;
	left: 3vw;
	bottom: 3vw;
	z-index: 101;
}
.fp-hello {
	pointer-events: none;
	display: block;
	position: absolute;
	z-index: 101;
	left: 14vw;
	bottom: 5vw;
	color: #fff;
	font-size: 1.2vw;
	font-family: "KeepCalm", sans-serif;
	line-height: 1.7;
	text-shadow: 2px 2px 2px rgba(0,0,0,.8);
	letter-spacing: .2vw;
}
.fp-slideshow {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.fp-slide {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.menubar-mobile {
	display: none;
	z-index: 999;
	position: relative;
	text-align: center;
	overflow: hidden;
}
.mobile-logo-wrplink {
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
}
.mobile-logo {
	margin-top: 10px;
	width: 130px;
}
.mobile-menu-showbtn {
	position: absolute;
	left: 50%;
	margin-left: 100px;
	top: 50px;
	font-size: 2em;
	color: #999;
	cursor: pointer;
}
.follow-links--mobile {
	display: inline-block;
	vertical-align: bottom;
	margin-top: 10px;
	margin-bottom: 10px;
}

.mobile-menu {
	display: block;
	max-width: 300px;
	width: 100%;
	right: -100%;
	height: 100vh;
	background: #fff;
	position: absolute;
	z-index: 9998;
	transition: 0.6s ease;
	top: 0;
	opacity: 0;
	box-shadow: -2px -2px 20px rgba(0,0,0,.1);
}
.mobile-menu--open {
	right: 0;
	opacity: 1;
}
.mobile-menu > ul {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}
.mobile-menu ul,
.mobile-menu li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.mobile-menu ul li a {
	display: block;
	text-decoration: none;
	color: #0e0e0e;
	overflow: hidden;
	position: relative;
	padding: 10px 0px 10px 30px;
	text-transform: uppercase;
}
.mobile-submenu-trigger {
	position: absolute;
	right: 13px;
	top: 50%;
	margin-top: -1.1em;
	padding: 13px 18px;
}
.mobile-menu > ul > li {
	border-bottom: 1px solid #ddd;
}
.mobile-menu > ul > li:last-child {
	border-bottom: 0;
}
.mobile-menu > ul > li > ul {
	display: none;
	font-size: .8em;
	margin-left: 20px;
}
.mobile-menu-hidebtn {
	position: absolute;
	right: 13px;
	top: 8px;
	font-size: 2em;
	padding: 0 20px;
	cursor: pointer;
}

@media (max-width: 900px) {
	.menubar {
		display: none;
	}
	.menubar-mobile {
		display: block;
	}
}

/**
 * Services.
 */
 .services-container {
 	padding-left: 75px;
 	padding-right: 75px;
 	box-sizing: border-box;
 }
 	.services-container .__item {
 		font-family: "Oswald", sans-serif;
 		display: block;
 		width: 100%;
 		height: 33vh;
 		max-height: 600px;
 		text-decoration: none;
 		text-align: center;
 		color: #231F20;
 		font-size: .8em;
 		line-height: 1.3;
 		letter-spacing: .2vw;
 		text-transform: uppercase;
 		font-weight: bold;
 	}
 	.services-container .__item .fullstop {
 		font-size: 140%;
 		line-height: 1px;
 	}
 	.services-container .__img-mask {
 		display: block;
 		width: 100%;
 		height: 80%;
 		overflow: hidden;
 		position: relative;
 		margin-bottom: 10px;
 	}
 	.services-container .__img {
 		display: block;
 		position: absolute;
 		top: 0;
 		right: 0;
 		bottom: 0;
 		left: 0;
 		background-size: cover;
 		transition: all 0.3s ease;
 		background-repeat: no-repeat;
 		background-position: center center;
 	}
 	.services-container .__item:hover .__img {
 		filter: grayscale(100%);
 		transform: scale(1.08);
 	}

 @media (max-width: 900px) {
 	.services-container {
 		padding-left: 0;
 		padding-right: 0;
 	}
 	.services-container .__item {
 		height: 50vh;
 	}
 }

.single-service-wrapper {
	max-width: 1600px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	min-height: 100%;
}

.left-fullheight-img {
	position: absolute;
	top: 0;
	right: 50%;
	bottom: 0;
	left: 0;
}
	.left-fullheight-img-slides {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	.left-fullheight-img-slide {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center center;
	}
	.left-fullheight-img .logo {
		position: absolute;
		top: 3vw;
		left: 3vw;
		z-index: 101;
		width: 150px;
		height: 150px;
	}
	.left-fullheight-img .__pager {
		color: #fff;
		position: absolute;
		bottom: 2.5vw;
		right: 2vw;
		font-size: 1.6vw;
		z-index: 101;
	}
	.left-fullheight-img .__pager .fa {
		margin-left: .7vw;
		cursor: pointer;
		opacity: .7;
	}
	.left-fullheight-img .__pager .fa.cycle-pager-active {
		opacity: 1;
	}

.right-fullheight-content {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 50%;
}
	.right-fullheight-content > .__inner {
		padding-left: 2vw;
		padding-top: 1vh;
		padding-right: 3vw;
		position: relative;
		width: 100%;
		height: 100%;
		box-sizing: border-box;
	}
	.right-fullheight-content h1 {
		margin: .5em 0;
		font-family: "KeepCalm", sans-serif;
		font-weight: normal;
		font-size: 2.5em;
		line-height: 1;
	}
	.right-fullheight-content h3 {
		font-family: "Oswald", sans-serif;
		font-size: 18px;
		font-weight: bold;
		text-transform: uppercase;
	}
	.right-fullheight-content h3 em {
		font-style: normal;
		color: #11B0A9;
	}
	.right-fullheight-content .__text {
		height: 60vh;
		overflow-y: auto;
	}
	.right-fullheight-content .__text ul {
		padding-left: 1em;
		font-size: .9em;
	}
		.right-fullheight-content .__text ul > li {
			padding-bottom: .4em;
		}

.service-top-level-heading {
	font-family: "KeepCalm", sans-serif;
	font-weight: normal;
	color: #000;
	font-size: 1.8em;
	line-height: 1.2;
}
	.service-top-level-heading u {
		display: inline-block;
		border-top: solid .15em #11B0A9;
		text-decoration: none;
	}

.bottom-links {
	position: absolute;
	bottom: 6vh;
	padding-left: 0 !important;
	list-style-type: none;
	right: 3vw;
	text-align: right;
	font-size: .9em;
}
	.bottom-links li {
		margin-top: .5em;
	}
	.bottom-links a {
		font-family: "Oswald", sans-serif;
		font-weight: bold;
		text-transform: uppercase;
		text-decoration: underline;
		color: #000000;
	}

.bottom-quote {
	font-family: "Oswald", sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 16.5px;
	color: #000000;
	position: absolute;
	bottom: 2vh;
	right: 3vw;
	left: 2vw;
	text-align: right;
}
.bottom-quote-blue {
	color: #11B0A9;
}

.single-service-mobile-slideshow {
	display: none;
	height: 300px;
	margin-top: 30px;
	margin-bottom: 30px;
}
.single-service-mobile-slideshow-slide {
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.single-service-mobile-slideshow-pager {
	color: #fff;
	position: absolute;
	bottom: 2.5vw;
	right: 2vw;
	font-size: 20px;
	z-index: 101;
}
	 .single-service-mobile-slideshow-pager .fa {
	 	margin-left: 10px;
	 	cursor: pointer;
	 	opacity: .7;
	 }
	 .single-service-mobile-slideshow-pager .fa.cycle-pager-active {
	 	opacity: 1;
	 }

@media (min-width: 1650px) {
	.right-fullheight-content > .__inner {
		padding-right: 0;
	}
	.bottom-links,
	.bottom-quote {
		right: 0;
	}
}

@media (max-width: 900px) {
	.left-fullheight-img {
		display: none;
	}
	.right-fullheight-content {
		position: static;
	}
	.single-service-mobile-slideshow {
		display: block;
	}
	.bottom-links {
		position: static;
		text-align: center;
	}
	.bottom-quote {
		position: static;
		text-align: center;
	}
	.service-top-level-heading {
		text-align: center;
		margin-top: 30px;
	}
	.right-fullheight-content .__text {
		height: auto;
	}
	.right-fullheight-content h1 {
		text-align: center;
	}
}

@media (min-width: 901px) and (max-height: 800px) {
	.right-fullheight-content .__text {
		height: 430px;
	}
}

 /**
  * Clients
  */
 .client-logos .grid__col {
 	text-align: center;
 }
 .client-logos img {
 	max-width: 100%;
 }

 .testimonials {
 	overflow: hidden;
 }
 .testimonials-inner {
 	margin-right: -2%;
 }
 	.testimonials .__item {
 		font-size: .8em;
 		line-height: 1.7em;
 		margin-bottom: 2em;
 		padding: 30px 30px 30px 30px;
 		background-color: #F1F1F2;
 		background-image: url(img/testimonials-quotes-background.png);
 		background-repeat: no-repeat;
 		background-position: 30px 0;
 		background-size: 90px;
 		position: relative;
 		text-align: justify;
 		float: left;
 		width: 48%;
 		margin-right: 2%;
 		box-sizing: border-box;
 	}
 	.testimonials .__quote-author {
 		position: absolute;
 		bottom: 10px;
 		right: 30px;
 	    text-align: right;
 	    font-size: 16pt;
 	    text-transform: uppercase;
 	    font-family: "Oswald", sans-serif;
 	    font-weight: bold;
 	}

 @media (max-width: 900px) {
 	.testimonials-inner {
 		margin-right: 0;
 	}
 	.testimonials .__item {
 		float: none;
 		width: 100%;
 		margin-right: 0;
 	}
 }

/**
 * Contact
 */
.content-contact {
	background: #000;
}
.content-contact .content-inner {
	max-width: 1650px;
	margin-left: auto;
	margin-right: auto;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	padding-bottom: 50px;
	box-sizing: border-box;
}
.content-contact .content-copy {
	color: #fff;
}
.contact-wrapper {
	background: url(resources/img/contact-background.jpg) center center no-repeat;
	background-size: cover;
	max-width: 1650px;
	margin-left: auto;
	margin-right: auto;
	padding: 1px;
	box-sizing: border-box;
	min-height: 100%;
}
.contact-form .field {
    position: relative;
    margin-bottom: 1vh;
}
.contact-form label {
    position: absolute;
    z-index: 1;
    color: #000;
    font-size: .7em;
    letter-spacing: .1vw;
    top: 3px;
    left: 5px;
}
.contact-form input[type="text"],
.contact-form input[type="email"] {
    border: 1px solid #000;
    width: 100%;
    box-sizing: border-box;
    padding-left: 5vw;
    line-height: 2;
}
.contact-form textarea {
	resize: none;
	border: 1px solid #000;
    width: 100%;
    box-sizing: border-box;
    padding-left: 7vw;
    height: 10vw;
}
.form-bottom {
	text-align: right;
}
.button {
	box-sizing: border-box;
	border: 0;
	color: #000;
	background: #11B0A9;
	font-size: .9em;
	padding: 5px 20px;
	letter-spacing: .1vw;
	cursor: pointer;
}
span.wpcf7-not-valid-tip {
	font-size: .8em;
}
div.wpcf7-response-output {
	margin: 2em 0 0 0 !important;
}
div.wpcf7-validation-errors {
    border: 2px solid #fff !important;
    background: rgba(255,255,255,.8);
    color: #333;
}
div.wpcf7-mail-sent-ok {
	border: 2px solid #409b87 !important;
	background: rgba(255,255,255,.8);
	color: #1e632b;
}
.contact-form p {
	display: none;
}
.say-hello {
	font-family: "KeepCalm", sans-serif;
	font-size: 2.4em;
	line-height: 2;
	font-weight: normal;
	color: #fff;
	text-shadow: 2px 2px 2px rgba(0,0,0,.7);
}
.address {
	line-height: 1.3;
	font-size: 1.1em;
	text-shadow: 2px 2px 2px rgba(0,0,0,.7);
}
	.address .__line {
		position: relative;
		padding-left: 2em;
		margin-bottom: .4em;
	}
	.address .__line img {
		width: 1.4em;
		position: absolute;
		left: 0;
		top: 0;
	}
	.address a {
		color: inherit;
	}
.contact-left {
	width: 49%;
	padding-top: 30px;
}
.contact-map {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 51%;
	top: 30px;
}
div.wpcf7 .ajax-loader.custom-ajax-loader {
	background-image: url(img/ajax-loader.gif) !important;
}

@media (max-width: 900px) {
	.contact-left {
		width: 100%;
		margin-bottom: 40px;
	}
	.contact-map {
		position: static;
		width: 100%;
		height: 300px;
	}
}

/**
 * About
 */
.content--about .content-inner {
	background: #000000;
}
.about-wrapper {
	position: relative;
	max-width: 1600px;
	margin-left: auto;
	margin-right: auto;
	height: 100%;
	max-height: 1600px;
}

.about-section-top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 50%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	padding-left: 3vw;
	padding-right: 3vw;
}
	.about-section-top h1 {
		margin: 50px 0 0 0;
		font-family: "KeepCalm", sans-serif;
		font-weight: normal;
		font-size: 4.4em;
		line-height: 1;
		text-shadow: 3px 3px 4px rgba(0,0,0,.8);
	}
	.about-section-top .__period {
		color: #11B0A9;
	}
	.about-section-top .dictionary {
		text-align: center;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 20px;
		font-weight: bold;
		font-size: 2.2vw;
		letter-spacing: .1em;
		text-shadow: 2px 2px 2px rgba(0,0,0,.8);
	}
		.about-section-top .dictionary .__caption {
			font-size: 1.2em;
		}

@media (min-width: 1400px) {
	.about-section-top .dictionary {
		font-size: 1.6em;
	}
}

@media (min-width: 901px) and (max-height: 850px) {
	.about-section-top .dictionary {
		font-size: 1em;
	}
}

.about-section-left {
	background: #231F20;
	position: absolute;
	left: 0;
	right: 50%;
	top: 50%;
	bottom: 0;
}
	.about-slideshow {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	.about-slideshow .__slide {
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	.about-pager {
		color: #fff;
		position: absolute;
		bottom: 1.5vw;
		right: 2vw;
		font-size: 1.6vw;
		z-index: 101;
	}
	.about-pager .fa {
		margin-left: .7vw;
		cursor: pointer;
		opacity: .7;
	}
	.about-pager .fa.cycle-pager-active {
		opacity: 1;
	}
.about-section-right {
	background: #000000;
	position: absolute;
	left: 50%;
	right: 0;
	top: 50%;
	bottom: 0;
	padding-left: 3vw;
	padding-right: 3vw;
	padding-top: 2vw;
}
	.about-section-right .we-listen {
		margin-top: 2em;
		color: #fff;
		font-size: 2em;
		letter-spacing: 0.4vw;
		font-family: "KeepCalm", sans-serif;
	}
	.about-section-right .we-listen .__cube {
		display: inline-block;
		border-top: solid .1em #11B0A9;
	}
	.about-section-right .we-listen .__cube-last-letter {
		letter-spacing: normal;
	}

@media (max-width: 900px) {
	.about-wrapper {
		height: auto;
		max-height: none;
	}
	.about-section-top {
		position: static;
		overflow: hidden;
	}
	.about-section-left {
		display: none;
	}
	.about-section-right {
		position: static;
		overflow: hidden;
	}
	.about-section-top h1 {
		font-size: 15vw;
	}
	.about-section-top .dictionary {
		font-size: 16px;
		position: static;
		margin-top: 50px;
	}
	.about-section-right .we-listen {
		font-size: 30px;
		padding-bottom: 20px;
	}
}

/**
 * Welcome (About Us)
 */
.welcome-container {
	display: table;
	margin-left: auto;
	margin-right: auto;
}
.welcome-container-row {
	display: table-row;
}
.welcome-left {
	display: table-cell;
	vertical-align: top;
	padding-top: 20px;
	padding-right: 15px;
}
.welcome-left img {
	max-width: 700px;
	width: 100%;
}
.welcome-right {
	display: table-cell;
	vertical-align: top;
	padding-left: 10px;
}
	.welcome-right p {
		margin-top: .7em;
		margin-bottom: .7em;
	}
.welcome-container .bottom-links {
	list-style-type: none;
	text-align: right;
	font-size: .9em;
	right: 0;
	bottom: 4vh;
}
	.welcome-container .bottom-links li {
		margin-top: .5em;
	}
	.welcome-container .bottom-links a {
		font-family: "Oswald", sans-serif;
		font-weight: bold;
		text-transform: uppercase;
		text-decoration: underline;
		color: #000000;
	}

@media (max-width: 1300px) {
	.welcome-container .bottom-links {
		position: static;
		text-align: right;
	}
}

@media (max-width: 900px) {
	.welcome-container,
	.welcome-container-row,
	.welcome-left,
	.welcome-right {
		display: block;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	.welcome-left {
		text-align: center;
	}
	.welcome-right {
		padding-bottom: 50px;
	}
	.welcome-container .bottom-links {
		position: static;
		text-align: center;
	}
}

/**
 * Our Approach
 */
.approach-balloon {
	position: absolute;
	z-index: 101;
	text-transform: uppercase;
	font-weight: bold;
	font-family: "Oswald", sans-serif;
	padding-top: 35px;
	width: 25vw;
	font-size: 1.6vw;
	line-height: 1.7;
}
@media (min-width: 1600px) {
	.approach-balloon {
		width: 400px;
		font-size: 1.4em;
	}
}
.approach-balloon-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
}
.approach-wheel {
	position: relative;
}
.approach-wheel img {
	max-width: 100%;
}
.wheel-background {
	position: absolute;
}
.wheel-trigger {
	position: absolute;
	cursor: pointer;
	z-index: 105;
}
.wheel-trigger-01 {
	left: 43%;
	top: 8%;
	width: 14%;
	height: 17%;
}
.wheel-trigger-02a {
	left: 58%;
	top: 24%;
	width: 9%;
	height: 36%;
}
.wheel-trigger-02b {
	left: 51%;
	top: 59%;
	width: 14%;
	height: 16%;
}
.wheel-trigger-03 {
	left: 35%;
	top: 54%;
	width: 14%;
	height: 21%;
}
.wheel-trigger-04 {
	left: 33%;
	top: 22%;
	width: 10%;
	height: 27%;
}

@media (max-width: 900px) {
	.approach-balloon {
		position: relative;
		font-size: 20px;
		width: 300px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50px;
	}
}

/**
 * Gallery
 */
.flex {
	display: flex;
	flex-grow: 1;
}
.flex-column {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
.flex-row {
	display: flex;
	flex-direction: row;
	flex-grow: 1;
}
.gallery-container {
	width: 95vw;
	margin: 0 auto;
}
	.gallery-slide {
		width: 100%;
		background: #fff;
	}
	.gallery-slide-inner {
		display: flex;
	}
		.gallery-slide .__cell {
			width: 49vw;
			height: 49vw;
			display: flex;
		}
		.gallery-slide .__cell-row {
			width: 49vw;
			height: 49vw;
			background: yellow;
			display: flex;
			flex-direction: row;
		}
		.gallery-slide .__cell-column {
			width: 49vw;
			height: 49vw;
			background: yellow;
			display: flex;
			flex-direction: column;
		}
		.gallery-slide .__img {
			margin: .5vw;
			flex-grow: 1;
			background-size: cover;
			transition: all 0.3s ease;
			background-repeat: no-repeat;
			background-position: center center;
			text-decoration: none;
			transition: all 0.3s ease;
		}
		.gallery-slide .__img:hover {
			filter: grayscale(100%);
		}

.gallery-pager {
	color: #5E6770;
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 20px;
}
.gallery-pager .fa {
	margin-left: 8px;
	cursor: pointer;
	opacity: .7;
}
.gallery-pager .fa.cycle-pager-active {
	opacity: 1;
}

@media (max-width: 900px) {
	.gallery-slide-inner {
		display: block;
	}
	.gallery-slide .__cell {
		width: 95vw;
		height: 95vw;
	}
	.gallery-pager {
		position: static;
		display: block;
		text-align: center;
		margin-top: 40px;
		margin-bottom: -20px;
	}
}

/*------------------------------------*\
	MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
	WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
	PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
