/* CSS Document */

.page_content {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 16px;
  color: #333333;
}

.page_content h1 {
font-family: inherit;
font-size: 1.5em;
font-weight: bold;
color: #315979;
}

.page_content h2 {
font-family: inherit;
font-size: 1.25em;
font-weight: bold;
color: #315979;
}

.page_content h3 {
font-family: inherit;
font-size: 1.0625em;
font-weight: bold;
color: #333333;
}

.page_content h4 {
font-family: inherit;
font-size: 1em;
font-weight: bold;
color: #1a5580;
}

@media screen and (max-width: 559px) {
.page_content{
    font-size: 18px;
}
.page_content h1{
    font-size: 24px;
}
.page_content h2{
    font-size: 20px;
}
.page_content h3{
    font-size: 18px;
}
.page_content h4{
    font-size: 18px;
}
}

.page_content.mobile {
    font-size: 18px;
}
.page_content.mobile h1{
    font-size: 24px;
}
.mobile .page_content.mobile h2{
    font-size: 20px;
}
.page_content.mobile h3{
    font-size: 18px;
}
.page_content.mobile h4{
    font-size: 18px;
}

.page_content a:link, .page_content a:visited{
color: #0066CC;
}

.page_content a:hover, .page_content a:active {
color: #4b98d7;
}

.page_content img {border: none;}

.page_content strong {font-weight: bold;}

.page_content hr {
    height: 1px;
    color: #b2b2b2;
    background-color: #b2b2b2;
    border: none;
}

.page_content img {
max-width: 100%;
height: auto;
}

.small_note {
    font-size: 0.875em;
    font-weight: normal;
}

.medium_note {
    font-size: 0.95em;
}

/*--------------------- Forms ---------------------*/

fieldset {
    max-width: 780px;
    border: 1px solid #9F9F9F;
    background: none;
    margin-bottom: 12px;
    padding: 1em 1.5em;
}

legend {
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 1.125em;
    font-weight: bold;
    margin: 10px;
    padding: 0 10px 0 10px;
}

label {
    font-weight: bold;
    color: #4d4d4d;
}

.label_block {
    display: block;
    font-weight: normal;
    color: inherit;
}

.cms_form {
    max-width: 620px;
}

.cms_form input[type="text"], .cms_form input[type="email"], .cms_form input[type="password"], .cms_form select, .cms_form textarea {
    /*width: 100%; */
    min-width: 50px;
    height: 1.5em !important; /* override framework */
    /*font-size: 1.071em; */
    font-size: 17px;
    background-color: #fff !important; /* override framework */
    border: #ccc solid 1px !important; /* override framework */
    padding: 3px 7px 3px 7px !important; /* override framework */
    /*margin: 5px 0; */
    box-sizing: content-box;  /* not sure why we needed border-box */
}

.cms_form select {
    display: inline-block;
}

.cms_form textarea {
    min-height: 4em;
}

[type="radio"]:not(:checked), [type="radio"]:checked, [type="checkbox"]:not(:checked), [type="checkbox"]:checked {
    position: relative;  /* override framework */
    opacity: 1;  /* override framework */
    pointer-events: auto; /* override framework */
    margin: 0 8px;
}

.form_row {
	position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: baseline;
    margin: 15px 0;
}

.form_row label  {
    display: inline-block;
    min-width: 6em;
    font-weight: bold;
    margin: 0.5em 0.5em 0 0;
}

.form_row input[type="text"], .form_row input[type="password"], .form_row select, .form_row textarea, .form_row div {
    flex: auto;
    margin: 0.5em 0.5em 0 0;
}

input[type="file"] {
    font-size: 14px;
}

.form_row textarea {
    resize: vertical;
}


/* need all min and max widths for select boxes*/
.form_row_medium input[type="text"], .form_row_medium input[type="email"], .form_row_medium input[type="password"], .form_row_medium select {
    flex: none;
    width: 15em;
    max-width: 15em;
    min-width: 15em;
}

/* need all min and max widths for select boxes*/
.form_row_small input, .form_row_small select {
    flex: none;
    width: 10em;
    max-width: 10em;
    min-width: 10em;
}

.form_row_mini input, .form_row_mini select {
    flex: none;
    width: 3.875em;
    max-width: 3.875em;
    min-width: 3.875em;
}

.form_row_tiny input, .form_row_tiny select {
    flex: none;
    width: 3em;
    max-width: 3em;
    min-width: 3em;
}

.form_row_full label, .form_row_full select, .form_row_full textarea  {
    width: 100%;
}

.form_row_footer {
   text-align: right;
}

.match_input {
    /*font-size: 1.071em;  */
    font-weight: normal;
}

input.qty {
    display: inline;
    width: 50px !important;
    min-width: 50px !important;
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 16px;
    margin: auto;
}

.form_row_float select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
 	background-color: #fff;
	padding-right: 1em;
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAeUlEQVQImWO8IiYUzPDv3zudNx/2M2ABV0QEHBmYmISYGP8zmjAyMu26IirUf5WBgQ2mAMQGiYHkwGpguhiZmOYDmZ///P4fCRJjYWVcDqR4///7lwiyjQkkCGJ8/sOgx/if4SxQARiD2CAxXE5iuCwmHAjCqKIMDADvFy+wRrOOaQAAAABJRU5ErkJggg==');
	background-size: 15px 8px;
	background-repeat: no-repeat;
	background-position: right 15px bottom .8rem;
}

.form_row_float > input[type="text"], .form_row_float > input[type="email"], .form_row_float > input[type="password"], .form_row_float > select {
    font-size: 17px;
    padding-top: 20px !important;
}

.form_row_float > label {
    position: absolute;
    font-size: 13px;
    line-height: 1.15;
    font-weight: normal;
    top: 13px;
    left: 7px;
    transition: all 0.1s;
    opacity: 0.9;
    pointer-events: none;
    margin: 0;
}

.form_row_float > input:placeholder-shown + label {
    top: 25px;
    font-size: 16px;
    opacity: 0.75;

}

.form_row_float > input:focus + label {
    top: 13px;
    font-size: 13px;
    opacity: 0.9;
}


/*--------------------- Tables ---------------------*/


.cms_table {
  background-color: #420058;
  border-collapse: collapse;
  border-spacing: 1px;
}

.cms_table th {
    background-color: #8AA7D5;
    color: #ffffff;
    padding: 4px 15px 4px 15px;
    border: 1px solid #8AA7D5;
    text-align: center;
}

.cms_table td {
    color: #333333;
    background-color: #E0E0E7;
    padding: 4px 8px 4px 8px;
    border: 1px solid #8AA7D5;
}

.cms_table tr.altrowcol td {
    background-color: #f6f6f8;
}

.cms_table td img{
    vertical-align: baseline;
}

.cms_table h3 {
  color: #333333;
}

.cms_table a:link, .cms_table a:visited{
color: #333333;
}

.cms_table a:hover, .cms_table a:active {
color: #333333;
}

.cms_table hr {
height: 1px;
color: #B3B3B9;
background-color: #B3B3B9;
border: none;
}

.table_no_border, .table_no_border thead, .table_no_border tbody, .table_no_border tfoot, .table_no_border th, .table_no_border td {
border: none;
}

.basic_table {
width: auto;
    background: none;
    border-collapse: separate;
    border-spacing: 10px;
}

.basic_table tbody {
 background: none;
 border: none;
}

.basic_table tbody tr {
  background: none;
}

/*--------------------- Account Menu ---------------------*/

.account_menu{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 12px;
color: #9f9f9;
}

.account_menu a:link, .account_menu a:visited{
color: #f9f9f9;
}

.account_menu a:hover, .account_menu a:active {
color: #ffffff;
}


/*--------------------- My Account ---------------------*/

.txt_link_bar {
line-height: 1.5;
margin-bottom: 5px;
}

.pay_now_link{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 15px;
font-weight: bold;
}

/*--------------------- Cart Menu ---------------------*/

.shopping_cart_menu{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 13px;
line-height: 1;
color: #333333;
}

.shopping_cart_menu a:link, .shopping_cart_menu a:visited{
font-weight: bold;
color: #0066CC;
}

.shopping_cart_menu a:hover, .shopping_cart_menu a:active{
font-weight: bold;
color: #5FA9F3;
}

.shopping_cart_menu span{
font-weight: normal;
}

/*--------------------- Search ---------------------*/

.search_box_form{
  margin: 0;
  padding: 0;
}

.search_box_form input, .search_box_form select{
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 13px;
}

.search_box_field{
    width: 130px;
}

/*--------------------- Category ---------------------*/

.category_content{
    font-family: inherit;
    font-size: inherit;
    color: inherit;
}

.category_content h1{
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 24px;
  color: #345e80;
}

@media screen and (max-width: 559px) {
.category_content{
    font-size: 18px;
}
.category_content h1{
    font-size: 48px;
}
}

.category_content h2{
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 18px;
  color: #315979;
}

.category_content h3{
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 16px;
  color: #333333;
}

/*--------------------- Recent Category ---------------------*/

.recent_category_content h3{
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-size: 15px;
  margin: 3px 0 5px 0;
}

.recent_category_content .img_cell{
font-family:  inherit;
font-size: 1em;
color: #cccccc;
background-color: #ffffff;
border: #333333 solid 2px;
padding: 1px;
text-align: center;
overflow: hidden;
}

.recent_category_content .img_cell img{
	border: 0;
}

/*--------------------- Item Listings ---------------------*/

.img_cell{
/*flex: 1 0 40px;*/
background-color: #ffffff;
border: #b2b2b2 solid 1px;
margin: 10px 10px 6px 10px;
}

.img_cell div{
font-family: inherit;
font-size: 1em;
color: #cccccc;
text-align: center;
border: #ffffff solid 5px;
overflow: hidden;
}

.img_cell div img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    -moz-transition: all 0.4s;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}

.img_cell div img:hover{
-moz-transform: scale(1.4);
-webkit-transform: scale(1.4);
transform: scale(1.4);
}

.category_page_nav{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 1em;
line-height: 20px;
text-align: center;
color: #666666;
border-top: #E0E0E7 solid 1px;
padding: 15px;
margin: 5px;
}

.category_page_nav a:link, .category_page_nav a:visited{
color: #7ea400;
padding: 0 1px 0 1px;
}

.category_page_nav a:hover, .category_page_nav a:active{
color: #94bf00;
}

/*--------------------- News Listings ---------------------*/

.news_listing {
    padding: 15px 0;
    margin: 15px auto;
    border-bottom: #E0E0E7 solid 1px;
}

.news_listing_name {
    font-size: 1.125em;
    font-weight: bold;
    margin-bottom: 4px;
}

.news_listing_name a:link, .news_listing_name a:visited{
    color: #315979;
}

.news_listing_name a:hover, .news_listing_name a:active{
    color: #4b98d7;
}

.news_listing_description {
  font-size: 1em;
  color: #333333;
  margin-bottom: 4px;
}

.news_listing_date {
  font-size: 0.875em;
  color: #666666;
}
.mobile .news_listing_name {
  font-size: 20px;
}

.mobile .news_listing_description {
    font-size: 18px;
}

.mobile .news_listing_date {
  font-size: 13px;
}

/*--------------------- News Detail ---------------------*/

.news_detail{
    display: flex;
    flex-flow: row wrap;
    padding: 1.125em;
    margin-bottom: 20px;
}

.news_detail_date {
  font-family: inherit;
  font-size: 0.8125em;
  color: #999999;
  margin: 5px 0;
}

.news_detail_content{
 margin: 15px 0;
}

.news_detail ul li {
line-height: 1.6;
}

.comment {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 13px;
color: #333333;
background-color: #F2F7FC;
border-top: #c6d4e1 solid 4px;
margin-bottom: 10px;
padding: 10px;
}

.comment_by {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14px;
}

.comment_name {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-weight: bold;
color: #009ee0;
}

a.comment_link:link, a.comment_link:visited{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-weight: bold;
color: #009ee0;
}

a.comment_link:hover, a.comment_link:active {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-weight: bold;
color: #5FA9F3;
}

.comment_date {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 12px;
color: #999999;
padding: 4px 0 4px 0;
}


.comment_form{
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 14px;
    width: 470px;
    margin-bottom: 20px;
}

.comment_box{
    width: 450px;
}

.comment_form fieldset {
background-color: #f9f9f9;
border: #b2b2b2 solid 1px;
margin-bottom: 12px;
padding: 10px 20px 20px 20px;
}

.comment_form legend{
    font-size: 18px;
    font-weight: bold;
    padding: 10px;
}

.comment_form hr {
    height: 1px;
    color: #b2b2b2;
    background-color: #b2b2b2;
    border: none;
}


@media screen and (max-width: 559px) {
  .comment_form{
      width: 420px;
  }
  .comment_box{
    width: 400px;
  }
}

@media screen and (max-width: 320px) {
  .comment_form{
      width: 250px;
  }
  .comment_box{
    width: 230px;
  }
}

.mobile .comment_form {
    width: 275px;
}
.mobile .comment_box {
    width: 240px;
}

/*--------------------- Product Listings ---------------------*/

.product_listings {
display: flex;
flex-wrap: wrap;
justify-content: center;
width: auto;
}

.product_listing {
max-width: 850px;
display: flex; /* set to block for details always below image */
flex-wrap: wrap;
align-content: flex-start;
align-items: flex-start;
background-color: #E8E8E8;
border: #b2b2b2 solid 1px;
margin: 10px;
/*padding: 10px;*/
}

.product_listing_detail {
    flex: 3 1 180px;
    min-width: 180px;
    margin: 10px;
}

.product_listing_right .product_listing_detail {
   /* max-width: 400px;*/
}

.product_listing .product_name{
margin-bottom: 4px;
}

.product_listing .product_name a:link, .product_listing .product_name a:visited{
font-family: inherit;
font-size: 16px;
font-weight: bold;
color: #0066CC;
text-decoration: none;
}

.product_listing .product_name a:hover, .product_listing .product_name a:active{
color: #2090ff;
/*text-decoration: underline;*/
}

.product_listing .product_code{
font-family: inherit;
font-size: 13px;
font-weight: bold;
color: #333333;
padding-bottom: 4px;
}

.product_listing .product_description{
font-family: inherit;
font-size: 13px;
color: #333333;
padding-bottom: 4px;
margin-bottom: 5px;
}

.product_listing .product_price{
font-family: inherit;
font-size: 16px;
font-weight: bold;
color: #5a5a5a;
padding-bottom: 4px;}

.product_listing .product_price_text{
font-size: 13px;
font-weight: normal;
}

.product_listing .product_buy{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 13px;
padding-bottom: 4px;}

.product_listing .product_qty{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 13px;
color: #333333;
margin: 5px 0 5px 0;
}

.product_listing .product_qty input{
display: inline;
width: 20px;
}

.product_listing hr{
height: 1px;
color: #E0E0E7;
background-color: #E0E0E7;
border: none;
margin: 10px 0;
}

.product_listings .product_options{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 12px;
color: #333333;
margin-bottom: 5px;
}
.product_listings .product_options div{
margin-bottom: 5px;
}

.product_option_name {
font-weight: bold;
}


/*--------------------- Product Detail ---------------------*/

.product_detail{
    display: flex;
    flex-wrap: wrap;
    background-color: #f4f4f4;
    border: #b2b2b2 solid 1px;
    padding: 1.125em;
    margin-bottom: 20px;
}

.product_detail h1{
	font-family: inherit;
	font-size: 1.5em;
    color: #333333;
	line-height: 25pt;
	margin: 2px 0 0 0;
}

.product_detail hr {
    height: 1px;
   height: 1px;
    color: #CCCCCC;
    background-color: #CCCCCC;
    border: none;
    clear: both;
}

.product_detail h3{
	font-family: inherit;
	font-size: 14px;
    font-weight: bold;
}

.product_detail ul li {
line-height: 1.6;
}

.product_detail .product_price{
	font-family: "Open Sans", Helvetica, Arial, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #333333;
	margin: 12px 0 12px 0;
}

.product_detail .product_price_text{
font-weight: normal;
font-size: 14px;
}

.product_detail .product_qty{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 10pt;
}

.product_detail .product_qty input{
display: inline;
width: 20px;
}

.product_detail fieldset {
background-color: none;
margin-bottom: 12px;
padding: 0 15px 15px 15px;
}

.product_detail legend {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 18px;
font-weight: bold;
margin: 10px;
padding: 0 5px 0 5px;
}
/*
.product_buy a:link, .product_buy a:visited{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14pt;
font-weight: bold;
color: #0066CC;
}

.product_buy a:hover, .product_buy a:active{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14pt;
font-weight: bold;
color: #5FA9F3;
}
 */
.img_group{
flex-grow: 1;
min-width: 220px;
max-width: 800px;
border: #b2b2b2 solid 1px;
background-color: #ffffff;
padding: 2px;
margin: 0 10px 8px 10px;
overflow: hidden;
}

.main_content{
min-width: 130px;
flex: 3 1 200px;
margin: 0 10px;
}


.main_img{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 11px;
color: #404040;
text-align: center;
}

.img_box{
overflow: scroll;
overflow-x: hidden;
}

.img_box{
padding: 4px;}

.product_detail .product_code{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 10pt;
}

.product_detail .product_description {
padding: 8px 0 8px 0;
margin: 20px 0;
}

/*--------------------- Listings ---------------------*/

.listings {
display: flex;
flex-wrap: wrap;
justify-content: center;
width: auto;
}

.listings .listing {
max-width: 850px;
display: flex; /* set to block for details always below image */
flex-wrap: wrap;
align-content: flex-start;
align-items: flex-start;
background-color: #d5c86f;
border: #446537 solid 1px;
border-radius: 6px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
-webkit-box-shadow: 5px 5px 6px 1px rgba(0,0,0,0.35);
-moz-box-shadow: 5px 5px 6px 1px rgba(0,0,0,0.35);
box-shadow: 5px 5px 6px 1px rgba(0,0,0,0.35);
margin: 12px 10px;
/*padding: 10px;*/
}

.listings_listing_detail {
    flex: 3 1 180px;
    min-width: 180px;
    margin: 10px;
}

.listings .no_image{
background: url(../images/users/listings/no_image.png);
}

.listings .listing_name{
padding-bottom: 4px;
}

.listings .listing_name a:link, .listings .listing_name a:visited{
font-family: 'Open Sans',Arial, Helvetica, sans-serif;
font-size: 18px;
font-weight: bold;
color: #2f2c17;
text-decoration: none;
}

.listings .listing_name a:hover, .listings .listing_name a:active{
color: #805100;
text-decoration: underline;
}

.listings .listing_description{
font-family: 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
font-size: 16px;
color: #000000;
padding-bottom: 6px;}

.listings .listing_price{
font-family: 'Open Sans', Arial, Helvetica, sans-serif;
font-size: 13px;
font-weight: bold;
color: #000000;}

.listings .listing_price_text{
font-family: 'Open Sans', Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: normal;
}

.listings .listing_info{
font-family: 'Open Sans',Arial, Helvetica, sans-serif;
font-size: 16px;
padding: 5px 0 4px 0;
}

.listings .listing_info a:link, .listings .listing_info a:visited{
color: #402100;
}

.listings .listing_info a:hover, .listings .listing_info a:active{
color: #805100;
}

/*------------------ Listing Detail ----------------------*/

.listing_detail{
    /* display: flex;
    flex-wrap: wrap; */
    background-color: #f4f4f4;
    border: #b2b2b2 solid 1px;
    padding: 1.125em 1.125em 3em 1.125em;
    margin-bottom: 20px;
}

.listing_detail img{border: 0;}

.listing_detail h1{
	font-family: 'Open Sans',Arial, Helvetica, sans-serif;
	font-size: 20px;
    color: #1a1a1a;
	margin: 2px 0 0 0;
}

.listing_detail h2{
	font-family: 'Open Sans',Arial, Helvetica, sans-serif;
	font-size: 1.25em;
	margin: 2px 0 0 0;
}

.listing_detail hr {
    height: 1px;
    color: #446537;
    background-color: #446537;
    border: none;
}

.listing_detail h3{
	font-family: 'Open Sans',Arial, Helvetica, sans-serif;
	font-size: 18px;
}

.listing_detail .listing_price{
	font-family: 'Open Sans',Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #333333;
	margin: 15px 0 15px 0;
}

.listing_detail .listing_price_text{
font-weight: normal;
font-size: 13px;
}

.listing_detail .listing_qty{
font-family: Arial, Helvetica, sans-serif;
font-size: 10pt;
}

.listing_detail .listing_qty input{
width: 20px;
font-family: Arial, Helvetica, sans-serif;
font-size: 9pt;
}

.listing_detail .listing_buy a:link, .listing_buy a:visited{
font-family: Arial, Helvetica, sans-serif;
font-size: 14pt;
font-weight: bold;
color: #0066CC;
}

.listing_detail .listing_buy a:hover, .listing_buy a:active{
font-family: Arial, Helvetica, sans-serif;
font-size: 14pt;
font-weight: bold;
color: #5FA9F3;
}

.listing_detail fieldset {
background-color: none;
border: #9a9150 solid 1px;
margin-bottom: 12px;
padding: 0 10px 10px 10px;
}

.listing_detail legend {
font-family: 'Open Sans', Arial, Helvetica, sans-serif;
font-size: 18px;
font-weight: bold;
margin: 10px;
padding: 0 5px 0 5px;
}

.listing_detail fieldset hr {
    height: 1px;
    color: #BFB464;
    background-color: #BFB464;
    border: none;
}

/*--------------------- Breadcrumb Nav ---------------------*/

.bcrumbs {
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 0.875em;
    font-weight: normal;
    color: inherit;
}

.bcrumbs a:link, .bcrumbs a:visited{
    color: #0066CC;
    text-decoration: none;
}

.bcrumbs a:hover, .bcrumbs a:active{
    color: #5FA9F3;
    text-decoration: underline;
}

/*--------------------- Shopping Cart ---------------------*/

#shopping_cart{
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 16px;
    margin-bottom: 30px;
}

#shopping_cart .product_code{
font-size: 0.875em;
}

#shopping_cart .customer_note{
font-size: 0.875em;
padding-top: 5px;
}

.sc_product_controls input{
    display: inline;
    font-size: 0.75em;
    background: none;
    color: #4a70b5;
    border: 0;
    padding: 0;
    margin: 0;
    vertical-align: baseline;
    cursor:pointer;
}

.sc_product_controls input:hover {
color: #5FA9F3;
border-bottom:1px solid #5FA9F3;
}


/*--------------------- Checkout ---------------------*/

.checkout {
max-width: 780px;
margin: auto;
}

.checkout_legend {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14pt;
font-weight: bold;
color: #333333;
}

.delivery_message {
width: 200px;
height: 50px;
}


/*--------------------- Shipping Options ---------------------*/

.shipping_option {
    display: flex;
    align-items: flex-start;
    background-color: #CAB6B6;
    border: 1px solid #4A0101;
    padding: 20px;
    margin: 15px 0;
}

.shipping_option_highlight {
    background-color: #F9E8E8;
}

.shipping_option_radio{
    margin-right: 5px;
}

.shipping_option_name{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 12pt;
font-weight: bold;
margin: 0 0 10px 0;}

.shipping_option_descripiton{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 10pt;
}

/*--------------------- Confirm Order -------------------------*/
.confirm_order {

}

.confirm_order_address {
 display: flex;
 flex-flow: row wrap;
 justify-content: space-between;
}

.confirm_order_address div {
padding: 0 3em;
margin: 5px 0 5px -3em;
}

.confirm_order_items {
}

/*--------------------- Payment Options -----------------------*/

.payment_options {
    max-width: 850px;
    margin: 30px auto;
}

.payment_option {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    background-color: #E0E0E7;
    border: 1px solid #8AA7D5;
    border-radius: 10px;
}

 .payment_option > div {
    padding: 15px;
}

.payment_option_desc {
    flex: 2 2 50%;
}

.payment_option_action {
    flex: 1 1 35%;
    align-self: center;
    text-align: center;
}

/*--------------------- Category Image Table ------------------*/

.category_image_table td{
text-align: center;
border: #333333 solid 1px;
background-color: #ffffff;
padding: 2px 2px 4px 2px;
}

.category_image_table img {
margin-bottom: 4px;
}

.category_image_table a:link, .category_image_table a:visited{
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    color: #0003ff;
}

.category_image_table a:hover, .category_image_table a:active {
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: bold;
    color: #0003ff;
    text-decoration: underline;
}

/*--------------------- Warnings ---------------------*/

.warning_box {
/* width: 100%; */
min-height: 1em;
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 0.8125em;
font-weight: bold;
color: #990000;
background-color: #ffe9e9;
border: #A42C21 solid 2px;
border-radius: 10px;
-moz-border-radius: 10px;
padding: 1.1em 2.5em;
margin: 1rem;
}

.warning_box h2{
color: #990000;
}

.warning_box a:link, .warning_box a:visited{
color: #990000;
}

.warning_box a:hover, .warning_box a:active{
color: #990000;
}

.warning_box_green{
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 0.8125em;
font-weight: bold;
color: #004001;
background-color: #ddffdd;
border: #004001 solid 2px;
border-radius: 10px;
-moz-border-radius: 10px;
padding: 1.1em 2.5em;
margin: 5px;
}

.warning_box_green h2{
color: #004001;
}

.warning_box_green a:link, .warning_box_green a:visited{
color: #004001;
}

.warning_box_green a:hover, .warning_box_green a:active{
color: #00bf02;
}

.warning_box ul {
padding: 0;
margin: 0;
list-style: none;
}

.warning_box_green ul{
list-style: none;
margin: 0;
padding: 0;
list-style: none;
}

.warning_box ul li, .warning_box_green ul li {
margin-bottom: 4px;
}

.warning_red {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14px;
color: #ff0000;
list-style: none;
padding: 0;
}

.warning_green {
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 14px;
font-weight: bold;
color: #008000;
list-style: none;
padding: 0;
}

#add_to_cart_popup {
display: none;
position: fixed;
top: 200px;
left: 50%;
width: 440px;
border: #e5e5e5 solid 8px;
color: #333333;
background-color: #ffffff;
text-align: center;
border-radius: 20px;
-moz-border-radius: 20px;
-moz-box-shadow: 5px 5px 10px #000;
-webkit-box-shadow: 5px 5px 10px #000;
box-shadow: 5px 5px 10px #000;
margin-left: -220px;
padding: 20px 20px 10px 20px;
z-index: 999;
}

#add_to_cart_popup a:link, #add_to_cart_popup a:visited{
color: #333333;
}

#add_to_cart_popup a:hover, #add_to_cart_popup a:active {
color: #333333;
}

@media screen and (max-width: 559px) {
#add_to_cart_popup {
width: 310px;
margin-left: -155px;
}
}


#add_to_cart_popup #continue_shopping{
cursor: pointer;
}

/*--------------------- Contact Form ---------------------*/

.contact_form label {
color: #666666;
}

.contact_form textarea {
min-height: 6em;
}

/*--------------------- Gallery ---------------------*/

.gallery {
    width: auto !important;
    margin: auto;
}

.gallery_img_container{
position: relative;
overflow: hidden;
background-color: #4a70b5;
padding: 3px;
margin: 3px;
box-sizing: content-box;
}

.gallery_txt_container {
position: absolute;
font-family: "Open Sans", Helvetica, Arial, sans-serif;
font-size: 24px;
color: #ffffff;
text-align: center;
z-index: 2;
}

.gallery_txt_link:link, .gallery_txt_link:visited, .gallery_txt_link:hover, .gallery_txt_link:active{
display:inline-block;
width: 100%;
height: 100%;
text-decoration: none;
color: #ffffff;
margin-top: -24px;
}

.gallery_img_container img {
transition: all 0.3s;
position: absolute;
z-index: 3;
}

.gallery_img_container:hover img {
transition: all 0.3s;
transform: scale(1.15);
opacity: 0.2;
z-index: 1;
}

.gallery td hr{
height: 1px;
color: #cadff5;
background-color: #cadff5;
border: none;
}

.gallery tbody{
background: none;
border: none;
}

.gallery tbody tr{
background: none !important;
border: none;
}

/*--------------------- buttons ---------------------*/

.btn, a.btn:link, a.btn:visited{
    display: inline-block;
    min-width: 6em;
    font-family: "Open Sans", Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.2;
    color: #fefefe;
    text-align: center;
    background-color: #14679e;
    border: 1px solid #14679e;
    border-radius: 5px;
    padding: 0.7em 1.4em;
    margin: 5px;
    cursor: pointer;
    text-decoration: none;
}

.btn_small {
    padding: 0.6em 1em;
}

.btn:hover, a.btn:hover, a.btn:active {
    background-color: #115685;
    -webkit-transition: background-color 0.4s;
    transition: background-color 0.4s;
    transition-timing-function: ease-out;
}

.btn_login {
    background-color: #ff531a;
    border: 1px solid #ff531a;
}
.btn_login:hover {
    background-color: #e5440e;
}

.btn_add_to_cart {
    background-color: #179517;
    border: 1px solid #179517;
}
.btn_add_to_cart:hover {
    background-color: #137e14;
}

.btn_info, a.btn_info:link, a.btn_info:visited {
    background: #14679e;
    border: 1px solid #14679e;
}
.btn_info:hover, a.btn_info:hover, a.btn_info:active {
    color: #fefefe;
    background-color: #115685;
    border: 1px solid #115685;
    text-decoration: underline;
}

.btn_checkout {
    background-color: #179517;
    border: 1px solid #179517;
}
.btn_checkout:hover {
    background-color: #137e14;
}

.btn_continue_shopping {
    background-color: #999999;
    border: 1px solid #999999;
}
.btn_continue_shopping:hover {
    background-color: #808080;
}

.btn_red {
    background-color: #c61e1e;
    border: 1px solid #c61e1e;
}
.btn_red:hover {
    background-color: #b51b1b;
}

.btn_search {
    background-color: #999999;
    border: 1px solid #999999;
    padding: 0.6em 0;
}
.btn_search:hover {
    background-color: #808080;
}

#cookie_notice a:link, #cookie_notice a:visited{
color: #0066CC;
}

#cookie_notice a:hover, #cookie_notice a:active {
color: #5FA9F3;
}

