/* modification of base elements, and classes dedicated to an element */

body {
	margin: 0px;
	background: #ececec url(/shop/images/page_bg.jpg) fixed top left repeat-x;
	text-align:center; /* for IE block centering */ 
	font: 12px Verdana, Arial, Helvetica, sans-serif ;
	color: #333333;
}

body.editor {
	float: none !important;
	width: auto !important;
	margin:0px !important;
	text-align:left !important;
	background-color:#FFFFFF !important;
}

body.editor p {
	padding: 3px 0px !important;
}

body div { /*make :firstchild when pseudoclass better supported */
	margin: 0px auto; /* center in not-IE */ 
	text-align: left; /* counter inheritance of IE block centering */
}

h1, h2, h3 {
	width: 100%;
	color: #5678a2;
	padding:0px;
	padding-top: 2px;
	line-height: 22px; /* 25px - 4px padding */
	margin:0px;
}

h1 {
	font-size: 15px;
}

h2 {
	font-size: 14px;
}

h3{
	font-size: 13px;
}
/* template headers are tagged with this in case we don't want the above to be the default style */
.wepcom {

}

p {
	margin: 3px 0px;
}

p.menu {
	margin: 0px !important;
	font-weight: bold;
	font-size: 14px;
	padding-top: 2px;
	line-height: 22px; /* 25px - 4px padding */
}

a:link {
	color: #5678a2;
	text-decoration: none;
}
a:visited {
	text-decoration: none;
	color: #5678a2;
}
a:hover {
	text-decoration: underline;
	color: #3366FF;
}
a:active {
	text-decoration: none;
}

a img {
	border: none;
}

a .header-text
{
	display: block;
	position: absolute;
	font-size: 75px;
	width: 220px;
	text-align: left;
	top: 20px;
}

a:hover .header-text,
a:active .header-text

{
	color: #f58220;
}

/* thumbnail gallery lists */
ul.thumb_gallery {
	padding:0px;
	margin: 0px auto;
	list-style-type: none;
	list-style-position: inside;
	text-align:center;
}

ul.thumb_gallery li, ul.thumb_gallery li.vert {
	position: relative;
	top: 0px;
	float: left;
	display:block;
	width: 110px;	/* 90 px max thumbnail width + 2x10px padding */
	height: 130px; /* 90 max thumbnail height + 40px for title - three lines */
	padding: 10px;
	margin: 0px;
	text-align:center;
	overflow:hidden;
	background-image:none;
}

ul.thumb_gallery li.clear { /* cludge to make things line up in IE6 */
	width: 100%;	
	height: 0px; 
	padding: 0px;
	margin: 0px;
}

ul.thumb_gallery li a, ul.thumb_gallery li.vert a {
	display: block;
	width: 90px;
	padding: 0px 10px;
	margin:0px auto;
}

ul.thumb_gallery li.horiz a {
	display: block;
	width: 90px;
	padding: 10px 10px; /* top/bottom padding = (90px - 70px)/2 */
	margin:0px auto;
}

/* thumbnail search lists */
a.thumb {
	position: relative;
}

* html a.thumb {}

* html a.thumb:hover { background-color:transparent;}

* html a.thumb:hover img { position: relative; left: 0px; }

a.thumb span{ /*CSS for enlarged image*/
	position: absolute;
	background-color: lightyellow;
	padding: 0px;
	margin: 0px;
	left: -1000px;
	border: none;
	visibility: hidden;
	text-decoration: none;
}

a.thumb span img{ /*CSS for enlarged image*/
	border-width: 0;
	padding: 2px;
}

a.thumb:hover span{ /*CSS for enlarged image on hover*/
	display: inline;
	visibility: visible;
	padding: 5px;
	top: -160px;
	left: -140px; /*position where enlarged image should offset horizontally */
	border: 1px dashed gray;
	z-index:50;
}

* html a.thumb:hover span{top: -60px; cursor:pointer;}

*+html a.thumb:hover span{top: -60px; cursor: pointer;}

ul.thumb_search {
	padding:0px;
	margin: 0px auto;
	list-style-type: none;
	list-style-position: inside;
	text-align:center;
	z-index:10;
}

ul.thumb_search li {
	position: relative;
	top: 0px;
	left: 0px;
	float: left;
	display:block;
	width: 24%;	/* 4 per line, allow 1% for border and IE6 overflow */
	height: 145px; /* 90 max thumbnail height + 10px padding + 35px for title - three lines */
	padding: 0px;
	margin: 3px 0px 0px 3px;
	text-align:center;
	overflow:visible;
	background-image:none;
}

ul.thumb_search li a.thumb {
	display: inline;
	width: 110px;
	height: 110px;
	overflow:hidden;
	text-align:center
}

ul.thumb_search li a.title {
	display: inline;
	width: 104px; /* +padding */
	height: 40px;
	line-height: 13px;
	overflow:hidden;
	text-align:center;
	padding: 0px 3px;
}

/*####################################################################################*/
/* classes which may be affixed to a variety of elements */
 
/* two col classes for splitting linear content into two-column display. Specifics set with id .col... rules in the appropriate sections */
.col_left {
	display:block;
	float:left;
	padding: 2px;
	line-height: 1.5em;
	clear:left;
}

.col_right {
	display:block;
	float:left;
	padding: 2px;
	line-height: 1.5em;
	clear: right;
}

/* fix form layout */
* html #cust_details p { width: 99%; } /* IE6 */
*+html #cust_details p { width: 99%; } /* IE 7 */

/* container usually used for sections of the nav column - several extensions located in that section */ 
.box { 
	width: 100%;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	overflow: hidden;
}

.box p {
	margin: 2px 0px;
}
.box ul {
	width: 100%;
	padding: 0px;
	margin: 0px;
	margin-bottom: 5px;
	list-style-type: none;
}

.box ul li {
	width: 140px;
	margin: 0px;
	padding: 0px;
	padding-left: 20px;
}

* html .box ul li { 
	margin-right: -24px;
}

.box a {
	margin: 0px;
	padding: 0px;
}

/*---*/
.wepcom {
	text-align: center;
	background-image: url(/shop/images/button_bg.jpg);
}

.button {
	background-image: url(/shop/images/button_bg.jpg);
	width: 102px;
	padding: 4px;
	text-align: center;
	overflow:hidden;
	height: 17px; /* 25px - 2x4px padding */
}



/*####################################################################################*/
/* ids and specific modifications to classes in them */
#table_main_outline {
	border-top-style: none;
	background-color: #FFFFFF;
	padding: 0px;
	width:780px;
	z-index:0;
}

* #table_main_outline { /* chop off extra margins in IE 6 */
	overflow:hidden;
}

#shop_banner {
	width: 100%;
	height: 80px;
	border: none;
	padding: 0px;
	margin: 0px;
	z-index:0;
	text-align:center;
}

#fixed_nav {
	width: 100%;
	border: none;
	padding: 0px;
	margin: 10px auto;
	z-index:0;
}

#fixed_nav ul {
	margin: 0px 5px;
	padding: 0px;
}

* html #fixed_nav ul { /* IE 6 */
	margin: 0px;
}

#fixed_nav ul li.button {
	display: block;
	float: left;
	margin: 0px 8px;
}

#fixed_nav ul li a {
	position:relative;
	display: block;
	width: 100%;
}

/* start navigation column */

#navigation {
	float:left;
	width:160px;
	margin: 10px;
	margin-top: 0px;
	padding: 0px;
	z-index: 10;
}

* html #navigation { /* IE 6 */
	margin: 0px 5px 5px;
}

/* products menu, also used for pages menu */	
#navigation a.cat {
	text-decoration: none;
	font-size: 13px;
}

#navigation .box > ul li {
	background-image:url(/shop/images/arrow.gif);
	background-position: .5em .3em;
	background-repeat:no-repeat;
}

#navigation .box ul.subcat{
	margin-left: 15%;
	width: 85%;
	list-style-type: none;
}

* html .box ul.subcat { /*IE6 remove margin */
	position: relative;
	width: 100%;
	left: -15%;
}
*+html .box ul.subcat { /*IE7 remove margin */
	position: relative;
	width: 100%;
	left: -15%;
}

#navigation .box ul.subsub li{
	background-image: none;
	padding-left: 5px;
}

#navigation .box a.subsub {
	text-indent: 0px;
}

#navigation .box ul.subsub{
	margin-left: 5%;
	width: 90%;
	list-style-type: none;
}

#navigation .box ul.subcat li{
	background-image: none;
	padding-left: 5px;
}

#navigation .box a.subcat {
	text-indent: 0px;
}

#navigation .box ul.thumb_gallery li {
	height: auto;
	padding: 2px 10px 8px;
	font-size: smaller;
	background-image: none;
}

#navigation .box ul.thumb_gallery li a {
	height: auto;
}
/* sidebar thumbnail */
#navigation .box ul.thumb_sidebar {
	padding:0px;
	margin: 0px auto;
	list-style-type: none;
	list-style-position: inside;
	text-align:center;
}

#navigation .box ul.thumb_sidebar li {
	position: relative;
	top: 0px;
	float: left;
	clear:left;
	display:block;
	height: 132px; /* 90 max thumbnail height + 10px padding + 30px for title - two lines */
	width:95%;
	padding: 0px;
	margin: 3px 0px 0px 3px;
	text-align:center;
	overflow:hidden;
	background-image:none;
}

ul.thumb_sidebar li.border {
	border:none;
}

ul.thumb_sidebar li a.thumb {
	display: inline;
	width: 110px;
	height: 110px;
	overflow:hidden;
	text-align:center
}

ul.thumb_sidebar li a.title {
	display: inline;
	width: 104px; /* +padding */
	height: 40px;
	line-height: 13px;
	overflow:hidden;
	text-align:center;
	padding: 0px 3px;
	clear:left;
}

/*  */
/* end navigation */

/* non-catalog pages */
#page_display {
	float: right;
	width: 568px;
	z-index: 5;
	margin: 10px;
	margin-top: 0px;
	padding: 0px;
}

#page_display p {
	margin: 5px;
}

#page_display .col_left {
	width: 35%;
	text-align: right;
	margin-top: 2px;
}

#page_display .col_right {
	width: 63%;
	padding: 0px;
}

#page_display table {
	margin: 5px;
	width: 558px;
}

#page_display th {
	margin: 0px;
	vertical-align:middle;
	height: 22px;
}

#page_display a.button {
	display:inline-block;
	width: 102px;
	margin: 0px; 
	text-decoration: none;
}

* html #page_display a.button { /* IE 6 */
	position:relative;
	top: 5px;
}

*+html #page_display a.button { /* IE 7 */
	position:relative;
	top: 5px;
}

#page_display input, #page_display select {
	position: relative;
	top: 3px;
}

* html #page_display select { /* IE6 */
	left: 5px;
}

*+html #page_display select { /* IE7 */
	left: 5px;
}

/* category pages */

#shop_display {
	float: right;
	width: 580px;
	z-index: 5;
	margin: 10px;
	margin-top: 0px;
}

#shop_display .thumb_gallery {
	width: 520px;
}

#shop_display .d_thumb_gallery {
	width: 580px;
	margin: 0px;
}

#shop_display .d_thumb_gallery .product {
	display: block;
	float: left;
	width: 270px;
	height: 150px;
	overflow: hidden;
	margin: 10px 0px 10px 10px;
	padding: 0px;
	
}

#shop_display .d_thumb_gallery .product h2 {
	font-size: 1em;
	margin: 5px 10px;
	height: 2em;
	overflow: hidden;
}

#shop_display .d_thumb_gallery .img {
	display: block;
	float: left;
	margin: 0px;
	margin-left: 10px;
	padding: 0px;
	padding-top: 10px;
	text-align: center;
}

#shop_display .d_thumb_gallery .act {
	display: block;
	float: right;
	width: 120px;
	margin: 0px;
	padding: 0px 10px;
}

* html #shop_display .d_thumb_gallery .act { /* IE 6 */
	padding: 0px;
}

#shop_display .d_thumb_gallery .act a.button, #shop_display .d_thumb_gallery .act .price {
	text-align:center;
}

#shop_display .d_thumb_gallery .act a.button, #shop_display .d_thumb_gallery .act p.button {
	display:block;
	width: 102px;
	margin: 5px;
	padding: 4px;
}



.cat_product {
	width: 100%;
	padding:0px;
	margin:0px;
}

.cat_thumb {
	float: left;
	width: 90px;
	margin: 4px;
	padding: 5px;
	text-align:center;
	height: 90px;
	overflow: hidden;
}

.cat_thumb a {
	vertical-align:middle;
}

.cat_desc {
	float: left;
	margin: 4px;
	padding: 5px;
	text-align: left;
	width: 314px; /* 580px - 2*4px padding - 90px - 2*5px margin - 120px - 4*5px margin - 4*5px padding - 2x */
	height: 90px;
	overflow: hidden;
}

.cat_desc h2 {
	background-image: none;
}

.cat_desc_2 { /* display store */
	position:relative;
	float: left;
	margin: 4px;
	padding: 5px;
	text-align: left;
	width: 450px; 
	height: 90px;
	overflow: hidden;
}

* html .cat_desc_2 { /* IE 6 */
	width: 440px;
}


.cat_act {
	float:left;
	width: 120px;
	margin: 4px;
	padding: 0px;
	text-align:center;
	height: 100px;
	overflow: hidden;
}

.cat_act a.button, .cat_act p.button, .cat_disp_link a.button, .prod_act_back a.button {
	display:block;
	width: 102px;
	margin: 5px;
	padding: 4px;
}

p.cat_disp_link {position: absolute; bottom: 0px; left: 0px;} /* display type 2 */


a.strong{
	font-weight: bold;
}

a.price{
	display:block;
	font-weight:bold;
	margin: 0px;
	padding: 0px;
}

p.price {
	font-weight: bold;
	color: #5678a2;
}

.paging {
	margin: 0px auto;
	padding: 5px;
	text-align: center;
}

.paging ul {
	margin: 0px; 
	padding: 0px;
}

.paging li {
	display:inline;
}

.paging .button {
	display: block;
	float: left;
	position:relative;
	left: 30%;
	margin: 2px;
}
/* end category pages */

/* individual product (also uses several styles from categories)*/
.prod_thumb {
	float: right;
	width: 90px;
	margin: 0px 0px 5px 5px;
	padding: 5px;
	text-align:center;
	height: 90px;
	overflow: hidden;
}

.prod_thumb a {
	vertical-align:middle;
}

p.prod_act_back {float:right; width:120px;margin-left:10px;}
/* div.prod_thumb {clear:right; margin-top:10px;margin-left:10px;} */

.prod_desc {
	float: left;
	margin: 5px 0px;
	padding: 0px;
	text-align: left;
	width: 100%;
	height: auto;
	min-height: 90px;
	overflow: hidden;
}

.prod_desc .col_left {
	width: 40%;
	text-align:left;
}

.prod_desc .col_right {
	width: 56%;
	text-align:left;
}

.prod_act {
	float:right;
	width: 120px;
	margin: 0px 0px 5px 5px;
	padding: 0px;
	text-align:center;
	height: 100px;
	overflow: hidden;
}

.prod_act a.button, .prod_act p.button  {
	display:block;
	width: 102px;
	margin: 5px;
	padding: 4px;
}

#prod_images {
	width: 100%;
	text-align:center;
}

#prod_images img {
	display: block;
	margin: 10px auto;
}

#prod_video, #prod_audio {
	width: 100%;
	text-align:center;
	margin-bottom: 10px;
}

#prod_video object, #prod_audio object {
	display: block;
	margin: 10px auto;
}

/* shopping cart (also uses several styles from categories)*/

.cart_product {
	width: 100%;
	padding:0px;
	margin:0px;
}

.cart_thumb {
	float: left;
	width: 90px;
	margin: 4px;
	padding: 5px;
	text-align:center;
	height: 90px;
	overflow: hidden;
}

.cart_thumb a {
	vertical-align:middle;
}

.cart_desc {
	float: left;
	margin: 4px;
	padding: 5px;
	text-align: left;
	width: 320px; 
	height: auto;
	min-height: 90px;
	overflow: hidden;
}

* html .cart_desc { /* IE 6 */
	width: 314px;
}

.cart_desc h2 {
	background-image: none;
}

.cart_desc .col_left {
	width: 33%;
	text-align:left;
}

.cart_desc .col_right {
	width: 64%;
	text-align:center;
}

.cart_act {
	float:left;
	width: 120px;
	margin: 4px;
	padding: 0px;
	text-align:center;
	height: 100px;
	overflow: hidden;
}

.cart_act a.button {
	display:block;
	width: 102px;
	margin: 5px;
	padding: 4px;
}

.cart_summary {
	float: left;
	margin: 4px;
	padding: 5px;
	text-align: left;
	width: 430px; /* 314px + 90px + 2*4px padding + 2*5px margin */	
	min-height: 90px;
	overflow: hidden;
}

* html .cart_summary { /* IE 6 */
	width: 424px;
}

.cart_summary .col_left
{
	width: 50%;
	text-align:left;
}

.cart_summary .col_right {
	width: 48%;
	text-align:center;
}
/*end shopping cart */

/* add to cart */

label.option {
	display:block;
}

label.option span {
	display: block;
	float: left;
	width: 150px;
	text-align:right;
	clear: left;
	height: 2em;
	padding-right: 5px;
}

label.option select {
	display: block;
	float: left;
}

/* checkout */
#checkout {
	float: right;
	width: 580px;
	z-index: 5;
	margin: 10px;
	margin-top: 0px;
}

#checkout table {
	text-align: center;
	margin: 10px auto;
}

#checkout th {
	font-size: 14px;
	color: #5678a2;
}

#checkout > p {
	padding: 4px;
}

#checkout .aggregate {
	float: right;
	width: 272px;
	margin: 5px 8px;
	text-align: center;
}

* html #checkout .aggregate { /* IE 6 */
	width: 260px;
}

#checkout .aggregate .col_left {
	width: 60%;
	font-size: 14px;
	color: #5678a2;
	text-align:left;
}

#checkout .aggregate .col_right {
	width: 36%;
	text-align:center;
}

#checkout #pay_options {
	display: table;
	margin: 0px auto;
	padding: 0px;
	text-align:center;
}

#checkout #pay_options ul {
	display: table-row;
	width: 100%;
	list-style-type:none;
	margin: 10px auto;
	padding: 0px;
}
#checkout #pay_options ul li {
	display:table-cell;
	margin: 0px;
	padding: 10px 0px;
	text-align:center;
	width: 130px;
}

#checkout #pay_options ul li a:hover img {
	margin-bottom: -1px;
} 


/* IE fixes */
* html #checkout ul li {
	display: inline; padding: 0px 15px;
}
*+html #checkout ul li{
	display: inline; padding: 0px 15px;
}
/* end IE */

#checkout_cust_details {
	width: 768px;
	margin: 5px;
}

#checkout_cust_details li {
	list-style-type:disc;
	padding: 2px;
}

#checkout_cust_details .col_left {
	width: 32%;
	padding: 2px;
	text-align: right;
}

#checkout_cust_details .colright {
	width: 70%;
	text-align: left;
}

#checkout_cust_details a.button {
	display:block;
	width: 204px;
	margin: 5px;
	padding: 4px;
}

/* end checkout */

/* customer account  */

#page_display ul.customer_nav {
width: 100%;
list-style-type: none;
margin: 0px;
padding: 0px;
}

#page_display ul.customer_nav li {
display: block;
float: right;
}

#page_display ul.customer_nav li a {
display: block;
width: 102px;
padding: 4px;
margin: 0px 2px;
}

/* end customer account */

#footer {
	width: 780px;
	margin: 20px auto;
	text-align: center;
	background-color: #FFFFFF;
}

#wep_link {
	text-align: center;
	margin: 0px auto;
	padding:0px;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-size:10px;
	color: #ADADAD;
}

#wep_link a:link, #wep_link a:visited {
	color:#ADADAD;
	text-decoration: none;
}

#wep_link a:hover, #wep_link a:active {
	color:#999999;
	text-decoration: underline;
}

/*####################################################################*/
/*general styles/overrides - may have to overwrite any of above styles*/


.border {
	border: 1px solid #dadada;
}

.left {
	text-align: left;
}

.center {
	text-align:center;
}

.right {
	text-align: right;
}

.alert {
	font-weight: bold;
	text-align: center;
	color: #FF0000;
}

.compact {
	 font-size:smaller; 
	 letter-spacing:-1px;
}

.clear {
	display: block;
	width: 100%;
	height: 1px;
	clear: both;
}

/* Slick slideshow css overrides */
.slick-slide:focus, .slick-arrow:focus
{
	outline: none;
}

.slick-slide img
{
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}

.slick-arrow
{
	box-sizing: border-box;
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -20px;
	z-index: 100;
	width: 40px;
	height: 40px;
	padding: 0;
	border-style: solid;
	border-width: 4px;
	border-color: #F40000 #F40000 transparent #F40000;
	background: transparent;
	text-indent: -9999px;
	cursor: pointer;
}

.slick-prev
{
	left: 10px;
	border-right-color: transparent;
	transform: rotate(-45deg);
}

.slick-next
{
	right: 10px;
	border-left-color: transparent;
	transform: rotate(45deg);
}

.slider-nav .slick-slide:hover
{
	cursor: pointer;
}