
/* ------------------------------

Styles

01. Normalise
03. Header + Menu + Footer
04. Website Styles
05. Mobile, below 767 width

------------------------------ */

/* 01. Normalise */

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	font-weight:normal;
	vertical-align:baseline;
}

/* Animation timing for sliding mobile nav, 0.5 secs */

.wrapper, a, a img, .header-reveal, .nav, .nav-off, .line-nav-1, .line-nav-2, .line-nav-3, .line-nav-4, .logo, .switch-my-colour, .header, .product-over-content, .previous a span, .next a span {
	-o-transition:.5s;
	-ms-transition:.5s;
	-moz-transition:.5s;
	-webkit-transition:.5s;
	transition:.5s;
}
.parallaxing {
	/*-o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	transition:.3s;*/
}
body {
	width:100%;
	font-family:'poppinslight', Arial, Helvetica, sans-serif;
	font-weight:normal;
	color:#000;
	background-color:#fff;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-webkit-tap-highlight-color: rgba(0,0,0,0); /* Stops touchscreen devices buttons flashing grey when pressed */
}
html {
	overflow-x:hidden;
}
.hide404 {
	color:#fff;
	background-color:#cc0000;
}
.display404 {
	color:#fff;
	background-color:#333;
}
a {
	text-decoration:none;
	outline:0; /* Removes dotted border on buttons */
}
img,
img a {
	font-size:14px;
	color:#999;
	border:0;
	margin:0;
	margin-bottom:-7px;
	padding:0;
	width:100%;
	height:auto;
}

/* 03. Header + Menu + Footer */

.waypoint {
	width:200px;
	height:1px;
	margin-top:-99px;
	position:absolute;
}
.header {
	position:fixed;
	width:auto;
	top:0;
	left:0;
	right:0;
	margin:0 auto;
	line-height:40px;
	z-index:2;
	background-color:rgba(0,0,0,0.8);
}
.header.sticky {
	top:0;
	height:170px;
}
.header.stuck {
	top:0;
	height:100px;
}
.logo {
	font-family:'poppinsregular', Arial, Helvetica, sans-serif;
	font-weight:normal;
	z-index:3;
	position:absolute;
}
.logo a {
	display:block;
	width:100%;
	height:100%;
}
.logo.sticky {
	width:341px;
	height:270px;
}
.logo.stuck {
	width:201px;
	height:100px;
}
.nav {
	z-index:2;
	display:inline-block;
	float:right;
}
.nav.sticky {
	padding-top:65px;
	padding-right:50px;
}
.nav.stuck {
	padding-top:30px;
	padding-right:30px;
}
ul.nav-buttons {
	list-style:none;
}
ul.nav-buttons li {
	text-align:left;
	display:inline-block;
}
ul.nav-buttons li a {
	font-family:'poppinsbold', Arial, Helvetica, sans-serif;
	color:#fff;
	font-size:16px;
	letter-spacing:0.5px;
	text-transform:uppercase;
	display:inline-block;
	text-decoration:none;
	line-height:40px;
	padding-left:30px;
	padding-right:10px;
}
ul.nav-buttons li a:hover {
	color:#72cddc;
}
ul.nav-buttons li a.on,
ul.nav-buttons li a.current-menu-item {
	color:#72cddc;
}

/* Hover Nav */
ul.nav-buttons li ul {
	position:absolute;
	width:160px;
	opacity:0.5;
	display:none;
}
ul.nav-buttons li:hover ul {
	opacity:1;
	display:block;
}
ul.nav-buttons li ul li {
	display:block;
	background-color:#f2f3f3;
}
ul.nav-buttons li ul li a {
	display:block;
	background-color:#f2f3f3;
}
ul.nav-buttons li ul li a:hover,
ul.nav-buttons li ul li.current a {
	display:block;
	background-color:#fbfbfb;
}

/* 04. Website Styles */

.wrapper {
	width:100%;
	height:auto;
	position:relative;
	z-index:1;
	background-color:#fff;
}
.wrapper-padding {
	padding-top:60px;
	padding-left:20px;
	padding-right:20px;
}
.max-width {
	max-width:1200px;
	margin:0 auto;
}
.content {
	position:relative;
	width:100%;
	height:auto;
}
.height-full {
	position:relative;
	width:100%;
	height:100vh;
	background-color:#eef9ff;
}
.height-half {
	position:relative;
	width:100%;
	height:350px;
	background-color:#eef9ff;
}
.height-auto {
	position:relative;
	width:100%;
	height:auto;
}
.mid {
	display:flex;
	justify-content:center; /* left or right */
	align-items:center;
	width:100%;
	height:100vh;
}
.table {
	display:table;
	width:100%;
	height:100%;
}
.table-cell {
	display:table-cell;
	width:100%;
	height:100%;
	vertical-align:middle;
	text-align:center;
}
strong {
	font-family:'poppinssemibold', Arial, Helvetica, sans-serif;
	font-weight:normal;
}
.bg-home {
	background-image: url(../images/desktop/bg-home.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-inner {
	background-image: url(../images/desktop/bg-inner.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-title {
	background-image: url(../images/desktop/bg-title.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.bg-title2 {
	background-image: url(../images/desktop/bg-title2.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.cover {
	background-size: cover!important;
	-webkit-background-size: cover!important;
	-o-background-size: cover!important;
	-moz-background-size: cover!important;
	background-position:center center;
}
.parallax,
.background {
	background-size: cover!important;
	-webkit-background-size: cover!important;
	-o-background-size: cover!important;
	-moz-background-size: cover!important;
	background-position:center bottom;
}
.content-padding {
	padding:90px;
}
.product {
	float:left;
	width:33.3333%;
}
.product-over {
	display:block;
	position:relative;
	overflow:hidden;
	margin-bottom:-8px;
}
.product-over-content {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
}
.arrow-right {
	margin:0 auto;
	width:87px;
	padding-top:20px;
}
.product-over-content.active:hover {
	background-color:rgba(0,0,0,0.8);
}

.product-over-content.active .product-title-active {
	color:#fff;
	opacity:0;
}
.product-over-content.active:hover .product-title-active {
	color:#fff;
	opacity:1;
}
.backtotop {
	padding-top:120px;
	width:100%;
	text-align:center;
}
.backtotop a {
	width:56px;
	height:56px;
	display:block;
	text-align:center;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	margin:0 auto;
	background-image: url(../images/icon-top.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:50px;
	-moz-background-size:50px;
	border: 1px solid #1891aa;
}
.mark-moran {
	padding-top:80px;
	max-width:260px;
	width:80%;
	margin:0 auto;
}

.img-main {
	margin:0 auto;
	max-width:1100px;
}
.visit {
	text-align:center;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
}
.visit a {
	font-family:'poppinssemibold', Arial, Helvetica, sans-serif;
	font-weight:normal;
	color:#000;
	text-transform:uppercase;
	font-size:15px;
	letter-spacing:0.5px;
	background-image: url(../images/arrow-right.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size:32px;
	-moz-background-size:32px;
	padding-top:4px;
	padding-right:50px;
	line-height:20px;
	display:inline-block;
}
.visit a:hover {
	padding-right:60px;
}
.next-prev {
	background-color:#fff;
	padding-bottom:60px;
}
.next-prev-padding {
	padding-left:40px;
	padding-right:40px;
}
.previous {
	line-height:50px;
	float:left;
	z-index:2;
	position:relative;
}
.previous a {
	font-family:'poppinssemibold', Arial, Helvetica, sans-serif;
	font-weight:normal;
	color:#000;
	text-transform:uppercase;
	font-size:18px;
	line-height:52px;
	display:inline-block;
}
.previous a:hover span {
	margin-right:30px;
}
.previous a span {
	width:50px;
	height:50px;
	float:left;
	display:inline-block;
	margin-right:20px;
	background-image: url(../images/icon-left.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:50px;
	-moz-background-size:50px;
	border: 1px solid #1891aa;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.next {
	line-height:50px;
	float:right;
	z-index:2;
	position:relative;
}
.next a {
	font-family:'poppinssemibold', Arial, Helvetica, sans-serif;
	font-weight:normal;
	display:inline-block;
	color:#000;
	text-transform:uppercase;
	font-size:18px;
	line-height:52px;
}
.next a:hover span {
	margin-left:30px;
}
.next a span {
	float:right;
	width:50px;
	height:50px;
	display:inline-block;
	margin-left:20px;
	background-image: url(../images/icon-right.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:50px;
	-moz-background-size:50px;
	border: 1px solid #1891aa;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.logo-mid {
	position:absolute;
	text-align:center;
	display:block;
	left:0;
	right:0;
	z-index:1;
}
.mark-moran-mid img {
	width:220px;
	margin:0;
	text-align:center;
}

/* Footer */

.footer {
	font-size:14px;
	line-height:22px;
	background-color:#f2f3f3;
}
.footer .logo {
	padding-left:0;
}


@media screen and (min-width: 768px) and (max-width: 1023px) {

.nav.sticky {
	padding-top:65px;
	padding-right:30px;
}
.nav.stuck {
	padding-top:30px;
	padding-right:20px;
}
ul.nav-buttons li a {
	padding-left:20px;
}
.content-padding {
	padding:70px;
}

.next-prev {
	padding-bottom:50px;
}
.next-prev-padding {
	padding-left:30px;
	padding-right:30px;
}
.previous {
	line-height:50px;
	float:left;
}
.previous a {
	font-size:16px;
	line-height:45px;
	display:inline-block;
}
.previous a span {
	width:40px;
	height:40px;
	margin-right:20px;
	background-size:40px;
	-moz-background-size:40px;
}
.next {
	line-height:50px;
	float:right;
}
.next a {
	font-size:16px;
	line-height:45px;
}
.next a span {
	width:40px;
	height:40px;
	margin-left:20px;
	background-size:40px;
	-moz-background-size:40px;
}
.logo-mid {
	position:absolute;
	text-align:center;
	display:block;
	left:0;
	right:0;
}
.mark-moran-mid img {
	width:170px;
	margin:0;
	text-align:center;
}

}


/* 05. Mobile, below 767 width */
@media screen and (min-width: 0px) and (max-width: 767px) {

.waypoint {
	width:200px;
	height:1px;
	margin-top:-59px;
	position:absolute;
}

.header.sticky {
	top:0;
	height:60px;
}
.header.stuck {
	top:0;
	height:60px;
}
.logo.sticky {
	width:120px;
	height:60px;
}
.logo.stuck {
	width:120px;
	height:60px;
}
.nav {
	z-index:2;
	display:inline-block;
	float:right;
}
.nav.sticky {
	padding-top:0;
	padding-right:10px;
}
.nav.stuck {
	padding-top:0;
	padding-right:10px;
}


.wrapper {
	opacity:1;
}
.wrapper-push {
	opacity:0.2;
}
.navclosed {
	color:transparent;
	display:block;
	width:60px;
	height:60px;
	position:absolute;
	top:0;
	z-index:5;
	cursor:pointer;
	right:4px;
}
.navclosed a {
	color:transparent;
	display:block;
	width:100%;
	height:100%;
}
.line-nav-1,
.line-nav-2,
.line-nav-3,
.line-nav-4 {
	width:32px;
	height:2px;
	position:absolute;
	background-color:#fff;
}
.line-nav-1 {
	top:20px;
	left:14px;
}
.line-nav-4 {
	top:38px;
	left:14px;
}
.line-nav-2,
.line-nav-3 {
	top:29px;
	left:14px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
}
.line-nav-2-open {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.line-nav-3-open {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.line-nav-1-open,
.line-nav-4-open {
	opacity:0;
}
.nav-off {
	top:0;
	bottom:0;
	right:-50%;
	width:200px;
	position:fixed;
	opacity:0;
	background-color:rgba(0,0,0,0.8);
}
.nav-on {
	top:0;
	bottom:0;
	right:0;
	width:200px;
	position:fixed;
	opacity:1;
	background-color:rgba(0,0,0,0.8);
}
.nav {
	position:absolute;
	width:auto;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
.nav-center + .wrapper {
	padding-top:60px;
}
ul.nav-buttons {
	padding:10px;
	margin-top:60px;
	overflow-x:hidden;
	overflow-y:auto;
}
ul.nav-buttons li {
	display:block;
}
ul.nav-buttons li a {
	display:block;
	text-decoration:none;
	line-height:40px;
}
/* Hover Nav */
ul.nav-buttons li ul {
	position:relative;
	width:auto;
	opacity:1;
	display:block;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #cdcfd1;
}
.content-padding {
	padding:30px;
}
.product {
	float:left;
	width:50%;
}
.arrow-right {
	margin:0 auto;
	width:50px;
	padding-top:10px;
}
.backtotop {
	padding-top:40px;
}
.mark-moran {
	padding-top:40px;
}

.next-prev {
	padding-bottom:40px;
}
.next-prev-padding {
	padding-left:20px;
	padding-right:20px;
}
.previous {
	line-height:40px;
	float:left;
}
.previous a {
	font-size:13px;
	line-height:33px;
	display:inline-block;
}
.previous a span {
	width:30px;
	height:30px;
	margin-right:10px;
	background-size:30px;
	-moz-background-size:30px;
}
.next {
	line-height:40px;
	float:right;
}
.next a {
	font-size:13px;
	line-height:33px;
}
.next a span {
	width:30px;
	height:30px;
	margin-left:10px;
	background-size:30px;
	-moz-background-size:30px;
}
.logo-mid {
	position:relative;
	padding-top:70px;
	text-align:center;
	display:block;
	left:0;
	right:0;
}
.mark-moran-mid img {
	width:150px;
	margin:0;
	text-align:center;
}
.mark-moran {
	padding-top:40px;
	max-width:200px;
	width:80%;
	margin:0 auto;
}
.bg-home {
	background-image: url(../images/mobile/bg-home.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.height-full {
	position:relative;
	width:100%;
	height:100vh;
}

}

@media screen and (min-width: 0px) and (max-width: 414px) {

.next-prev-padding {
	padding-left:10px;
	padding-right:10px;
}

}