/* css */
a[data-cart-action-add-to-cart]
{
  background: #037e40;
  padding: 7px 20px;
  display: block;
  color: #fff;
  margin: 4px 0 0 0;
  text-align:center;
  border-radius:2px;
  line-height: 1.2;
}
a[data-cart-action-add-to-cart]:hover
{
  background:#02a653;
}
#store_2_display_store_2_1{display:grid;}
#store_2_display_store_2_1 .row
{
  /* This is the search box... sigh*/
  display: grid;
  grid-template-columns: max-content max-content;
  justify-self: right;
  position: absolute;
  top: auto;
  width: auto;
    justify-content: center;
}

#public_block_cart_preview + .row input[type="search"]
{
  padding: 10px 10px;
}
#public_block_cart_preview + .row input[type="button"]
{
  padding: 10px 20px;
  border: none;
  background:#014195;
  color:#fff;
  font-size: 1.5rem;
}

.block_tags_in_category a:hover
{background:#555;}	

.block_tags_in_category a:hover:before
{border-color:transparent #555 transparent transparent;}


.block_tags_in_category a
{
  /*These tags should be bigger*/
  line-height:20px;
  font-size:11px;
}

.block_tags_in_category a:after {
  top: 11px;
  left: 0px;
  width: 6px;
  height: 6px;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3), -1px -1px 0px 1px rgba(0, 0, 0, 0.2);
}
.block_tags_in_category a:before {
  left: -13px;
  border-width: 13px 13px 13px 0px;
}

#btn_reset_filter_tag_and_category
{
  display:block;
  float:right;
  padding: 4px 6px;
  margin: -4px 0;
}
#btn_reset_filter_tag_and_category:hover
{
  background:#ccc;
  cursor:pointer;
  text-decoration:none;
}

#btn_reset_filter_tag_and_category:before
{
  content:'\2716 ';
  font-size:1.2em;
  vertical-align:middle;
}

/** Flexible columns FOR CATEGORY TAGS **/
.block_tags_in_category a span
{
  font-style:italic;
  color:rgba(0,0,0,.4);
  font-size: .8em;
  margin-left: 2px;
}

.block_tags_in_category
{
  vertical-align: top;
  margin:0;
  padding:0;

  list-style:none;
  margin: 0 0 15px 0;
  border-radius: 10px;
  overflow: hidden;
}

.block_tags_in_category a,.block_tags_in_category a:visited
{
  display:inline-block;
  vertical-align: top;
  padding:5px;
  text-align:left;
  margin:0;padding:0;
  border:1px solid #fff;

  background:#F3F3F3;
  margin:0;
  padding: 0 8px;
}

.block_tags_in_category a:hover 
{
  background:#ccc;
  text-decoration:none;
  color:#000;
}

#filter_tag_and_category
{
  padding: 12px;
  background: #EFEFEF;
  margin: 0 0 12px 0;
  font-style: italic; 
  margin:12px;
}


#public_block_cart_preview
{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  background:#efefef;
  border-top: 1px solid #bcbcbc;
  padding: 10px 25px;
  z-index: 90;
}
/* Store tabs */
.tab a, .tab a:visited, .tab a:hover, .tab_selected a, .tab_selected a:visited
{
  margin:0;
  line-height:1;
  padding: 1.3rem 1.5rem;
  background: rgb(241, 241, 241);
  margin-bottom: 5px;
}
.tab a:hover {
  background: rgb(225, 225, 225);
}
.tab_selected a, .tab_selected a:hover, .tab_selected a:visited{
  background:#014195;
  color:#fff;
}

.store_item p {margin:0;}

.store_item .safety_number
{
  border-radius:4px;
  width:30px;
  text-align:center;
  line-height:2;
}

.store_item .dfe_system_icon {
  width:57px;height:108px;
  background:url(../logo_ico_dfec619.html) center center no-repeat;}

.store_item:hover {background:#f8f8f8;}
.store_item .flex_column {padding:0 5px;}
.store_item .flex_column .flex_column:first-child {padding-left:0;}
.store_item .flex_column .flex_column:last-child {padding-right:0;}

.store_item .item_image
{
  min-width:150px;
  background:#efefef;
  margin-right:12px;
  text-align:center;
  display: flex;
  align-items: center;
  justify-content: center;

}

.store_item .item_image img {max-width:150px;}

.store_item h2 {font-weight:bold;margin:0;}

.store_item
{
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid #efefef;
}



/*************** STORE FRAMEWORK **************************/
/* css */

.mobile_top_nav_hide::after, .mobile_top_nav_show::after
{
  content: " ";
}

#store_2_display_store_2 .tabs_content
{
  width:100%; 
}

.ico_cart {background-image:none !important;padding:0 !important;}

.remove_from_cart a::before
{
  content:'\f07a';
  font-family:"FontAwesome";
  margin-right:5px;
}

.cart_live_preview_no_items
{
  text-align:center;
  padding:20px;
}

#cart_live_preview_items
{
  width:100%;
  overflow:auto;
  position: absolute;
  top: 100px;
  bottom: 78px;
}

#cart_live_preview_header,#cart_live_preview_footer
{
  border-color:#ccc;
  background:#fff;
  padding:10px;
  position:absolute;
  width:100%;
  z-index:10;
}

#cart_live_preview_header
{
  padding-top:0;padding-bottom:0;
  line-height:50px;
  border-bottom:1px solid;
  top:0;
}

#cart_live_preview_footer
{
  border-top:1px solid;
  bottom:0;
}

#cart_live_preview_header .close_button
{
  float:right;
  line-height: 50px;
  font-size: 1.2em;
  cursor:pointer;
  width:50px;
  margin-right:-10px;
  text-align:center;
}
#cart_live_preview_header .close_button:hover {background-color:#efefef;}

#cart_preview_side .checkout_link
{
  margin:10px -10px -10px -10px;/*counter container padding*/
  background:#014195;
  color:#fff;
  font-weight:bold;
  padding:10px;
  text-decoration:none;
  text-align:center;
  display: block;
}


#cart_preview_side
{
  position:fixed;
  right:0;
  top:0;
  bottom:0;
  z-index:200;
}
#cart_preview_side
,#cart_preview_side_content
,#cart_preview_side .show_button
{
  transition: right .5s, box-shadow .5s, transform .5s ease;
}
#cart_preview_side #cart_preview_side_content
{
  width:300px;
  right:-300px;
  border-left:1px solid #ccc;
  background:#fff;
  height:100%;
  position:absolute;
}

#cart_preview_side.open .show_button {right:300px;}

#cart_preview_side.open #cart_preview_side_content
{
  box-shadow:0 0 10px rgba(0, 0, 0, 0.35);
  right:0;
  /*height: calc(100vh - 100px) !important;
  top: 100px;*/
}

#cart_preview_side_content
{
  height:100% !important;
}

#cart_preview_side .show_button
{
  cursor:pointer;
  padding:20px;
  background:#014195;
  border-radius:4px 0 0 4px;
  position: absolute;
  right: 0;
  top: 50%;
  color:#fff;
}

/*Cart preview items*/
.store_item_in_cart
{
  border:none;
  border-bottom:1px solid #efefef;
  padding:4px 0 4px 0;
  margin:0 0 12px 0;
}

.store_item_in_cart .image
,.checkout_item_in_cart_row .image
{
  flex:0 0 80px;
  background-color:#efefef;
  background-size: cover;
  border-radius:4px;
  margin:4px;
  height:80px;
  max-width: 100px;
}

table .store_item_in_cart_toolbar {display:none;}

.store_item_in_cart_toolbar 
{
  border:1px solid #ccc;
  background:#efefef;
}

.store_item_in_cart_toolbar .item_total
{
  flex: 1 0 80px;
  text-align:right;
}
.store_item_in_cart_toolbar button.flex_column
,.store_item_in_cart_toolbar input.flex_column
{
  width:33%;
  width:calc(100% /  3);
  margin:0;
  padding:0;

  border:none;
  box-shadow:none;
  text-align:center;
  font-size: 1.1em;
  font-weight: normal;
  background:none;
}

.store_item_in_cart_toolbar input.flex_column
{
  background: #fff;
  border-radius: 0;
  border: 1px solid #e5e5e5;
  border-width: 0 1px 0 1px;
}

.store_item_in_cart_toolbar button[data-action=add]
{
  border-right:1px solid #ccc;
}
.store_item_in_cart_toolbar button[data-action=remove]
{
  border-left:1px solid #ccc;
}


/* Store */
#store_display .search_results
{

  border:1px solid #5C5A5A;
  background:#393939;
  margin: 0 0 10px;
  padding: 9px;
  border-radius:4px;
}

#store_display .search_results .clickable_ico
{
  cursor:pointer; 
}

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

.add_remove_from_cart a
{
  margin-left: 12px;
  background: #b20000;
  border-radius: 4px 4px 4px 4px;
  padding: 8px 14px;
  color:#fff;
  display:inline-block;
}
.add_remove_from_cart a {color:#fff;}

.remove_from_cart span {display:none;}

.store_item
{
  position:relative;
  padding: 20px;
  margin: 0;
  border-bottom:1px solid #efefef;
}

.store_item .product_name
{
  font-weight:normal; 
  font-size: 1.8em;
  margin-bottom: 8px;
}

.store_item .price
{

}

.store_item .image_thumbnail
{
  float: left;
  width:150px;
  margin: 0 15px 15px 0; 
  overflow:hidden;
  border-radius:3px;
  background:#fff;
  padding:4px;
}

.store_item .image_thumbnail img
{
  border:none; 
}

.store_item .product_description
{
  color:#5C5C5C; 
  margin-bottom: 12px;
}

.store_item .product_info
{
  float:left;
  width:580px;
  width:calc(100% - 180px);
}


.store_item .tags a 
{
  margin: 0 2px 0 0;
  padding: 0 10px;
  background: #D8D8D8;
  color: #808080;
  text-decoration: none;
  border-radius: 4px;
  float: left;
  height: 20px;
  line-height: 20px;
  position: relative;
  font-size: 11px;
}


.store_item .tags a:hover
{
  background: #BDBDBD;
  color: #333;
}

#public_block_cart_preview_2 {
  background: none repeat scroll 0px 0px #EFEFEF;
  padding: 10px;
}

#block_items_store_2_1_9 input {
  width: 100%;
  padding: 8px;
  border: 2px solid #d5d5d5;
}

@media (max-width: 960px){
  
  #store_2_display_store_2_1 .row{position:relative; top: 0;}
  
  .store_item{padding:15px;margin:20px auto;}
  .tabs_content{padding:0px;}

  .store_item .product_name {font-size:1.6em; text-align: center; }

  .store_item .price
  {
    text-align:center;
    margin: 12px 0;
    font-size:1.2em;
  }

  .store_item .item_image
  {
    width: 100%;
    text-align: center;
  }

  .add_remove_from_cart a
  {
    display:block;
    margin:5px;
    float:none;
    text-align: center;
  }

  #cart_preview_side .show_button
  {

    padding: 10px;
  }

  #block_checkout .cart_summary
  {
    width: auto;
    position: relative;
    right: auto;
  }

  #block_checkout fieldset
  {
    width:auto;
  }

  /*Fill screen with cart preview on mobile.*/
  #cart_preview_side.open
  {
    left: 0;
  }

  #cart_preview_side.open #cart_preview_side_content
  {
    width: 100%;
  }

  #store_2_display_store_2_1 .row {
    width: 100%;
    grid-template-columns: 1fr max-content;
  }

  .tab a, .tab a:visited, .tab a:hover, .tab_selected a, .tab_selected a:visited {
    height:100%;
  }

  .tabs {
    display: grid;
    margin: 0;
    padding: 0;
    list-style: none;
    grid-template-columns: 1fr 1fr;
  }

  a[data-cart-action-add-to-cart]{
    width:100%;
  }

  #block_items_store_2_1_9 input {
    width: 100%;
    font-size: 1.7rem;
  }

}

