/* ======================================================================================================================================================================================
   HTML 
   ====================================================================================================================================================================================== */
@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-light-100.ttf');
	font-style:normal;
	font-weight:100;
}

@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-light-200.ttf');
	font-style:normal;
	font-weight:200;
}

@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-light-300.ttf');
	font-style:normal;
	font-weight:300;
}

@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-regular.ttf');
	font-style:normal;
	font-weight:400;
}

@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-medium.ttf');
	font-style:normal;
	font-weight:500;
}

@font-face
{
	font-family:MavenPro;
	src:url('../fonts/maven-pro-bold.ttf');
	font-style:normal;
	font-weight:600;
}

html, body, input, select, textarea
{
	font-family:MavenPro;
	font-style:normal;
 	font-weight:300;
	font-size:18px;
	line-height:1.5;
	text-align:left;
	color:#6B6B6B;
}

html
{
	height:100%;
}

body
{
	min-height:100%;
	height:auto;
	position:relative;
}

html, body, table, form, tr, th, td, h1, h2, h3, h4, h5, h6
{
	padding:0px;
	margin:0px;
	margin-left:auto;
	margin-right:auto;
	border-spacing:0;
	border-collapse:collapse;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}

ol, ul, li
{
	/*padding:0px;*/
	margin:0px;
	margin-left:auto;
	margin-right:auto;
	border-spacing:0;
	border-collapse:collapse;
}

p
{
	margin-top:0;
	margin-bottom:20px;
}

div, span
{
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;	
	cursor:auto;
	margin-left:auto;
	margin-right:auto;
}

blockquote
{
	font-family:Georgia,serif;
    width:70%;
    position:relative;
    font-style:italic;
    padding-left:12px;
}

blockquote:before
{
    display:block;
    padding-right:12px;
    content:"\201C";
    font-size:80px;
    position:absolute;
    left:-45px;
    top:-30px;
    opacity:0.2;
}

label
{
	cursor:default;
}

hr
{
	border:none;
	border-top:1px solid #EEEEEE;
}

h1, h1 a:link, h1 a:visited
{
	font-size:50px;
	color:#1F343C;
	font-weight:500;
	line-height:1;
	text-transform:uppercase;
}

h2, h2 a:link, h2 a:visited
{
	font-size:32px;
	color:#1F343C;
	font-weight:300;
	line-height:1;
	text-transform:uppercase;
}

h3, h3 a:link, h3 a:visited
{
	font-size:30px;
	color:#1F343C;
	font-weight:600;
	line-height:1;
}

h4, h4 a:link, h4 a:visited
{
	font-size:18px;
	color:#F05223;
	font-weight:500;
}

h5, h5 a:link, h5 a:visited		/* Modal Headings */
{
	font-size:30px;
	line-height:1;
	color:#FFFFFF;
	font-weight:600;
	margin-bottom:10px;
}

h6, h6 a:link, h6 a:visited		/* Cart Item Headings */
{
	font-size:16px;
	line-height:1.5;
	color:#505050;
	font-weight:700;
	display:inline-block;
}

img
{
	max-width:100%;
	height:auto;
	margin-left:auto;
	margin-right:auto;
    border:none;
	padding:0;
	vertical-align:middle;
	/*display:block;*/
}
/* ======================================================================================================================================================================================
   Input 
   ====================================================================================================================================================================================== */
input
{
	width:100%;
	padding:10px;
	margin:5px 0;
	font-size:85%;
	background-color:#FFFFFF;
	border:solid 2px #F05223;
	box-sizing:border-box;	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}

input:focus, textarea:focus
{
	outline:0;
	background-color:#FAFAFA;
}

input[type="checkbox"],input[type="radio"]
{
	width:15px;
	height:auto;
	font-size:100%;
	margin:5px 0 0 0;
	/*float:right;*/
}

/*input[type=radio],input[type=checkbox]
{
    display:none;
}

input[type=radio]+label:before
{
	content:"";  
	width:14px;  
	height:14px;
	font-size:40px;
    line-height:0.5; 
	display:inline-block;  
	vertical-align:middle;
	margin-right:6px;  
	border:1px solid #EEEEEE;
	border-radius:6px; 
}

input[type=checkbox]+label:before
{
	content:"";  
	width:14px;  
	height:14px;
    line-height:1.5;  
	display:inline-block;  
	vertical-align:middle;
	margin-right:6px; 
	border:1px solid #EEEEEE;
}

input[type=radio]:checked+label:before
{
	content:"\2022";
	text-align:center;
	background-color:#FAFAFA; 
}

input[type=checkbox]:checked+label:before
{
 	content:"\2714";
	text-align:center;
	background-color:#FAFAFA;
}*/

input[type="button"],input[type="submit"],input[type="reset"]
{
	width:auto;
	font-size:85%;
	padding:10px;
	margin:5px 0;
	cursor:pointer;
	text-align:center;
	float:right;
	-webkit-appearance:none;
	color:#FFFFFF;
/* 	border:none; */
	background-image:url("../images/button.png");
}

input[type="button"]:hover,input[type="submit"]:hover,input[type="reset"]:hover
{
	background:none;
	background-color:#1F343C;
	border:solid 2px #F05223;
}

select
{
	width:100%;
	height:36px;
	margin:5px 0;
	background-color:#FFFFFF;
	border:solid 2px #F05223;
	font-size:85%;
}

textarea
{
	width:100% !important;
	padding:10px;
	margin:5px 0;
	background-color:#FFFFFF;
	border:solid 2px #F05223;
	font-size:85%;
	vertical-align:top;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}

/* Label Transition */
.labelcontainer
{
	width:100%;
	position:relative;
}

.labelcontainer input
{
	transition:200ms ease;
	padding-left:80px;
}

.labelcontainer label
{
    position:absolute;
    display:flex;
    font-size:85%;
    color:#CCCCCC;
    border:none !important;	/* so the error class doesn't add a border to the label */
    top:0;
    left:10px;
    bottom:0;
    height:inherit;
    align-items:center;
    cursor:text;
    transition:200ms ease;
}

/*.labelcontainer.active input
{
	padding-left:80px;
}

.labelcontainer.active label
{
	opacity:.5;
}*/

/* Fix placeholder - only required with certain fonts */
input::placeholder, textarea::placeholder
{
	color:#CCCCCC;
	padding-top:1px;
	border:none !important;	/* so the error class doesn't add a border to the label */
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder
{
	color:#CCCCCC;
	padding-top:1px;
}
/* ======================================================================================================================================================================================
   Core
   ====================================================================================================================================================================================== */
.logo
{
	width:160px;
	transition:200ms;
}

.logosmall
{
	width:100px;
}

.topbar
{
	max-width:1280px;
	height:47px;
	padding:10px 1%;
	overflow:auto;
}

.top
{
	width:100%;
	background-color:#FFFFFF;
}

.header
{
	max-width:1280px;
	padding:1% 2%;
}

.wrapper
{
	width:100%;
}

.container
{
	max-width:1280px;
	padding:2%;
}

.main
{
	width:70%;
	display:inline-block;
	vertical-align:top;
}

.mainfull
{
	width:100%;
	display:inline-block;
}

.side
{
	width:26%;
	display:inline-block;
	vertical-align:top;
	float:right;
}

.contactform
{
	width:50%;
	display:inline-block;
	vertical-align:top;
	float:right;
}

.contactdetails
{
	width:40%;
	display:inline-block;
	vertical-align:top;
/* 	float:right; */
}

.bottom
{
	width:100%;
	background:#EFF1F2;
}

.footer
{
	max-width:1280px;
	padding:2%;
	overflow:auto;
}

.modal
{
	width:380px;
	max-height:640px;
	padding:18px;
	overflow:auto;
	overflow-x:hidden;
	-webkit-overflow-scrolling:touch;
}

.modalwide
{
	width:600px !important;
}

.social
{
	height:40px;
	margin:1%;
}

.scrollpage
{
	width:35px;
	height:35px;
	display:none;
	position:fixed;
	bottom:20px;
	right:20px;
	cursor:pointer;
}

.messageadmin
{
	width:100%; 
	padding:0.5%; 
	background-color:#FFFFFF; 
	text-align:center; 
	border-bottom:1px solid #CCCCCC;
}

.report
{
	display:none;
	word-wrap:break-word; 
	overflow:hidden;
}

.error, .error::placeholder, .error::-webkit-input-placeholder
{
	color:#ED1848 !important;
	border:2px solid #ED1848;
}

.banner
{
	width:480px;
	text-align:center;
	padding:1%;
}

/* orbit */
#featured
{
	/*height:900px !important;*/
}

.gallery
{
	width:23%;
	position:relative; 
	text-align:center; 
	margin:1%;
	display:inline-block;
	vertical-align:top;
}

.blog
{
	padding:1.5%; 
	margin:1.5%; 
	background-color:#FFFFFF;
}

.desktophide
{
	display:none !important;
}

.clearfix:after
{ 
   content:" ";
   display:block; 
   height:0; 
   clear:both;
}
/* ======================================================================================================================================================================================
   Grouping 
   ====================================================================================================================================================================================== */
.flex
{
	display:flex;
}

.single
{
	width:100%;
}

.double
{
	width:48%;
	display:inline-block;
	vertical-align:top;	
}

.double:nth-of-type(2n+1) 
{
	margin-left:0;
}

.double:nth-of-type(2n+2) 
{
	margin-right:0;
}

.triple
{
	width:31.3%;
	display:inline-block;
	vertical-align:top;
}

.triple:nth-of-type(3n+1) 
{
	margin-left:0;
}

.triple:nth-of-type(3n+3) 
{
	margin-right:0;
}

.quadriple
{
	width:23.5%; 
	display:inline-block;
	vertical-align:top;	
}

.quadriple:nth-of-type(4n+1) 
{
	margin-left:0;
}

.quadriple:nth-of-type(4n+4) 
{
	margin-right:0;
}

.quintuple
{
	width:19%; 
	display:inline-block;
	vertical-align:top;	
}

.quintuple:nth-of-type(5n+1) 
{
	margin-left:0;
}

.quintuple:nth-of-type(5n+5) 
{
	margin-right:0;
}
/* ======================================================================================================================================================================================
   Line Clamping
   ====================================================================================================================================================================================== */
.lineclampone
{
	overflow:hidden; 
	text-overflow:ellipsis; 
	display:-webkit-box; 
	-webkit-line-clamp:1; 
	-webkit-box-orient:vertical;
	height:28px;	/* fallback - font-size x line-height x line-clamp */
}

.lineclamptwo
{
	overflow:hidden; 
	text-overflow:ellipsis; 
	display:-webkit-box; 
	-webkit-line-clamp:2; 
	-webkit-box-orient:vertical;
	height:56px;	/* fallback - font-size x line-height x line-clamp */
}

.lineclampfive
{
	overflow:hidden; 
	text-overflow:ellipsis; 
	display:-webkit-box; 
	-webkit-line-clamp:5; 
	-webkit-box-orient:vertical;
	height:140px;	/* fallback - font-size x line-height x line-clamp */
}
/* ======================================================================================================================================================================================
   Menu 
   ====================================================================================================================================================================================== */
.menu
{
	padding:2% 0;
	display:inline-block;
	float:right;
}

.menulogo
{
	height:16px; 
	position:relative; 
	top:-1px;
}

.menumobile
{
	display:none;
}

.menuexp
{
	margin:8% 0 12% 0;
	display:block;
}

.menuexpmobile
{
	display:none;
}

.menuiconleft /*sb-toggle-left*/
{
	float:left;
	display:none;
}

.menuiconright /*sb-toggle-right*/
{
	float:right;
	display:none;
	text-align:right;
}

.menubar1, .menubar2, .menubar3, .menubar4, .menubar5, .menubar6
{
    width:28px;
    height:2px;
    background-color:#F05223;
    margin:6px auto;
    transition:200ms;
}

.menuiconchange .menubar1
{
    -webkit-transform:rotate(-45deg) translate(5px,5px) ;
    transform: rotate(45deg) translate(5px,5px) ;
}

.menuiconchange .menubar2
{
	opacity:0;
}

.menuiconchange .menubar3
{
    -webkit-transform:rotate(45deg) translate(6px,-6px) ;
	transform: rotate(-45deg) translate(6px,-6px) ;
}

.menuiconchange .menubar4
{
    -webkit-transform:rotate(-45deg) translate(5px,5px) ;
    transform: rotate(45deg) translate(5px,5px) ;
}

.menubar5
{
	opacity:0;
}

.menuiconchange .menubar6
{
    -webkit-transform:rotate(45deg) translate(6px,-6px) ;
	transform: rotate(-45deg) translate(6px,-6px) ;
}

/* Overwrite Slidebars Background Colours */
#sb-site, .sb-site-container
{
}

.sb-slidebar
{
	background:rgba(255,255,255,0.95) !important;
	border-right:1px solid #EEEEEE;
}

/*.sb-close
{
	display:none;
}*/
/* ======================================================================================================================================================================================
   Links 
   ====================================================================================================================================================================================== */
a:link 
{
	color:#F05223;
	text-decoration:none;
	transition:200ms ease;
}

a:visited
{
	color:#F05223;
}

a:hover 
{
	color:#000000;
}

.smalllink a:link 
{
	color:#1F343C;
	text-decoration:none;
}

.smalllink a:visited
{
	color:#1F343C;
}

.smalllink a:hover 
{
	color:#F05223;
}

.menulink a:link 
{
	font-size:15px;
	color:#1F343C;
	font-weight:500;
	transition:200ms ease;
	text-transform:uppercase;	
}

.menulink a:visited
{
	color:#1F343C;
}

.menulink a:hover 
{
	color:#F05223;	/* update menu.css, menu-mobile.css, menu-exp-mobile.css 'current' colour as well */
}

.menulinkexp a:link 
{
	font-size:14px;
	color:#505050; 
	text-decoration:none;
	/* 	line-height:1; */
}

.menulinkexp a:visited
{
	color:#505050;
}

.menulinkexp a:hover 
{
	color:#F05223;	/* update menu-exp.css 'current' colour as well */
}
/* ======================================================================================================================================================================================
   Miscellaneous
   ====================================================================================================================================================================================== */
.smallfont
{
	font-size:14px;
	font-weight:600;
	color:#1F343C;
	text-transform:uppercase;
}

.textshadow
{		
	text-shadow:0px 1px 5px #1F343C;
}

.imageborder
{
	box-sizing:border-box;	
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	border-style:solid;
	border-width:1px;
	border-color:#EEEEEE;
}

.rounded
{
	border-radius:4px;
}

.shadow
{
	/*h-shadow v-shadow blur spread color inset;*/
	box-shadow:0 0 10px 0 #A0A0A0;
}

.parallax
{
	min-height:450px; 
    background-attachment:fixed;
    background-position:top;
    background-repeat:no-repeat;
	/*background-size:cover;*/
}

.fadeinup
{
	-webkit-animation:fadeinup 1s; /* Safari 4.0 - 8.0 */
	animation:fadeinup 1s;
}

.fadeindown
{
	-webkit-animation:fadeindown 1s; /* Safari 4.0 - 8.0 */
	animation:fadeindown 1s;
}

.hiddenpic
{
	display:none;
}
/* ======================================================================================================================================================================================
   Cart 
   ====================================================================================================================================================================================== */
.cartlogo
{
	height:100%;
	float:left;
	display:none;
}

.cartcontainer
{
	max-width:1280px;
	min-height:542px;
	padding:2%;
	margin-bottom:300px;	/* The bottom needs to be same height as the .bottom class (footer height) */
	overflow:auto;
}

.cartmain
{
	width:83%;
	display:inline-block;
	vertical-align:top;	
	padding-top:1%;
	overflow:visible;
}

.cartside
{
	width:15%;
	display:inline-block;
	vertical-align:top;
	float:left;
	padding-top:1%;
	margin-right:2%;
}

.cartrefine
{
	width:100%; 
	margin:2% 0; 
	float:left;
}

.cartrefinebutton
{
	width:100% !important;
	float:none !important;
	display:none;
}

.cartdisplay
{
	width:400px; 
	max-height:600px; 
	padding:10px; 
	border-top:none !important; 
	position:absolute; 
	top:35px; 
	right:0; 
	overflow:auto;
	overflow-x:hidden;
}

.cartviewoption
{
	width:100%;
	height:50px; 
	text-align:left;
	padding:1%;
	margin-bottom:10px;
	overflow:hidden;
}

.cartgallery
{
	margin:1%;
}

.cartlist
{
	margin:2% auto;
	overflow:hidden;
}

.cartitem
{
	width:100%;
	margin-top:1%;
	float:right;
}

.cartlist p, .cartitem p
{
	margin:0;
}

.cartdetails
{
	width:90vw;
	max-width:1000px;
 	padding:24px;
 	/*height:90vh;*/
	min-height:400px;
	max-height:760px;
	overflow:scroll;
	overflow-x:hidden;
}

.cartprice
{
	font-weight:bold;
}

.cartpricediscount
{
	color:#ED1848; 
	font-weight:bold;
}

.cartaccount
{
	margin:2%;
}

.cartheadercolour
{
	background-color:#FFFFFF;
}

.cartbackgroundcolour
{
	background:rgba(255,255,255,0.9);
}

.card
{
    width:14.6%;
    margin:1%;
    float:left;
}

/* price slider */
.ui-widget-header
{
	background:#F05223 !important;
}
/* ======================================================================================================================================================================================
   Search 
   ====================================================================================================================================================================================== */
.search
{
	position:relative; 
	display:inline; 
	padding:15px; 
	float:right; 
	z-index:3;
}

.searchcart
{
	height:50px;
	text-align:center; 
	font-size:18px; 
	padding:2%; 
	margin:0;
	position:relative;
}

.searchicon
{
	height:22px; 
	position:relative; 
	float:right; 
	cursor:pointer;
}

.searchsite
{
	width:180px; 
	font-size:16px; 
	line-height:1; 
	font-weight:300; 
	position:relative;
	float:right; 
	padding:2px 0 0 8px; 
	margin:0; 
	color:#FFFFFF; 
	border:none;
	background:none !important; 
}

.overlay
{
    background:rgba(48,48,48,0.6);
    display:none;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:2;
}
/* ======================================================================================================================================================================================
   Google Translate 
   ====================================================================================================================================================================================== */
.goog-te-gadget
{
	font-family:inherit !important;
	float:left;
	margin-left:10px;
}

.goog-te-gadget-simple
{
	border:none !important;
	font-size:inherit !important;
}

.goog-te-menu-frame
{
	-webkit-box-shadow:0 0 12px 0 #A0A0A0 !important;
	box-shadow:0 0 12px 0 #A0A0A0 !important;
}

.goog-te-menu2
{
	border:1px solid #EEEEEE !important;
}
/* ======================================================================================================================================================================================
   Animation
   ====================================================================================================================================================================================== */
@keyframes fadeinup
{
	0% 
	{
		opacity:0;
		-webkit-transform:translate3d(0,100%,0);
		transform:translate3d(0,100%,0);
	}

	100%
	{
		opacity:1;
		-webkit-transform:none;
		transform:none;
	}
}

@keyframes fadeindown
{
	0% 
	{
		opacity:0;
		-webkit-transform:translate3d(0,-200%,0);
		transform:translate3d(0,-200%,0);
	}

	100%
	{
		opacity:1;
		-webkit-transform:none;
		transform:none;
	}
}   
/* ======================================================================================================================================================================================
   Site Specific 
   ====================================================================================================================================================================================== */
.tophome
{
	width:100%;
	max-width:850px;
 	max-height:350px;
 	position:absolute;
 	left:50%;
	margin-top:50px;
 	margin-left:-425px;
 	z-index:2;
}

.bgleft
{
	background-image:url("../images/bg-left.jpg");
	background-position:left center;
	background-repeat:no-repeat;
}

.bgright
{
	background-image:url("../images/bg-right.jpg");
	background-position:right top;
	background-repeat:no-repeat;
}

.bgorange
{
	background-image:url("../images/bg-orange.jpg");
	background-position:center center;
/* 	background-repeat:no-repeat; */
}

.bgblue
{
	background-image:url("../images/bg-blue.jpg");
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}

.bgblue .labelcontainer
{
    max-width:242px;
    display: inline-block;
}

.bgblue form
{
	width:740px;
/* 	float:none; */
}

.narrow
{
	max-width:1000px;
}

.box
{
	width:20%;
/* 	max-width:340px; */
	height:340px;
	padding:1%;
	margin:0%;
	color:#FFFFFF;
/* 	font-size:16px; */
	line-height:1;
	text-align:center;
	border:1px solid #F05223;
	border-top:0;
	border-bottom:0;
	position:relative;
	overflow:auto;
}

.box div
{
	padding:5%; 
	position:absolute; 
	bottom:0; 
	left:0;
	transition:200ms ease;
}

/*.box input[type="button"]
{
	float:none; 
	background:none; 
	background-color:#1F343C; 
	border-color:#1F343C;
}*/

.arrow
{
	position:absolute;
	top:-30px;
	left:50%;
	margin-left:-27px;
	transition:200ms ease;
}

.box:hover .arrow
{
	top:0;
}

.box:hover div
{
	bottom:10px;
}

.tophome .menulink a:link 
{
	font-size:15px;
	color:#FFFFFF !important;
	font-weight:500;
	transition:200ms ease;
	text-transform:uppercase;	
}

.tophome .menulink a:visited
{
	color:#FFFFFF;
}

.tophome .nav ul
{
	padding:0;
	background:none;
}

.tophome .nav ul li
{
	padding:5px 0;
}

.map
{
	width:100%;
	height:300px;
	border:0;
	margin:0;
}

.callnow
{
	width:100%; 
	border-top:2px solid #1F343C; 
	line-height:1;
}