/* special for this theme*/
/*******************************************************************
Cart btn Styles
********************************************************************/
#header .shopping_cart {
  float: right; }
  #header .shopping_cart .btn-cart-left {
    padding: 0;
    position: relative; }
    #header .shopping_cart .btn-cart-left i {
        height: 44px;
        width: 44px;
        font-size: 26.4px;
        line-height: 44px; }
    #header .shopping_cart .btn-cart-left .badge {
        font-size: 10px;
        font-weight: 400;
        height: 18px;
        line-height: 14px;
        min-width: 18px;
        padding: 0 2px;
        border-width: 2px;
        border-style: solid;
        /**top: auto;**/
        bottom: 0;
        right: 0;
        position: absolute; }
@media (max-width: 767px) {
    #header .shopping_cart .btn-cart-left {
        position: relative;
        top: -12px;
    }
}
/*******************************************************************
Cart Block(Header) Styles
********************************************************************/
.cart_block.panel-cart {
  color: #888888;
  background-color: #efefef;
  border-color: #d5d5d5; }
.cart_block .cart_block_shipping_cost,
.cart_block .cart_block_tax_cost,
.cart_block .cart_block_total,
.cart_block .cart_block_wrapping_cost {
  float: right; }
.cart_block table.vouchers {
  clear: both;
  width: 80%;
  margin: 0 auto;
  margin-bottom: 10px; }
  .cart_block table.vouchers tr td {
    padding: 2px; }
  .cart_block table.vouchers tr td.quantity {
    margin-right: 5px;
    min-width: 18px; }
  .cart_block table.vouchers tr td.delete {
    padding-left: 0;
    padding-right: 0;
    text-align: right;
    width: 15px; }
.cart_block .cart_block_list .remove_link {
  position: absolute;
  right: 10px;
  top: 19px; }
.cart_block .cart_block_list .remove_link a,
.cart_block .cart_block_list .ajax_cart_block_remove_link {
  color: #a7a7a7;
  display: block;
  width: 100%;
  height: 100%; }
.cart_block .cart_block_list .remove_link a:before, .cart_block .cart_block_list .ajax_cart_block_remove_link:before {
  display: inline-block;
  content: "\f014";
  font-family: "FontAwesome";
  font-size: 18px;
  line-height: 18px; }
.cart_block .cart_block_list .remove_link a:hover, .cart_block .cart_block_list .ajax_cart_block_remove_link:hover {
  color: #515151; }
.cart_block .products a {
  color: #333333;
  font-weight: 300; }
  .cart_block .products a:hover {
    color: black; }
.cart_block .cart-images {
  float: left;
  padding-right: 10px;
  width: 30%; }
  .cart_block .cart-images img {
    display: block;
    /*border: 1px solid #d5d5d5;*/
    height: auto;
    max-width: 100%; }
.cart_block .cart-info {
  overflow: hidden;
  position: relative;
  padding-right: 11px; }
  .cart_block .cart-info .product-name {
    font-weight: bold;
    padding-right: 12px; }
  .cart_block .cart-info .quantity-formated {
    padding-right: 5px; }
  .cart_block .cart-info .price {
    float: right;
    display: block;
    padding-top: 10px; }
  .cart_block .cart-info .price_unit {
    float: left;
    display: block;
    padding-top: 10px;
    color: #707070;
    font-weight: 400;
    font-size: 0.90em;
    line-height: 1.35;
  }
.cart_block .product-atributes {
  font-size: 11px; }
.cart_block dl {
  margin: 0; }
.cart_block dt {
  font-weight: normal;
  font-size: 0.85em;
  overflow: hidden;
  padding: 20px 10px 16px 20px;
  position: relative;
  border-bottom: 1px dotted #d5d5d5; }
  .cart_block dt.last_item {
    border-bottom: none; }
.cart_block dd {
  position: relative; }
  .cart_block dd .cart_block_customizations {
    border-top: 1px dashed #d5d5d5; }
  .cart_block dd .cart_block_customizations li {
    padding: 10px 20px; }
  .cart_block dd .cart_block_customizations li .deleteCustomizableProduct {
    position: absolute;
    right: 10px; }
.cart_block dt:nth-of-type(2n), .cart_block dd:nth-of-type(2n) {
  background-color: #fafafa; }
.cart_block .cart_block_no_products {
  margin: 0;
  padding: 10px 20px; }
.cart_block .cart-prices {
  border-top: 1px solid #d5d5d5;
  padding: 10px 20px 22px 20px; }
  .cart_block .cart-prices .cart-prices-line {
    overflow: hidden;
    border-bottom: 1px solid #d5d5d5;
    padding: 7px 0; }
  .cart_block .cart-prices .cart-prices-line.last-line {
    border: none; }
  .cart_block .cart-prices .price.cart_block_total {
    font-weight: bold; }
.cart_block .cart-buttons {
  overflow: hidden;
  padding: 10px 20px 10px 20px;
  margin: 0;
  text-align: center; }

/*****************************************************************************
Layer Cart Css
*****************************************************************************/
#layer_cart {
  text-align: left; }
  #layer_cart button.close {
    padding: 15px; }
  #layer_cart .layer_cart_product, #layer_cart .layer_cart_cart, #layer_cart .crossseling-content, #layer_cart .button-container {
    padding: 0 15px 20px; }
  #layer_cart .crossseling-content {
    background-color: #efefef;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    -ms-border-radius: 0 0 4px 4px;
    -o-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px; }
  @media (min-width: 768px) {
    #layer_cart .button-container {
      margin-top: 20px; } 
  }
  @media (max-width: 769px) {
    .cart_block .cart-buttons, .cart_block .cart-prices{
      padding: 10px !important;
    }
    .cart_block dt{
      padding-left: 10px !important;
    }
  }
  #layer_cart #layer_cart_product_price {
    color: black;
    font-weight: bold; }


  .layer_cart_product_info dl dd{
    float: left;
    width: 100px;  
    padding: 0;
    margin: 0;
    font-weight: bold;
    }

 .layer_cart_product_info p{
    text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 18px;
  font-weight: 400;
  color: #333; 
  margin-bottom: 35px;
}

#cart-block .qty_item{
  width: 60%;
  text-align: center;
  float: left;
  padding-top: 9px;
}
#cart-block .qty_item > a{
  background-color: transparent;
  border: 0;
}
#cart-block .qty_item > a.cart_quantity_down{
  margin-right: 5px;
}
#cart-block .qty_item > a.cart_quantity_up{
  margin-left: 5px;
}
#cart-block .mm-navbar .mm-title span.cart-icon{
  float: right;
  font-size: 30px;
  margin-top: -10px;
  position: relative;
}
#cart-block .mm-navbar .mm-title span.cart-icon > i{
  width: 50px;
  font-size: 20px;
  position: relative;
  top: 5px;
}
/* Cart quantity badge */
/* Cart quantity badge */
#cart-block .mm-navbar .mm-title span.cart-icon > span.badge {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;

    /* Original position */
    top: 18px;
    right: 6px;

    box-sizing: border-box;
    min-width: 17px;
    width: auto;
    height: 17px;
    padding: 1px 3px 0;

    border: 1px solid #f03840;
    border-radius: 999px;
    background-color: #fff;
    color: #f03840;

    font-size: 11px;
    line-height: 1;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    text-align: center;
    text-indent: -1px;
}

/* Hide badge when cart is empty */
#cart-block .mm-navbar .mm-title span.cart-icon > span.badge.unvisible {
    display: none;
}
/* #cart-block .cart-buttons #button_order_cart > span:before {
    content: "\f09d";
    font: normal normal normal 16px/1 FontAwesome;
    margin-right: 8px;
}
*/
/*
#cart-block .cart-prices > .cart-prices-line.first-line > span:last-child:after {
    content: "\f0d1";
    font: normal normal normal 20px/1 FontAwesome;
    margin-left: 5px;
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg);
    display: inline-block;
}

*/


#cart-block .mm-navbar{
  padding-right: 5px;
}
@media(max-width: 475px){
  #cart-block .qty_item{
    width: 50%;
  }
}
@media(max-width: 405px){
  #cart-block .qty_item{
    width: 40%;
  }
}
@media (max-width: 350px) {
    .cart_block .cart-info .price_unit{
      display: none;
    }
}


/* Indicación fiscal junto al total */
#cart-block .cart-total-label .cart-tax-label {
    margin-left: 6px;
    color: #777;
    font-size: 12px;
    line-height: 1;
    font-weight: 400;
    white-space: nowrap;
}


/* El envío es información secundaria; el rojo queda reservado al total */
#cart-block .cart-prices-line.first-line .cart_block_shipping_cost {
    color: #4a4a4a;
    font-weight: 400;
}

/* Precios de los artículos en color neutro */
#cart-block .cart-info > span.price {
    color: #4a4a4a;
    font-weight: 400;
}

/* Beneficio de envío gratuito */
#cart-block .cart-prices-line.first-line
.cart_block_shipping_cost.is-free-shipping {
    color: #2e7d32;
    font-weight: 600;
}

/* Aproximar el botón al resumen del pedido */
#cart-block .cart-prices {
    padding-bottom: 8px !important;
}

#cart-block .cart-buttons {
    padding-top: 6px !important;
}


/* Precio unitario normal */
#cart-block .price_unit .current-unit-price {
    color: #666;
    font-weight: 400;
}

/* Precio anterior cuando existe una reducción visible */
#cart-block .price_unit.has-discount .old-price {
    color: #888;
    font-size: 0.88em;
    font-weight: 400;
    text-decoration: line-through;
}

/* Precio promocional */
#cart-block .price_unit.has-discount .current-unit-price {
    color: #e71920;
    font-weight: 600;
}

/* Product names aligned naturally in sliding cart */
#cart-block .cart-info .product-name {
    text-align: left;
}

/* Larger and better aligned remove-product button */
#cart-block .cart_block_list .remove_link {
    top: 6px;
    right: 4px;
    width: 44px;
    height: 44px;
}

#cart-block .cart_block_list .remove_link a,
#cart-block .cart_block_list .ajax_cart_block_remove_link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
}

/* Keep the visible bin discreet */
#cart-block .cart_block_list .remove_link a:before,
#cart-block .cart_block_list .ajax_cart_block_remove_link:before {
    font-size: 19px;
    line-height: 1;
}

/* Destructive-action feedback */
#cart-block .cart_block_list .remove_link a:hover,
#cart-block .cart_block_list .ajax_cart_block_remove_link:hover {
    color: #e71920;
}

#cart-block .cart-info .product-name {
    padding-right: 52px;
}

/* Align unit price, quantity and line total */
#cart-block .cart-info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 56px minmax(72px, auto);
    column-gap: 10px;
}

/* Product information occupies the complete width */
#cart-block .cart-info .product-name,
#cart-block .cart-info .product-atributes {
    grid-column: 1 / -1;
}

/* Unit price: left column */
#cart-block .cart-info .price_unit {
    grid-column: 1;
    float: none;
    width: auto;
    padding-top: 10px;
    align-self: end;
    white-space: nowrap;
}

/* Quantity: central column */
#cart-block .cart-info .qty_item {
    grid-column: 2;
    float: none;
    width: auto;
    padding-top: 10px;
    text-align: center;
    align-self: end;
    white-space: nowrap;
}

/* Product line total: right column */
#cart-block .cart-info > .price {
    grid-column: 3;
    float: none;
    padding-top: 10px;
    text-align: right;
    align-self: end;
    white-space: nowrap;
}
#cart-block .mm-navbar .mm-title span.cart-icon > span.badge { display: flex !important; }
#cart-block .mm-navbar .mm-title span.cart-icon > span.badge.unvisible { display: none !important; }
/* Portugal: retain local URLs and native cart behavior, match reference CTA. */
#cart-block #button_order_cart {
    display: block;
    width: 100%;
    padding: 18px 16px;
    color: #174d79;
    background: #ffdc32;
    border: 1px solid #174d79;
    border-radius: 5px;
    text-align: center;
}
#cart-block #button_order_cart:hover,
#cart-block #button_order_cart:focus {
    background: #f6ce19;
    color: #174d79;
}
/* Match the bin independently of the icon font used by the Portuguese theme. */
#cart-block .cart_block_list .ajax_cart_block_remove_link::before {
    content: "";
    display: block;
    width: 19px;
    height: 22px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999999' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18M9 6V3h6v3M5 6l1 15h12l1-15M10 10v7M14 10v7'/%3E%3C/svg%3E") center / contain no-repeat;
}
@media (max-width: 479px) {
    #cart-block .cart-info {
        grid-template-columns: minmax(0, 1fr) 35px minmax(54px, auto);
        column-gap: 4px;
    }
    #cart-block .price_unit { white-space: normal; }
}

/* v2: align the monetary row to the bottom of the product picture. */
#cart-block .products > dt {
    display: flex;
    align-items: stretch;
}
#cart-block .products > dt > .cart-images {
    flex: 0 0 24%;
    width: 24%;
    float: none;
    padding-right: 0;
    margin-right: 16px;
    align-self: flex-start;
}
#cart-block .products > dt > .cart-images img {
    display: block;
    width: 100%;
    height: auto;
}
#cart-block .products > dt > .cart-info {
    flex: 1 1 0;
    min-width: 0;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
}
#cart-block .cart-info > .product-name { grid-row: 1; }
#cart-block .cart-info > .product-atributes { grid-row: 2; }
#cart-block .cart-info > .price_unit,
#cart-block .cart-info > .qty_item,
#cart-block .cart-info > .price {
    grid-row: 4;
    align-self: end;
}
