/* -------------------------------------------------------------- 
  	GENERAL CROSS-BROWSER RESET 
-------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body { 
 /* line-height: 1.5; */
}

/* Tables still need 'cellspacing="0"' in the markup. */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
table, td, th { vertical-align: middle; }

/* Remove possible quote marks (") from <q>, <blockquote>. */
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }

/* Remove annoying border on linked images. */
a img { border: none; }

    
body {
	margin: 0;
	height: 100%;
	color: #000000;
	font: 62.5% arial, helvetica, sans-serif;
	text-align: center;
	background: #fff url(../images/design/body-bg.jpg) 0 0;
	padding-top: 5px;
}

/* Headings
-------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
    color: #0071BC;
	margin:  0;
}  

h1 { 
	font-size: 30px; 
	font-weight: 400; 
	margin: 20px 0 10px 0;  
	font-family: "pragmatica-web-condensed",sans-serif; 
}

h2 { 
	font-size: 24px; 
	font-weight: 400; 
	margin: 20px 0 8px 0;  
	font-family: "pragmatica-web-condensed",sans-serif; 
}

h3, h3 a { 
	font-size: 20px; 
	font-family:"pragmatica-web-condensed",sans-serif; 
	font-weight: 400; 
	margin: 20px 0 10px 0; 
}

h4 { 
	font-size: 16px; 
	margin: 0 0 5px 0; 
	font-family: "pragmatica-web-condensed",sans-serif; 
	font-weight: 400; 
	line-height: 22px;
}

h4.date { 
	color: #3a3a3a; 
	font-family: "pragmatica-web-condensed",sans-serif; 
	font-size: 12px; 
	font-weight: 400; 
	margin-top: 10px;
}

h5 { 
	font-size: 14px; 
	margin-bottom: 15px; 
	font-family: "pragmatica-web-condensed",sans-serif; 
	font-weight: 400; 
	line-height: 18px; 
}

.address h1{
	color: #fff;
	font-family: "pragmatica-web-condensed",sans-serif;
	text-transform:uppercase;
	font-size:16px;	
	margin-bottom: 5px;
	font-weight: 400;
	margin-top: 0;
}
h1 a, h1 a:link { color: blue; }
h2 a, h2 a:link { color: #3a3a3a; }
h3 a, h3 a:link { color: #3a3a3a; }


h1 a:hover { color: blue; }
h2 a:hover { color: #2c6e9e; }
h3 a:hover { color: #2c6e9e; }


/* Text Elements
-------------------------------------------------------------- */

p { margin: 12px 0; line-height: 18px; font-size: 12px;}
a { text-decoration: underline; }
a,a:link { color: #0071BC; text-decoration: none;  }
a:visited { color: #0071BC; }
a:hover,a:active,a:focus { color: #F68B26; }


/* Lists
-------------------------------------------------------------- */

li ul, 
ul, ol      { margin: 0 1.5em 1.5em 1.5em; line-height: 16px; }
ul li { margin: 5px 0;}
ul          { list-style-type: disc; }
ol          { list-style-type: decimal; }

dl          { margin: 0 0 1.5em 0; }
dl dt       { font-weight: bold; }
dd          { margin-left: 1.5em;}


/* -------------------------------------------------------------- 
	PAGE STRUCTURE
	Elements that make up the skeleton of the layout and holds things together
----------------------------------------------------------- */

.address {
	width: 916px;
	margin: 0 auto;
	text-align: right;

}

#page {
	background: url(../images/design/page_bg.jpg) 0 0 repeat-y;
	font-size: 1.2em; /* this, along with body font size of 62.5% renders type approximately 12px in size across all browsers */
	margin: 0 auto;
	padding: 0;
	position: relative;
	width: 916px;
	text-align: left;	
}

#wrapper {
	background: url(../images/design/wrapper_bg.jpg) 0 0 no-repeat;
}

#header {
	height: 105px;
	position: relative;
}

#contentMain {
	min-height: 485px;
	margin-top: 25px;
}

#footer {
	clear: left;
	position: relative;
	height: 134px;
	background: url(../images/design/footer.gif) 0 0 no-repeat;
}
	
	
/* -------------------------------------------------------------- 
	PAGE STRUCTURE ELEMENTS
	Elements  such as logos, search bars, and any other design element repeated throughout the site, but doesn't effect the structural layout
----------------------------------------------------------- */

p.tagline {
	position: absolute;
	top: 20px;
	left: 25px;
	text-indent: -9999px;
	display: block;
	height: 45px;
	width: 184px;
	background: url(../images/design/tagline.gif) 0 0 no-repeat;
}

#logo {
	width: 328px;
	height: 56px;
	display: block;
	background: url(../images/design/logo.gif) 0 0 no-repeat;
	position: absolute;
	top: 30px;
	right: 0;
	margin: 0;
	padding: 0;
	font-size: 1em;
}

#logo a {
	width: 328px;
	height: 56px;
	display: block;
	text-indent: -9999px;
}

p.copyright {
	width: 916px;
	margin: 0 auto;
	text-align: left;
	color: #FFFFFF;
	padding: 5px 0 4em 0;
}

/* -------------------------------------------------------------- 
	ENTRY PAGE ELEMENT STYLES
	Styles for elements specific to the entry page
----------------------------------------------------------- */
#entryColumnMain,
#entryColumnSub { 
	float: left;
	padding-top: 25px;
	
}
#entryColumnSub h3 {
	margin: 0;
}

#entryColumnSub h4.date {
	margin-top: 10px;
}

#entryColumnSub h4 {
	margin: 0 0 5px 0;
	line-height: 18px;	
}
#entryColumnSub {
	width: 204px;
	margin-right: 20px;
	padding-top: 25px;
	position: relative;
	padding-left: 20px;
	padding-right: 20px;
}

#entryColumnMain {
	width: 590px;
	margin-right: 60px;
}

/* -------------------------------------------------------------- 
	Homepage - Product Spotlight
----------------------------------------------------------- */

#entryColumnMain.spotlight {
	padding-top: 0;	
	float: left;

}

.spotlight-details {
	width: 460px;
	float: left;
}

.spotlight-details p {
	margin: 5px 0;
}

#entryColumnMain .spotlight  {
		border-bottom: none;
}


#entryColumnMain .spotlight h2 {
		margin: 10px 0;
		font-size: 20px;
}


#entryColumnMain .spotlight h3 {
		margin: 0;
		font-size: 18px;
}

#entryColumnMain .spotlight img{
	margin-top: 25px;
	float: left;
	margin-right: 15px;
	margin-bottom: 10px;
}

#entryColumnMain h2 {
	margin-bottom: 1em;
}
	

	
/* -------------------------------------------------------------- 
	INNER PAGE ELEMENT STYLES
	Shared styles for elements specific to the inner pages
----------------------------------------------------------- */

.product img { float: left; text-align: left; margin-right: 15px; margin-top: 15px; padding-top: 30px;}
.product p {margin-top: 0; width: 200px; float: left; }
.product {margin: 25px 0; border-bottom: 1px solid #ebebeb; padding-bottom: 20px;}

#product-list :first-child { margin-top: 0;}
#innerColumnMain,
#innerColumnSub,
#innerColumnPhotos {  float: left; }

#innerColumnMain {
	width: 397px;
	 padding-top: 25px;
	 margin-right: 15px;
}


#innerColumnSub {
	width: 189px;
	padding: 40px 30px 0 10px; 
}

#innerColumnSub li, .specials li {
	margin: 10px;
}

#innerColumnSub .innerContent {
	padding-left: 30px;
}
	
/* -------------------------------------------------------------- 
	NAVIGATION
----------------------------------------------------------- */

#mainNav {
	list-style: none;
	position: absolute;
	display: block;
	width: 333px;
	top: 13px;
	left: 273px;
	 font-family: "pragmatica-web-condensed",sans-serif;
	text-transform:uppercase;
	color: #0071BC;
}

#mainNav li {
		float: left;
		display: block;
		margin-right: 15px;
	}
		
#mainNav li a {
	display: block;
	letter-spacing:.1em;
	text-transform:uppercase;
	color: #0071BC;	
	font-size: 14px;		
	 font-family: "pragmatica-web-condensed",sans-serif;
	font-style: normal;
	font-weight: 400;
}

#mainNav li a:hover {
	color: #9FABB2;
}


ul.products {
	list-style: none;
	margin: 0 0 0.5em 0;	
}

#address h4{
	color: black;	
}

#map, #address {
	margin-top: 20px;
	float: left;
	
}
#address {
	width: 220px;
	line-height: 22px;	
	color: black;
}

#map {
	width: 360px;
	margin-top: 42px;
		
}
#map iframe {
	border: 2px solid #EEE;
}
.newsletter label {
	font-size: 11px;
}

input[type="text"] {
	margin: 8px 0 0 0;	
	padding: 6px 4px;
	width: 190px;
	font-size: 11px;
	border: 1px solid #C4C9CD;
	
}

input[type="submit"] {
	margin: 12px 0 0 0;	
	padding: 4px 7px;
}

.side {
	margin-bottom: 30px;	
	border-bottom: 1px solid #dddddd;
	padding-bottom: 30px;
}

.repeatable {
	background-color:	#f8f8f8 !important;
} 
/* -------------------------------------------------------------- 
	MISC
----------------------------------------------------------- */

.floatLeft { float: left; }
.floatRight { float: right; }
.clearLeft { clear: left; }
.clearRight { clear: right; }
.clear {clear: both;}
.first { margin-left:0; padding-left:0; }
.last  { margin-right:0; padding-right:0; }
.top   { margin-top:0; padding-top:0; }
.bottom { margin-bottom:0; padding-bottom:0; }


/* ----------------
	CLEAR FLOATS WITHOUT EXTRA HTML MARKUP
	add this class to the element that needs to be cleared - This works in modern browser that support the after pseudo element
    ------------- */ 
.clearFix:after { 
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden; 
}

.clearfix:before,.clearfix:after{content:"\0020";display:block;height:0;overflow:hidden}.clearfix:after{clear:both}.clearfix{zoom:1}.clear{clear:both;display:block;visibility:hidden;height:0;overflow:hidden;width:0;border:0px
solid black}
