html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {	margin: 0;	padding: 0;	border: 0;	font-size: 100%;	font: inherit;	vertical-align: baseline;}/* HTML5 display-role reset for older browsers */article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {	display: block;}body {	line-height: 1;}ol, ul {	list-style: none;}blockquote, q {	quotes: none;}blockquote:before, blockquote:after,q:before, q:after {	content: '';	content: none;}table {	border-collapse: collapse;	border-spacing: 0;} fieldset {display:inline;}input{max-width:100%;}
body {
	background: #ddd;
	font-family: 'Arial'; 
}
.clear {
	clear: both;
}
.inner {
	max-width: 62.5em;
	width: 100%;
	margin: 0 auto;
}
img {
	max-width: 100%;
	height: auto;
}
/*temp css */

#container > table {
	margin: 0 auto;
}
header .inner {
	padding-top: 1em;
	margin-top: 2em;
	background: #1b1919;
}
.logo {
	background-image: url('./images/logo.png');
	background-size: 100%;
	background-repeat: no-repeat;
	width: 14.75em;
	height: 7.25em;
	float: left;
	display: block;
	margin-left: 2%;
	margin-top: 1em;
	margin-bottom: 2em;
}
.cardlogos {
	background-image: url('./images/cardlogos.jpg');
	background-size: 100%;
	background-repeat: no-repeat;
	width: 12.75em;
	height: 7.25em;
	float: right;
	display: block;
		margin-left: 2%;
	margin-top: 1em;
	margin-bottom: 2em;
	
}
footer .logo {
	font-size: 75%;
	float: right;
	margin-right: 2%;
}
footer .cardlogos {
	font-size: 75%;
	float: right;
	margin-right: 2%;
}

header nav {
	clear: both;
	width: 100%;
	background: #75c00a;
	padding: .5em 0;
}
header nav ul {
	float: right;
	margin-right: 2%;
}
header nav li {
	float: left;
}
header nav > ul > li {
	position: relative;
	margin-left: 1.2em;
}
header nav > ul > li a {
	color: #fff;
	font-family: 'Arial'; 
	text-decoration: none;
	font-size: 87.5%;
	
}
header h1, header h2, header h3, header p {
	color: #fff;
}
header .header-text {
	float: left;
	margin-top: 1.5em;
	margin-left: 10%;

}
header .call-us {
	float: right;
	margin-top: 4.5em;
	margin-right: 2%;
	
}
header .call-us a{ 
	text-align: right;
	font-size: 175%;
	color: #009cdd;
	text-transform: uppercase;
	font-weight: bold;
	display: block;
}
header .call-us p{
	font-size: 181.25%;

}
header h1 {
	font-size: 175%;
	font-weight: bold;
	padding-bottom: .25em;
}
header h2 {
	font-size: 125%;
	padding-bottom: .25em;
}
.content-container {
	background: #fff;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
}

.content-container aside {
	width: 25%;
	float: right;
	margin-right: 2%;
}

 .content-container section.content {
	width: 67%;
	float: left;
	padding-left: 2%;
}

aside a.button {
	width: 100% ;
	margin: 0 auto;
	display: block;
	text-align: center;
	padding: 1em 0;
	color: #fff;
	font-size: 125%;
	margin-bottom: 1em;

}
aside a.button.find-us, aside a.button.specials {
	background: #009cdd
}
aside a.button.book-now, aside a.button.estimate {
	background: rgb(136, 194, 54);
}

aside a.vimeo-video {
	margin: 1em 0;
	display: block;
	width: 100%;
	padding-top: 56.75%;
	background-image: url('./images/videothumbnail0615.jpg');
	background-size: 100%;
	background-repeat: no-repeat;
}
.home-image {background-image: url('./images/IMG_4074.jpg');}
.vision-image {background-image: url('./images/gallery/mark_vision.jpg');}
.guarantee-image {background-image: url('./images/IMG_4117.jpg');}
.service-image {background-image: url('./images/gallery/P3120028.jpg');}
.booking-image {background-image: url('./images/gallery/counter1.jpg');}

.content-header-image {
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	padding-top: 46.25%;
	margin-bottom: 1.5em;
}
.content h1 {
	font-size: 212.5%;
	color: #0073b5;
	margin-bottom: .5em;

}
.content h2 {
	font-size: 150%;
	color: #0073b5;
	margin-bottom: .25em;

}
.content p {
	color: #333;
	line-height: 1.6em;
	margin-bottom: 1em;
}
.content p a {
	color: #F00;
}
.typography .heading-quote {
 	font-style: italic;
 	font-size: 87.5%
}
.typography li {
	line-height: 1.6em;
	color: #333;
	margin-bottom: .25em;
}
.typography .large {
	font-size: 150%;
	line-height: 1.4em;

}
.typography .small {
	font-size:  87.5%
}
.typography .center {
	text-align: center;
}
.typography .italic {
	font-style: italic
}
.typography .signed {
	font-size: 87.5%;
	font-weight: bold;
	margin-top: 2em;
}
.typography .left {
	float: left;
}
.typography .left img {
	margin-right: .75em;
	margin-bottom: .75em;
}
.service-cover-list li {
	margin-bottom: .75em;
	max-width: 80%;
	display: block;
}
.typography .label {
	display: inline-block;
	width: 25%;
	font-weight: bold;
	vertical-align: top;
	
}
.typography .info {
	display: inline-block;
	width: 50%;


}
.typography .bold {
	font-weight: bold
}
.typography .small-heading {
	font-size: 112.5%;
	font-weight: bold;
	
	line-height: 1.2em
}
.service-package-container .small-heading {
	text-align: center;
}
.service-cover-list li:before {
	content: url('./images/tick.jpg');
	margin-right: .5em;
}
.service-list li {
	
	width: 30%;

	text-align: center;
	display: inline-block;
	vertical-align: top;
}
.service-list a {
  text-decoration: underline;  color: #333;  display: block;  font-weight: bold;}
form label {
	width: 25%;
}
form input, form textarea {
	width: 55%;
	padding: .5em;
}
form label, form input, form textarea {

	display: inline-block;
	vertical-align: top;
	margin-bottom: .75em;
}
form h3 {
	font-size: 125%;
	margin-bottom: 1em;
	margin-top: .5em;
	color: #75c00a;
}
form.booking input#send, form.estimate input#submit {
	border: none;
	background: #009cdd;
	color: #fff;
	float: right;
	max-width: 8em;
	display: block;
	clear: both;
	margin-right: 20%;
	font-size: 100%
}
.equipment-container {
	margin-bottom: 3em;
}
.service-package-container {
	width: 33%;
	float: left;
}
.service-package-container > img {
	margin: 0 auto;
	margin-bottom: .5em;
	display: block;
}
ul.prices-list {
	padding-top: 2.5em;
	clear: both;
}
ul.prices-list li {
	display: inline-block;
	width: 30%;
	padding-right: 2%;
	vertical-align: top;
	margin-bottom: .75em;
}
ul.prices-list li p, .service-package-container p{
	margin-bottom: 0;
}
.service-list li{
	display: inline-block;
	width: 30%;
	margin-bottom: 1em;
}
.specials-container {
	float: left;
	width: 45%;
	margin-right: 2%;
}
 h3 {
	font-size: 125%;
	margin-bottom: .25em;
	margin-top: .25em;
	color: #75c00a;
}
.equipment-container img {
	float: left;
	margin-right: 1em;
	margin-bottom: 1em
}
footer {
	padding-top: 2em;
	width: 100%;
	background: #1b1919;
	padding-bottom: 1em;
}

footer .copyright {
	clear: both;
	font-size: 68.75%;
	color: #777;
	text-align: center;
	padding-top: 2em;

}
footer .services {
	float: left;
	width: 35%;
	
	margin-left: 2%;
}
footer .address {
	float: left;
	width: 28%;
	
	margin-left: 2%;

}
footer h4 { 
	color: #fff;
	font-size: 112.5%;
	padding-bottom: .25em;
	margin-bottom: .25em;
	border-bottom: 1px solid #222;
	display: inline-block;
}
footer .address p {
	color: #999;
	font-size: 81.75%;
	margin: .3125em 0;
}
footer .services  a {
	float: left;
	width: 50%;
	color: #888;
	font-size: 68.75%;
	margin: .3125em 0;
}


@media all and (min-width: 62.5625em) {

	.close-button, .direct-contact, .menu-button, .menu-title {
		display: none
	}

}
@media all and (max-width: 62.5em) {
	header .inner {
		margin-top: 0;
	}
	header .logo {
		font-size: 60%;
		margin-top: 0;
		margin-bottom: 0;
	}
	header .header-text {
		margin-bottom: 2em;
		width: 100%;
		margin-left: 0;
		text-align: center;
		clear: both;
		margin-top: 0;
	}
	header .call-us {
		margin-top: 1.5em;
		font-size: 80%
	}

	 .menu-button {
		font-size: 125%;
		text-align: center;
		width: 100%;
		clear: both;
		background:  #75c00a;
		color: #fff;
		padding: .75em 0;
		cursor: pointer
	}
	nav {
		position: fixed;
		top: 0;
		left: -110%;
		width: 80%;
		max-width: 20em;
		min-height: 100%;
		 transition: all .5s ease-in-out;
		 z-index: 150
	}
	header nav ul {
		margin-top: .5em;
		float: right;
		clear: both;
		margin-right: 2em;
	}
	nav ul li {
		text-align: right;
		font-size: 150%;
		float: none;
		margin-bottom: .5em;
		display: block;

	}
	.close-button {
		float: left;
		position: relative;
		z-index: 3;
		cursor: pointer;
		padding-right: 2em;
		margin-left: 1em;
		cursor: pointer;
	}
	.close-button:before {
		content: "X";
		font-size: 250%;
		color: #99ce4e;
		line-height: .8em;
		margin-left: .25em;

	}

	.mobile-exit {
		cursor: pointer;
		display: block;
		position: fixed;
		height: 100%;
		width: 100%;
		left: -110%;
		top: 0;
	}
	header nav h2 {
		color: #99ce4e;
		font-size: 175%;
		float: right;
		margin-right: 5%;
	}

	
	form.booking input, form.booking label, form.booking textarea {
		width: 80%;
	}


}
@media all and (max-width: 62.5em) and (max-height: 24em) {
	nav ul li {
		font-size: 125%;
	}
	header nav h2 { 
		display: none;
	}

}

@media all and (max-width: 45em) {
	header .header-text {
		margin-top: 1.5em;
	}
	form.booking input#send {
		font-size: 125%;

	}
	 .content-container section.content {
		width: 96%;
	}
	.content-container aside {
		width: 96%;
	}
	aside a.vimeo-video {
		display: none
	}
	footer .address, footer .services {
		width: 48%;
		margin-bottom: 1em;
	}
	footer .logo {
		float: none;
		margin: 0 auto;
		
		clear: both;
	}
	footer .copyright {
		padding-top: .5em;
	}
	aside a.specials, aside a.find-us {
		display: none
	}
	.homepage aside a.specials, .homepage aside a.find-us {
		display: block;
		width: 48%;
		margin: 0 1%;
		float: left;
		margin-bottom: 1em;
		font-size: 87.5%
	}
	ul.prices-list li {
	width: 47%;
	}


	 aside a.button.book-now, aside a.button.estimate {
		display: block;
		width: 48%;
		margin: 0 1%;
		float: left;
		margin-bottom: 1em;
		font-size: 87.5%
	}

	aside a.button.book-now {
		background: #ff0204;
	}
	.facbk_bx {
		display: none
	}
	.specials-container {
		width: 48%;
		margin-right: 2%;
	}
	.specials-container.text {
		width: 100%;
		float: none;
		margin-right: 0;
	}
}
@media all and (max-width: 32em) {
	footer .address, footer .services {
		width: 96%;
		text-align: center
	}
	aside a.specials, aside a.find-us {
		margin: 0 ;
		margin-bottom: .5em;
		float: none;
		font-size: 100%;
	}
	.homepage aside a.button.book-now, .homepage aside a.button.estimate {
		width: 98%;
		float: none;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: .5em;
		font-size: 100%
	}
	aside a.button.book-now,aside a.button.estimate {
		font-size: 87.5%;
		margin-bottom: .5em;
	}

.service-package-container > img {
	display: inline-block; vertical-align: middle;
	width: 25%;
	margin: 0;
}
.service-package-container p.small-heading  {
	display: inline-block;
		width: 28%;
		 vertical-align: middle;
		 margin-right: 4%;
		 margin-left: 1%;
	}
	.service-package-container ul {
		display: inline-block;
		width: 35%; vertical-align: middle;
	}
	.service-package-container {
		clear: both;
		padding-top: 2em;
		width: 100%;
	}
}
@media all and (max-width: 25em) {
	header .header-text {
		font-size: 90%
	}
	header .call-us a {
		color: rgb(136, 194, 54);
	}
	header .call-us p {
		display: none
	}
	.equipment-container img {
		margin: 0 auto;
		margin-bottom: 1em;
		display: block;
		float: none;
	}
	ul.prices-list li {
	font-size: 90%
	} 
	.service-list li {
	
	width: 48%;
}
.service-list li a{
	text-align: center;
}
}


/* Preload images */
body:after {
  content: url(../images/close.png) url(../images/loading.gif) url(../images/prev.png) url(../images/next.png);
  display: none;
}

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none;
}

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
}

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}

.lightbox a img {
  border: none;
}

.lb-outerContainer {
  position: relative;
  background-color: white;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-container {
  padding: 4px;
}

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../images/loading.gif) no-repeat;
}

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}

.lb-container > .nav {
  left: 0;
}

.lb-nav a {
  outline: none;
  background-image: url('data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
}

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block;
}

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(../images/prev.png) left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(../images/next.png) right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s;
}

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both;
}

.lb-data {
  padding: 0 4px;
  color: #ccc;
}

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em;
}

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: bold;
  line-height: 1em;
}

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999999;
}

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

