/*
1. SHOP LIST PAGE
2. SHOP SINGLE PAGE
3. CART PAGE
4. CHECKOUT PAGE
5. MY ACCOUNT PAGE
6. WIDGETS
7. RESPONSIVE
8. STYLING
*/

/* *********************
    1. SHOP LIST PAGE
************************ */

.post-type-archive-product h1.page-title { display: none; }

/* Filter Menu and Text*/
.woocommerce .swm-woo-results { position: relative; display: flex; align-items: center; justify-content: space-between; margin-bottom: 30px; }
.woocommerce .swm-woo-results select, .woocommerce .swm-woo-results .woocommerce-result-count, .woocommerce .swm-woo-results .woocommerce-ordering { margin: 0;  color:var(--swm-color-text);  }

/* Sale Badge*/
.woocommerce ul.products li.product .onsale, .woocommerce span.onsale { right: auto; top: 0; left: 0; margin:10px; padding: 0; font-size:14px; height: auto; width: auto; line-height: 1; min-width: auto; min-height: auto; padding: 6px 12px; font-weight:600; text-transform:uppercase; border-radius:5px; }

/* List Item */
.woocommerce ul.products { position: relative; display: flex; align-items: flex-start; flex-wrap: wrap; padding: 0; margin: 0 -15px; list-style: none; clear: both; }
.woocommerce ul.products li.product { padding: 0; margin: 0 0 30px; float: none; text-align: center; overflow: hidden; }
.woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product { padding-bottom: 30px; }
.woocommerce ul.products li.product .swm_shop_loop_item, .woocommerce-page ul.products li.product .swm_shop_loop_item { position: relative; overflow: hidden; background: transparent; }
.woocommerce ul.products li.first, .woocommerce-page ul.products li.first { clear: none; }
.woocommerce ul.products li.product a img { margin: 0 0 10px 0; }
.woocommerce .star-rating::before { opacity: 0.7; }
.woocommerce ul.products li.product .star-rating { font-size: 80%; margin: 15px auto; display: none; }
.woocommerce ul.products li.product h2.woocommerce-loop-product__title { line-height: normal; }
.woocommerce ul.products li.product .price ins { text-decoration: none; font-weight: 400; }
.woocommerce ul.products li.product .price del { margin-right: 5px; }
.woocommerce #respond input#submit.loading::after, .woocommerce a.button.loading::after, .woocommerce button.button.loading::after, .woocommerce input.button.loading::after { top: -1px; left: auto; right: auto; margin-left: 8px; }

/* Shop and Thumbnail Gallery Columns */
.woocommerce ul.products.columns-2 li.product, .woocommerce-page ul.products.columns-2 li.product { width: 50%; }
.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product { width: 33.33333333333333%; }
.woocommerce ul.products.columns-4 li.product, .woocommerce-page ul.products.columns-4 li.product { width: 25%; }
.woocommerce ul.products.columns-5 li.product, .woocommerce-page ul.products.columns-5 li.product { width: 20%; }
.woocommerce ul.products.columns-6 li.product, .woocommerce-page ul.products.columns-6 li.product { width: 16.66666666666666%; }

/* **********************
    2. SHOP SINGLE PAGE
************************* */

/* Thumbnail Gallery */
.woocommerce div.product div.images, .woocommerce div.product div.summary { margin-bottom: 70px; }
.woocommerce div.product div.summary { padding-left: 75px; }
.woocommerce-product-gallery .zoomImg { background-color: var(--swm-color-light-1); opacity: 0 }
.woocommerce-product-gallery .flex-control-thumbs li { list-style: none; cursor: pointer; float: left; }
.woocommerce-product-gallery img { display: block; width: 100%; height: auto; border-radius:var(--swm-border-radius-15); }
.woocommerce-product-gallery .woocommerce-product-gallery__image--placeholder { border: 1px solid var(--swm-color-border); }
.woocommerce-product-gallery__image { border-radius:var(--swm-border-radius-15); overflow:hidden; }
.woocommerce-product-gallery__trigger { position: absolute; top: 1rem; right: 1rem; z-index: 99; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::before { height: 8px; width: 8px; left: 11px; top: 11px; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger::after { height: 6px; top: 20px; left: 22px; }
.woocommerce div.product div.images .woocommerce-product-gallery__trigger { background:transparent; color:var(--swm-color-dark-1); border:1px solid var(--swm-color-dark-1); }
.pswp { z-index: 9999999; }
.pswp__caption__center { text-align: center; }
.woocommerce div.product div.images .flex-control-thumbs li img { opacity: 1; }

/*Sidebar Gallery*/
.woocommerce.product-thumb-side div.product div.images .flex-viewport { width: calc(100% - var(--swm-wc-single-thumb-section-size)); float: right; display: block; margin: 0; }
.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { float: left; display: block; width: 90px; }
.woocommerce.product-thumb-side div.product div.woocommerce-product-gallery.woocommerce-product-gallery--with-images.images ol.flex-control-nav.flex-control-thumbs > li { width: 100%; padding: 0; }
.woocommerce.product-thumb-side-right div.product div.images .flex-viewport { float: left; }
.woocommerce.product-thumb-side-right div.product div.images ol.flex-control-thumbs { float: right; }
.woocommerce.product-thumb-side-right div.product div.images .woocommerce-product-gallery__trigger { right: calc(0.5em + 95px); }
::marker { display: none; }

/*Tabs*/
.woocommerce .woocommerce-tabs.wc-tabs-wrapper { clear: both; margin-bottom: 50px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 20px 0; overflow: visible; }
.woocommerce div.product .woocommerce-tabs ul.tabs:before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { border: 0; display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { display: inline-block; vertical-align: top; margin: 0 40px 0 0; border: none; background-color: transparent; padding: 0; color:var(--swm-color-headings); }

.woocommerce div.product .woocommerce-tabs ul.tabs li > a { position: relative; display: block; margin: 0; border: none;  cursor: pointer; transition: all 0.3s ease-in-out; -webkit-transition: all 0.3s ease-in-out; }
.woocommerce table.shop_attributes { margin-top: 30px; }
.woocommerce table.shop_attributes td, .woocommerce table.shop_attributes th { padding: 12px; }
.woocommerce table.shop_attributes td p { padding: 0; }
.woocommerce div.product .woocommerce-tabs .panel > h2, .woocommerce-Reviews-title { display: none; }
.woocommerce div.product .woocommerce-tabs .panel #comments { margin-top: 0; }

/* Quantity */
.woocommerce div.quantity, .woocommerce div.product form.cart div.quantity, .woocommerce-page div.product form.cart div.quantity { margin: 0 8px 0 0; width: 80px; height: 37px; position: relative; }
.woocommerce div.quantity input[type="number"], .woocommerce div.product form.cart div.quantity input[type="number"], .woocommerce-page div.product form.cart div.quantity input[type="number"] { width: 100%; height: 100%; padding: 0 20px 0 26px; font-size: 100%; background-clip: border-box !important; text-align: left; }
.woocommerce div.quantity span, .woocommerce div.product form.cart div.quantity span, .woocommerce-page div.product form.cart div.quantity span { display: block; position: absolute; z-index: 1; right: 8px; width: 30px; height: 50%; font-size: 14px; text-align: center; line-height: 18px; cursor: pointer; border-radius:100%; background:var(--swm-color-body); }
.woocommerce div.quantity span.q_more, .woocommerce div.product form.cart div.quantity span.q_more, .woocommerce-page div.product form.cart div.quantity span.q_more { top: 4px; }
.woocommerce div.quantity span.q_less, .woocommerce div.product form.cart div.quantity span.q_less, .woocommerce-page div.product form.cart div.quantity span.q_less { bottom: 4px; }
.woocommerce div.quantity span:before, .woocommerce div.product form.cart div.quantity span:before, .woocommerce-page div.product form.cart div.quantity span:before { display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; font-family: 'Font Awesome 5 Free'; font-weight: 700; content: "\f106"; right: 0; top: 0; position: relative; font-size: 14px; }
.woocommerce div.quantity span.q_less:before, .woocommerce div.product form.cart div.quantity span.q_less:before, .woocommerce-page div.product form.cart div.quantity span.q_less:before { content: "\f107"; top: auto; bottom: -3px; }
.woocommerce div.product form.cart .group_table td { border: 1px solid var(--swm-color-border); padding: 10px; }
.single-product .woocommerce-grouped-product-list .woocommerce-Price-amount.amount { font-size: var(--body-font-size); }
table.woocommerce-grouped-product-list { margin-bottom: 30px; }
.single-product.woocommerce div.product form.cart table div.quantity { margin: 0 auto; }
.woocommerce div.product form.cart .group_table td:first-child { width: auto; }
.woocommerce.single-product div.product form.cart .button { float: none; }
.woocommerce-cart .shop_table.cart .button { float: right; }

/*Description*/
.woocommerce div.product form.cart .variations select { margin-bottom: 0; }
.woocommerce .woocommerce-variation-price { margin-bottom: 25px; }
.woocommerce div.product form.cart .reset_variations { display: block; margin-top: 15px; line-height: normal; margin-bottom: 5px; }
.woocommerce div.product form.cart table.variations { margin-bottom: 0; }
.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th { padding-left: 0; }

/*SKU, Categories section*/
.woocommerce .product > .summary .product_meta>span { display: block; margin-bottom: 0.53333rem; }
.woocommerce .product > .summary .product_meta>span span, .woocommerce .product > .summary .product_meta>span a { font-weight: 500; }
.swm-woo-meta-label { margin-right:10px; font-size:19px; }
/* Title */
.woocommerce div.product h1.product_title { line-height: normal; margin-bottom: 5px; }
.woocommerce h2.woocommerce-loop-category__title { line-height: normal; }
.woocommerce mark { background: none; }

/* Ratings */
.woocommerce div.product .woocommerce-product-rating { margin: 10px 0 15px; }
.woocommerce.single-product .summary .star-rating { font-size: 0.9em; letter-spacing: 3px; width: 6em; display: block; float: left; margin-top: 10px; margin-right: 8px; text-align: center; }

/* Price */
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins { text-decoration: none; font-weight:400; }
.woocommerce div.product p.price del, .woocommerce div.product span.price del { margin-right: 8px; }

/* Reviews */
.woocommerce #reviews #comments ol.commentlist { margin: 40px 0 20px 0; }
.woocommerce #reviews #comments ol.commentlist li { border: 1px solid var(--swm-color-border); margin: 0 0 -1px 0; padding: 30px 30px 15px; }
.woocommerce .woocommerce-review__author { font-size: calc(var(--body-font-size) + 2px); }
.woocommerce #reviews #comments ol.commentlist li img.avatar { width: 100px; height: 100px; left: 30px; top: 30px; border-radius: 100%; border: 0; padding: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment-text { border: 0; margin-left: 125px; padding: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { margin: 0 0 5px; float: left; }
.woocommerce h2.woocommerce-Reviews-title { display: block; text-transform: var(--swm-wc-single-relative-text-transform); }
.woocommerce .woocommerce-Reviews .star-rating { font-size: 0.9em; letter-spacing: 3px; width: 6em; margin-bottom: 10px; }
.woocommerce .woocommerce-Reviews .description { clear: both; }
.woocommerce .meta .woocommerce-review__published-date { display: inline-block; margin-left: 10px; }
.woocommerce .woocommerce-review__author { display: inline-block; }
.woocommerce #reviews .comment-respond p.stars { display: inline-block; line-height: 1; }
.woocommerce #reviews .comment-form-rating { margin: 30px 0 25px; display: block; }
.woocommerce #reviews .comment-form-rating label { display: inline-block; line-height: 1; margin-right: 20px; }
.woocommerce #reviews #commentform p.comment-form-email input[type="email"] { float: right; }
.woocommerce #review_form #respond p.comment-form-comment { margin: 0; }
.woocommerce #reviews #comments ol.commentlist li { border: 0; padding: 30px 0 10px 0; }
.woocommerce #reviews #comments ol.commentlist li img.avatar { left: 0; }
.woocommerce #reviews #comments ol.commentlist li:first-child { padding-top: 0; }
.woocommerce #reviews #comments ol.commentlist li:first-child img.avatar { top: 0; }
.woocommerce .woocommerce-review__dash { display: none; }
.woocommerce .woocommerce-review__published-date { display: block; }
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { margin-bottom: 10px; }
.woocommerce #reviews #comments h2 { margin-top:30px; }
.woocommerce #review_form #respond p.comment-form-cookies-consent { margin:0 0 30px; }

.woocommerce-Reviews #commentform { margin-bottom:0; }
.woocommerce-Reviews #comments { margin:0; }

.woocommerce-Reviews #commentform input::-webkit-input-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform input::-moz-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform input::-ms-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform input::placeholder { font-size:100%; }
.woocommerce-Reviews #commentform textarea::-webkit-input-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform textarea::-moz-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform textarea::-ms-placeholder { font-size:100%; }
.woocommerce-Reviews #commentform textarea::placeholder { font-size:100%; }

/*Messages*/
.woocommerce .woocommerce-error, .woocommerce .woocommerce-info, .woocommerce .woocommerce-message { border: 1px solid var(--swm-color-border); border-radius: 0; background: none; margin-bottom: 40px; color:var(--swm-color-text); line-height:40px; border-radius:var(--swm-border-radius-15); }
.woocommerce .woocommerce-info::before, .woocommerce .woocommerce-message::before { top: 15px; }
.woocommerce .woocommerce-error::before { top: 20px; }

.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-Message a.button,
.woocommerce a.woocommerce-MyAccount-downloads-file { padding: 0 20px; height: 34px; line-height: 34px; font-size:12px; }

.woocommerce .woocommerce-error { box-shadow: none; border: 1px solid red; background: none; }
.type-product .products h2 { margin-bottom: 50px; }
.type-product .up-sells.products h2 { margin-top: 56px; }
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { font-size: 100%; }
.woocommerce .star-rating { float: none; }
.woocommerce .wc-block-components-notice-banner { font-size:var(--body-font-size); border-radius:0; background:transparent !important; border-color:var(--swm-color-border) !important; }
.wc-block-components-notice-banner__content a.button.wc-forward { color:var(--swm-color-headings) !important; text-decoration-line:none; opacity:1; border:1px solid var(--swm-color-border); padding:6px 30px !important; }
.wc-block-components-notice-banner__content a.button.wc-forward:hover { color:var(--swm-color-light-1)!important; background:var(--swm-color-dark-1)!important; }
.woocommerce-notices-wrapper { margin-bottom:50px; }
.woocommerce .wc-block-components-notice-banner { align-items:center; }
.wc-block-components-notice-banner__content { line-height:34px; }

/* ****************
    3. CART PAGE
******************* */
.woocommerce table.shop_table td, .woocommerce table.shop_table th, .woocommerce table.shop_table, .woocommerce table.shop_table td.actions { border: 0; margin-bottom: 50px; }
.woocommerce table.shop_table th { padding: 10px 15px; }
.woocommerce table.shop_table thead { background: none; }
.woocommerce table.shop_table thead tr th { border-bottom: 1px solid #aaa; }
.woocommerce table.shop_table td { border-bottom: 1px solid var(--swm-color-border); padding: 20px 15px; }
.woocommerce .woocommerce-cart-form div.quantity { height: 40px; }
.woocommerce .woocommerce-cart-form div.quantity span.q_more { top: 3px; }
.woocommerce .woocommerce-cart-form div.quantity span.q_less { bottom: 3px; }
.woocommerce #respond input#submit.disabled, .woocommerce #respond input#submit:disabled, .woocommerce #respond input#submit:disabled[disabled], .woocommerce a.button.disabled, .woocommerce a.button:disabled, .woocommerce a.button:disabled[disabled], .woocommerce button.button.disabled, .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled], .woocommerce input.button.disabled, .woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled] { padding: 8px 32px; }
.woocommerce table.cart td.actions .coupon input#coupon_code { border:0; border-bottom-style:solid; border-bottom-width: 1px; border-bottom-color:var(--swm-color-border); width: 140px; padding: 6px 23px 6px 0; line-height: 26px; margin-right: 10px; font-size:calc(var(--body-font-size) - 2px); }
.woocommerce table.cart td.actions .coupon input#coupon_code::placeholder { text-transform:uppercase; color:var(--swm-color-text); }

body.woocommerce-cart .woocommerce-cart-form tbody .product-thumbnail, body.woocommerce-wishlist .woocommerce-cart-form tbody .product-thumbnail, body.woocommerce-cart #yith-wcwl-form tbody .product-thumbnail, body.woocommerce-wishlist #yith-wcwl-form tbody .product-thumbnail { width: 100px; text-align: center; padding: 20px 0; }
.woocommerce #add_payment_method table.cart img, .woocommerce .woocommerce-cart table.cart img, .woocommerce .woocommerce-checkout table.cart img { width: 60px; }
.woocommerce table.shop_table td.product-remove { min-width: 40px; padding: 20px; width: 40px; }
.woocommerce table.shop_table td.product-remove a { margin: 0 auto; }
.woocommerce #content table.cart td.actions, .woocommerce table.cart td.actions, .woocommerce-page #content table.cart td.actions, .woocommerce-page table.cart td.actions { padding: 20px 0; }
.woocommerce .cart-collaterals { margin-top: 100px; }
.woocommerce .cart-collaterals .cross-sells, .woocommerce-page .cart-collaterals .cross-sells { width: calc(100% - 460px); }
.woocommerce .cart-collaterals .cart_totals { max-width: 400px; }
.woocommerce .cart-collaterals .cart_totals form.woocommerce-shipping-calculator { margin: 0; }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals { padding:50px 50px 40px;border:1px solid var(--swm-color-border); border-radius: 10px; }
.woocommerce .cart-collaterals .cart_totals table.shop_table th { border: 0; width: 120px; padding: 10px 0; font-weight:400; }
.woocommerce .cart-collaterals .cart_totals table.shop_table td { border: 0; padding: 10px 0; }
.woocommerce .cart-collaterals .cart_totals table.shop_table tr:last-child th, .woocommerce .cart-collaterals .cart_totals table.shop_table tr:last-child td { border: 0; }

.woocommerce .cart-collaterals .cross-sells h2 { margin-bottom: 32px; }
.woocommerce .cart-collaterals .cart_totals h2 { font-size: 24px; line-height: normal; margin-bottom: 20px; border-bottom:0; text-transform:uppercase; }

.woocommerce #add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button { font-size:12px; padding:12px 28px; display: inline-flex; }
.woocommerce #add_payment_method .wc-proceed-to-checkout, .woocommerce-cart .wc-proceed-to-checkout, .woocommerce-checkout .wc-proceed-to-checkout { padding: 15px 0 0 0; }
.woocommerce td.product-name dl.variation dt { width: auto; margin-right: 8px; }
.woocommerce .checkout_coupon input#coupon_code { border-width: 1px; width: calc(100% - 10px); padding: 10px 23px 10px 0; line-height: 26px; margin-right: 10px; }
.woocommerce form.checkout_coupon .form-row-first, .woocommerce form.checkout_coupon .form-row-last, .woocommerce-page form.checkout_coupon .form-row-first, .woocommerce-page form.checkout_coupon .form-row-last { width: 50%; }
.woocommerce form.checkout_coupon .form-row { padding: 0; }
.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register { border-color: var(--swm-color-border); }
.woocommerce p.woocommerce-shipping-destination { margin-top: 15px; }
.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register { padding: 0; border: 0; }
.woocommerce form.checkout_coupon input[type="text"], .woocommerce form.login input[type="text"], .woocommerce form.register input[type="text"] { padding-left: 0; padding-right: 0; }
.woocommerce-form-login .password-input { margin-bottom: 20px; }
.show-password-input:after { display: none; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme { margin-top: 7px; margin-left: 10px; }

/* *********************
    4. CHECKOUT PAGE
************************ */
.woocommerce #customer_details.col2-set, .woocommerce-page #customer_details.col2-set { width: 50%; float: left; margin-right: 40px; }
.woocommerce #customer_details.col2-set .col-1 { margin-bottom: 40px; }
.woocommerce #customer_details.col2-set .col-1, .woocommerce-page #customer_details.col2-set .col-1, .woocommerce #customer_details.col2-set .col-2, .woocommerce-page #customer_details.col2-set .col-2 { width: 100%; display: block; float: none; }
.woocommerce-checkout-review-order { width: calc(50% - 40px); float: right; border:1px solid var(--swm-color-border); border-radius: 10px; padding: 40px; background:var(--swm-color-body); }
#payment { background:var(--swm-color-body); }
.woocommerce #add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment { background:var(--swm-color-body); padding: 0; }
div.blockOverlay {background-color: transparent !important; }
.woocommerce #add_payment_method #payment ul.payment_methods, .woocommerce-cart #payment ul.payment_methods, .woocommerce-checkout #payment ul.payment_methods { padding: 0; }
.woocommerce #order_review table.shop_table td { padding: 10px 0; }
.woocommerce #order_review table.shop_table .product-total { text-align: right; padding: 10px 0; }
.woocommerce .wc_payment_methods label { display: inline-block; }
.woocommerce #order_review table.shop_table th, .woocommerce #order_review table.shop_table td { padding-left: 0; }
.woocommerce #order_review table.shop_table tfoot th, .woocommerce #order_review table.shop_table tfoot td { border-top: 0; border-bottom: 1px solid var(--swm-color-border); padding: 10px 15px 10px 0; vertical-align: middle; }
.woocommerce ul#shipping_method li:last-child { margin: 0; }
.woocommerce ul#shipping_method li { padding: 0; }
.woocommerce #order_review table.shop_table tfoot td { text-align: right; padding-right: 0; }
.woocommerce #order_review ul#shipping_method li input { float: right; margin-left: 10px; margin-right: 0; margin-top: 5px; }
.woocommerce #order_review table.shop_table { margin-bottom: 30px; }
.woocommerce #order_review table.shop_table tfoot tr.woocommerce-shipping-totals td { width: 40%; }
.woocommerce #add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--swm-color-light-2); }
.woocommerce #add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box { background-color: var(--swm-color-light-2); font-size: 90%; padding: 1.5em; color:var(--swm-color-text); }
.woocommerce #add_payment_method #payment ul.payment_methods, .woocommerce-cart #payment ul.payment_methods, .woocommerce-checkout #payment ul.payment_methods { border: 0; padding: 0; }
.woocommerce #add_payment_method #payment div.form-row, .woocommerce .woocommerce-cart #payment div.form-row, .woocommerce .woocommerce-checkout #payment div.form-row { padding: 20px 0 0; border-top: 1px solid var(--swm-color-border); margin-top: 20px; }
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_methods li label { font-weight: 400; }
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { float: none; display: block; width: 100%; margin: 20px 0 0; }
.woocommerce #order_review table.shop_table tfoot tr.order-total td bdi { font-size: 150%; }
.woocommerce #order_review table.shop_table tfoot .order-total th, .woocommerce #order_review table.shop_table tfoot .order-total td { padding-top: 15px; }
.woocommerce form .form-row { margin-bottom: 15px; }
.woocommerce #order_review .woocommerce-privacy-policy-text { font-size: 90%; }

/*Order Received Page*/
.woocommerce .woocommerce-order-details table.woocommerce-table--order-details { border:1px solid var(--swm-color-border); border-radius: 10px; padding: 30px 40px 20px; margin-bottom: 40px; }
.woocommerce .woocommerce-bacs-bank-details h3 { font-size: 110%; border-bottom: 1px solid var(--swm-color-border); padding-bottom: 5px; font-family:var(--swm-body-font-family); font-weight:400; }
.woocommerce .woocommerce-bacs-bank-details { border:1px solid var(--swm-color-border); border-radius: 10px; padding: 30px 40px 5px; margin-bottom: 40px; }
.woocommerce .woocommerce-customer-details address { border: 0; border:1px solid var(--swm-color-border); border-radius: 10px; padding: 30px 40px; }
.woocommerce .woocommerce-thankyou-order-received { text-align: center; display: block; border:1px solid var(--swm-color-border); border-radius: 10px; padding: 15px 20px; margin-bottom: 50px; }
.woocommerce p.woocommerce-customer-details--phone { margin-top: 20px; }
.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th { border-top: 0; border-bottom: 1px solid var(--swm-color-border); vertical-align: middle; }
.woocommerce table.woocommerce-table--order-details tfoot tr:last-child td, .woocommerce table.woocommerce-table--order-details tfoot tr:last-child th { border: 0; }
.woocommerce .woocommerce-order ul.order_details li { margin-bottom: 20px; }
.woocommerce .woocommerce-order ul.order_details { margin-bottom: 20px; }
.woocommerce table.woocommerce-table--order-details td, .woocommerce table.woocommerce-table--order-details th { padding: 10px 20px 10px 0; }
#customer_details input[type="text"], #customer_details input[type="email"], #customer_details input[type="tel"], #customer_details textarea { padding-left: 0; padding-right: 0; }
.woocommerce .woocommerce-customer-details, .woocommerce .woocommerce-order-details, .woocommerce .woocommerce-order-downloads { margin-bottom: 100px; }

/* *********************
    5. MY ACCOUNT PAGE
************************ */
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce .woocommerce-MyAccount-navigation { display: block; width: 100%; float: none; text-align: center; border: 1px solid var(--swm-color-border); padding: 12px 20px 7px; margin-bottom: 30px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li { display: inline-block; margin: 0 10px 5px; }
.woocommerce-account .woocommerce-MyAccount-content { width: 100%; display: block; float: none; }
.woocommerce table.woocommerce-MyAccount-orders thead th { font-size: 120%; }
.woocommerce table.woocommerce-MyAccount-orders td, .woocommerce table.woocommerce-MyAccount-orders thead th, .woocommerce table.woocommerce-table--order-downloads td, .woocommerce table.woocommerce-table--order-downloads thead th { padding: 10px 20px 10px 0; }
.woocommerce table.woocommerce-MyAccount-orders a.button { padding: 8px 20px; }
.woocommerce .woocommerce-MyAccount-content .woocommerce-Addresses address { box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, .1); border-radius: 5px; padding: 30px 40px; }
.woocommerce .woocommerce-EditAccountForm fieldset { margin-top: 50px; }
.woocommerce .woocommerce-EditAccountForm fieldset legend { font-size: 120%; font-weight: 700; margin-bottom: 15px; }

/* ****************
    6. WIDGETS
******************* */
.woocommerce ul.cart_list li img, .woocommerce ul.product_list_widget li .swm-woo-product-list-image { width: 100px; }
.woocommerce li.swm-woo-product-list-widget { display: flex; flex-direction: row; }
.woocommerce li.swm-woo-product-list-widget .swm-woo-product-list-widget-image a img { width: 100%; margin: 0; border-radius:var(--swm-border-radius-5); }
.woocommerce li.swm-woo-product-list-widget .swm-woo-product-list-widget-image a { width: 100px; }
.woocommerce li.swm-woo-product-list-widget .swm-woo-product-list-widget-image { margin-right: 24px; }
.woocommerce .swm-woo-product-list-widget-content h6 { margin: 0 0 -2px 0; line-height: 1.2; font-size:100%; }
.woocommerce .swm-woo-product-list-widget-content { display: flex; flex-direction: column; justify-content: center; }
.woocommerce .swm-woo-product-list-widget-price, .woocommerce .swm-woo-product-list-widget .star-rating { margin-top: 9px; line-height: 1; }
.woocommerce ul.cart_list li, .woocommerce ul.product_list_widget li { margin-bottom: 20px; padding: 0; }
.woocommerce ul.cart_list li, .woocommerce ul.product_list_widget li:last-child { margin-bottom: 0; }
.woocommerce .product_list_widget ins { text-decoration: none; }
.woocommerce .product_list_widget .star-rating { font-size: 80%; letter-spacing: 1px; width: 5.6em; margin-bottom: 5px; }
.sidebar .widget_rating_filter ul li { padding-left: 0; }
.sidebar .widget_rating_filter ul li:before { display: none; }
.sidebar .woocommerce ul.product_list_widget { margin-top: 11px; }
.sidebar .woocommerce.widget_product_tag_cloud .tagcloud { margin-top: 11px; }
.woocommerce .sidebar .woocommerce-widget-layered-nav-list li.woocommerce-widget-layered-nav-list__item { padding: 2px 0; }
.woocommerce .sidebar .woocommerce-widget-layered-nav-list li.woocommerce-widget-layered-nav-list__item:last-child { padding-bottom: 0; }
.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item::before { display:inline-flex; }

/*Filter by Price*/
.woocommerce .price_slider_wrapper .price_slider_amount { margin-top: 25px; }
.woocommerce .price_slider_wrapper button.button { padding: 2px 15px; font-size: 90%; line-height: 29px; }
.woocommerce .widget_price_filter .ui-slider-horizontal { height: 1px; }
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle { height: 7px; width: 7px; top: -3px; border-radius: 100%; }
.woocommerce .widget_price_filter .price_slider_amount .button { float: right; font-size:12px; padding: 0 15px; height: 30px; display:flex; align-items:center; }
.woocommerce .widget_price_filter .price_slider_amount { font-size:100%; }
.woocommerce .price_slider_amount .price_label { float: left; }
.widget.woocommerce.widget_price_filter .price_slider_wrapper .ui-widget-content .ui-slider-handle:last-of-type { transform: translateX(-7px); }
.widget.woocommerce.widget_price_filter .price_slider_wrapper .ui-widget-content { background-color:var(--swm-color-light-1); }
.woocommerce .widget_price_filter .ui-slider, .woocommerce .widget_price_filter .ui-slider .ui-slider-handle { margin: 0; }

/*Search*/
.woocommerce-product-search { position: relative; }
.widget_product_search form button { font-size: 0; }
.widget_product_search form button:before { display: block; font-size: 15px; font-family: 'swm-font-icon'; font-style: normal; font-weight: normal; line-height: 1; }
.widget_product_search form button:hover { background: none; }

/*Cart*/
.woocommerce .widget_shopping_cart .cart_list li, .woocommerce.widget_shopping_cart .cart_list li { padding-left: 0; margin-bottom: 20px; }
.woocommerce .widget_shopping_cart .total, .woocommerce.widget_shopping_cart .total { border: 0; margin: 20px 0 15px; padding: 15px 0 0 0; border-top: 1px solid rgba(0, 0, 0, 0.1); font-size: 120%; font-weight: 700; }
.woocommerce .widget_shopping_cart .cart_list li a.remove, .woocommerce.widget_shopping_cart .cart_list li a.remove { left: auto; right: 0; top: 5px; z-index: 2; width: 20px; height: 20px; line-height: 20px; font-size: 21px; display: block; text-align: center; }
.woocommerce-mini-cart__total span.woocommerce-Price-amount { float: right; }
.woocommerce .widget_shopping_cart .buttons .button, .woocommerce.widget_shopping_cart .buttons .button { min-width: auto; width: 48%; padding: 10px 5px; }
.woocommerce .widget_shopping_cart .buttons .button:first-child, .woocommerce.widget_shopping_cart .buttons .button:first-child { float: left; }
.woocommerce .widget_shopping_cart .buttons .button+.button, .woocommerce.widget_shopping_cart .buttons .button+.button { float: right; }
.woocommerce .widget_shopping_cart .buttons a, .woocommerce.widget_shopping_cart .buttons a { margin-right: 0; }
p.woocommerce-mini-cart__buttons { margin: 0; }

/* ******************
    7. RESPONSIVE
********************* */

/* Tablet */
@media only screen and (max-width:1024px) {

    /* shop list columns */
    .woocommerce ul.products.columns-2 li.product, .woocommerce-page ul.products.columns-2 li.product, .woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product, .woocommerce ul.products.columns-4 li.product, .woocommerce-page ul.products.columns-4 li.product, .woocommerce ul.products.columns-5 li.product, .woocommerce-page ul.products.columns-5 li.product, .woocommerce ul.products.columns-6 li.product, .woocommerce-page ul.products.columns-6 li.product { width: 33.33333333333333%; }

    /*checkout*/
    .woocommerce #customer_details.col2-set, .woocommerce-page .col2-set { width: 100%; float: none; margin-right: 0; margin-bottom: 20px; }
    .woocommerce .col2-set .col-1 { margin-bottom: 20px; }
    .woocommerce .woocommerce-checkout-review-order { width: 100%; float: none; }
    .woocommerce table.woocommerce-MyAccount-orders td, .woocommerce table.woocommerce-MyAccount-orders thead th, .woocommerce table.woocommerce-table--order-downloads td, .woocommerce table.woocommerce-table--order-downloads thead th { padding-left: 20px; }

    .woocommerce div.product .woocommerce-tabs ul.tabs li.active a:after { display:none; }
    .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { text-decoration:underline; }
    .woocommerce div.product .woocommerce-tabs ul.tabs li,
    .woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom:0; background-color:transparent; }

    .woocommerce div.product .woocommerce-tabs ul.tabs li { margin:0 15px; }
}
@media only screen and (min-width:768px) {
    .woocommerce.product-thumb-side-left span.onsale { display: inline-block; }
}

/* Mobile */
@media only screen and (max-width:767px) {
    .woocommerce div.product div.summary { padding-left: 0; }

    /* shop list columns */
    .woocommerce ul.products.columns-2 li.product, .woocommerce-page ul.products.columns-2 li.product, .woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product, .woocommerce ul.products.columns-4 li.product, .woocommerce-page ul.products.columns-4 li.product, .woocommerce ul.products.columns-5 li.product, .woocommerce-page ul.products.columns-5 li.product, .woocommerce ul.products.columns-6 li.product, .woocommerce-page ul.products.columns-6 li.product { width: 100%; }
    .woocommerce div.product div.images, .woocommerce div.product div.summary { margin-bottom: 30px; }

    /*Reviews*/
    .woocommerce .woocommerce-Reviews .star-rating { display: block; float: none; margin-bottom: 15px; }

    /*Cart*/
    .woocommerce table.shop_table td.product-remove { width: auto; }
    .woocommerce-cart-form div.quantity { display: inline-block; }
    .woocommerce .cart-collaterals .cart_totals { max-width: 100%; }
    .woocommerce table.shop_table td, .woocommerce table.shop_table th, .woocommerce table.shop_table, .woocommerce table.shop_table td.actions { margin: 0; }
    .woocommerce #content table.cart td.actions .coupon, .woocommerce table.cart td.actions .coupon, .woocommerce-page #content table.cart td.actions .coupon, .woocommerce-page table.cart td.actions .coupon { padding-bottom: 20px; }
    .woocommerce .cart-collaterals .cross-sells, .woocommerce-page .cart-collaterals .cross-sells { width: 100%; }
    .woocommerce .woocommerce-checkout-review-order { padding: 0; box-shadow: none; }
    .woocommerce .woocommerce-order-details table.woocommerce-table--order-details, .woocommerce .woocommerce-bacs-bank-details, .woocommerce .woocommerce-customer-details address { box-shadow: none; padding: 0; }
    .woocommerce.product-thumb-side div.product div.images .flex-viewport { width: 100%; float: none; display: block; }
    .woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { margin: 5px -5px 0 -5px; float: none; display: block; width: auto; }
    .woocommerce.product-thumb-side div.product div.woocommerce-product-gallery.woocommerce-product-gallery--with-images.images ol.flex-control-nav.flex-control-thumbs > li { width: 100%; }
    .woocommerce.product-thumb-side-right div.product div.images .woocommerce-product-gallery__trigger { right: 0.5em; }
    .woocommerce-form-login .password-input { margin-bottom: 10px; }
    .woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme { display: block; margin-top: 0; margin-bottom: 15px; margin-left: 0; }
}

/* ****************
8. STYLING
******************* */
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled], .woocommerce #respond input#submit.alt.disabled, .woocommerce #respond input#submit.alt:disabled, .woocommerce #respond input#submit.alt:disabled[disabled], .woocommerce a.button.alt.disabled, .woocommerce a.button.alt:disabled, .woocommerce a.button.alt:disabled[disabled], .woocommerce button.button.alt.disabled, .woocommerce button.button.alt:disabled, .woocommerce button.button.alt:disabled[disabled], .woocommerce input.button.alt.disabled, .woocommerce input.button.alt:disabled, .woocommerce input.button.alt:disabled[disabled], .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled], .woocommerce-store-notice, p.demo_store { background:transparent; color: var(--swm-color-headings); border: 1px solid var(--swm-color-headings); font-weight: var(--swm-headings-font-weight); }

.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .woocommerce button.button:disabled:hover, .woocommerce button.button:disabled[disabled]:hover, .woocommerce #respond input#submit.alt.disabled:hover, .woocommerce #respond input#submit.alt:disabled:hover, .woocommerce #respond input#submit.alt:disabled[disabled]:hover, .woocommerce a.button.alt.disabled:hover, .woocommerce a.button.alt:disabled:hover, .woocommerce a.button.alt:disabled[disabled]:hover, .woocommerce button.button.alt.disabled:hover, .woocommerce button.button.alt:disabled:hover, .woocommerce button.button.alt:disabled[disabled]:hover, .woocommerce input.button.alt.disabled:hover, .woocommerce input.button.alt:disabled:hover, .woocommerce input.button.alt:disabled[disabled]:hover, .woocommerce button.button:disabled:hover, .woocommerce button.button:disabled[disabled]:hover { background: var(--swm-color-headings); color: var(--swm-color-light-1); border-color: var(--swm-color-headings); }

.woocommerce div.product .woocommerce-tabs ul.tabs li.active { position: relative; background-color:transparent; color:var(--swm-color-headings); }

.woocommerce div.product .woocommerce-tabs ul.tabs li a:after {content: ''; position: absolute; display: block; transition:width 0.3s cubic-bezier(0.22, 0.61, 0.36, 1); bottom: 5px; left: 0; width:0; height: 2px; z-index: 1; }

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a:after, .woocommerce div.product .woocommerce-tabs ul.tabs li:hover a:after {background: var(--swm-color-dark-1); width: 100%; }

.woocommerce div.product .woocommerce-tabs ul.tabs li a, .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--swm-color-dark-2-text); }
.woocommerce .product > .summary .product_meta>span, .woocommerce div.product h1.product_title, form.woocommerce-checkout label { color: var(--swm-color-headings); }
form.woocommerce-checkout input[type="text"]::placeholder { font-size:100%; }
.woocommerce .woocommerce-customer-details address p::before, a.reset_variations { color: var(--swm-color-dark-1); font-weight: 700; }
a.reset_variations:hover { color: var(--swm-color-dark-2); }
.woocommerce .widget_price_filter .ui-slider .ui-slider-range { background: var(--swm-color-border); }
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle { background: var(--swm-color-dark-1); }
.woocommerce .woocommerce-thankyou-order-received { color: var(--swm-color-dark-1); font-weight: 400; }
.woocommerce-cart .woocommerce table.shop_table th, .woocommerce #order_review table.shop_table th, .woocommerce table.woocommerce-table--order-details thead th, .woocommerce table.woocommerce-MyAccount-orders thead th, .woocommerce table.woocommerce-table--order-downloads th, .woocommerce table.woocommerce-cart-form__contents thead th { border-bottom: 3px solid var(--swm-color-border); }
.woocommerce span.onsale { background: var(--swm-color-dark-1); color: var(--swm-color-light-1); }
.woocommerce div.product p.price, .woocommerce div.product span.price, .woocommerce-review__author, .woocommerce ul.products li.product .price, .woocommerce mark,.woocommerce .product > .summary .product_meta>span span.sku { color: var(--swm-color-text); }
.woocommerce .star-rating, .stars a, .stars a:hover { color: var(--swm-color-dark-2); }
.woocommerce .star-rating::before { color: var(--swm-color-dark-2); }
.woocommerce ul.products li.product a.button, .woocommerce ul.products li.product:hover a.added_to_cart, .woocommerce .product > .summary .product_meta>span { color: var(--swm-color-headings); }
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content { background: var(--swm-color-border); }
.price_slider_wrapper { margin-top: 14px; }
.woocommerce .widget_shopping_cart_content .cart_list li a, .woocommerce .mk_cart_panel .cart_list li a.remove, .woocommerce .woocommerce .product > .summary .product_meta>span span, .woocommerce .woocommerce .product > .summary .product_meta>span a { color: var(--swm-color-text) !important; }

.mk-cart-panel-close:before { color: var(--swm-color-dark-1) !important; }
.mk-cart-panel .widget_shopping_cart_content ul.cart_list li a { color: var(--swm-color-headings); }
.mk-cart-panel .widget_shopping_cart_content ul.cart_list .quantity { color: var(--swm-color-text); }

.woocommerce .woocommerce .widget_shopping_cart_content .cart_list li a:hover, .woocommerce li.product-category a:hover h2 { color: var(--swm-color-dark-1); }
input#coupon_code:focus, .widget_product_search form input[type="search"]:focus { border-color: var(--swm-color-dark-1); }
.footer .widget.woocommerce ul li.current-cat a { color: var(--swm-color-light-1); }
.footer .woocommerce .widget_shopping_cart .total, .footer .woocommerce.widget_shopping_cart .total { border-color: var(--swm-color-dark-2); }
.footer .widget.woocommerce ul li.current-cat a { color: var(--swm-color-light-1); }
.footer .widget_product_categories ul li:before { color: var(--swm-color-light-2); }
.footer #swm_product_search_form button.swm-search-button i { border-color: var(--swm-color-dark-2); }
.sidebar .widget_product_search #swm_product_search_form button.swm-search-button { color: var(--swm-color-dark-1); }
.sidebar .widget_product_search button,.sidebar .widget_product_search button:hover { color: var(--swm-color-dark-1); font-size:0; }
.footer .widget_product_search #swm_product_search_form button.swm-search-button, .footer .widget_product_search button { color: var(--swm-color-light-2); }
.woocommerce div.quantity input[type="number"], .woocommerce div.product form.cart div.quantity input[type="number"], .woocommerce-page div.product form.cart div.quantity input[type="number"] { background:transparent; border-radius: 30px !important; border: 1px solid var(--swm-color-border); color:var(--swm-color-text); }
.woocommerce div.quantity input[type="number"]:focus, .woocommerce div.product form.cart div.quantity input[type="number"]:focus, .woocommerce-page div.product form.cart div.quantity input[type="number"]:focus { border-color: var(--swm-color-border-hover) !important; }
@media only screen and (max-width:767px) {
    .woocommerce .swm-woo-results, .woocommerce .swm-woo-results .woocommerce-ordering, .woocommerce .swm-woo-results .woocommerce-result-count { display: block; float: none; text-align: center; }
    .woocommerce .swm-woo-results .woocommerce-result-count { margin-bottom: 10px; font-size: 90%; }
}

.sidebar .widget_product_search input[type="text"]::placeholder { color:var(--swm-color-text); }

/* ==========================================================================
   WooCommerce product list styles
   ========================================================================== */
.swm-woo-product-image { position: relative; overflow: hidden; }
.swm-woo-product-image a.woocommerce-LoopProduct-link.woocommerce-loop-product__link { position: absolute; width: 100%; height: 100%; display: block; z-index: 1; top: 0; left: 0; opacity: 0; visibility: hidden; }

.swm-woo-product-image-inner { position: absolute; left: 0; top:0; height:100%; width: 100%; display: flex; z-index: 10; line-height: 30px; opacity: 0; align-items:center; justify-content:center;   -webkit-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -ms-transition: all 0.3s ease-in-out; border-radius:var(--swm-border-radius-15); padding:10px 20px;  }

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.loading { padding: 10px 25px; }

.woocommerce ul.products li.product .swm-woo-product-image-inner a.add_to_cart_button,
.woocommerce ul.products li.product .swm-woo-product-image-inner a.added_to_cart,
.woocommerce ul.products li.product a.button { color:var(--swm-color-light-1); background:var(--swm-color-dark-1); width:auto; margin:0; z-index:2; font-size:12px; }

.woocommerce ul.products li.product .swm-woo-product-image-inner a.add_to_cart_button:hover,
.woocommerce ul.products li.product .swm-woo-product-image-inner a.added_to_cart:hover,
.woocommerce ul.products li.product a.button:hover { color:var(--swm-color-light-1); background:var(--swm-color-dark-1); }

.swm-woo-product-list-link { position:absolute; top:0; left:0; width:100%; height:100%; display:block; z-index:1; }

.woocommerce ul.products li.product .swm-woo-product-image-inner .swm-m-icon { fill: #fff; display: flex; align-items: center; padding-left: 18px; }
.woocommerce ul.products li.product:hover .swm-woo-product-image-inner, .woocommerce ul.products li.product:hover .swm-woo-product-image a.woocommerce-LoopProduct-link.woocommerce-loop-product__link { opacity: 1; visibility: visible; bottom: 0; }
.swm-woo-product-content { text-align: left; display: flex; flex-direction: column-reverse; padding-top: 4px; justify-content:flex-start; }
.swm-info-separator-single { margin:0 10px; }
.swm-woo-title-price-holder { width: 100%; margin-top: 15px;  display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.woocommerce ul.products li.product h5.woocommerce-loop-product__title { margin: 3px 0 2px; padding: 0; }
h5.woocommerce-loop-product__title a { color:inherit; }
.woocommerce ul.products li.product .price { margin: 0; font-weight: 400; }
.swm-woo-product-categories { margin:0; color:var(--swm-color-headings); }
.swm_shop_loop_item .swm-woo-product-categories a { color:inherit; }
.woocommerce ul.products li.product a.added_to_cart.added, .woocommerce ul.products li.product a.add_to_cart_button.added { display: none; padding:0; }
.woocommerce ul.products li.product a.add_to_cart_button.loading::after { display: none; }
.woocommerce ul.products li.product a.add_to_cart_button.loading { opacity: 1; color:#fff; }
.woocommerce .added_to_cart { text-transform: capitalize; }

a.ajax_add_to_cart { color:#fff; }

/* Styling */
.single-product .up-sells > h2,
.single-product .related > h2,
.woocommerce-billing-fields h3,
h3#ship-to-different-address,
h3#order_review_heading,
h2.wc-bacs-bank-details-heading,
h2.woocommerce-order-details__title,
h2.woocommerce-column__title,
.woocommerce .woocommerce-Address-title h3,
.woocommerce .cart-collaterals .cross-sells h2 { text-transform: var(--swm-wc-single-relative-text-transform); font-size:var(--swm-wc-single-relative-font-size); }

h3#ship-to-different-address { font-size:100%; text-transform:none; }

h2.woocommerce-Reviews-title, #review_form .comment-reply-title { font-size: calc(var(--body-font-size) + 10px); }

.woocommerce h2.wc-bacs-bank-details-heading { font-family:var(--swm-body-font-family); font-size: calc(var(--body-font-size) + 4px); text-transform:capitalize; margin-bottom:40px; }

.woocommerce-Reviews #review_form .comment-reply-title { font-size:100%; text-transform:uppercase; font-size: calc(var(--body-font-size) + 2px); }
.woocommerce-product-gallery { display: flex; flex-direction: column; }
.product-thumb-side-left .woocommerce-product-gallery { flex-direction: row-reverse; }
.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { width: var(--swm-wc-single-thumb-section-size); }
.product-thumb-side-right.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { margin-left: var(--swm-wc-single-thumb-space); }

.single-product.woocommerce div.product p.price { margin-bottom: 50px; font-size:100%; }
.single-product.woocommerce .woocommerce-product-details__short-description { margin-bottom: 53px; }
.single-product.woocommerce div.product form.cart { margin-bottom: 55px; }
.product-thumb-side-right .woocommerce-product-gallery { flex-direction: row; }
.swm-woo-single-image { position: relative; }
.product-thumb-side-left.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { padding-right: var(--swm-wc-single-thumb-space); }
.single-product.woocommerce.product-thumb-side-left span.onsale { left: var(--swm-wc-single-thumb-section-size); }
.woocommerce.product-thumb-side-right div.product div.images .woocommerce-product-gallery__trigger { right: calc(var(--swm-wc-single-thumb-space) + var(--swm-wc-single-thumb-section-size) + 10px); }
.swm_shop_loop_item .swm-woo-product-image img { width: 100%; border-radius:var(--swm-border-radius-15); }

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { width: 100%; }
.woocommerce table.shop_attributes td, .woocommerce table.shop_attributes th, .woocommerce table.shop_attributes { border-style: solid; border-color: var(--swm-color-border); }

.product-thumb-bottom.woocommerce div.product div.images ol.flex-control-thumbs {
    grid-template-columns: repeat(var(--swm-wc-single-gallery-column),minmax(0,1fr));
    display: grid;
    gap: var(--swm-wc-single-thumb-space);
    margin-top: var(--swm-wc-single-thumb-space);
}

.product-thumb-bottom.woocommerce div.product div.images .flex-control-thumbs li { width:auto; padding:0; }

.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs li { margin-bottom: var(--swm-wc-single-thumb-space); }

.select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) #reviews #comments ol.commentlist li .meta { color:var(--swm-color-text); }

@media only screen and (max-width:767px) {

    .woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs,
    .product-thumb-bottom.woocommerce div.product div.images ol.flex-control-thumbs {
        grid-template-columns: repeat(var(--swm-wc-single-gallery-column-mobile),minmax(0,1fr));
        display: grid;
        gap: var(--swm-wc-single-thumb-space-mobile);
        margin-top: var(--swm-wc-single-thumb-space-mobile);
    }

    .woocommerce.product-thumb-side-right div.product div.images .woocommerce-product-gallery__trigger { right:15px; }

    .woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs li { margin:0; }

    .woocommerce.product-thumb-side div.product div.images .flex-viewport,
    .woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { width:100%; }

    .product-thumb-side-right .woocommerce-product-gallery,
    .product-thumb-side-left .woocommerce-product-gallery { flex-direction:column; }
    .single-product.woocommerce.product-thumb-side-left span.onsale { left:0; }

    .product-thumb-side-left.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs,
    .product-thumb-side-right.woocommerce.product-thumb-side div.product div.images ol.flex-control-thumbs { padding:0; margin-left:0; }

    .woocommerce div.product h1.product_title { font-size:36px !important; }
    .single-product .up-sells > h2, .single-product .related > h2, .woocommerce-billing-fields h3, h3#ship-to-different-address, h3#order_review_heading, h2.wc-bacs-bank-details-heading, h2.woocommerce-order-details__title, h2.woocommerce-column__title, .woocommerce .woocommerce-Address-title h3 { font-size:30px !important; }
    .type-product .products h2 { margin-bottom:27px; }

}