/* ECOMMERCE SHOP */
.block-shop { padding:50px 0; perspective: none !important; }
.block-section .block-shop { padding:0;  }
.block-shop-wrap { position:relative; }
.block-shop-content,
.block-shop-filters { float:left; position:relative; width:23%; padding:0 0 40px; box-sizing:border-box; }
.block-shop-filters-heading { display:none; }
.block-shop-filters-wrap { position:sticky; top:50px; }
.block-shop-content { float:right; width:73%; transition:0.2s opacity; }
.block-shop-content-loading { opacity:0.5; pointer-events:none; }
.block-shop-search-open { border:2px solid #ddd; border-radius:3px; text-align:center; padding:5px 10px; cursor:pointer; }
.block-shop-products-filter { display:none; }
/* Shop layouts */
.block-shop-layout-right .block-shop-content { float:left; }
.block-shop-layout-right .block-shop-filters { float:right; }
/* Shop subcategories */
.block-shop-categories { margin:0 0 30px; }
.block-shop-categories .block-shop-category { padding:0 0 5px 0; }
.block-shop-categories .block-shop-category-link { display:block; color:inherit; }
.block-shop-categories .block-shop-category-children { padding:0 0 0 20px; }
/* Shop filters */
.block-shop-filter { position:relative; margin:0 0 30px; }
.block-shop-filter:last-child { margin:0 0; }
.block-shop-filter-title { line-height:1; text-transform:uppercase; color:#999; margin:0 0 10px; font-weight:bold; font-size:14px; }
.block-shop-filter-content {  }
/*.block-shop-filter-collapsed { display:none; }*/
.block-shop-filter-content .field-checkbox:nth-child(n+7) { display:none; }
.block-shop-filter-more { display:block; }
.block-shop-filter-less { display:none; }
/*.block-shop-filter-all .block-shop-filter-collapsed { display:block; }*/
.block-shop-filter-all .field-checkbox:nth-child(n+6) { display:block; }
.block-shop-filter-all .block-shop-filter-more { display:none; }
.block-shop-filter-all .block-shop-filter-less { display:block; }
/* Products Listing */
.block-shop-products-heading { margin:0 0 20px; }
.block-shop-products-title { float:left; margin-top:5px; }
.block-shop-products-meta { float:right; }
.block-shop-products-view { float:right; font-size:24px; font-family:fontawesome; color:#bbb; cursor:pointer; }
.block-shop-products-view:hover,
.block-shop-products-view-active { color:#888; }
.block-shop-products-view-list:before { content:'\f00b'; }
.block-shop-products-view-grid:before { content:'\f009'; margin-right:15px; cursor:pointer; }
.block-shop-products-meta .block-shop-products-orderby { width:220px; background:none; }
@media only screen and (max-width: 800px){
    .block-shop-products-title { font-size:1.1em; }
    /*.block-shop-products-orderby { display:none; }*/
    .block-shop-products-filter { display:block; }
    .block-shop-products-filter:before { font-family:'fontawesome'; content:'\f0b0 '; }
    .block-shop-filters { visibility:hidden; opacity:0; width:auto; position:fixed; top:0; bottom:0; left:0; right:0; background:#fff; z-index:9999; transition:0.2s opacity; }
    .block-shop-filters-heading { display:block; line-height:1.2; position:relative; height:40px; padding:15px 20px; border-bottom:1px solid rgba(100,100,100,0.2); }
    .block-shop-filters-heading-title { font-weight:bold; font-size:1.1em; }
    .block-shop-filters-heading-subtitle { font-size:0.8em; }
    .block-shop-filters-wrap { padding:20px; overflow:hidden; overflow-y:auto; height:calc(100% - 70px); }
    /* Close button */
    .block-shop-filters-close { position:absolute; right:10px; top:10px; width:50px; height:50px; line-height:50px; font-size:30px; text-align:center; }
    .block-shop-filters-close:before { display:block; font-family:'fontawesome'; content:'\f00d'; }
    .block-shop-filter-attribute:before { display:block; position:absolute; content:' '; width:40px; height:100%; right:0; background:linear-gradient(to left, #fff, rgba(0,0,0,0)); z-index:99; }
    .block-shop-filter-content { overflow:hidden; overflow-x:auto; white-space:nowrap; padding-bottom:10px; }
    .block-shop-filter-content .field-checkbox:nth-child(n+7),
    .block-shop-filter-content .field-checkbox { display:inline-block; margin-right:20px; }
    .block-shop-filter-content .field-checkbox-title { font-size:0.9em; }
    .block-shop-filter-collapsed {  }
    .field-checkbox:nth-child(n+6) { display:inline-block; }
    .block-shop-filter-more,
    .block-shop-filter-less { display:none; clear:both; }
    .block-shop-content { width:100%; margin:0 0 30px;}
    .block-shop-search { display:none; }
    /*.block-shop-search.block-shop-search-opened { display:block; }*/

    /* Open */
    body.block-shop-filters-open  { overflow:hidden; }
    .block-shop-filters-open .block-shop-filters { visibility:visible; opacity:1; }
    .block-shop-filters-open .chat,
    .block-shop-filters-open .cookies-open,
    .block-shop-filters-open .block-shopsearch-form { visibility:hidden; }



}

/* Order controls */
.block-shop-products-order { display:block; float:right; margin-left:10px; margin-top:5px; }
.block-shop-products-order .block-shop-products-order-select { display:block; line-height:20px; padding:5px 30px 5px 10px; border:none; width:auto; }




/* ECOMMERCE SEARCH BLOCK */
.block-shopsearch-body { display:block; text-align:left; }
.block-shopsearch-content { display:inline-block; width:100%; max-width:600px; position:relative; }
.block-shopsearch-body .block-shopsearch-input { display:block; position:relative; z-index:1000; border:none; padding:12px 20px; font-size:1em; border-radius:10px; background:#fff; box-shadow:0 1px 6px 0 rgba(0,0,0,0.2); margin:0; outline:none; }
.block-shopsearch-open .block-shopsearch-input { border-radius:10px 10px 0 0; box-shadow:none; }
.block-shopsearch-body .block-shopsearch-submit { position:absolute; right:10px; top:50%; background:none; display:block; border:none; font-size:20px; box-shadow:none; margin:-20px 0 0; color:var(--text-color); width:40px; height:40px; line-height:40px; text-align:center; outline:none; z-index:201; }
.block-shopsearch-body .block-shopsearch-submit:before { display:block; font-family:'fontawesome'; content:'\f002'; }
.block-shopsearch-loading .block-shopsearch-submit:before { content:'\f110'; animation:block-shopsearch-spinner 2s infinite; animation-timing-function:linear; opacity:0.5; }
/* List of results */
.block-shopsearch-body .block-shopsearch-results { position:absolute; width:100%; border-radius:10px; top:0; z-index:999; padding:55px 0 0; max-height:70vh; overflow-y:auto; }
.block-shopsearch-open .block-shopsearch-results { box-shadow:0 1px 6px 0 rgba(0,0,0,0.2); background:#fff; }
.block-shopsearch-body .block-shopsearch-result { display:block; color:inherit; border-top:1px solid rgba(0,0,0,0.05); padding:15px 20px; line-height:1.2; overflow:hidden; }
.block-shopsearch-body .block-shopsearch-result:first-child { border-top:none; }
.block-shopsearch-body .block-shopsearch-result-image { float:left; width:50px; border-radius:3px; overflow:hidden; }
.block-shopsearch-body .block-shopsearch-result-image img { display:block; width:100%; }
.block-shopsearch-body .block-shopsearch-result-body { margin:0 0 0 70px; }
.block-shopsearch-body .block-shopsearch-result-title { font-size:1em; margin:0; }
.block-shopsearch-body .block-shopsearch-result-subtitle { font-size:0.8em; }
/* Alignments */
.block-shopsearch-align-center .block-shopsearch-body { text-align:center; }
.block-shopsearch-align-right .block-shopsearch-body { text-align:right; }
/* Loading animation */
@keyframes block-shopsearch-spinner {
    from { transform:rotate(0deg); }
    to { transform:rotate(360deg); }
}


/* ECOMMERCE CART */
.block-cart { padding:50px 0;  }
.block-section .block-cart { padding:0;  }
.block-cart-table { border:2px solid #eee; margin:0 0 30px; padding:30px; }
.block-cart-table-header { font-weight:bold; margin: 0 0 20px;}
.block-cart-table-body { border-bottom:2px solid #eee; }
.block-cart-table-footer { clear:both; padding:20px 0 0; }
.block-cart-table-body-row { clear:both; margin:0 0 30px; line-height:1.2; }
.block-cart-table-cell { float:left; }
.block-cart-table-cell-name { width:100%; }
.block-cart-table-cell-price { width:20%; text-align:right; }
.block-cart-table-cell-total { width:20%; text-align:right; }
.block-cart-product { }
.block-cart-product:after { content:' '; display:block; width:100%; clear:both; height:0; }
.block-cart-product-image { float:left; display:block; width:100px; border-radius:3px; margin-right:20px; }
.block-cart-product-title { display:inline-block; margin:3px 0 0; font-weight:700; }
.block-cart-product-body { margin-left:120px; }
.block-cart-product-noimage .block-cart-product-body { margin:0; }
.block-cart-product-subtitle { font-size:0.9em; }
.block-cart-product-meta { margin:10px 0 0; }
.block-cart-product-price { font-size:1.1em; font-weight:bold; margin:0 0 10px; }
.block-cart-table-cell-amount input { padding:5px 5px; }
/* NUMBER FIELDS WITH CONTROLS */
.block-cart .block-cart-remove-button { float:left; display:inline-block; height:28px; line-height:28px; margin:0 0 10px 0; color:#f66; cursor:pointer; }
.block-cart .block-cart-amount { float:left; display:inline-block; width:100px; font-size:1em; margin:0 15px 10px 0; text-align:right; }
.block-cart .block-cart-amount-button { float:left; width:28px; height:28px; line-height:28px; text-align:center; font-size:14px; color:#fff; background:#999; cursor:pointer; border-radius:3px 0 0 3px; }
.block-cart .block-cart-amount-button:before { font-family:'fontawesome'; content:'\f068'; }
.block-cart .block-cart-amount-plus:before { content:'\f067'; }
.block-cart .block-cart-amount-plus {  border-radius:0 3px 3px 0; }
.block-cart .block-cart-amount-button,
.block-cart .block-cart-amount-input { float:left; }
.block-cart .block-cart-amount-input { -moz-appearance:none; border:1px solid #999; border-width:1px 0; border-radius:0; text-align:center; width:36px; height:28px; line-height:28px; padding:5px; box-sizing:border-box; }
.block-cart .block-cart-amount-input::-webkit-outer-spin-button { -webkit-appearance: none; }
.block-cart .block-cart-amount-input::-webkit-inner-spin-button { -webkit-appearance: none; }
@media screen and (max-width:600px){
    .block-cart-product-image { float:none; width:150px; margin:0 0 10px; }
    .block-cart-product-body { margin-left:0; }
}


/* ECOMMERCE CHECKOUT */
.block-checkout { padding:50px 0;  }
.block-section .block-checkout { padding:0;  }
.block-checkout { margin:0 0 40px; }
.block-checkout-title { font-size:1.4em; }
.block-checkout-form { float:left; width:55%; padding:0; box-sizing:border-box; }
.block-checkout-summary { float:right; width:40%; }
.block-checkout-summary-body { border:2px solid #eee; padding:30px; margin:0 0 30px; box-sizing:border-box; }
.block-checkout-summary-items { border-bottom:2px solid #eee; padding:20px 0; }
.block-checkout-summary-items-total { font-weight:bold; font-size:1.5em; border-bottom:none; padding:20px 0 0; }
.block-checkout-summary-item { overflow:hidden; margin:0 0 20px; line-height:1.3; }
.block-checkout-summary-item:last-child { margin:0; }
.block-checkout-summary-item-left { float:left; font-size:1.1em; }
.block-checkout-summary-item-right { float:right; text-align:right; }
.block-checkout-summary-item-subtitle { font-size:0.8em; opacity:0.6; }
.block-checkout-summary-item-discount { color:#6c2; }
.block-checkout-discount-remove { font-size:0.8em; color:#aaa; }
.block-checkout-field { margin:0 0 20px; }

.block-checkout-add-discount-button {}
.block-checkout-add-discount { padding:20px; background:#f5f6f8; border-radius:3px; }
.block-checkout-add-discount-submit {}
.block-checkout-add-discount-input {}
.block-checkout-add-discount-error { font-size:0.9em; color:#f66; font-weight:bold; margin:0 0 20px; }



.block-checkout-section { margin:20px 0 40px; }
.block-checkout-section-title { font-size:1.4em; }
.block-checkout-payment { margin:10px 0 30px; border:2px solid #ddd;  background:rgba(0,0,0,0.00); overflow:hidden; }
.block-checkout-method input { margin-right:5px; }
.block-checkout-method { position:relative; }
.block-checkout-method-item { position:relative; box-sizing:border-box; padding:20px 120px 20px 70px; border-top:2px solid #ddd; font-weight:bold; cursor:pointer; color:#bbb; }
.block-checkout-method-item:after { display:block; position:absolute; right:20px; top:50%; margin:-20px 0 0; background-size:cover; background-repeat:no-repeat; background-position:center; width:100px; height:40px; content:' ';  }
.block-checkout-method[data-value=redsys]:after { background-image:url('../../images/site/payment-methods/redsys.png');  }
.block-checkout-method[data-value=paypal]:after { background-image:url('../../images/site/payment-methods/paypal.png');  }
.block-checkout-method[data-value=sequra]:after { background-image:url('../../images/site/payment-methods/sequra.png');  }
.block-checkout-method[data-value=sequra_pp3]:after { background-image:url('../../images/site/payment-methods/sequra.png');  }
.block-checkout-method[data-value=redsys],
.block-checkout-method[data-value=paypal],
.block-checkout-method[data-value=sequra],
.block-checkout-method[data-value=sequra_pp3] { padding-right:120px; }
.block-checkout-method-desc { font-size:0.8em; line-height:1.4; font-weight:normal; }
.block-checkout-method-item:first-child { border-top:none; }
.block-checkout-method .block-checkout-method-active { color:inherit;  }
.block-checkout-method .block-checkout-method-item:before { display:block; position:absolute; top:50%; left:20px; font-family:'fontawesome'; text-align:center; width:30px; height:30px; margin-top:-16px; line-height:30px; border-radius:50px; transition:0.2s linear all; background:#fff; color:#fff; content:' '; box-shadow:inset 0 0 0 3px #eee;  }
.block-checkout-method .block-checkout-method-active:before { display:block; position:absolute; top:50%; left:20px; font-family:'fontawesome'; text-align:center; width:30px; height:30px; margin-top:-16px; line-height:30px; border-radius:50px; transition:0.2s linear all; background:var(--highlight-color); color:#fff; content:'\f00c'; box-shadow:none;  }


/* Payment and shipping method selector */
.block-checkout-methods { margin:10px 0 30px; border:2px solid #ddd;  background:rgba(0,0,0,0.00); overflow:hidden; }
.block-checkout-method { position:relative; box-sizing:border-box; padding:20px 20px 20px 70px; border-top:2px solid #ddd; font-weight:bold; cursor:pointer; }
.block-checkout-method:after { display:block; position:absolute; right:20px; top:50%; margin:-20px 0 0; background-size:cover; background-repeat:no-repeat; background-position:center; width:100px; height:40px; content:' ';  }
.block-checkout-method-title {  }
.block-checkout-method-description { font-size:0.8em; line-height:1.4; font-weight:normal; }
.block-checkout-method-meta { float:right; font-weight:bold; }
.block-checkout-method:first-child { border-top:none; }
.block-checkout-method.block-checkout-method-active { color:inherit;  }
.block-checkout-method:before { display:block; position:absolute; top:50%; left:20px; font-family:'fontawesome'; text-align:center; width:30px; height:30px; margin-top:-16px; line-height:30px; border-radius:50px; transition:0.2s linear all; background:#fff; color:#fff; content:' '; box-shadow:inset 0 0 0 3px #eee;  }
.block-checkout-method-active:before { display:block; position:absolute; top:50%; left:20px; font-family:'fontawesome'; text-align:center; width:30px; height:30px; margin-top:-16px; line-height:30px; border-radius:50px; transition:0.2s linear all; background:var(--highlight-color); color:#fff; content:'\f00c'; box-shadow:none;  }
.block-checkout-method-disabled:before { color:#f77; content:'\f00d'; box-shadow:inset 0 0 0 3px #faa; }

.block-checkout-accept { margin:0 0 20px; }

@media only screen and (max-width: 820px){
    .checkout-detail,
    .checkout-summary { float:none; width:auto; }
}



/* PRODUCT LISTING */
.products { margin:0 0 30px; display:flex; flex-direction:row; flex-wrap:wrap; justify-content:flex-start; align-items:stretch; }
.products-columns-4 .product-item { width:22.5%; margin-right:3.33333%; }
.products-columns-4 .product-item:nth-child(4n) { margin-right:0; }
/* Single products in listing */
.product-item { width:30%; margin:0 5% 30px 0; box-sizing:border-box; }
.product-item:nth-child(3n) { margin-right:0; }
.product-item-media { position:relative; height:0; padding-top:100%; margin:0 0 20px; }
.product-item-heading { margin:0 0 12px; }
.product-item-image { position:absolute; display:block; top:0; left:0; right:0; bottom:0; }
.product-item-image-image { margin:0; object-fit:contain; width:100%; height:100%; display:block; border-radius:3px; }
.product-item-body { text-align:center; }
.product-item-title { font-size:1em; line-height:1.2; color:var(--heading-color); margin:0; }
.product-item-title a, .product-item-title a:visited { color:var(--heading-color); }
.product-item-subtitle { font-size:0.9em; line-height:1.2; /*color:var(--subheading-color);*/ }
/* Rating */
.product-item-terms { margin:0 0 10px; text-align:center; }
.product-item-term { position:relative; display:inline-block; margin:0 3px; }
.product-item-term .product-item-term-image { display:block; width:32px; height:32px; border-radius:3px; }
.product-item-term .product-item-term-color { display:block; width:32px; height:32px; border-radius:3px; background:#eee; }
.product-item-term .product-item-term-tooltip { position:absolute; display:none; opacity:0; left:50%; margin-left:-50px; top:100%; width:100px; visibility:hidden; font-size:12px; line-height:1.2; padding:4px 8px; font-weight:bold; color:#fff; border-radius:3px; background:rgba(30,30,30,0.8); pointer-events:none; transition:0.2s all; z-index:200; box-sizing:border-box; }
.product-item-term:hover .product-item-term-tooltip { visibility:visible; opacity:1; }
/* Rating */
.product-item-rating { margin:0 0 10px; }
.product-item-rating .rating-stars { text-align:center; }
.product-item-rating .rating-stars-stars { font-size:14px; }
/* Prices */
.product-item-price { margin:5px 0 5px; line-height:1; }
.product-item-price-current { font-size:1.2em; font-weight:bold; margin:0 4px; }
.product-item-price-original { font-size:1.1em; opacity:0.5; margin:0 4px; text-decoration:line-through; }
.product-item-price-discount { color:#fff; padding:0 5px; margin:0 4px; background:#f66; border-radius:3px; }
/* Prices */
.product-item-availability { margin:0; text-transform:uppercase; font-weight:bold; font-size:0.8em; }
.product-item-availability-in { color:#7c3; }
.product-item-availability-out { color:#f66; }
@media only screen and (max-width: 600px){
    .products .product-item { width:48%; margin-right:4%; }
    .products .product-item:nth-child(2n) { margin-right:0; }
    .product-item-title { font-size:0.9em; }
    .product-item .product-item-noimage { height:0; }
    .product-item .product-item-body { top:0; right:0; left:0; box-sizing:border-box; }
    .product-item .product-item-content { padding:15px; box-sizing:border-box; }
    .product-item .product-item-meta { clear:none; position:absolute; bottom:0; left:50%; right:0; height:auto; padding:10px 15px; }
    .product-item .product-item-price-secondary { display:inline-block; margin-left:10px; }
}


/* WIDE PRODUCT LISTING */
.product-item-wide {}
.product-item-wide .product-item-media { float:left; width:230px; }
.product-item-wide .product-item-body { margin-left:250px; text-align:left; overflow:hidden; }
.product-item-wide .product-item-price { text-align:right; margin:0 0 10px; }
.product-item-wide .product-item-terms { text-align:left; margin:0 0 5px; }
.product-item-wide .product-item-rating .rating-stars { text-align:right; }
.product-item-wide .product-item-wide-left { float:left; }
.product-item-wide .product-item-wide-right { float:none; }
.product-item-wide .product-item-wide-bottom { width:100%; clear:both; }
.product-item-wide .product-item-content { font-size:0.9em; }
@media screen and (max-width:760px){
    .product-item-wide .product-item-media { width:150px; }
    .product-item-wide .product-item-wide-left { float:none; }
    .product-item-wide .product-item-rating .rating-stars { text-align:left; }
    .product-item-wide .product-item-price { text-align:left; margin:0 0 10px; }
    .product-item-wide .product-item-body { margin-left:170px; font-size:0.9em; }
    .product-item-wide .product-item-content { display:none; }
}
@media screen and (max-width:600px){
    .product-item-wide .product-item-media { width:100px; }
    .product-item-wide .product-item-body { margin-left:115px; }
    .product-item-wide .product-item-content { display:none; }
}


/* PRODUCT PAGES */
/* Section wrappers */
.product {  }
.product .product-section-heading { padding:80px 0; }
.product .product-section-content { background:#f5f5f5; padding:80px 0; }
.product .product-section-related { background:#fff; padding:80px 0; }
.product .product-section-reviews { background:#f5f5f5; padding:80px 0; }
/* Pieces */
.product .product-heading-title { float:left; max-width:70% }
.product .product-heading-meta { float:right; }
.product .product-details { float:right; width:48%; box-sizing:border-box; }
.product .product-body { float:left; width:48%; }
.product .product-meta { box-sizing:border-box; border:2px solid #eee; padding:30px; }
/* Title */
.product-title { margin:0 0 30px; }
.product-title-title { margin:0 0 10px; }
.product-title-subtitle { margin:0; }
/* Short Summary */
.product-summary { margin:0 0 30px; }

/* Price */
.product-price { margin:0 0 30px; line-height:1; }
.product-price-current { font-size:2em; font-weight:bold; margin:0; }
.product-price-original { font-size:1.3em; opacity:0.5; margin:0 4px; text-decoration:line-through; }
.product-price-discount { font-size:1.2em; color:#fff; padding:0 5px; margin:0 4px; background:#f66; border-radius:3px; }
.product-price-description { font-size:0.8em; margin:10px 0 0 0; opacity:0.6; }

/* Short description */
.product-description { margin:0 0 20px; }

/* Size selector */
.product-sizes { overflow:hidden; margin:0 0 20px; }
.product-size { float:left; color:#333; background:#fff; border:2px solid #ddd; font-size:14px; width:32px; height:32px; margin:0 5px 5px 0; line-height:32px; text-align:center; cursor:pointer; transition:0.2s all; border-radius:3px; }
.product-size-large { width:auto; padding:0 10px; }
.product-size-selected { color:#fff; background:#e32222; border:2px solid #e32222; }

/* Slider */
.product-media { margin:0 0 40px; }
.product-slider { overflow:hidden; position:relative; background:#fff; margin:0 0 20px 0; height:auto; min-height:400px; padding:60% 0 0; box-sizing:border-box; }
.product-slider-carousel { min-height:0; padding:0; }
.product-slider-slides { margin:0; top:0; width:100%; box-sizing:border-box; }
.product-slider-slide { overflow:hidden; width:100%; padding:100% 0 0; height:0; background:none; }
.product-slider-slide-content { display:block; position:absolute;  height:100%; width:100%; top:0; left:0; }
.product-slider-slide-content img { object-fit:contain; width:100%; height:100%; display:block; border-radius:3px; }
/* Prev/Next */
.product-slider-prev,
.product-slider-next { position:absolute; width:40px; height:80px; font-size:30px; line-height:80px; margin-top:-35px; margin-left:-20px; top:50%; left:0; background:rgba(255,255,255,1); border-radius:0 50px 50px 0; text-align:left; color:#666; z-index:999; cursor:pointer; transition:0.2s all; opacity:0; }
.product-slider-next { right:0; left:auto; border-radius:50px 0 0 50px; margin-left:0px; margin-right:-20px; text-align:right; }
.product-slider:hover .product-slider-prev,
.product-slider:hover .product-slider-next { opacity:1; margin-left:0; margin-right:0; }
/* Slider Arrows */
.product-slider-prev:before,
.product-slider-next:before { font-family:'fontawesome'; content:'\f053'; }
.product-slider-next:before { content:'\f054'; }
/* IMAGE CAROUSEL */
.product-carousel { position:relative; margin:0; height:auto; box-sizing:border-box; }
.product-carousel-slides { margin:0; top:0; width:100%; }
.product-carousel-slide { overflow:hidden; position:relative; float:left; cursor:pointer; width:90px; height:90px; margin:0 10px 10px 0; }
.product-carousel-slide img { display:block; position:absolute; top:0; left:0; object-fit:contain; width:100%; height:100%; border-radius:3px; }
.product-carousel-slide.cycle-slide-active { opacity:0.6; }
.product-carousel-prev,
.product-carousel-next { -moz-transition:0.2s all; -webkit-transition:0.2s all; transition:0.2s all; opacity:0.3; }
.product-carousel:hover .product-carousel-prev,
.product-carousel:hover .product-carousel-next { opacity:1; }
.product-carousel-prev,
.product-carousel-next { position:absolute; width:40px; height:40px; font-size:20px; line-height:40px; margin-top:-20px; top:50%; left:auto; right:100%; text-align:center; color:#888; z-index:999; cursor:pointer;	 }
.product-carousel-next { right:auto; left:100%; }
.product-carousel-prev:before { display:block; font-family:'fontawesome'; content:'\f104'; }
.product-carousel-next:before { display:block; font-family:'fontawesome'; content:'\f105'; }
/* Gallery */
.product-gallery { margin:0 0 30px; }
.product-gallery-item { margin:1px; }
.product-gallery-item img { display:block; border-radius:3px; }
/* Generic product page sections */
.product-section { margin:0 0 30px; }
.product-section-heading { margin:0 0 20px; }
/* Content */
.product .product-content { margin:0 auto; width:100%; max-width:900px; }
.product-content-heading { display:none; }
.product-content { margin:0; }

/* Call to action */
.product-cta { margin:0 0 30px; }
.product-cta .product-add-cart-amount { width:90px; display:block; float:left; margin:0 5px 0 0; padding:12px 12px; font-size:16px; line-height:1; box-sizing:border-box }
.product-cta .product-add-cart-submit { float:left;  padding:16px 20px; display:block; border:2px solid #fff; margin:0; font-size:16px; line-height:1; box-sizing:border-box }
/* Request-type products */
.product-cta .product-cta-request-cancel { display:inline-block; font-size:0.9em; color:inherit; cursor:pointer; margin:0 0 10px; }
.product-cta .product-cta-request-field { margin:0 0 15px; }
.product-cta .product-cta-request-field-phone { float:right; width:35%; }
.product-cta .product-cta-request-field-email { float:left; width:60%; }
.product-cta .product-cta-request-field-message { clear:both; }
/* Variation selectors */
.product-cta .product-cta-attributes-change { margin:20px 0 0; color:#f90; font-size:0.9em; }
.product-cta .product-cta-attributes-change:before { display:inline-block; content:'\f071'; font-family:'fontawesome'; margin-right:10px; }
.product-cta .product-cta-attributes { margin:0 0 30px; }
.product-cta .product-cta-attribute { margin:0 0 15px; }
.product-cta .product-cta-attribute-title { margin:0; font-weight:bold; }
.product-cta .product-cta-attribute-content { margin:0; }
/* Color selectors */
.product-variation-options { margin:0; }
.product-variation-options:after { display:block; clear:both; width:100%; content:' '; height:0; }
.product-variation-option { float:left; position:relative; overflow:hidden; height:30px; padding:2px 10px; line-height:30px; border:2px solid #fff; margin:0 10px 10px 0; box-shadow:0 0 0 2px #dddddd; cursor:pointer; transition:0.2s all; }
.product-variation-options-type-color .product-variation-option { padding-left:40px; }
.product-variation-option-color { position:absolute; left:0; top:0; height:26px; width:26px; margin:4px 0 0 4px; border-radius:5px; }
.product-variation-option-image { display:block; height:auto; width:120px; margin:0 0 5px; }
.product-variation-option-text { }
.product-variation-option-selected { box-shadow:0 0 0 2px var(--highlight-color); }
.product-variation-option-disabled { opacity:0.5; }
/* Color selectors */
.product-variation-colors { margin:0; }
.product-variation-colors:after { display:block; clear:both; width:100%; content:' '; height:0; }
.product-variation-color { float:left; width:32px; height:32px; border:2px solid #fff; margin:0 10px 10px 0; box-shadow:0 0px 0px 2px #dddddd; cursor:pointer; transition:0.2s all; }

/* Color selectors */
.product-field-options { margin:0; }
.product-field-options:after { display:block; clear:both; width:100%; content:' '; height:0; }
.product-field-option { float:left; position:relative; overflow:hidden; height:30px; padding:2px 10px; line-height:30px; border:2px solid #fff; margin:0 10px 10px 0; box-shadow:0 0 0 2px #dddddd; cursor:pointer; transition:0.2s all; }
.product-field-options-type-color .product-field-option { padding-left:40px; }
.product-field-option-color { position:absolute; left:0; top:0; height:26px; width:26px; margin:4px 0 0 4px; border-radius:5px; }
.product-field-option-image { display:block; height:auto; width:120px; margin:0 0 5px; }
.product-field-option-text { }
.product-field-option-selected { box-shadow:0 0 0 2px var(--highlight-color); }
.product-field-option-disabled { opacity:0.5; }
/* Color selectors */
.product-field-colors { margin:0; }
.product-field-colors:after { display:block; clear:both; width:100%; content:' '; height:0; }
.product-field-color { float:left; width:32px; height:32px; border:2px solid #fff; margin:0 10px 10px 0; box-shadow:0 0px 0px 2px #dddddd; cursor:pointer; transition:0.2s all; }


/* Details */
.product-details { margin:0; }
.product-details-heading { display:none; }
.product-detail { float:left; margin:0 0 0 25px; }
.product-detail:first-child { margin-left:0; }
.product-detail-body { line-height:1; background:#fff; position:relative; margin:0; padding:0 0 0 35px; }
.product-detail-title { text-transform:uppercase; font-size:12px; margin:0 0 5px; }
.product-detail-content { font-size:16px; color:#666; }
/* Detail widgets */
.product-details-widgets .widget { margin:0 0 20px; }
/* Contact */
.product-contact { overflow:hidden; margin:0 0 30px; }
.product-contact a:hover { text-decoration:none; }
.product-contact-heading { display:none; }
.product-contact-item { position:relative; margin:0 0 15px; background:#eee; border:2px solid #ddd; border-radius:3px; }
.product-contact-item:last-child { margin:0 0; }
.product-contact-body { margin:0 0 0 70px; text-transform:uppercase; line-height:1; padding:15px; background:#fff; }
.product-contact-title { color:#888; font-size:12px; margin:0 0 5px; }
.product-contact-content { color:#555; font-size:20px; font-weight:bold; }
.product-contact .product-contact-content a { color:inherit; }
.product-contact-item:before { position:absolute; width:70px; height:70px; line-height:70px; top:52%; left:0; margin:-35px 0 0; content:'\f10b'; font-family:'fontawesome'; font-size:32px; text-align:center;  }
.product-contact-phone:before { content:'\f095'; color:#2ac; }
.product-contact-whatsapp:before { content:'\f232'; color:#5bd067; font-family:'brands'; }
.product-contact-email:before { content:'\f003'; color:#759; }
/* Contact */
.product-contact {  }
.product-contact-item { margin:0 0 15px; background:#eee; border:2px solid #ddd; border-radius:3px; }
.product-contact-body { margin:0 0 0 70px; text-transform:uppercase; line-height:1; padding:15px; background:#fff; }
.product-contact-title { color:#888; font-size:12px; margin:0 0 5px; }
.product-contact-content { color:#555; font-size:20px; font-weight:bold; }
/* Utility */
.product-utilities { margin:0 0 30px; }
.product-utility { margin:0 0 20px; color:#999;}
.product-utility-body { margin-left:50px; }
.product-utility-title { color:#888; font-size:14px; font-weight:bold; }
.product-utility-content { color:#888; font-size:14px; }
.product-utility-icon { float:left; font-family:'linearicons'; width:40px; margin:4px 0 0; font-size:32px; line-height:40px; text-align:center; color:#bbb;  }

/* product Share */
.product-share { clear:both; display:none; font-size:0.9em; background:#fff; border-top:1px solid #ddd; }
.product-share-list { position:relative; padding:10px; }
.product-share .product-share-link { display:block; position:relative; margin:0; padding:15px 20px 15px 60px; color:#888; }
.product-share .product-share-link:before { display:block; position:absolute; font-family:'brands'; left:10px; top:50%; width:30px; margin:-15px 0 0; height:30px; line-height:30px; text-align:center; color:#fff; background:#666; border-radius:40px; }
.product-share .product-share-link:hover { text-decoration:none; }
.product-share .product-share-email:before { background:#999; font-family:'brands'; content:'\f0e0'; }
.product-share .product-share-whatsapp:before { background:#36C770; content:'\f232'; }
.product-share .product-share-facebook:before { background:#4862a3; content:'\f09a'; }
.product-share .product-share-twitter:before { background:#00acee; content:'\f099'; }
.product-share .product-share-googleplus:before { background:#dd4b39; content:'\f0d5'; }
.product-share .product-share-linkedin:before { background:#0077b5; content:'\f0e1'; }
.product-share .product-share-pinterest:before { background:#bd081c;content:'\f231'; }

/* Product Meta fields */
.product-meta-field { overflow:hidden; margin:0 0 20px; font-size:14px; }
.product-meta-field:last-child { margin:0;  }
.product-meta-field-title { float:left; width:120px; line-height:25px; margin:0; color:#aaa; text-transform:uppercase; }
.product-meta-field-content { margin-left:120px; }

/* Related Products */
.product-related {  }
.product-related-heading { margin:0 0 30px; }
.product-related-more { text-align:center; }


/* PRODUCT REVIEWS */
.product-reviews {  }
.product-reviews-heading { margin:0 0 30px; }
.product-reviews-list { float:left; width:65%; }
.product-reviews-details { float:right; width:30%; }
/* Write A Review */
.product-reviews-write { margin:0 0 30px; }
.product-reviews-write-link { display:block; width:100%; box-sizing:border-box; margin:0 0 10px; }
.product-reviews-write-description { font-size:0.9em; }
/* Single Review */
.product-review { margin:0 0 60px; }
.product-review-heading:after { display:block; clear:both; width:100%; content:' '; height:0; }
.product-review-title { margin:0 0 10px; float:left; }
.product-review-name { margin:0 0 0px; font-size:1.2em; }
.product-review-date { font-size:0.9em; }
.product-review-rating { margin:4px 0 10px; float:right; }
.product-review-content { margin:0 0 10px; }
.product-review-reply { margin:30px 0 0 15%; }
.product-review-reply-title { font-size:1.3em; margin:0 0 10px; }
@media screen and (max-width:850px){
    .product .product-section-heading { padding:30px 0; }
    .product .product-body { float:none; width:auto; margin:0 0 30px; }
    .product .product-details { float:none; width:auto; }
    .product-reviews-list { float:none; width:auto; }
    .product-reviews-details { float:none; width:auto; }

    .product-media { margin:0 0 20px; }
    .product-carousel-slides { overflow-x:auto; white-space:nowrap; }
    .product-carousel-slide { display:inline-block; float:none; width:75px; height:75px; margin:0 5px 10px 0; }
}


/* PRODUCTS */
.review-create { width:900px; max-width:100%; }
.review-create-field { margin:0 0 20px; }


/* STAR RATINGS */
.rating-stars { text-align:right; line-height:1; }
.rating-stars-title { margin:0; font-size:1.6em; font-weight:bold; }
.rating-stars-stars { display: inline-block; position:relative; font-size:1.6em; color:#ccc; }
.rating-stars-overlay { position:absolute; overflow:hidden; height:100%; left:0; top:0; }
.rating-stars-active { width:100%; color:#fb0; }
.rating-stars-active:before,
.rating-stars-inactive:before{ font-family:'fontawesome'; content:'\f005\f005\f005\f005\f005';}


/* STAR RATINGS */
.select-rating {  }
.select-rating-item { display:inline-block; text-align:center; width:40px; height:40px; line-height:40px; font-size:32px; color:#ccc; cursor:pointer; }
.select-rating-item:before { font-family:'fontawesome'; content:'\f005'; }
.select-rating-item-active:before { color:#fb0; }


/* CHECKOUT */
.checkout { position:relative; margin:0 0 40px; }
.checkout-title { font-size:1.4em; }
.checkout-detail { float:left; width:55%; padding:0; box-sizing:border-box; }
.checkout-summary { height:100%; float:right; width:40%; transition:0.2s all; }
.checkout-summary-inner {  }
.checkout-summary-loading { opacity:0.3; }
.checkout-summary-body { border:2px solid #eee; padding:30px; margin:0 0 30px; box-sizing:border-box; }
.checkout-summary-items { border-bottom:2px solid #eee; padding:20px 0; }
.checkout-summary-widgets { padding:0 32px; }
/* Items */
.checkout-summary-item { overflow:hidden; margin:0 0 25px; line-height:1.3; }
.checkout-summary-item:last-child { margin:0; }
.checkout-summary-item-image { float:left; width:40px; height:40px; border-radius:3px; overflow:hidden; background:#eee; }
.checkout-summary-item-image img { display:block; width:100%; }
.checkout-summary-item-body { margin:0 0 0 55px; }
.checkout-summary-item-title { }
.checkout-summary-item-subtitle { font-size:0.8em; opacity:0.6; }
.checkout-summary-item-price { float:right; text-align:right; }
/* Item discounts */
.checkout-summary-item-discount { clear:both; padding:10px; background:rgba(0,20,40,0.04); margin:10px 0 0; display:flex; justify-content: space-between;align-items: center;flex-wrap: nowrap; border-radius:5px; }
.checkout-summary-item-discount-name { flex-grow:1; font-size: 0.9em; }
.checkout-summary-item-discount-value { color:#6c2; width:80px; }
.checkout-summary-item-discount-remove { width:60px; text-align: right; color:#f66; }
.checkout-summary-item-discount-remove:before { font-family:'fontawesome'; content:'\f00d'; }
/* Shipping */
.checkout-summary-shipment .checkout-summary-item-body { margin:0; }
.checkout-summary-item-body { margin:0 0 0 55px; }
/* Discounts */
.checkout-summary-discount .checkout-summary-item-body { margin:0; }
.checkout-summary-discount-price { color:#f66; }
/* Total */
.checkout-summary-total { padding:20px 0 0; }
.checkout-summary-total-title { float:left; }
.checkout-summary-total-price { float:right; font-weight:bold; font-size:1.3em; }
.checkout-field { padding:0 0 20px; }
@media screen and (max-width:800px){
    .checkout-detail { float:none; width:auto; }
    .checkout-summary { float:none; width:auto; }

}
@media screen and (max-width:650px){
    .checkout-summary-body { padding:10px; }
}

.checkout-add-discount-button {}
.checkout-add-discount { }
.checkout-add-discount .checkout-add-discount-submit {}
.checkout-add-discount .checkout-add-discount-input { margin:0 0 10px; display:block; }
.checkout-add-discount .checkout-add-discount-error { font-size:0.9em; color:#f66; font-weight:bold; margin:0 0 20px; }

.checkout .checkout-submit-button { padding:20px 10px; width:100%; display:block; box-sizing:border-box; border-radius:2px; }
.checkout .checkout-submit-button-disabled { opacity:0.4; pointer-events:none; }


