/* F O N T S */

@import url('https://fonts.googleapis.com/css?family=Barlow:300,400,600,700,900&display=swap');

/* G L O B A L   S T Y L E S */

body {
	font-family: 'Barlow', sans-serif;
}
*:focus{outline: none;}
a{text-decoration: none;color: inherit;}
ul,ol{list-style: none; margin: 0; padding: 0;}
.makeBg {height: 100%;}
.row{max-width: 90em;}
.tal {text-align: left;}
.tar {text-align: right;}
.tac{text-align: center;}
.mobileNav {display: none;}
.deets i {display: none;}

/* C O L O U R S */

/*

#414141
#ed1b24

*/

/* B O D Y   S L I D E R */

.bodySlider {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
}
.bodySlider:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #ffffff;
	opacity: 0.7;
	z-index: 1;
}
.bodySlider .slide {
	background-position: center center;
	-webkit-background-size: cover;
	background-size: cover;
	height: 100vh;
}
.slideOne {background-image: url(../images/splash1.jpg);}
.slideTwo {background-image: url(../images/splash2.jpg);}
.slideThree {background-image: url(../images/splash3.jpg);}

/* M A S K   O N   N A V   H O V E R */

.siteBlur {
	top: 0;
	right: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #222222;
	opacity: 0;
	z-index: 3;
	transition: ease 0.4s;
	display: block;
	pointer-events: none;
}

/* H E A D E R */

.topBar {
	padding: 25px;
	background-color: #ffffff;
}
.topBar a, .topArea a {
	font-weight: 700;
	color: #ed1b24;
	display: inline-block;
}
.deets a:after, .topArea a:after {
	content: '|';	
    padding: 0px 10px 0px 15px;
}
.deets a:last-of-type:after,
.topBar a:last-of-type:after {
    display: none;
}
.topBar p {
	margin: 0;
	padding: 0;
}
.logo img {
	width: 300px;
}

/* N A V */

.navSplash {
	position: relative;
}
nav {
	position: relative;
	background-color: #414141;
	z-index: 100;
}
nav ul li {
	display: inline-block;
	padding: 0px 25px;
    position: relative;
    z-index: 1;
}
nav ul li a {
	position: relative;
	z-index: 1;
	display: block;
	line-height: 40px;
	color: #ffffff;
	font-weight: 600;
	font-size: 17px;
	letter-spacing: 0.5px;
}
nav ul li > a:after {
	content: '\f078';
	color: #ed1b24;
	font-size: 14px;
	margin-left: 6px;
	text-align: center;
	font-family: 'Font Awesome 5 Pro';
	font-weight: 600;
}
nav ul li > a:only-child:after { content: ''; } 
.subMenu {
	position: absolute;
	left: 0;
	text-align: left;
	display: none;
	padding: 5px 0px;
}
.subMenu::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #ed1b24;
	opacity: 0.5;
	z-index: -1;
}
.subMenu li {
	display: block;
	margin: 0;
	text-align: left;
	white-space: nowrap;
	clear: both;
	line-height: 20px;
	transition: ease 0.4s;
}
.subMenu li:hover:before {
    opacity: 0;
}
.subMenu li a {
    line-height: 40px;
}
nav ul li:hover .subMenu, nav ul li .subMenu .active {
    display: block;
}

/* S P L A S H */

.splashSlider {
	position: relative;
	z-index: 1;
}
.splashSlider .slide {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	position: relative!important;
	height: 800px;
	z-index: 1;
}
/* .splashSlider .slide:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(255,255,255);
	background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	z-index: -1;
} */
.splashBlurb {
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #414141;
	padding: 30px 40px;
}
.splashBlurb h1,
.splashBlurb h2 {
	color: #ffffff;
	margin: 0;
	padding: 0;
	font-size: 32px;
}
.splashBlurb h1 span,
.splashBlurb h2 span {
	color: #ed1b24;
}
.splashBlurb p {
	margin: 0;
	padding: 0;
	color: #ffffff;
	font-size: 18px;
}
.splashSlider .slick-next,
.splashSlider .slick-prev {
	bottom: 40px;
	margin-right: 30px;
}
.splashSlider .slick-next:before,
.splashSlider .slick-prev:before {
	color: #ffffff;
}

/* O T H E R   S P L A S H */

.otherSplash {
	position: relative;
	z-index: 1;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-position: center center;
	height: 500px;
	width: 100%;
}
.splashServices {background-image: url(../images/services.jpg);}
.splashGallery {background-image: url(../images/gallery.jpg);}
.splashTestimonials {background-image: url(../images/testimonials.jpg);}
.splashContact {background-image: url(../images/contact.jpg);}

/* A B O U T */

.aboutUs .row {
	background-color: #eeeeee;
	padding: 100px 30px;
}
.aboutUs .makeBg {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	height: 700px;
	position: relative;
	z-index: 1;
}
.aboutBlurb {
	padding-left: 40px;
}
.aboutUs h2 {
	font-size: 30px;
	line-height: 30px;
	color: #414141;
	position: relative;
	z-index: 1;
	padding-left: 20px;
}
.aboutUs h2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.aboutUs p:first-of-type {
	font-weight: 700;
	margin-top: 50px;
}
.aboutFacts {
	margin-top: 40px;
	padding: 0!important;
}
.counter {
	margin: 0;
	padding: 0;
	color: #ed1b24;
	font-size: 40px;
	font-weight: 700;
}
.counter:after {
	content: '+';
	padding-left: 5px;
}
.aboutFacts h3 {
	margin: 0;
	padding: 0;
	font-size: 40px;
	font-weight: 700;
	display: block;
	color: #414141;
	font-size: 20px;
}

/* W H Y   B I T S */

.whyBits .row {
	background-color: #414141;
	padding: 50px 30px;
}
.whyBits h2 {
	margin: 0;
	padding: 0;
	color: #ed1b24;
	margin-bottom: 15px;
}
.whyBits p {
	color: #ffffff;
	margin: 0;
	padding: 0;
}
.whyBits i {
	color: #ffffff;
	font-size: 20px;
	margin-bottom: 10px;
}
.whyInner {
	border: 1px solid #ffffff;
	padding: 30px;
}
.whyBits .columns:first-of-type .whyInner {
	background-color: rgba(0,0,0,0.3);
}

/* H O M E   C O N T E N T */

.homeContent .row {
	background-color: #eeeeee;
	padding: 100px 2.8125rem!important;
}
.homeContent .row:first-of-type {padding-bottom: 0px!important;}
.homeContent .row:nth-child(2) {padding-top: 0px!important;}
.homeInner {
	padding: 0px 50px;
}
.homeContent h2 {
	font-size: 30px;
	line-height: 30px;
	color: #414141;
	position: relative;
	z-index: 1;
	padding-right: 20px;
}
.homeContent h2:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.homeContent h3 {
	font-size: 30px;
	line-height: 30px;
	color: #414141;
	position: relative;
	z-index: 1;
	padding-left: 20px;
}
.homeContent h3:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.homeContent .makeBg {
    height: 550px;
    background-size: cover;
    -webkit-background-size: cover;
    background-position: center center;
    position: relative;
    z-index: 1;	
}

/* O T H E R   C O N T E N T */

.otherContent .row {
	background-color: #eeeeee;
}
.otherFirstRow {
	padding: 100px 30px 100px 30px;
}
.otherSecondRow {
	padding: 0px 30px 100px 30px;
}
.otherContent h2 {
	font-size: 30px;
	line-height: 30px;
	color: #414141;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 1;
	padding-left: 20px;
}
.otherContent h2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.otherContent h3 {
	color: #ed1b24;
	font-size: 24px;
}
.otherContent h4 {
	color: #414141;
	font-size: 24px;
}
.otherContent p {
	margin: 0;
	padding: 0;
	margin-top: 10px;
}
.serviceExamples {
	padding-left: 30px;
}
.serviceExamples .makeBg {	
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	position: relative!important;
	height: 210px;
	z-index: 1;
}
.serviceExamples h4 {
	margin: 0;
	padding: 0;
	padding: 20px 0px;
	color: #414141;
	font-size: 18px;
}
.otherContent ul li {
	background-color: rgba(0,0,0,0.05);
	margin-bottom: 15px;
	line-height: 40px;
	border-left: 4px solid #414141;
	padding-left: 15px;
	font-weight: 600;
	color: rgba(0,0,0,0.5);
}

/* G A L L E R Y   P A G E */

.gallery{
	position: relative;
	z-index: 1;
}
.gallery .columns a{
	width: 100%;
	height: 100%;
	position: relative;
}
.gallery .columns img{
	margin: 0;
	width: 100%!important;
	height: 100%;
	opacity: 0;
}
.gallery .columns{
	overflow: hidden;
	position: relative;
	background-size: cover;
	width: calc(25% - 24px);
	margin: 12px;
	background-position: center center;
	overflow: hidden;
	float: left;
	z-index: 0;
	-webkit-transition: all .15s ease-out;
	-moz-transition: all .15s ease-out;
	transition: all .15s ease-out;
}
.gallery .columns:hover {
	-webkit-transform: scale(1.015);
	-ms-transform: scale(1.015);
	-o-transform: scale(1.015);
	transform: scale(1.015);
}
.gallery .columns:nth-child(14n + 7),.gallery .columns:nth-child(14n + 8){
	width: calc(50% - 24px);
}

/* T E S T I M O N I A L S */

blockquote {
    margin: 0;
    padding: 0;
    background-color: rgba(0,0,0,0.05);
    padding: 20px 30px;
    border-radius: 5px;
}
blockquote i {
    color: #ed1b24;
}
blockquote p {
    line-height: 20px;
}
blockquote h5 {
    font-size: 18px;
	color: #414141;
	margin: 0;
	padding: 0;
	margin-top: 20px;
}
blockquote h5:before {
    content: '-';
    padding-right: 10px;
}
.masonry .columns {
    margin-bottom: 30px;
}

/* E N Q U I R Y   F O R M */

.form-box .columns {
	padding: 0!important;
}
.earl-form .columns input {
	width: 100%;
}
.earl-form input[type='text'], .earl-form select{
	letter-spacing: 1px;
	border-radius: 0px;
	height: 30px;
	font-size: 16px;
	padding-left: 12.5px;
	box-shadow: 0px;
	outline: 0;
	font-weight: 700;
	margin-bottom: 20px;
	border: none;
}
::placeholder {
	opacity: 0.4;
  }
.earl-form .columns textarea {
	letter-spacing: 1px;
	font-size: 16px;
	width: 100%;
	resize: none;
	padding-top: 15px;
	padding-left: 12.5px;
	font-weight: 700;
	height: 250px;
	border: none;
	border-radius: 0px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-ms-border-radius: 0px;
	-o-border-radius: 0px;
}
#formName, #formContact {
	line-height: 20px;
}
.earl-form button {
	float: right;
	margin-top: 10px;
	background-color: transparent;
	padding: 10px;
	font-size: 14px;
	cursor: pointer;
	letter-spacing: 2px;
	font-weight: 700;
	background-color: #414141;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-ms-border-radius: 0px;
	-o-border-radius: 0px;
	color: #ffffff;
}
.enquiryImg .makeBg {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	position: relative!important;
	height: 400px;
	z-index: 1;
}

/* A C C R E D S */

.accreds .row {
	padding: 50px 30px;
	background-color: #414141;
}
.accreds h2 {
	font-size: 30px;
	line-height: 30px;
	color: #ffffff;
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	padding-left: 20px;
}
.accreds h2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.accreds img {
	width: 150px;
	margin-left: 20px;
}

/* F O O T E R */

footer .row {
	padding: 100px 30px;
	background-color: #eeeeee;
}
.footerDeets {
	background-color: #414141;
	padding: 75px 40px;
}
.footerDeets h2 {
	font-size: 30px;
	line-height: 30px;
	color: #ffffff;
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	padding-left: 20px;
}
.footerDeets h2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.footerDeets h3 {
	color: #ed1b24;
	margin: 0;
	padding: 0;
}
.footerDeets p span {
	color: #ffffff;
	margin: 0;
	padding: 0;
	padding: 35px 0px 20px 0px;
	display: block;
}
.footerDeets a {
	color: #ffffff;
	font-weight: 600;
}
.map {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
	overflow: hidden;
	background-color: #ed1b24;
}
.map iframe {
    position: absolute;
    width: 100%;
    height: calc(100% + 300px);
    z-index: -1;
	left: 0;
	opacity: 0.9;
    top: -150px;
}
.footerDeets address p {
	font-style: normal;
	padding: 0;
	margin: 0;
	color: #ffffff;
	font-weight: 600;
}

/* H O M E   G A L L E R Y */

.homeGallery .firstRow {
	background-color: #eeeeee;
	padding-left: 30px;
	padding-right: 30px;
}
.homeGallery .secondRow {
	background-color: #eeeeee;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 100px;
}
.homeGallery h2 {
	font-size: 30px;
	line-height: 30px;
	color: #414141;
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	padding-left: 20px;
}
.homeGallery h2:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: #ed1b24;
	z-index: -1;
}
.homeGallery p {
	padding: 0;
	margin: 0;
	margin-top: 40px;	
	margin-bottom: 50px;	
}

/* C O P Y R I G H T */

.newWorld .row {
	background-color: #414141;
	padding: 10px 30px;
}
.newWorld a {
	color: #ffffff;
}

/* R E S P O N S I V E */

@media screen and (max-width: 1023px) {

.whyBits .row {padding-bottom: 20px;}
.whyBits .columns {margin-bottom: 30px;}
.homeGallery .secondRow {padding-bottom: 70px;}
.homeGallery .secondRow
.columns img {margin-bottom: 30px;}
.topArea {display: none;}
.serviceImg {display: none;}
.enquiryImg .makeBg {height: 500px;}
.otherSplash {height: 400px;}

}

/* 8 1 3 */

@media screen and (max-width: 813px) {

.deets a:after {display: none;}
.mobileNav i {display: inline-block;}
.deets i {
	display: inline-block;
	background-color: #ed1b24;
	color: #ffffff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 20px;
	text-align: center;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}
.deets span {display: none;}
.topBar p {display: none;}
.logo {text-align: left;}
.deets {text-align: right;}
.mobileNav {
	display: inline-block;
	padding-left: 30px;
}
.mobileNav i {
	background-color: #414141;
	color: #ffffff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 20px;
	text-align: center;
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}
nav {text-align: right!important;}
nav ul {
	display: none;
	padding: 20px 0px;
}
nav ul li {
	display: block;
	padding-right: 35px;
}
.subMenu {
    position: relative;
    right: 0;
    padding: 0;
	text-align: right;
}
.subMenu:before {display: none;}
.subMenu li {
    display: none;
    text-align: right;
    padding: 0;
    line-height: 35px;
    transition:none;
    -webkit-transition:none;
    -moz-transition:none;
    -ms-transition:none;
    -o-transition:none;
}
.splashBlurb h1,
.splashBlurb h2 {
	line-height: 36px;
	font-weight: 600;
}
.splashBlurb p {display: none;}
.splashSlider .slide {height: 600px;}
.aboutUs .makeBg {display: none;}
.aboutBlurb {padding-left: .9375rem;}
.homeInner {padding: 0;}
.homeContent .makeBg {margin: 20px 0px;}
.accreds img {margin-bottom: 20px;}
.newWorld .columns {
	text-align: center;
	padding: 5px 0px;
}

}

/* 6 4 0 */

@media screen and (max-width: 640px) {

.accreds .columns:first-of-type {display: none;}
.accreds img {
	width: 49%;
	margin-left: 0;
	padding: 10px;
}
.map {height: 400px;}
.serviceNoPad {padding: 0!important;}
.serviceExamples {margin-top: 20px;}
.serviceImg {display: block;}
.gallery .columns {width: calc(50% - 24px);}
.enquiryImg {margin-top: 30px;}

}

