/* Master layout */

/************************************************************
Embedded fonts */

@font-face {
	font-family:Ubuntu;
	src:url('../fonts/ubuntu-r.eot'); /* IE8- */
	src:url('../fonts/ubuntu-r.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/ubuntu-r.ttf') format('truetype'); /* The rest of the world */
}

/************************************************************
Global styles */

html {
	background:#f9f9f9 url('../images/site/texture-vanilla.jpg') repeat center top;
	color:#292a2c;
}
body {
	font:10.5pt/1.3 Ubuntu,Arial,Helvetica,sans-serif;
	border-top:5px solid #019d20;
	margin:0;
	padding:0;
	min-width:1000px;
}
body.mceContentBody {
	min-width:100px;
}

/* Links */
a:link,
a:visited,
a:hover,
a:active {
	color:#007b20;
	text-decoration:none;
}
a img {
	border:none;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	font:12pt/1.1 Ubuntu,Arial,Helvetica,sans-serif;
	margin:1em 0 0.5em;
}
h1 {
	font-size:30pt;
	color:#007b20;
	text-transform:uppercase;
}
h2 {
	font-size:18pt;
}
h2 strong {
	color:#007b20;
	font-weight:normal;
}
h3 {
	font-size:13.5pt;
	font-weight:bold;
	color:#007c1e;
}

/* Block-level */
p {
	margin:1em 0;
}
address {
	margin:1em 0;
	font-style:normal;
}

/************************************************************
Layout: Header */

body>header {
	position:relative;
	width:965px;
	margin:0 auto;
	padding:0.7em 0;
	overflow:hidden;
}
body>header:before {
	content:' ';
	position:absolute;
	left:50%;
	top:0;
	margin:0 0 0 -300px;
	height:0.8em;
	width:600px;

	background-image:-webkit-radial-gradient(center top, ellipse farthest-side, rgba(0,0,0,0.22), rgba(0,0,0,0));
	background-image:radial-gradient(ellipse farthest-side at center top, rgba(0,0,0,0.22), rgba(0,0,0,0));
}

/* Logo */
#logo {
	float:left;
	margin:0;
}
#logo a {
	display:block;
	text-indent:-9999px;
	outline:none;
	width:410px;
	height:75px;
	background:transparent url('../images/site/logo.gif') no-repeat center center;
}

/* Quote */
body>header q {
	position:absolute;
	left:46.5%;
	top:50%;
	font:italic bold 13.5pt/1 Ubuntu,Arial,Helvetica,sans-serif;
}

/* Phone numbers */
body>header p {
	float:right;
	font:bold 12pt/1.5 Ubuntu,Arial,Helvetica,sans-serif;
	margin:0.7em 0;
}
body>header p strong {
	color:#017e1f;
}


/************************************************************
Layout: Main navigation */

#main-nav {
	position:relative;
	background:#020302 url('../images/site/texture-dots.png') repeat-x center center;
	box-shadow:0 2px 5px rgba(0,0,0,0.5);
	z-index:100;
}
#main-nav ul {
	list-style:none;
	text-align:center;
	margin:0;
	padding:0;
}
#main-nav>ul>li {
	display:inline-block;
}
#main-nav a {
	display:block;
	text-transform:uppercase;
	font-size:13.5pt;
	line-height:2;
	padding:1.2em;
	color:#fff;
}
#main-nav a strong {
	font-weight:normal;
	color:#019d20;
}
#main-nav>ul>li.sel>a,
#main-nav>ul>li:hover>a {
	background:rgba(1,157,32,0.5);
}
#main-nav>ul>li.sel>a strong,
#main-nav>ul>li:hover>a strong {
	color:inherit;
}

/* Second level */
#main-nav li ul {
	display:none;
	position:absolute;
	text-align:left;
	background:#fafafa;
	padding:0.7em 1em 1em;
	border-radius:0.3em;
	box-shadow:0 0 0.7em rgba(0,0,0,0.6);
	margin-left:-0.5em;
}
#main-nav li:hover>ul {
	display:block;
}
#main-nav li li a {
	text-transform:none;
	font-size:10.5pt;
	padding:0.2em 0.7em 0.2em 0.5em;
	color:#191919;
}
#main-nav li li+li>a {
	border-top:1px solid #ced1d2;
}
#main-nav li li.sel>a,
#main-nav li li a:hover {
	color:#007b1e;
}
#main-nav li ul:before {
	content:' ';
	border-bottom:7px solid #fafafa;
	border-left:6px solid transparent;
	border-right:6px solid transparent;
	position:absolute;
	left:4.5em;
	top:0;
	margin:-7px 0 0 0;
}


/************************************************************
Layout: Content */

#content {
	padding:0 0 1em;
	min-height:15em;
}

/* Page banners */
#content>header {
	background:#f2f2f2 url('../images/site/texture-canvas.jpg') repeat center top;
	padding:6px 0 2px;
}
#content>header>h1,
#content>header>h2 {
	width:920px;
}
#content>header>h1 {
	margin:0.6em auto 0;
}
#content>header>h2 {
	margin:0.5em auto;
}

/* Home page (keys) */
#content>header figure {
	margin:0 auto;
	padding:1em 0 1em 200px;
	width:700px;
	background:transparent url('../images/site/keys.gif') no-repeat left center;
}
#content>header figure h2 {
	color:#007b20;
}
#content>header figure h2 strong {
	color:#2a2b2d;
	text-transform:uppercase;
}
#content>header:after { /* Accent */
	content:' ';
	display:block;
	width:900px;
	height:1px;
	margin:0 auto;
	background:#fff;
	box-shadow:inset 90px 0 70px -70px #f2f2f2, inset -90px 0 70px -70px #f2f2f2;
}


/* Content */
#content>article {
	width:975px;
	margin:0 auto;
	padding:0 0 1em;
}
#content>article .col {
	margin:0.5em 0 0 3%;
}

.main.col { /* Columns */
	width:67%;
}
.side.col {
	width:25%;
}


/* Fact bar */
#content>footer {
	background:transparent url('../images/site/cars.png') no-repeat center center;
	text-align:center;
	width:975px;
	margin:0 auto;
}
#content>footer h3 {
	font-size:37.5pt;
	margin:0.4em 0 0.1em;
}
#content>footer p {
	font-size:13.5pt;
	margin:0.4em 0 1em;
}


/* Lines */
#content>header:before,
#content>article:before,
#content>footer:before,
#content>footer:after,
#photo-compare>figure:before {
	content:'......................................................................';
	text-align:center;
	display:block;
	margin:0 auto;
	width:900px;
	color:#c5d1c9;
	line-height:0;
	letter-spacing:6px;
	text-shadow:-47px 0 0 #dbe3de, -94px 0 0 #e6ebe7, 47px 0 0 #dbe3de, 94px 0 0 #e6ebe7;
}


/* Social icons */
#social {
	z-index: 99;
	position:fixed;
	margin:44px 0 0 0;
	left:0;
	background:#007c1e;
	border-radius:0 0.3em 0.3em 0;
}
#social ul {
	list-style:none;
	margin:0;
	padding:0.3em 0.5em;
}
#social a {
	display:block;
	text-indent:-9999px;
	outline:none;
	height:32px;
	width:32px;
	margin:0.4em 0;
	background:transparent url('../images/icons/social.png') no-repeat center center;
}
#social li.fb a { background-position:center 0; }
#social li.gp a { background-position:center -38px; }


/************************************************************
Layout: Footer navigation */

#foot-nav {
	background:#020302 url('../images/site/texture-dots.png') repeat-x center top;
}
#foot-nav ul {
	text-align:center;
	list-style:none;
	margin:0;
	padding:0.7em 0;
}
#foot-nav li {
	display:inline;
}
#foot-nav a {
	color:#d5d6d8;
	padding:0 0.6em;
}


/************************************************************
Layout: Footer (black) */

#footer {
	position:relative;
	background:#020302;
	color:#f9f9f9;
	padding:1em 0;
	text-align:center;
	box-shadow:0 2px 5px rgba(0,0,0,0.5);
}
#footer h3 {
	font-size:18pt;
	font-weight:normal;
	text-transform:uppercase;
	margin:0.2em 0;
	color:inherit;
}
#footer a {
	color:#f9f9f9;
}
#footer:before { /* Accent */
	content:' ';
	position:absolute;
	background:#272827;
	margin:0 0 0 -360px;
	width:720px;
	height:1px;
	left:50%;
	top:0;
	box-shadow:inset 70px 0 50px -50px #020302, inset -70px 0 50px -50px #020302;
}

/* Columns */
#footer .col {
	width:280px;
	text-align:left;
	margin:0 1em;
}
#footer .col:first-child+.col {
	width:340px;
	margin-right:1.5em;
}


/* Gallery thumbnails */
#gal-thumbs {
	list-style:none;
	margin:0 0 0 -0.5em;
	padding:0;
}
#gal-thumbs li {
	display:inline-block;
	vertical-align:middle;
}
#gal-thumbs a {
	display:block;
	text-indent:-9999px;
	outline:none;
	margin:0.5em;
	height:70px;
	width:75px;
	background:transparent none no-repeat center center;
	border-radius:1px;
}
/*#gal-thumbs img {
	max-width:75px;
	max-height:70px;
	border-radius:1px;
}*/


/* Testimonial */
#footer blockquote {
	position:relative;
	background:#007c1e;
	margin:0.7em 0 0;
	padding:1.5em 2em 1.5em 3em;
	border-radius:0.3em;
	min-height:5.5em;
}
#footer blockquote p {
	margin:0;
	line-height:1.4;
}
#footer blockquote:before {
	content:'\201C';
	font:37.5pt/1 Ubuntu,Arial,Helvetica,sans-serif;
	float:left;
	margin-left:-0.55em;
}
#footer blockquote:after {
	content:' ';
	border-top:19px solid #007c1e;
	border-left:3px solid transparent;
	border-right:12px solid transparent;
	position:absolute;
	left:3em;
	top:100%;
}
#footer cite {
	display:block;
	margin:-0.2em 2em 0 4.2em;
	font-style:normal;
}

/* Locations info */
#footer address {
	margin:0.4em 0 0.8em;
}
#footer address strong {
	font-size:115%;
	color:#007c1e;
	font-weight:normal;
}



/************************************************************
Layout: Footer (white/copyright) */

body>footer {
	position:relative;
	width:960px;
	margin:0 auto;
	padding:2em 0 1em;
	font-size:10pt;
}
body>footer p {
	margin:0.5em 0;
}

/* JB logo */
#jb-logo a {
	display:inline-block;
	text-indent:-9999px;
	outline:none;
	width:110px;
	height:50px;
	background:transparent url('../images/site/foot-logos.gif') no-repeat 0 center;
}

/* Certification logos */
#cert-logos {
	position:absolute;
	right:0;
	top:0.5em;
}
#cert-logos a {
	display:inline-block;
	text-indent:-9999px;
	outline:none;
	height:100px;
	width:80px;
	background:transparent url('../images/site/foot-logos.gif') no-repeat left center;
}
#cert-logos a.ase { background-position:-112px center; width:70px; }
#cert-logos a.cert1st { background-position:-185px center; width:190px; }
#cert-logos a.icplat { background-position:-382px center; }
#cert-logos a.icgold { background-position:-465px center; }



/************************************************************
Buttons / links */

/* Buttons */
.button {
	display:inline-block;
	background:#419156;
	color:#fff !important;
	padding:0.6em 0.8em;
	font:10.5pt/1.3 Ubuntu,Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	border:none;
	border-radius:0.3em;
	cursor:pointer;
}
.button.alt {
	background-color:#181a19;
}


/* Arrows */
.button:after,
.arrow:after {
	content:'\203A';
	display:inline-block;
	vertical-align:top;
	font-size:200%;
	line-height:0.6;
	margin:0 0 0 0.2em;
}
.arrow:after {
	color:#007b1d;
}


/************************************************************
Miscellaneous */

/* Text alignment */
.left { text-align:left !important; }
.center { text-align:center !important; }
.right { text-align:right !important; }

/* Font sizes */
small { font-size:90%; }
big { font-size:115%; }

/* Padding */
.pad { padding:1em; }
.topPad { padding-top:1em; }
.bottomPad { padding-bottom:1em; }
.leftPad { padding-left:1em; }
.rightPad { padding-right:1em; }

/* Columns */
.col {
	display:inline-block;
	vertical-align:top;
}


/* Fix extra button padding in Firefox */
input[type="submit"]::-moz-focus-inner {
	border:none;
	padding:0;
	line-height:1;
}


/****** Quote - Staff ****/

.main.col blockquote:before {
	content: "“";
    float: left;
    font: 37.5pt/1 Ubuntu,Arial,Helvetica,sans-serif;
    margin-left: -0.55em;
    color: #007C1E;

}

