﻿header, footer, nav, article, section, aside, figure, figcaption {
	display: block;
}
html {
	height: 101%;
	margin-bottom: 1px;
}
body {
	background-color: #ffffff;
	color: #000000;
	font: normal 0.90em Verdana, Verdana, Geneva, sans-serif;
	padding: 0;
	margin: 0;
	height: 100%;
}
hr {
	background-color: #c0c0c0;
	color: #c0c0c0;
	border: none;
	height: 1px;
}
ul {
	margin: 10px 0 20px 10px;
	padding: 0 0 0 10px;
}
ul li a {
	color: #748a4f;
	text-decoration: none;
	font-weight: bold;
	padding: 0;
}
ul li a:hover {
	color: #808080;
	text-decoration: underline;
}
blockquote {
	background: url('../images/blockquote.png') no-repeat 5px 5px;
	font: italic 0.95em Georgia, Times, "Times New Roman", serif;
	color: #666666;
	margin: 5px;
	padding: 3px 5px 3px 35px;
	text-align: left;
	line-height: normal;
}
blockquote.leftside {
	float: left;
	display: block;
	width: 30%;
	margin-right: 5%;
	border-right: 1px #909090 dashed;
}
blockquote.rightside {
	float: right;
	display: block;
	width: 30%;
	margin-left: 5%;
	border-left: 1px #909090 dashed;
}
table {
	padding: 0;
	border-collapse: collapse;
	font-size: 100%;
	width: 100%;
}
/* ======== TYPOGRAPHY ======== */
a {
	color: #748a4f;
	text-decoration: underline;
	outline: none;
	font-weight: bold;
}
a:hover {
	color: #808080;
	text-decoration: underline;
	font-weight: bold;
}
h1 {
	font: normal 2.20em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #495834;
	letter-spacing: 1px;
	margin: 0.5em 0;
}
h2 {
	font: normal 1.90em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #495834;
	margin: 0.3em 0;
}
h2.top {
	font: normal 2.1em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #703707;
	margin: 0.3em 0;
	letter-spacing: 2px;
}
h3 {
	font: normal 1.70em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #495834;
	margin: 0.5em 0;
	text-align: left;
}
h4 {
	font: normal 1.60em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #505050;
	margin: 0.5em 0;
}
h5 {
	font: normal 1.35em Georgia, Times, "Times New Roman", serif;
	color: #505050;
	margin: 0.5em 0;
}
h6 {
	font: normal 1.20em Georgia, Times, "Times New Roman", serif;
	color: #505050;
	margin: 0.5em 0 0 0;
}
.alternate {
	color: #ffffff;
	background-color: #748a4f;
	background: -webkit-linear-gradient(top, #748a4f, #495834); 
	background: -moz-linear-gradient(top, #748a4f, #495834);
	background: -ms-linear-gradient(top, #748a4f, #495834);
	background: -o-linear-gradient(top, #748a4f, #495834);
	margin: 0.5em 0;
	padding: 1px 10px;
	text-align: center;
	border-radius: 8px;
	box-shadow: 0 4px 4px -2px #333;
}
.button {
	font-size: 0.90em;
	font-weight: normal;
	padding: 4px 6px;
	text-decoration: none;
	background: #505050;
	color: #ffffff;
	border-radius: 8px;
	border: solid 1px #505050;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
	box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.4), 0 1px 1px rgba(0, 0, 0, 0.6);
}
.button:hover {
	background: #748a4f;
	color: #ffffff;
	font-weight: normal;
	text-decoration: none;
	border: solid 1px #748a4f;
	text-decoration: none;
	box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.4), 0 1px 1px rgba(0, 0, 0, 0.6);
}
p.dropcap {
	overflow: hidden;
}
p.dropcap:first-letter {
	color: #000000;
	display: block;
	float: left;
	font: 60px/50px Georgia, Times, "Times New Roman", serif;
	padding: 3px 4px 0 0;
}
ul.list1 li {
	list-style-type: none;
	background: url(../images/bullet01.png) no-repeat 0 3px;
	padding: 1px 0 0 15px;
}
ul.list2 li {
	list-style-type: none;
	background: url(../images/bullet02.png) no-repeat 0 5px;
	padding: 1px 0 0 15px;
}
ul.list3 li {
	list-style-type: none;
	background: url(../images/bullet03.png) no-repeat 0 5px;
	padding: 1px 0 0 18px;
}
ol.leadingzero {
	background: none;
	list-style-position: outside;
	list-style-type: decimal-leading-zero;
}
/* ======== HEADER AREA ======== */
#headerWrapper {
	background: #ffffff url(../images/background.jpg) repeat-x;
	position: fixed;
	width: 100%;
	height: 120px;
	z-index: 9999;
	margin: 0 0 40px 0;
	box-shadow: 0 0 40px rgba(0, 0, 0, 0.6);  
}
header {
	position: relative;
	width: 1080px;
	height: 140px;
	margin: 0 auto;
}
/* ======== LAYOUT RULES ======== */
.wrapper {
	color: #000000;
	width: 1080px;
	max-width: 1080px;
	margin: 0 auto;
	text-align: left;
	padding: 120px 0 0 0;
}
.pagesection {
	clear: both;
	width: 98%;
	padding: 140px 1% 0 1%;
	line-height: 1.4em;
}
.pagination {
	clear: both;
	width: 100%;
	text-align: right;
	padding: 10px 0;
	border-bottom: 1px #c0c0c0 solid; 
}
/* ======== LOGO/SITE NAME AREA ======== */
#logo {
	position: absolute;
	top: 0;
	left: 0;
	height: 55px;
	width: 100%;
	margin: 0;
	padding: 5px 0 0 0;
	text-align: center;
}
#logo h1 {
	font: normal 2.5em 'Philosopher', "Century Gothic", Verdana, Helvetica, sans-serif;
	color: #495834;
	margin: 0;
	padding: 0 0 0 0;
	text-align: center;
}
#logo h1 a, #logo h1 a:hover {
	color: #495834;
	text-decoration: none;
	font-weight: normal;
}
#logo h2 {
	font: italic normal 0.90em Georgia, Times, "Times New Roman", serif;
	color: #505050;
	margin: 0;
	padding: 5px 0 0 0;
	letter-spacing: 1px;
	text-align: center;
}
/* ======== MAIN NAVIGATION AREA ======== */
nav {
	position: absolute;
	top: 80px;
	left: 0;
	width: 100%;
	height: 40px;
	color: #000000;
	margin: 0;
	font-variant: small-caps;
	text-align: center;
}
#nav {
	margin: 0;
	padding: 0;
	list-style: none;
}
#nav li {
	display: inline-block;
	background: transparent;
	position: relative;
	z-index: 500;
	margin: 0 5px;
	padding: 0;
}
#nav li a {
	display: block;
	padding: 12px 10px 11px 10px;
	text-decoration: none;
	font-weight: bold;
	color: #748a4f;
	text-align: left;
}
#nav li a:hover {
	color: #ffffff;
	background-color: #495834;
	background: -webkit-linear-gradient(top, #748a4f, #495834); 
	background: -moz-linear-gradient(top, #748a4f, #495834);
	background: -ms-linear-gradient(top, #748a4f, #495834);
	background: -o-linear-gradient(top, #748a4f, #495834);
}
.selectnav { display: none; }
/* ======== SLIDESHOW AREA ======== */
#sliderwrapper {
	position: relative;
	width: 100%;
	text-align: center;
	padding: 10px 0;
	margin: 30px 0 20px 0;
}
#slider {
	width: 66%;
	margin: 0 auto;
	height: 320px;
	max-height: 320px;
  border: 10px #efefef solid;
  box-shadow: 0 3px 15px #333;
}
.nivoSlider {
	position: relative;
	width: 100%;
	height: auto;
	overflow: hidden;
}
.nivoSlider img {
	position: absolute;
	top: 0px;
	left: 0px;
	max-width: none;
}
.nivo-caption {
	position: absolute;
	right: 0;
	bottom: 0;
	background: #495834;
	color: #fff;
	font-size: 1.1em;
	text-align: center;
	width: 100%;
	z-index: 8;
	padding: 10px;
	overflow: hidden;
	display: none;
	opacity: 0.8 !important;
}
.nivo-caption p {
	padding: 20px;
	margin: 0;
}
/* ======== SIDEBAR AREA ======== */
.sidebarRight {
	float: right;
	width: 28%;
	padding: 0 1%;
	margin: 0 0.50%;
	line-height: 1.4em;
}
/* ======== CONTENT AREA ======== */
.contentLeft {
	float: left;
	width: 66%;
	padding: 0 1%;
	margin: 0 0.50%;
	line-height: 1.5em;
}
/* ======== SECTION BLOCKS ======== */
.contentBox2 {
	float: left;
	width: 46%;
	padding: 0 1%;
	margin: 0 1%;
	line-height: 1.4em;
}
.contentBox3 {
	float: left;
	width: 29.33333%;
	padding: 0 1%;
	margin: 0 1%;
	line-height: 1.4em;
}
.contentBox4 {
	float: left;
	width: 21%;
	padding: 0 1%;
	margin: 0 1%;
	line-height: 1.4em;
}
/* ======== CONTACT FORM ======== */
form.contactform {
	width: 99%;
	text-align: left;
}
.contactform label {
  width: 99%;
  text-align: left;
  font-style: italic;
}
.contactform input {
  width: 99%;
  border: 1px #c0c0c0 solid;
  padding: 3px;
  margin-bottom: 10px;
}
.contactform textarea {
  width: 99%;
  border: 1px #c0c0c0 solid;
  padding: 3px;
  resize:none;
}
.contactform .submit {
  width: 100px;
  margin: 10px 0 0 0;
  cursor: pointer;
	font-size: 0.90em;
	font-weight: normal;
	padding: 2px 6px;
	text-decoration: none;
	background: #748a4f;
	color: #ffffff;
	border-radius: 8px;
	border: solid 1px #748a4f;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
	box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.5), 0 1px 3px rgba(0, 0, 0, 0.8);
	-webkit-appearance: none;
}
.contactform .submit:hover {
  width: 100px;
  margin: 10px 0 0 0;
  cursor: pointer;
	font-size: 0.90em;
	font-weight: normal;
	padding: 2px 6px;
	text-decoration: none;
	background: #444444;
	color: #ffffff;
	border-radius: 8px;
	border: solid 1px #444444;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
	box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.5), 0 1px 3px rgba(0, 0, 0, 0.8);
	-webkit-appearance: none;
}
/* ======== FOOTER AREA ======== */
footer {
	background: #ffffff url('../images/footerbg.jpg') no-repeat;
	background-size: 100%;
	width: 100%;
	padding: 20px 0;
	margin-top: 50px;
	text-align: center;
}
/* ======== IMAGES ======== */
img {
	border: none;
}
.galleryimage { /* allows the large product image to scale with the size of the viewport */
	background-color: #ffffff;
  width: 200px;
  height: auto;
  margin: 5px 10px;
  border: 10px #ffffff solid;
  box-shadow: 0 0 10px #333;
}
.galleryimage:hover {
	background-color: #ffffff;
	opacity: 0.5;  
}
.imageleft {
	margin: 0 10px 0 0;
	float: left;
}
.imageright {
	margin: 0 0 0 10px;
	float: right;
}
.image-border, .image-googlemap {
	background-color: #ffffff;
	margin: 2px 0;
	padding: 3px;
	border: 1px #d0d0d0 solid;
}
.imageleft-border {
	background-color: #ffffff;
	margin: 0 10px 0 0;
	padding: 3px;
	float: left;
	border: 1px #d0d0d0 solid;
}
.imageright-border {
	background-color: #ffffff;
	margin: 0 0 0 10px;
	padding: 3px;
	float: right;
	border: 1px #d0d0d0 solid;
}
.image-round {
	border-radius: 50%;
	box-shadow: 0 0 10px #444;
	border: 1px #ffffff solid;
	background-color: #ffffff;
}
.image-catalog {
	border: 1px #d0d0d0 solid;
	background-color: #ffffff;
	padding: 5px;
	margin: 5px 10px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.4);
}
/* ======== MISC. CLASSES ======== */
p.home {
	background: transparent url('../images/home.png') 0 3px no-repeat;
	padding: 0 0 5px 25px;
}
p.phone {
	background: transparent url('../images/phone.png') 0 2px no-repeat;
	padding: 0 0 5px 25px;
}
p.email {
	background: transparent url('../images/email.png') 0 3px no-repeat;
	padding: 0 0 5px 25px;
}
p.hours {
	background: transparent url('../images/clock.png') 0 3px no-repeat;
	padding: 0 0 5px 25px;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.small {
	font-size: 0.85em;
}
.clearsmall, .clear {clear:both; display:block; overflow:hidden; visibility:hidden; width:0; height:0}


/* ================ MEDIA QUERIES ============== */

/* ================ PHONE/portrait ============== */
@media screen and (max-width: 320px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	#logo h1 {font-size: 2.1em;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	.js #nav {display: none;}
	.js .selectnav {display: block;font-variant: small-caps;}
	select#selectnav1 {background-color: transparent; color: #748a4f; width: 240px; margin: 8px auto 0 auto; padding: 2px 8px 2px 8px; font-size: 1.2em; border: none;}
	select#selectnav1 option {background-color: #efefef; color: #000000; font-size: 0.80em; padding: 1px 10px;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0 10px 0;}
	*#slider {width: 90%; height: auto; margin: 0 auto; border: 5px #efefef solid;}
	.nivo-caption {visibility: hidden; display: none;}
	.nivo-caption p {visibility: hidden; display: none;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 40%; height: auto; border-width: 3px;}
	img.image-googlemap {width: 90%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}
	.contentBox2, .contentBox3, .contentBox4, .sidebarRight, .contentLeft {width: 98%; margin: 1%; padding: 0;}
	#footer {width: 100%}

}

/* ================ PHONE/landscape ============== */
@media screen and (max-width: 480px) and (min-width: 321px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	#logo h1 {font-size: 2.1em;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	.js #nav {display: none;}
	.js .selectnav {display: block;font-variant: small-caps;}
	select#selectnav1 {background-color: transparent; color: #748a4f; width: 240px; margin: 8px auto 0 auto; padding: 2px 8px 2px 8px; font-size: 1.2em; border: none;}
	select#selectnav1 option {background-color: #efefef; color: #000000; font-size: 0.80em; padding: 1px 10px;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0 10px 0;}
	*#slider {width: 90%; height: auto; margin: 0 auto; border: 5px #efefef solid;}
	.nivo-caption {visibility: hidden; display: none;}
	.nivo-caption p {visibility: hidden; display: none;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 35%; height: auto; border-width: 5px;}
	img.image-googlemap {width: 70%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}
	.contentBox2, .contentBox3, .contentBox4, .sidebarRight, .contentLeft {width: 98%; margin: 1%; padding: 0;}
	#footer {width: 100%}

}

/* ================ SMALL TABLET/portrait ============== */
@media screen and (max-width: 623px) and (min-width: 481px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	#nav li a {padding: 12px 2px 11px 2px;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0;}
	#slider {width: 90%; height: auto; margin: 0 auto;}
	.nivo-caption {font-size: 1.0em;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 30%; height: auto; border-width: 5px;}
	img.image-googlemap {width: 60%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}
	.contentBox2  {width: 48%; margin: 1%; padding: 0;}
	.contentBox3, .contentBox4, .sidebarRight, .contentLeft {width: 98%; margin: 1%; padding: 0;}
	#footer {width: 100%}

}

/* ================ SMALL TABLET/landscape ============== */
@media screen and (max-width: 800px) and (min-width: 769px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0;}
	#slider {width: 90%; height: auto; margin: 0 auto;}
	.nivo-caption {font-size: 1.0em;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 20%; height: auto; border-width: 5px;}
	img.image-googlemap {width: 90%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}

}

/* ================ LARGE TABLET/portrait ============== */
@media screen and (max-width: 768px) and (min-width: 624px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0;}
	#slider {width: 90%; height: auto; margin: 0 auto;}
	.nivo-caption {font-size: 1.0em;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 20%; height: auto; border-width: 5px;}
	img.image-googlemap {width: 90%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}

}

/* ================ DESKTOP/LAPTOP ============== */
@media screen and (max-width: 1080px) and (min-width: 801px) {

	.wrapper {width: 98%;}
	header { width: 100%;}
	/* ===== navigation ===== */
	nav {position: absolute; left: 1%; width: 98%;}
	/* ===== slideshow ===== */
	#sliderwrapper {width: 100%; height: auto; padding: 10px 0;}
	#slider {width: 90%; height: auto; margin: 0 auto;}
	.nivo-caption {font-size: 1.0em;}
	/* ===== miscellaneous ===== */
	.alternate {	margin: 0.5em 0;}
	.galleryimage {width: 20%; height: auto; border-width: 5px;}
	img.image-googlemap {width: 90%;}
	blockquote.leftside, blockquote.rightside {visibility: hidden; display: none;}

}

