/*--------homepage---------*/

#banner {
	margin: 0 auto;
	padding: 0;
	position: relative;
	top: -43px;
	height: 500px;
	width: 100%;
	z-index: 0;
}

#banner + .content, .sub-banner + .content {
	position: relative;
	top: -40px;
}

#banner:after {
	content: " ";
	position: absolute;
	top: 100%;
	height: 10px;
	width: 50%;
	left: 25%;
	background: radial-gradient(ellipse farthest-side at center top , rgba(0, 0, 0, 1), transparent) repeat scroll 0% 0% transparent;
}

/*banner slider set styles */

#banner-tiles {
	position:relative;
	background:inherit;
	list-style:none;
	margin:0 auto;
	height:100%;
	width:100%;
	padding:0;
	overflow:hidden;
	/*
	border-radius:0.6em;
	box-shadow:0 0 0.3em rgba(0,0,0,0.2);*/
}
#banner-tiles li {
	position:absolute;
	visibility:hidden;
	width:100%;
	height:100%;
	opacity:0;
	background-repeat: no-repeat;
	background-position: center center;

	-moz-box-sizing:border-box;
	box-sizing:border-box;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}

#banner-tiles li {
	margin: 0;
	padding: 0;
	background-size: cover;
}

#banner-tiles li.sel {
	visibility:visible;
	opacity:1;
}

/*
a#banner-prev, a#banner-next {
	padding: 0px 10px;
	color: #000;
	font-size: 2em;
	line-height: 1em;
	
	background-color: #FFF;
	border-radius: 3px;
}
*/

/* banner slider backgrounds */

#tile1 { background-image: url('../images/banners/home/banner1.jpg');}
#tile2 { background-image: url('../images/banners/home/banner2.jpg');}
#tile3 { background-image: url('../images/banners/home/banner3.jpg');}
#tile4 { background-image: url('../images/banners/home/banner4.jpg');}
#tile5 { background-image: url('../images/banners/home/banner5.jpg');}
#tile6 { background-image: url('../images/banners/home/banner6.jpg');}
#tile7 { background-image: url('../images/banners/home/banner7.jpg');}

div.contain {
	margin: 0 auto 0;
	max-width: 1000px;
	padding:0;
	overflow: hidden;
}

#banner-tiles div.contain {
	margin: /*150px*/90px auto;
	text-align: right;
}

#banner-tiles article {
	margin: 0;
	max-width: 440px;
	float: right;
	
	text-align: left;
	font-size: .95em;
	color: #FFF;
	background-color: rgba(0,0,0,0.5);
}

#banner-tiles article a.button div.arrow {
	background-color: #FFF;
	vertical-align: middle;
	margin-left: 15px;
}

#banner-tiles article a.button div.arrow:before {
	background-color: #B02437;
}

#banner-tiles article a.button div.arrow:after {
	border-color: #B02437;
	border-top-color: #FFF;
	border-bottom-color: #FFF;
}

#banner-tiles h2 {
	margin: 10px 0;
	padding: 15px 30px 0;
	text-transform: uppercase;
}

#banner-tiles p {
	font: 1.4em Crimson-Italic, Times, serif;
	padding: 0px 30px 5px;
}

#banner-tiles article a.button {
	display:block;
	position: relative;
	color: #FFF;
	font-size: 1.8em;
	line-height: 100%;
	padding: 8px 0 10px 30px;
}

/* CSS arrows */

#banner-tiles article span {
	position: relative;
}

#banner-tiles article span:before {
	content:' ';
	position:absolute;
	margin:-12px 0 0;
	height:24px;
	width:24px;
	top:50%;
	right:-30px;
	/* background-color:#000; */
	box-shadow:inset -3px 0 0 9px #FFF, inset 0 0 0 15px #B02437;

	-webkit-transition:all 0.3s ease 0.1s;
	transition:all 0.3s ease 0.1s;
}
#banner-tiles article span:after {
	content:' ';
	position:absolute;
	margin:-6px 0 0 0;
	top:50%;
	right:-23px;
	border-left:6px solid #B02437;
	border-top:6px solid transparent;
	border-bottom:6px solid transparent;

	-webkit-transition:all 0.3s ease 0.1s;
	transition:all 0.3s ease 0.1s;
}

#banner-tiles article span:hover:before {
	box-shadow:inset -3px 0 0 9px #FFF, inset 0 0 0 15px #B02437;
}

#banner-tiles article a.button:hover {
	color: #000;
}

/* Arrows */
#banner nav:first-child a {
	z-index:10;
	visibility:hidden;
	opacity:0;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#banner:hover nav a {
	visibility:visible;
	opacity:1;
}

#banner #banner-prev,
#banner #banner-next,
#tab-slider #tab-prev,
#tab-slider #tab-next {
	position:absolute;
	top:50%;
	/*font:800%/0 Arial,Helvetica,sans-serif;*/
	font:0pt/0 Arial,Helvetica,sans-serif;
	color:#f2f2f2;
	text-indent:-9999px;
	outline:none;
	border:2px solid #f2f2fe;
	height:30px;
	width:30px;
	margin:-10px 0 0;

	-webkit-transform:scaleY(2) rotate(45deg);
	-ms-transform:scaleY(2) rotate(45deg);
	transform:scaleY(2) rotate(45deg);

	-webkit-transition:all 0.6s ease 0s;
	transition:all 0.6s ease 0s;
}
#banner #banner-prev:after,
#banner #banner-next:after,
#tab-slider #tab-prev:after,
#tab-slider #tab-next:after { /* Increase hit area of arrows */
	content:' ';
	position:absolute;
	width:160%;
	height:160%;
	left:-30%;
	top:-30%;
}
#banner #banner-prev,
#tab-slider #tab-prev {
	margin-left:-455px;
	left:50%;
	border-right:none;
	border-top:none;
}
#banner #banner-next,
#tab-slider #tab-next {
	margin-right:-455px;
	right:50%;
	border-left:none;
	border-bottom:none;
}
#banner #banner-prev:hover,
#banner #banner-next:hover,
#tab-slider #tab-prev:hover,
#tab-slider #tab-next:hover {
	border-color:#AAA;
}

/* ---- */

#dots {
	position: absolute;
	bottom: 35px;
	width: 100%;
	background: none;
	margin:0;
	padding:0;
	text-align: center;
}

#dots ul {
	margin: 0 auto;
	padding: 0;
}

#dots li {
	width: 15px;
	height: 15px;
	margin: 0 2px;
	background-color: #FFF;
	border-radius: 50%;
	text-indent: -9999px;
}

#dots li.sel {
	background-color: #B02437;
}

#dots li a {
	display: block;
	width: 100%;
	height: 100%;
}


#door-nav {
	position: absolute;
	bottom: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	min-height: 25px;
	max-height: 25px;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
}

/*

#door-nav ul {
	position: relative;
	margin: 0 auto;
	padding: 0;
	max-width: 1000px;
	height: 100%;
	text-align: center;
	display: table;
}

#door-nav li {
	position: relative;
	padding: 10px 20px 0;
	margin: 20px 15px 0;
	height: 100%;
	text-align: center;
	font-size: 1.2em;
	vertical-align: middle;
}

#door-nav li a {
	position: relative;
	display: block;
	line-height: 100%;
	color: #FFF;
}

#door-nav ul li:before {
	content: "";
	position: absolute;
	bottom: -20%;
	left: -15%;
	height: 150%;
	width: 50px;
	background-image: url('../images/slash.png');
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

#door-nav ul li:first-child:before {
	height: 0;
}

#door-nav li a:after {
	content: "";
	position: absolute;
	top: 40%;
	left: 105%;
	border-left: 6px solid #FFF;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	-webkit-transform: scale(.9999);
	transform: scale(.9999);
}
*/

#door-nav li a:hover, #door-nav li a:active {
	/* color: #B02437; */
}

/*
#door-nav li a:hover:after {
	border-left: 6px solid #B02437;
}

#door-nav li span {
	display: block;
	padding: 0;
	margin: 10px;
	font: 1em Crimson-Italic, Times, sans-serif;
}
*/

#welcome {
	text-align: center;
	margin: 15px auto 25px;
}

#welcome h1 {
	margin: 10px 0;
}

#welcome p {
	width: 75%;
	margin: 25px auto 15px;
	line-height: 1.1em;
	text-align: left;
}

.content {
	width: 100%;
	padding: 25px 0;
}

.content > * {
	max-width: 1000px;
	margin: 0 auto;
}

.content p > span {
	color: #B02437;
}

.content h4 {
	margin: 5px 0 0;
	padding: 0;
	font: 200% Gnuolane, Arial, sans-serif;
	color: #000;
}

.content p {
	margin:0 0 20px;
	padding: 0;	
	font-size: 14pt;
}

.content p:nth-child(2) {
	margin-top: 0;
}

/* general content styles */

#banner + .content {
	padding-bottom: 0;
}

/* ----------"request an estimate" banner/callout --------------*/

.callout {
	width: 100%;
	background-image: url('../images/diag_stripes.png');
}

#why-us {
	margin: 5px auto;
	max-width: 1000px;
	overflow: auto;
	padding: 20px 0;
}

#why-us article, #why-us div{
	display: inline-block;
}

#why-us article {
	position: relative;
	float: left;
	width: 55%;
	margin: 20px 0;
}

#why-us article h4, #why-us article p {
	display: inline-block;
}

#why-us article h4 {
	margin: 15px 0 0;
	padding: 0 0 8px;
	vertical-align: top;
	font-size: 2.75em;
	background: url('../images/squares.png') no-repeat bottom left;
}

#why-us article p {
	font: 1.5em/1.3 Crimson-Italic, Times, serif;
	max-height: 180px;
	width: 35%;
	padding: 0 0 0 40px;
	margin: 0;
}

#why-us h4:after {
	content: "}";
	font-size: 2.5em;
	font-family: Times, serif;
	font-weight: lighter;
	color: #BBB;
	position: absolute;
	top: -20px;
}

#why-us div {
	float: right;
	width: 40%;
	margin-top: 10px;
	text-align: center;
}

#why-us div figure {
	margin:0;
	padding:0;
	position: relative;
	display: inline-block;
	vertical-align: middle;
/*
	background-image: url('../images/work.png');
	background-size: 100% 100%;
*/
}

#why-us div figure img {
	display: inline-block;
	vertical-align: middle;
}

#why-us div:hover figure:before {
	content:"";
	height: 80%;
	width: 88%;
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	top:10%;
	left:6%;
	background-color: rgba(0,0,0,.5);
}

#why-us div:hover figure:after {
	content:"";
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url('../images/view_work.png') no-repeat center center;
	background-size: 40px 50px;
}

#why-us div p {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 30%;
	margin: 0 0 0 10px;
	padding: 10px 0;
	text-align: center;
	font: 2em Gnuolane, Arial, sans-serif;
	line-height: 1;
	background: url('../images/squares.png') no-repeat 0 bottom, url('../images/squares.png') no-repeat 0 0;
}

/*
#why-us div p:before {
	content: "";
	background-color: black;
	height: 45px;
	width: 45px;
	box-shadow: inset -10px 0 0 18px #000, inset 0 0 0 23px #FFF;
	position: absolute;
	top: ;
	right: 1%;
}

#why-us div p:after {
	content: "";
	border-left: 10px solid #FFF;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	position: absolute;
	top: 25%;
	right: 20px;
}
*/

#why-us div span {
	font-size: 1.1em;
	letter-spacing: 5px;
	color: #B02437;
}

#why-us article span {
	color: #B02437;
}



/* -page styles-------------- */

.sub-banner {
	margin: 0 auto;
	padding: 0;
	position: relative;
	top: -43px;
	height: 250px;
	width: 100%;
	z-index: 0;
	background: #FFF none no-repeat scroll center center;
	background-size: cover;
}

/* backgrounds for sub-page banners */
.products-page {background-image: url('../images/banners/sub/sub-products.jpg'); }
.services {background-image: url('../images/banners/sub/sub-services.jpg'); }
.testimonials-page {background-image: url('../images/banners/sub/sub-testimonial.jpg'); }
.photo-gallery {background-image: url('../images/banners/sub/sub-gallery.jpg'); }
.before-after {background-image: url('../images/banners/sub/sub-gallery-ba.jpg'); }
.faq-page {background-image: url('../images/banners/sub/sub-faq.jpg'); }
.contact-us {background-image: url('../images/banners/sub/sub-contact.jpg'); }

.sub-banner:after {
	content: " ";
	position: absolute;
	top: 100%;
	height: 10px;
	width: 50%;
	left: 25%;
	background: radial-gradient(ellipse farthest-side at center top , rgba(0, 0, 0, 1), transparent) repeat scroll 0% 0% transparent;
}

.sub-banner div.contain {
	position: relative;
	height: 100%;
}

.sub-banner article {
	position: absolute;
	bottom: 45px;
	left: 20px;
	margin: 0;
	padding: 20px;
	min-width: 300px;
	text-align: left;
	font-size: 1.35em;
	line-height: 1;
	font-family: Crimson-Italic, serif;
	color: #FFF;
	background-color: rgba(0,0,0,0.5);
}

.sub-banner h2 {
	text-transform: uppercase;
	font-size: 2.5em;
	margin: 5px 0;
	
}

.prod-list {
	margin: 15px auto;
	max-width: 1000px;
}

.prod-list ul {
	margin: 0;
	padding: 0;
}

.prod-list li {
	overflow: hidden;
	margin-bottom: 40px;
}

.prod-list img {
	float: left;
	margin-right: 25px;
	/*height: 100px;*/
	
}

.prod-list h5 {
	margin: 10px 0 0;
	padding: 0;
	font-size: 16pt;
	color: #B02437;
}

.prod-list p {
	margin: 0;
	padding: 0;
	max-width: 95%;
}

.side img {
	border: 8px solid #BABABA;
	margin-top: 2em;
}


/*******************************************************
** Services Page */

.repairs {
	font-size: 14pt;
	
}

.repairs th {
	text-align: right;
	padding-right:1em;
}

.repairs td {
	text-align: left;
}

.services-list {
	font-size: 14pt;
}

.services-list li {
	list-style:disc;
}

.service-area {
	font-size: 14pt;
	text-align: left;
	border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
}

.service-area th {
	text-align: left;
}

.service-area td {
	padding: 0.4em 0.4em 0.4em 1em;
	
}

.service-area th {
	background-color: #F2F2F2;
	padding: 0.4em 0.4em 0.4em 1em;
	color: #B02437;
}

.service-area .bg {
	background-color: #F2F2F2;
}


/*******************************************************
** FAQ */
.faq dt,
.faq dd {
	position: relative;
}

.faq dt:before, .faq dd:before {
	position: absolute;
	font: 22.5pt/1.1 'Times New Roman',Times,serif;
	left: 0;
	top: 0;
}

/* Question */
.faq dt {
	padding: 0.5em 0 0.5em 36px;
	border-bottom: 1px solid #e2e0d6;
	font: 15pt/1.1 'Times New Roman',Times,serif;
}

.faq dt:before {
	content: 'Q:';
	color: #000;
}

/* Answer */

/*
.faq dd {
	margin: 0.5em 0 0;
	padding: 0.3em 0 1em 36px;
	-webkit-transition: all 0.7s ease-in-out 0s;
	transition: all 0.7s ease-in-out 0s;
}*/

.faq dd {
	visibility: hidden;
	overflow:hidden;
	padding: 0 0 0 36px;
	margin: 0.5em 0 0;
	max-height: 0;
	opacity: 0;
	-webkit-transition: all 0.7s ease-in-out 0s;
	transition: all 0.7s ease-in-out 0s;
	/*-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;*/
}

.faq dd.open {
	visibility:visible;
	max-height:none;
	min-height:3.5em;
	padding: 0.3em 0 1em 36px;
	opacity:1;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}


.faq dd:before {
	content: 'A:';
}


/**********************************************************************
Contact Us */

.content.page-contact .col.main {
	width: 100%;
	max-width: 1000px;
}

.page-contact contain, .page-contact .main {
	font-size: 12pt;
}

.directions {
	padding-bottom: 2em;
	/* float: left; */
	display: inline-block;
	vertical-align: top;
	margin-left: 3%;
	margin-right: 3%;
	font-size: 12pt;
}

.directions-list {
	padding:0;
	margin:0 1em 0 1em;
}

.directions-list li {
	list-style:disc;
	text-align: left;
}

.content.page-contact .col-contain, .content.page-contact .col.main {
	text-align: center;
}

.address div {
	width: 31%;
	display: inline-block;
	margin-left: 1%;
	margin-right: 1%;
}

.address div p {
	text-align: left;
	margin-left: 2em;
}


/**********************************************************************
Photo Gallery */

/* Gallery tiles */
#gal-tiles figure {
	position:relative;
	display:inline-table;
	vertical-align:middle;
	max-width:470px;
	/* height:275px; */
	width:47.5%;
	margin:1%;
}
#gal-tiles figure a {
	display:block;
	padding: 10%;
	height: 100%;
}

#gal-tiles figure:after { /* Make hit area fill entire image */
	content:' ';
	position:absolute;
	z-index:1;
	height:100%;
	width:100%;
	left:0;
	top:0;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#gal-tiles figure:hover:after/*,
#gal-tiles figure a:hover:after*/ {
	background:rgba(0,0,0,0.15);
}
#gal-tiles figure img {
	position:absolute;
	height:100%;
	width:100%;
	left:0;
	top:0;
}

#gal-tiles figcaption {
	position:relative;
	display:table-cell;
	vertical-align:middle;
	height:100%;
	width:100%;
	z-index:2;
	color:#fff;
	text-shadow:1px 1px 0 rgba(0,0,0,0.6);
}
#gal-tiles figcaption h3 {
	font:285%/1.1 Gnuolane,Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	margin:0;
}
#gal-tiles figcaption p {
	font:italic 170%/1.3 Crimson-Roman,Arial,Helvetica,sans-serif;
	margin:0.3em 0;
}


/* Back arrow */
nav .back {
	position:absolute;
}
.back {
	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
.back:before {
	content:'\00AB  ';
}
.back:hover {
	color:#b02437;
}

/******************************************************
Testimonials page (Ratings) */
.stars>.star{
	display:inline-block;
	padding:0;
	margin:0;
	width:16px;
	height:16px;
}
.stars>.yellow.star{
	background-image:url('../images/icons/yellow-star.png');
}
.stars>.grey.star{
	background-image:url('../images/icons/grey-star.png');
}
.rating{
}
.rating h4>span{
	display:inline-block;
	width:14em;
}

.rating h4 {
	font-size: 140%;
}

.rating h3 {
	font-family: Crimson-Semibold, serif;
	color: #B02437;
}

p.comment {
	font: italic 135% Crimson-Semibold, Times, serif;
}

.rating p > span {
    display: inline-block;
    width: 16em;
}

.repair-callout {
	background-image: url("../images/slant-bg.jpg");
	padding-bottom: 30px;
    padding-top: 30px;
    margin-top: 30em;
    margin-left: 1.5em;
    margin-bottom: 30em;
    max-width: 260px;
    
}

.repair-callout h4 {
	text-transform: uppercase;
}

.repair-callout p { margin: 1em;}

.emergency {
	background-image: url("../images/slant-bg.jpg");
	padding-bottom: 30px;
    padding-top: 30px;
    margin-top: 30em;
    max-width: 260px;
    margin-left: 1.5em;
    
}

.emergency h4 {
	text-transform: uppercase;
}

.emergency-callout p { margin: 1em;}

/*************************************************************-----------------------
RESPONSIVE STYLES */

@media screen and (max-width: 995px) {
	
	#door-nav li:before {
		display: none;
	}
	
	#door-nav li {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (max-width: 960px) {

	/*----------------- header styles-------------------- */

	#logo {
		height: 90%;
		width: 20%;
		min-width: 93px;
		margin-left: -93px;
	}
	
	#logo img {
		height: 83%;
		max-height:93px;
		width: auto;
	}
	
	#logo a:after { /* bottom angle */
		display: none;
	}
	
	#logo:before { /* left angle */
		content: "";
		position: absolute;
		right: 100%;
		border-left: 25px solid rgba(0,0,0,0);
		border-top: 113px solid rgba(0,0,0,1);
		-moz-transform: scale(.9999); /* fixes aliasing in FF */
	}
	
	
	#logo:after { /* right angle */
		content: "";
		position: absolute;
		left: 100%;
		top: 0;
		border-right: 25px solid rgba(0,0,0,0);
		border-top: 113px solid black;
		-moz-transform: scale(.9999); /* fixes angled-border aliasing in FF */
	}
	
	/*-------------- banner-------------------- */
	
	#banner-tiles article, .sub-banner article {
		margin-left: 3%;
		margin-right: 3%;
	}
	
	/* -------------content styles----------- */

	.content > *, #welcome > * {
		margin-left: 3%;
		margin-right: 3%;
	}
	
	#welcome h1 {
		margin-left: 3%;
		margin-right: 3%;
	}
	
	section.col.main {
		width: 63%;
	}
	
	section.col.side {
		width: 25%;
	}
	
	section.col.side img {
		width: 95%;
		min-width: 80px;
	}
	
	/* ----------callout styles------- */
	
	#why-us * {
		/* font-size: 85%; */
		margin: 5px auto;
		
	}
	
	#why-us article {
		margin-left: 3%;
	}
	
	
	/* ----------------footer styles ----------------------*/
	
	footer span, #foot-nav {
		margin-left: 3%;
		margin-right: 3%;
	}
	
	#foot-nav div {
		margin-left: 5px;
		margin-right: 5px;
	}
	
	#foot-nav, #foot-nav section {
		text-align: center;
	}
	
	#foot-nav > section, #foot-nav ul {
		float: none;
	}
	
	#foot-nav ul {
		margin-top: 30px;
	}
	
	#foot-nav strong {
		margin-right: 15px;
	}

}

@media screen and (max-width: 870px) {

	/*-------------------header--------------*/
	
	header {
		position: fixed;
		top: 0;
	}

	/*--------------banners---------------*/
	
	#banner {
		margin-top: 128px;
	}
	
	.sub-banner {
		margin-top: 128px;
	}
	
	#banner-tiles div.contain {
		margin-top: 100px;
	}
	
	/*
#dots {	
		bottom: 140px;
	}
*/

	/*-------------callout----------------*/
	
	#why-us article {
		max-width: 40%;
	}
	
	#why-us article p {
		margin-top: 15px;
		width: auto;
		max-width: none;
		padding-left: 0;
		text-align: center;
	}
	
	#why-us {
		text-align: center;
	}
	
	#why-us article, #why-us div {
		margin-right: 3%;
		margin-left: 3%;
	}
	
	#why-us article, #why-us div {
		float: none;
		display: inline-block;
		vertical-align: top;
		max-width: 45%;
		
	}
}

@media screen and (max-width: 820px) {
	
	/*----------------header--------------------*/
	header {
		font-size: 90%;
		height: auto;
		
	}
	
	.header-number {
		bottom:auto;
		top:5px;
	}
	
	#top {
		height: 30px;
	}
	
	.bg {
		height: 39px;
	}
	
	#logo {
		height: 70%;
		background: none;
		margin-left:-83px;
	}
	
	#logo img {
		margin: 0 auto;
		height: 130%;
		max-height:63px;
	}
	
	#logo:before { /* left angle */
		display: none;
	}
	
	#logo:after { /* right angle */
		display: none;
	}
	
	#door-nav ul {
		display: block;
	}
	
	
	/*------------------banners---------------------*/
	
	#banner {
		top: -38px;
		margin-top: 68px;
	}
	
	.sub-banner {
		margin-top: 73px;
	}
	
	#door-nav li {
		margin-top: 0;
	}
		
	#banner-tiles h2{
		font-size: 350%;
		line-height:1;
	}
	
	.sub-banner h2 {
		font-size: 200%;
		line-height: 1;
	}
	
	/*-----------------contact page----------------------*/
	
	.address div{
		width: 40%;
		vertical-align: top;
	}
	
	/*------------------footer---------------*/

	.location {
		text-align: left;
	}
	
	.contact {
		text-align: left;
	}

}

@media screen and (max-width: 768px) {

	/*------------------Products ------------*/
	
	.prod-list img {
		float: none;
	}


}

@media screen and (max-width: 720px) {

	/*----------------heaader----------------*/
	header {
		font-size: 80%;
	}
	
	.bg {
		height: 39px;
	}
	
	#head-nav > ul li {
		margin: 0 4px;
	}
	
	#logo {
		margin-left: -80px;
	}
	
	/*-----------------------banner----------------------*/
	
	#banner {
		top: -35px;
		margin-top: 65px;
	}
	
	.sub-banner {
		margin-top: 73px;
	}
	
	/*----------------callout styles-----------------*/
	
	#why-us div {
		float: none;
		text-align: center;
	}
	
	#why-us div p {
		margin-top: 15px;
		width: auto;
		max-width: none;
		padding-left: 0;
	}
	
	/* -----------------Gallery page ---------------------------*/

	#gal-tiles figure {
		display:table;
		max-width:none;
		margin:0.5em 0;
		width:auto;
	}
}

@media screen and (max-width: 700px) {
	
	/*-----------Nav bar swap----------------*/
		
	#nav-jump {
		display:block !important;
		position:fixed;
		text-indent:-9999px;
		outline:none;
		z-index:14; /* change z index -- covers nav-close */
		right:0;
		top:0;
		width:60px;
		height:63px;
		background: #000;
		border: 1px solid #AAA;
		opacity:1;
	}
	
	#nav-jump:after {
		content:' ';
		position:absolute;
		margin:-1px 0 0 -12px;
		top:50%;
		left:50%;
		width:24px;
		height:3px;
		background:#FFF;
		box-shadow:0 8px 0 #FFF, 0 -8px 0 #FFF;
	}

	#nav-close {
		display:block !important;
		position:absolute;
		text-indent:-9999px;
		z-index:200;
		outline:none;
		right:0;
		top:0;
		width:50px;
		height:50px;
		color:#F3F4F3;
	}
	#nav-close:after {
		content:'x';
		display:block;
		text-indent:0;
		text-align:center;
		font-size:300%;
		line-height:0.01;
	}

	#head-nav {
		position:fixed;
		visibility:hidden;
		z-index:500;
		height:100%;
		width:100%;
		left:100%;
		padding:50px 0 0;
		top:0;
		overflow-y: scroll;
		border: none;
		background-color: #000;
		box-sizing: border-box;

		-webkit-transition:all 0.4s ease-in 0s;
		transition:all 0.4s ease-in 0s;
	}
	#head-nav ul {
		text-align:left;
		padding:0 1em;
		margin-right:0.5em;
		font-size:130%;
		float: none;
		height: auto;
		overflow-y: auto;
	}
	#head-nav .pushRight {
		padding-bottom:25px;
	}
	
	#head-nav > ul > li > a.dd-menu:after {
		border-top: 5px solid #FFF;
	}
	
	#head-nav li:hover > a {
		color: #B02437;
	}
	
	#head-nav > ul > li.sel > a, #head-nav > ul > li:hover > a {
		background-image: none;
		border: none;
		color: #B02437;
		margin: 0;
		height: auto;
		transition: all 0.4s ease 0s;
	}
	
	/* show dd menus by default */
	
	#head-nav ul li {
		display: block;
		position: relative;
	}
	
	
	/*----*/
	
	#head-nav ul ul {
		position: relative;
		left: 0;
		display: block;
		visibility: visible;
		background: inherit;
	}
	
	#head-nav ul ul li {
		padding: 0 0 0 15px;
	}
	
	#head-nav ul ul li a {
		font-size: 90%;
		padding-right: 0;
	}
	
	#head-nav ul ul li a:hover {
		padding: 5px 0;
	}
	
	#head-nav ul ul li a:before {
		display: none;
	}
	
	#head-nav ul ul li a:after {
		display: none;
	}
	
	#head-nav li a {
		padding:10px 0;
	}
	
	#head-nav li {
		margin: 5px 0;
	}
	
	#head-nav > ul:first-child > li:first-child {
		border: none;
		padding: 0;
	}
	
	#head-nav li:hover > a:not(:only-child):before {
		visibility: hidden;
	}
	
	#head-nav > ul > li {
		display:block;
		border-top:1px solid #797c7d;
	}
	#head-nav li a {
		display:block;
		margin:0;
		
		font:bold 120%/1.2 'Century Gothic',Arial,Helvetica,sans-serif;
		color:#FFF;

		-webkit-transform-origin:left center;
		-ms-transform-origin:left center;
		transform-origin:left center;
	}
	
	#head-nav:target {
		visibility:visible;
		left:0;
	}
	
	/*-----------------header--------------------*/
	
	#logo {
		margin-left: -49px;
	}
	
	.bg {
		height: 35px;
	}
	
	.header-number {
/* 		display: none; */
		opacity: 0;
		visibility: hidden;

		right:auto;
		left:4%;
		top:12px;
		z-index: 999;
		
		font-size:23px;
		
		transition:visibility 0s ease 0s, , opacity 0s ease 0s;
	}
	#head-nav:target ~ .header-number {
/* 		display: block; */
		opacity: 1;
		visibility: visible;
		
		transition:visibility 0.1s ease 0.3s, opacity 0.1s ease 0.3s;
	}
	
	.header-number:after {
		content:"";
		display: block;
		width:100%;
		height:1px;
		background-color:#B02437;
		position: absolute;
		bottom:0;
		left:0;
	}
}

@media screen and (max-width: 620px) {

	/*------------general layout----------------*/
	
	section.col.main {
		width: 100%;
	}
	
	section.col.side {
		display: block;
		width: 100%;
		max-width: none;
	}
	
	.side img {
		display: inline-block;
		margin-left: auto;
		margin-right: auto;
		max-width: 55%;
	}
	
	.side aside {
		margin: 25px auto;
		max-width: 90%;
		padding-bottom: 0;
	}
	
	.prod-list h3 {
		font-size: 2em;
		margin-bottom: 20px;
	}

	/*-------------banner styles--------------*/
	
	#banner {
		height: 500px;
	}

	#banner-tiles article {
		font-size: 90%;
	}

	#banner-tiles article h2 {
		font-size: 300%;
		padding: 5px 15px;
	}
	
	#banner-tiles article p {
		padding-left: 15px;
	}
	
	#banner-tiles article a.button {
		padding-left: 15px;
	}
	
	.sub-banner {
		height: 200px;
	}
	
	.sub-banner article {
		padding: 10px;
		left:0;
	}
	
	/*-------------callout styles--------------*/
	
	#why-us div, #why-us article {
		font-size: 90%;
		max-width: 45%;
	}

}

@media screen and (max-width: 520px) {

	/*--------------header-----------------------*/
	
	#head-nav ul {
		float: none;
	}
	
	/*-----------------banner----------------------*/
	
	#door-nav li span {
		margin: 5px 10px;
	}
	
	/*
#dots {	
		bottom: 120px;
	}
*/
	
	/*-------------callout styles--------------*/
	
	#why-us h4:after {
		display: none;
		
	}
	
	#why-us h4 {
		margin: 0;
		text-align: center;
	}
	
	#why-us article {
		margin: 0;
	}
	
	/*------------------footer---------------*/
	
	footer img {
		width: 85%;
		height: auto;
	}
	
	#foot-nav section{
		text-align: center;
	}
	
	#foot-nav section > * {
		display: inline-block;
		float: none;
	}
	
	#foot-nav .logo {
		display: block;
		margin-bottom: 2em;
	}
	
	#foot-nav .location {
		float: left;
		text-align: left;
	}
	
	#foot-nav .contact {
		float: right;
		text-align: left;
	}
	
	#foot-nav strong {
		height: 75px;
		width: 115px;
	}
	
	#foot-nav li {
		margin-top: 15px;
		margin-left: 4px;
		margin-right: 4px;
	}
	
}

@media screen and (max-width: 500px) {
	/*----------------footer--------------*/
	
	#foot-nav strong.cvdlogo {
		display: block;
		margin: 0 auto;
	}
}

@media screen and (max-width: 480px) {
	
	/*-------------banner------------*/
	
	#banner {
		height: 430px;
	}
	
	#banner div.contain {
		margin-top: 60px;
	}
	
	#banner article h2 {
		font-size: 280%;
	}
	
	/*-------------callout-------------*/
	
	#why-us div figure {
		max-width:100%;
	}
}

@media screen and (max-width: 420px) {
		
	.header-number {
		font-size:20px;
	}

	/*--------------banner--------------*/
	
	#banner div.contain {
		margin-top: 75px;
	}
	
	#door-nav {
		max-height: 265px;
	}
	
	
	/*------------------Products ------------*/
	
	.prod-list img {
		float: none;
	}
	
	/*-----------------callout-----------------*/
	
	#why-us > * {
		max-width:42%;
		margin: auto 2%;
	}
	
	/*-------------------footer--------------*/
	
	#foot-nav .location, #foot-nav .contact {
		display: block;
		margin: 0 auto;
		float: none;
		text-align: center;
	}
	
	#foot-nav .location address {
		text-align: center;
	}


}
