/**
 * Theme Name: Power Supps
 * Author: Cult Creative
 * Author URI: https://wearecult.com.au/
 * Description: Astra child theme for Power Supps WooCommerce store.
 * Version: 5.1.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: power-supps
 * Template: astra
 */

/* =========================================
   TABLE OF CONTENTS
   -----------------------------------------
   1.  Global / Resets
   2.  WooCommerce Shop Grid (Astra)
   3.  Elementor Loop Product Cards
   4.  Product Badges (Sale + Out of Stock)
   5.  Quantity Inputs & Buttons
   6.  Scroll-to-Top
   7.  Search (DGWT + YITH + Elementor)
   8.  Wishlist
   9.  Reviews (Wiser)
   10. Filters (YITH WCAN + JetSmartFilters)
   11. Pagination
   12. Mini Cart & Cart Page
   13. Checkout & Order Confirmation
   14. My Account
   15. Single Product
   16. Brands Directory
   17. Brands Compact List (BR)
   18. Top Brands List (Sidebar/Widget)
   19. Store Locator
   20. Navigation & Menu Icons
   21. Image Carousel
   22. Accordion Overrides
   23. Notices & Messages
   24. Featured Brands Grid
   25. Category Description Carousel
   26. Nothing Found
   27. Utility Classes
   28. Responsive
   ========================================= */

/* =========================================
   1. GLOBAL / RESETS
   ========================================= */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
    accent-color: #24aee4 !important;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input:focus,
.ywcas-input-field:focus,
input[type="text"]:focus,
input[type="search"]:focus,
select:focus,
textarea:focus {
    border-color: #24aee4 !important;
    border-width: 1px !important;
    border-style: solid !important;
}

.wpc-section-header {
    border-bottom: none;
    margin-bottom: 0 !important;
}

.woocommerce-js h2 {
    margin-bottom: 0;
}

.term-label,
.filter-item {
    text-transform: capitalize !important;
}

p {
    margin-bottom: 0 !important;
}

.term-description p,
#tab-description p,
#jsf-category-description p {
    margin-bottom: 15px !important;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 10px;
}

::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.4);
    border-radius: 10px;
}

::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
}

/* =========================================
   2. WOOCOMMERCE SHOP GRID (ASTRA)
   ========================================= */

.woocommerce-js ul.products li.product .ast-shop-product-out-of-stock,
.woocommerce-page ul.products li.product .ast-shop-product-out-of-stock {
    bottom: 35px;
    left: 0;
    right: 0;
    text-transform: uppercase;
    font-weight: 700;
    background-color: #24aee4;
    color: #fff;
}

.woocommerce-page ul.products li.product .woocommerce-loop-product__link:hover .ast-shop-product-out-of-stock {
    background-color: #ccc;
    color: #24aee4;
}

li.product.outofstock .astra-shop-thumbnail-wrap img {
    filter: grayscale(100%);
    opacity: 0.55;
    transition:
        filter 0.25s ease,
        opacity 0.25s ease;
    pointer-events: none;
}

/* =========================================
   3. ELEMENTOR LOOP PRODUCT CARDS
   ========================================= */

.elementor-loop-container .woocommerce-loop-product__link {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-loop-container .woocommerce-loop-product__link img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
}

.elementor-loop-container .e-loop-item {
    height: 100% !important;
    display: flex !important;
}

.elementor-loop-container .e-loop-item>.elementor {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-loop-container .e-loop-item .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    height: 100% !important;
    gap: 0 !important;
}

.elementor-loop-container .e-loop-item .elementor-widget-woocommerce-product-add-to-cart {
    margin-top: 15px !important;
}

.add_to_cart_button {
    border-radius: 0 0 8px 8px !important;
    margin-bottom: 0 !important;
}

.e-loop-add-to-cart-form-container .added_to_cart {
    display: none !important;
}

a.added_to_cart {
    order: 1 !important;
    background-color: #272e36;
}

.e-loop-add-to-cart-form {
    order: 2 !important;
}

.elementor-widget-theme-post-featured-image.elementor-widget-image {
    min-height: inherit;
}

/* =========================================
   4. PRODUCT BADGES (SALE + OUT OF STOCK)
   ========================================= */

.custom-sale-badge {
    position: absolute !important;
    top: -20px !important;
    right: 10px !important;
    width: 45px !important;
    height: 45px !important;
    background: #3ec5ff !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    font-style: italic;
    font-family: "Oswald", sans-serif;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 3 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.top-seller-badge {
    position: absolute;
    top: -20px;
    right: 5px;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #24aee4;
    color: #fff;
    font-weight: 400;
    font-size: 15px;
    font-family: "Oswald", sans-serif;
    font-style: italic;
    line-height: 1;
}

.elementor-element-78c3d90 {
    position: relative;
}

.custom-outofstock-badge {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: #3ec5ff !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    padding: 10px 0 !important;
    text-transform: uppercase !important;
    z-index: 3 !important;
}

a.e-con:has(.custom-outofstock-badge) {
    position: relative;
}

a.e-con:has(.custom-outofstock-badge)::after {
    content: "";
    position: absolute;
    inset: 0;
    backdrop-filter: grayscale(100%);
    background: rgba(255, 255, 255, 0.25);
    z-index: 1;
    pointer-events: none;
    border-radius: inherit;
}

a.e-con:has(.custom-outofstock-badge)>* {
    position: relative;
    z-index: 2;
}

.onsale {
    font-family: "Oswald", sans-serif;
    color: #fff !important;
    font-size: 15px !important;
    font-style: italic;
    text-transform: uppercase;
}

.elementor-loop-container .product.outofstock .custom-sale-badge {
    display: none !important;
}

/* =========================================
   5. QUANTITY INPUTS & BUTTONS
   ========================================= */

.woocommerce-js .quantity .minus,
.woocommerce-js .quantity .plus {
    color: #fff !important;
    font-size: 24px !important;
    padding: 3px;
    border: none !important;
    background-color: #24aee4;
}

.quantity {
    display: flex;
    align-items: center;
    gap: 6px;
}

.quantity input.qty {
    width: 55px !important;
    text-align: center;
}

.qty-btn {
    width: 34px;
    height: 34px;
    border: 1px solid #ddd;
    background: #fff;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    padding: 0;
}

button.minus,
button.plus {
    line-height: 10px !important;
}

button.plus {
    margin-left: 0 !important;
}
/* Cart page quantity plus/minus */
.woocommerce-cart .quantity.qty-buttons-added {
  display: inline-flex !important;
  align-items: center;
  height: 42px !important;
  overflow: hidden;
  border: 1px solid #253B4C;
  border-radius: 6px;
  background: #121212;
  gap: 0 !important;
}

.woocommerce-cart .quantity.qty-buttons-added .qty-minus,
.woocommerce-cart .quantity.qty-buttons-added .qty-plus {
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: #24AEE4 !important;
  color: #ffffff !important;
  font-size: 18px !important;
  line-height: 42px !important;
  cursor: pointer;
}

.woocommerce-cart .quantity.qty-buttons-added .qty-minus {
  border-radius: 5px 0 0 5px !important;
}

.woocommerce-cart .quantity.qty-buttons-added .qty-plus {
  border-radius: 0 5px 5px 0 !important;
}

.woocommerce-cart .quantity.qty-buttons-added input.qty {
  width: 50px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: #121212 !important;
  color: #ffffff !important;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
}
.woocommerce-js div.product form.cart .button {
    margin-bottom: 0 !important;
}

.elementor-widget-woocommerce-cart .woocommerce .input-text.qty {
    border: none !important;
}

.woocommerce-cart .product-quantity .quantity input.qty,
input[type="number"].qty {
    border: 1px solid #2f3f53 !important;
    border-radius: 5px !important;
}

.woocommerce-cart .product-quantity .quantity input.qty {
    height: 50px !important;
    min-height: 50px !important;
    padding: 12px;
    width: 70px;
    border-radius: 3px;
    box-sizing: border-box;
}

/* =========================================
   6. SCROLL-TO-TOP
   ========================================= */

#ast-scroll-top {
    background: transparent;
    right: 65px;
    bottom: 75px;
}

#ast-scroll-top .ast-arrow-svg {
    display: none !important;
}

#ast-scroll-top .ast-icon.icon-arrow {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url("/wp-content/uploads/2026/02/STT-PowerSupps.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* =========================================
   7. SEARCH (DGWT + YITH + ELEMENTOR)
   ========================================= */

/* DGWT Ajax Search */
.dgwt-wcas-search-wrapp {
    width: 100% !important;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input {
    border-radius: 8px !important;
    border: 1px solid #2f3f53 !important;
    background-color: #131a20;
    font-family: "Outfit";
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input:hover {
    background-color: #0f141a !important;
}

.dgwt-wcas-st-title {
    font-family: "Oswald";
    font-style: italic;
    font-size: 18px;
    text-transform: uppercase;
}

.dgwt-wcas-has-headings .dgwt-wcas-suggestion-headline .dgwt-wcas-st {
    font-size: 22px !important;
    font-family: "Oswald";
    text-transform: uppercase;
    font-style: italic;
    border-color: #2f3f53 !important;
}

.dgwt-wcas-si {
    width: 100px !important;
}

.dgwt-wcas-st {
    font-size: 18px;
    font-family: "Outfit";
}

.dgwt-wcas-sp .woocommerce-Price-amount bdi,
.dgwt-wcas-sp .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
    color: #24aee4 !important;
    font-family: "Outfit";
    font-size: 18px;
    font-weight: 600;
}

.dgwt-wcas-open-pirx .dgwt-wcas-style-pirx.dgwt-wcas-style-pirx-compact .dgwt-wcas-sf-wrapp,
.dgwt-wcas-open-pirx.dgwt-wcas-overlay-mobile-on .dgwt-wcas-om-bar button.dgwt-wcas-om-return,
.dgwt-wcas-overlay-mobile {
    background-color: #0f141a !important;
}

a.js-dgwt-wcas-enable-mobile-form {
    display: none !important;
}

/* YITH Ajax Search */
.ywcas-input-field {
    border: 1px solid #2f3f53;
    background-color: #131a20 !important;
}

.ywcas-popover-results .popover-content {
    background-color: #0f141a !important;
    border-color: #2f3f53 !important;
}

.css-cxc3fq {
    color: #fff !important;
}

.popover-content.lapilliUI-Box__root.css-0.e83suct0,
.css-1mj7if3 {
    display: none !important;
}

.css-7ga5q0 {
    margin-top: 7px !important;
}

.css-t2w10a .ywcas-input-field-wrapper {
    border-radius: 8px !important;
}

.wp-block-yith-search-block .ywcas-classic-search.ywcas-small input {
    height: 64px !important;
}

input[type="text"].e83suct0,
input[type="text"].e83suct0:hover {
    border: none !important;
}

/* Elementor Search Popup */
#elementor-popup-modal-16495 .dialog-widget-content,
#elementor-popup-modal-16495 .dialog-lightbox-message,
#elementor-popup-modal-16495 .elementor-location-popup {
    overflow: visible !important;
}

.elementor-widget-search,
.e-search,
.e-search-form {
    overflow: visible !important;
}

.elementor-widget-search .e-search-input-wrapper,
.elementor-widget-search .e-search-input {
    transition: none !important;
}

.e-search-results-container {
    z-index: 9999999 !important;
    position: relative;
}

/* =========================================
   8. WISHLIST
   ========================================= */

.wpc-wishlist-btn {
    box-shadow: none !important;
}

button.wpc-wishlist-btn:hover {
    color: #000;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* =========================================
   9. REVIEWS (WISER)
   ========================================= */

.wiser_review.wsr_rating {
    visibility: hidden;
    opacity: 0;
}

body.wsr-loaded .wiser_review.wsr_rating {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}

#e-n-menu-content-5164 .wiser_review.wsr_rating {
    margin: 0 !important;
}

.elementor-shortcode .Wsrspfapp-stars-list-fullret {
    display: inline-block;
}

div.Wsrspfapp-review-count.Wsrspfapp-star-dsp-review-block {
    text-transform: capitalize !important;
}

.Wsrspfapp-theme-questn .Wsrspfapp-write-rev-link,
.Wsrspfapp-theme-questn .Wsrspfapp-write-rev-btn {
    background-color: #24aee4 !important;
    font-family: "Oswald", Sans-serif;
    font-size: 18px !important;
    font-weight: 500;
    text-transform: uppercase !important;
    font-style: italic;
    transition-duration: 0s;
    border-style: solid !important;
    border-width: 1px 1px 1px 1px !important;
    padding: 1em 3.5em 1em 3em !important;
    border-radius: 3px !important;
    border-color: #24aee4 !important;
}

.Wsrspfapp-reviewapp-title {
    font-family: "Oswald", Sans-serif;
    font-size: 45px;
    color: #fff !important;
    text-transform: uppercase;
    font-style: italic !important;
}

.Wsrspfapp-container {
    border-radius: 10px;
    border: 1px solid #2f3f53;
    background-color: #262e36;
    max-width: 1400px !important;
    padding: 3em !important;
}

/* =========================================
   10. FILTERS (YITH WCAN + JETSMARTFILTERS)
   ========================================= */

/* --- YITH WCAN --- */
.yith-wcan-filters {
    background-color: transparent !important;
    margin-bottom: 30px;
}

.yith-wcan-filter {
    background-color: #272e36;
    border-radius: 10px;
    border: 1px solid #2f3f53;
    padding: 25px 5px !important;
}

h4.filter-title {
    font-family: "Oswald", Sans-serif;
    font-size: 26px;
    font-weight: 700;
    text-transform: uppercase;
    font-style: italic;
    color: #fff !important;
    padding: 0 25px 25px 25px !important;
    border-bottom: 1px solid rgb(47, 63, 83);
    margin-bottom: 0 !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item>label>a {
    color: #b6b6b6;
    font-size: 16px !important;
    margin-left: 10px;
}

ul.filter-items.filter-checkbox.level-0 {
    background-color: #272e36 !important;
}

.filter-content ul {
    max-height: 250px;
    overflow-y: auto;
    padding: 20px !important;
    box-sizing: border-box;
    background-color: #0f141a;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

#filter_16480_1 ul,
#filter_16480_2 ul {
    height: 250px;
    overflow-y: scroll !important;
    scrollbar-width: thin;
    scrollbar-color: #24aee4 #000;
    scrollbar-gutter: stable both-edges;
}

#filter_16480_3 .filter-items {
    padding: 20px !important;
}

.tax-product_brand #filter_16480_1 {
    display: none !important;
}

.tax-product_cat #filter_16480_0 {
    display: none !important;
}

button.btn.btn-primary.yith-wcan-reset-filters.reset-filters.enhanced {
    font-family: "Oswald";
    text-transform: uppercase;
    padding: 1em 3.5em 1em 3em !important;
    transition-duration: 0s;
    font-style: italic;
    font-size: 18px;
    font-weight: 500;
    border-width: 1px;
}

button.btn.btn-primary.yith-wcan-reset-filters.reset-filters.enhanced:hover {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
}

.yith-wcan-reset-filters {
    margin-bottom: 20px;
    width: 100%;
    padding: 10px 20px !important;
    line-height: 20px;
}

/* --- JetSmartFilters --- */
.jet-smart-filters-checkboxes {
    background-color: #272e36;
    margin: 0 0 20px;
    padding: 25px 0 45px;
    border: 1px solid #2f3f53;
    border-radius: 10px;
}

.jet-filter-label {
    font-family: "Oswald", Sans-serif;
    font-size: 26px;
    font-weight: 700;
    text-transform: uppercase;
    font-style: italic;
    padding-bottom: 25px;
    border-bottom: 1px solid rgb(47, 63, 83);
    margin-bottom: 25px;
}

.jet-checkboxes-list-wrapper,
.jet-filter-label {
    padding-left: 25px !important;
}

.jet-filter-items-scroll {
    scrollbar-width: thin;
    scrollbar-color: #24aee4 #20252a;
}

.jet-filter-items-scroll::-webkit-scrollbar {
    width: 8px;
}

.jet-filter-items-scroll::-webkit-scrollbar-track {
    background: #20252a;
    border-radius: 4px;
}

.jet-filter-items-scroll::-webkit-scrollbar-thumb {
    background: #24aee4;
    border-radius: 4px;
}

.jet-filter-items-scroll::-webkit-scrollbar-thumb:hover {
    background: #00aaff;
}

.jet-offcanvas-trigger-wrap {
    background: transparent;
}

.jet-offcanvas-23ab186 .jet-offcanvas-expand {
    position: absolute !important;
    top: -70px !important;
    left: 20px !important;
    background: #24aee4;
    border-radius: 8px;
    padding: 12px 20px !important;
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 500;
}

.jet-offcanvas-23ab186 .jet-offcanvas-expand:hover {
    color: #000 !important;
}

.jet-smart-filters-elementor-loop-no-result {
    display: none;
}

.jsf-no-terms-msg {
    padding: 10px 15px;
    color: #888;
    font-style: italic;
    font-size: 14px;
    background: #f9f9f9;
    border-radius: 4px;
    text-align: center;
    margin: 10px;
}

/* --- Jet Pagination --- */
.jet-filters-pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center;
    gap: 8px;
}

.jet-filters-pagination__item {
    width: auto !important;
    flex: 0 0 auto !important;
}

.jet-filters-pagination__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    min-width: 44px;
}

.jet-remove-all-filters {
    visibility: visible;
    opacity: 1;
    transition:
        opacity 1.3s ease-out,
        visibility 1.3s ease-out;
}

.jet-remove-all-filters.hide {
    display: flex;
    visibility: hidden;
    opacity: 0;
}

/* =========================================
   11. PAGINATION
   ========================================= */

.elementor-pagination {
    display: flex !important;
    justify-content: start !important;
    align-items: center !important;
    gap: 0 !important;
    margin-top: 30px !important;
}

.elementor-pagination .page-numbers {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 45px !important;
    height: 45px !important;
    border: 2px solid #3ec5ff !important;
    border-radius: 0 !important;
    color: #fff !important;
    background: transparent !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
}

.elementor-pagination .page-numbers.current,
.elementor-pagination a.page-numbers:hover {
    background: #3ec5ff !important;
    color: #fff !important;
    border-color: #3ec5ff !important;
}

.elementor-pagination .dots {
    border: none !important;
    width: auto !important;
    height: auto !important;
    padding: 0 10px !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 18px !important;
}

.elementor-pagination .elementor-screen-only {
    display: none !important;
}

/* =========================================
   12. MINI CART & CART PAGE
   ========================================= */

.elementor-menu-cart__toggle .elementor-button {
    padding: 0 !important;
}

.elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
    background-color: #25aee4;
}

.e-n-menu .woocommerce-message {
    display: none !important;
}

.elementor-menu-cart__main {
    width: 710px !important;
}

.elementor-menu-cart__close-button {
    width: 15px;
    height: 15px;
}

.elementor-menu-cart__subtotal {
    border-color: #2f3f53;
}

.elementor-menu-cart__subtotal .woocommerce-Price-amount {
    color: #24aee4;
}

.elementor-menu-cart__product-name {
    padding-top: 5px;
}

.elementor-menu-cart__product-price.product-price {
    padding-bottom: 5px;
}

.elementor-menu-cart__product-image img {
    border-radius: 8px;
}

.elementor-menu-cart__product-remove {
    border: none !important;
}

.woocommerce-js a.remove::before {
    border: none !important;
}

.woocommerce-js a.remove .ahfb-svg-iconset .ast-close-svg {
    width: 35px;
    height: 35px;
}

.shop_table {
    font-family: "Outfit", Sans-serif;
}

.woocommerce-js .woocommerce table.shop_table {
    font-size: 16px;
}

.woocommerce #content table.cart img,
.woocommerce table.cart img,
.woocommerce-page #content table.cart img,
.woocommerce-page table.cart img {
    border-radius: 5px;
}

.product-remove {
    padding-top: 0 !important;
    padding-right: 8px !important;
}

td.product-name a {
    font-style: italic;
    font-family: "Oswald";
    font-size: 16px;
}

.woocommerce-shipping-calculator {
    margin-top: 10px;
}

button.button.e-apply-coupon {
    background-color: #24aee4 !important;
    color: #fff !important;
	font-family: "Oswald", Sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    font-style: italic !important;
    line-height: 20px !important;
    width: 100% !important;
}
button.button.e-apply-coupon:hover {
background-color: transparent !important;
    color: #ffffff !important;
    border: 1px solid #ffffff !important;
    transition-duration: 0s;
}

/* .elementor-widget-woocommerce-cart .woocommerce button.button:hover {
    color: #000 !important;
} */

.elementor-widget-woocommerce-cart .woocommerce table.shop_table .shipping-calculator-form .button {
    font-family: "Outfit", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-transform: capitalize;
    line-height: 20px;
    color: #fff;
    margin-top: 10px;
    width: 100% !important;
}

.woocommerce-shop #back-shop {
    display: none;
}

.tax-product_brand #back-shop,
.tax-product_cat #back-shop {
    display: block;
}

.checkout-button {
    margin-bottom: 10px !important;
}

/* Cart totals responsive stacking */
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive,
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tbody,
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tr,
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive td,
.cart_totals table.shop_table_responsive,
.cart_totals table.shop_table_responsive tbody,
.cart_totals table.shop_table_responsive tr,
.cart_totals table.shop_table_responsive td {
    display: block !important;
    width: 100% !important;
}

/* Cart shipping method */
#shipping_method {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin-bottom: 20px !important;
    background-color: #131a20;
    padding: 30px !important;
    border-radius: 10px;
}

#shipping_method li {
    display: flex !important;
    align-items: center !important;
    margin-bottom: 8px !important;
    gap: 8px !important;
    color: #24aee4 !important;
    font-size: 16px !important;
}

#shipping_method li input[type="radio"] {
    margin: 0 !important;
    flex-shrink: 0;
}

#shipping_method li label {
    margin: 0 !important;
    line-height: 1.2;
}

.elementor-widget-woocommerce-checkout-page .woocommerce #shipping_method li label,
.elementor-widget-woocommerce-checkout-page .woocommerce .wc_payment_method label {
    color: #24aee4 !important;
    font-size: 16px !important;
}

.elementor-widget-woocommerce-cart .select2-container--default .select2-selection--single:focus {
    background-color: #131a20;
}

.cart_totals .woocommerce-shipping-totals td:before {
    content: "Shipping" !important;
    font-size: 18px !important;
    font-weight: 500 !important;
}

/* =========================================
   13. CHECKOUT & ORDER CONFIRMATION
   ========================================= */

.e-checkout-layout-two-column {
    color: #fff !important;
    font-family: "Outfit";
    font-size: 16px;
}

.woocommerce-page input[type="text"],
.select2-dropdown {
    background-color: #2e2e2e;
    border: 1px solid rgb(55 65 81 / 1) !important;
}

.input-text:focus,
.woocommerce-page input[type="text"]:focus,
.select2-dropdown:focus {
    border: 1px solid #24aee4 !important;
}

.input-text,
.select2-selection__rendered {
    min-height: 60px;
    line-height: 60px;
}

input.select2-search__field,
.select2-results {
    background-color: #131a20 !important;
}

.elementor-widget-woocommerce-checkout-page .select2-container--default .select2-selection--single {
    height: auto !important;
    border-color: rgb(55 65 81 / 1) !important;
}

.elementor-widget-woocommerce-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
    min-height: 60px;
    padding-top: 7px;
}

.elementor-widget-woocommerce-checkout-page .woocommerce button.woocommerce-button {
    font-family: "Outfit", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-transform: capitalize;
    background-color: #24aee4;
    color: #fff;
    border: none;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .form-row label,
.woocommerce-shipping-calculator .form-row label {
    font-family: "Outfit", Sans-serif;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
    line-height: 20px !important;
    color: #9ca3af !important;
}

.elementor-58 .elementor-element.elementor-element-433d38b #shipping_method li label {
    font-family: "Outfit", Sans-serif;
    line-height: 20px !important;
    margin-bottom: 20px;
    display: block;
    color: #24aee4 !important;
    text-transform: capitalize;
    font-size: 16px;
}

#ship-to-different-address,
.shipping_address {
    padding: 0 !important;
}

.elementor-59 .elementor-element.elementor-element-446136c .woocommerce-form__label-for-checkbox span {
    font-family: "Oswald", Sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-style: italic;
}

.woocommerce-page.woocommerce-checkout form #order_review td.product-name {
    max-width: 100% !important;
}

.elementor-widget-woocommerce-checkout-page .woocommerce .shop_table tfoot td,
.elementor-widget-woocommerce-checkout-page .woocommerce .shop_table tfoot th,
.elementor-widget-woocommerce-checkout-page .woocommerce .shop_table tbody td {
    color: #fff !important;
}

.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-column__title,
.woocommerce-page.woocommerce-checkout .woocommerce-order h2.woocommerce-order-details__title {
    background: #131a20;
    padding: 1em;
    margin-bottom: 20px;
    border: 1px solid #2b333b;
    font-family: "Oswald";
    text-transform: uppercase;
    font-style: italic;
    font-size: 24px;
}

.woocommerce-page.woocommerce-checkout .woocommerce-order ul.order_details {
    background: #131a20 !important;
    padding: 1em;
    margin-bottom: 20px;
    border: 1px solid #2b333b;
    font-family: "Oswald";
    text-transform: uppercase;
    font-style: italic;
    font-size: 20px;
}

.woocommerce .woocommerce-customer-details address {
    border: 0 !important;
}

.woocommerce-page.woocommerce-checkout .woocommerce-customer-details address {
    font-size: 16px !important;
    line-height: 1.5em !important;
}


/* Checkout order review table layout */
#order_review .woocommerce-checkout-review-order-table,
#order_review .woocommerce-checkout-review-order-table thead,
#order_review .woocommerce-checkout-review-order-table tbody,
#order_review .woocommerce-checkout-review-order-table tfoot,
#order_review .woocommerce-checkout-review-order-table tr,
#order_review .woocommerce-checkout-review-order-table th,
#order_review .woocommerce-checkout-review-order-table td {
    display: block !important;
    width: 100% !important;
}

#order_review .woocommerce-checkout-review-order-table thead tr,
#order_review .woocommerce-checkout-review-order-table tbody tr.cart_item,
#order_review .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal,
#order_review .woocommerce-checkout-review-order-table tfoot tr.order-total {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
}

#order_review .woocommerce-checkout-review-order-table thead th,
#order_review .woocommerce-checkout-review-order-table tbody .cart_item td,
#order_review .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal th,
#order_review .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td,
#order_review .woocommerce-checkout-review-order-table tfoot tr.order-total th,
#order_review .woocommerce-checkout-review-order-table tfoot tr.order-total td {
    width: auto !important;
}

/* Checkout shipping row */
#order_review .woocommerce-shipping-totals {
    display: block !important;
    width: 100% !important;
}

#order_review .woocommerce-shipping-totals th {
    display: block !important;
    width: 100% !important;
    margin-bottom: 10px;
    font-size: 0 !important;
}

#order_review .woocommerce-shipping-totals th:after {
    content: "Shipping";
    font-size: 18px;
    font-weight: 500;
}

#order_review .woocommerce-shipping-totals td {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
}

#order_review .woocommerce-shipping-totals td:before {
    display: none !important;
}

ul#shipping_method li:not(.elementor-widget-woocommerce-cart #shipping_method li) {
    text-indent: 0;
    padding: 0;
}

.woocommerce-page.woocommerce-checkout table.shop_table td,
.woocommerce.woocommerce-checkout table.shop_table td {
    padding: 0;
}

/* =========================================
   14. MY ACCOUNT
   ========================================= */

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login {
    background-color: #272e36 !important;
    padding: 45px !important;
    border-radius: 5px;
}

.woocommerce-form-login__rememberme {
    margin-bottom: 15px !important;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h2,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h3 {
    margin-bottom: 20px !important;
}

/* =========================================
   15. SINGLE PRODUCT
   ========================================= */

.elementor-template-full-width .ast-container {
    max-width: 100% !important;
    padding: 0 !important;
}

.woocommerce-js div.product .product_title {
    margin: 0;
}

.woocommerce-js div.product p.ast-stock-detail,
.woocommerce-js div.product p.stock {
    font-size: 0.9em !important;
}

.woocommerce-product-gallery__image {
    margin-bottom: 10px !important;
}

.ast-article-single figure,
.ast-article-single img:not(figure img) {
    box-shadow: none !important;
}

.elementor-icon-box-icon {
    margin-left: auto;
    margin-right: auto;
    width: 50px !important;
}

td.value {
    margin-bottom: 35px;
}

form.cart table.variations td.value select {
    height: 55px !important;
    padding-left: 1em;
}

.variations select option:disabled {
    color: #999 !important;
}

/* Disabled add-to-cart button */
.woocommerce-js #respond input#submit.alt.disabled,
.woocommerce-js #respond input#submit.alt.disabled:hover,
.woocommerce-js #respond input#submit.alt:disabled,
.woocommerce-js #respond input#submit.alt:disabled:hover,
.woocommerce-js #respond input#submit.alt:disabled[disabled],
.woocommerce-js #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce-js a.button.alt.disabled,
.woocommerce-js a.button.alt.disabled:hover,
.woocommerce-js a.button.alt:disabled,
.woocommerce-js a.button.alt:disabled:hover,
.woocommerce-js a.button.alt:disabled[disabled],
.woocommerce-js a.button.alt:disabled[disabled]:hover,
.woocommerce-js button.button.alt.disabled,
.woocommerce-js button.button.alt.disabled:hover,
.woocommerce-js button.button.alt:disabled,
.woocommerce-js button.button.alt:disabled:hover,
.woocommerce-js button.button.alt:disabled[disabled],
.woocommerce-js button.button.alt:disabled[disabled]:hover,
.woocommerce-js input.button.alt.disabled,
.woocommerce-js input.button.alt.disabled:hover,
.woocommerce-js input.button.alt:disabled,
.woocommerce-js input.button.alt:disabled:hover,
.woocommerce-js input.button.alt:disabled[disabled],
.woocommerce-js input.button.alt:disabled[disabled]:hover {
    background-color: #24aee4;
    font-family: "Oswald";
    text-transform: capitalize;
    font-size: 18px;
    line-height: 22px;
}

.single-product .brand-logo {
    text-align: center;
}

.brand-logo img {
    width: 85px;
}

.elementor-element-b12227a.e-con::before {
    display: none !important;
}

.single-product h3,
.single-product h4,
.single-product h5,
.single-product h6 {
    font-family: "Oswald", sans-serif;
    font-style: italic;
    font-weight: 600;
    line-height: 1.8em;
}

#tab-description h1,
#tab-description h2,
#tab-description h3,
#tab-description h4 {
    font-family: "Oswald", sans-serif;
    font-style: italic;
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 10px;
}

#product-image-card {
    background-size: cover !important;
}

/* =========================================
   16. BRANDS DIRECTORY
   ========================================= */

.brands-directory {
    --brand-primary: #24aee4;
    --brand-bg: #0a0a0a;
    --card-bg: #ffffff;
}

.brands-alpha-nav {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    flex-wrap: wrap;
}

.brands-alpha-nav a,
.brands-alpha-nav span {
    padding: 0.5rem 0.75rem;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s;
}

.brands-alpha-nav a.active {
    color: #fff;
}

.brands-alpha-nav a.active:hover {
    color: var(--brand-primary);
}

.brands-alpha-nav span.inactive {
    color: rgba(255, 255, 255, 0.3);
}

.brands-section {
    padding: 3rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    transition: opacity 0.2s;
}

.brands-section-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.brands-letter {
    font-size: 4rem;
    font-weight: 700;
    color: #24aee4;
    line-height: 1;
    font-family: "Oswald";
}

.brands-section-header h2 {
    color: #fff;
    font-size: 1.2rem;
    font-style: italic;
    letter-spacing: 0.05em;
    margin: 0;
    font-family: "Oswald";
}

.brands-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1rem;
}

.brand-card {
    display: grid;
    place-items: center;
    padding: 24px 16px;
    background: #0d1117;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 10px;
    text-decoration: none !important;
    text-align: center;
    min-height: 80px;
    overflow: hidden;
    transition: all 0.4s ease;
}

.brand-card:hover {
    background: #161b22;
    border-color: rgba(255, 255, 255, 0.12);
    transform: translateY(-2px);
}

.brand-card-name,
.brand-card-logo {
    grid-area: 1 / 1;
    transition: all 0.4s ease;
}

.brand-card-name {
    font-size: 14px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.4);
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none !important;
    text-align: center;
}

.brand-card-logo {
    max-width: 170px;
    max-height: 55px;
    object-fit: contain;
    opacity: 0;
}

.brand-card.has-logo:hover .brand-card-name {
    opacity: 0;
}

.brand-card.has-logo:hover .brand-card-logo {
    opacity: 1;
}

.brand-card.no-logo:hover .brand-card-name {
    color: rgba(255, 255, 255, 0.9);
}

.brands-search-wrapper {
    max-width: 500px;
    margin: 0 auto 2rem;
}

.brands-search-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.brands-search-input-wrap .search-icon {
    position: absolute;
    left: 1rem;
    color: rgba(255, 255, 255, 0.5);
    pointer-events: none;
}

#brands-search {
    width: 100%;
    padding: 1rem 3rem;
    font-size: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    transition:
        border-color 0.2s,
        background 0.2s;
}

#brands-search::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

#brands-search:focus {
    outline: none;
    border-color: var(--brand-primary, #3b5bdb);
    background: rgba(255, 255, 255, 0.1);
}

.search-clear {
    position: absolute;
    right: 0.75rem;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    color: #fff;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    cursor: pointer;
    display: none;
    font-size: 1rem;
    line-height: 1;
    transition: background 0.2s;
}

.search-clear:hover {
    background: rgba(255, 255, 255, 0.3);
}

.brands-search-results {
    text-align: center;
    margin-top: 0.75rem;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.5);
}

/* =========================================
   17. BRANDS COMPACT LIST (BR)
   ========================================= */

.br-list-container {
    padding: 0 15px 40px;
    position: relative;
    z-index: 1;
}

.br-columns {
    column-count: 4;
    column-gap: 10px;
    max-width: 1200px;
    margin: 0 auto;
}

.br-letter-section {
    margin-bottom: 15px;
    break-inside: avoid-column;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
}

.br-section-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    padding: 0;
    background: transparent;
}

.br-letter-large {
    font-size: 27px;
    font-weight: 900;
    color: #3498db;
    line-height: 1;
    font-family: "Oswald", sans-serif;
    min-width: 0;
    text-align: left;
    flex-shrink: 0;
}

.br-letter-heading {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-style: italic;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
    font-family: "Oswald";
}

.br-items-list {
    list-style: none;
    margin: 0;
    padding: 0 0 0 15px;
}

.br-item {
    margin-bottom: 3px;
    break-inside: avoid;
}

.br-item.br-hidden {
    display: none;
}

.br-item a {
    color: #ddd;
    text-decoration: none;
    font-size: 11px;
    line-height: 1.5;
    transition: color 0.2s ease;
    display: block;
}

.br-item a:hover {
    color: #3498db;
    text-decoration: none;
}

.br-see-more {
    display: inline-block;
    color: #aaa;
    text-decoration: none;
    font-size: 12px;
    margin-top: 5px;
    margin-left: 15px;
    cursor: pointer;
    transition: color 0.2s ease;
}

.br-see-more:hover {
    color: #3498db;
    text-decoration: underline;
}

/* =========================================
   18. TOP BRANDS LIST (SIDEBAR/WIDGET)
   ========================================= */

.top-brands-items {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.top-brand-item {
    width: 100%;
}

.top-brand-link {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 16px 12px;
    border-radius: 8px;
    background: #1a2a3a;
    min-height: 80px;
    text-decoration: none;
    color: #fff !important;
    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.top-brand-link:hover {
    background: #1e3348;
    transform: scale(1.02);
}

.top-brand-logo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.top-brand-logo {
    max-height: 45px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    filter: brightness(0) invert(1);
    transition: filter 0.3s ease;
}

.top-brand-link:hover .top-brand-logo {
    filter: brightness(0) saturate(100%) invert(62%) sepia(85%) saturate(1000%) hue-rotate(170deg) brightness(95%);
}

.top-brand-name {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
    color: #fff !important;
    display: block;
    text-align: center;
    transition: color 0.3s ease;
}

.top-brand-link:hover .top-brand-name {
    color: #24aee4 !important;
}

/* =========================================
   19. STORE LOCATOR
   ========================================= */

#asl-storelocator.asl-cont .sl-addr-list-title {
    font-family: "Oswald", sans-serif !important;
}

#store-carousel a {
    text-decoration: none !important;
    color: #fff !important;
}

/* =========================================
   20. NAVIGATION & MENU ICONS
   ========================================= */

.elementor-widget-n-menu .e-n-menu-title .e-n-menu-icon span svg {
    height: 10px !important;
}

svg.e-font-icon-svg.e-fas-info {
    margin-right: -7px;
    margin-bottom: 2px;
}

svg.e-font-icon-svg.e-fas-store-alt {
    margin-bottom: 2px;
    margin-right: -2px;
}

svg.e-font-icon-svg.e-far-envelope-open,
svg.e-font-icon-svg.e-fas-phone-alt {
    margin-bottom: 2px;
    margin-right: -4px;
}

#mobile-menu-button .elementor-button-icon svg {
    height: 12px;
    width: inherit !important;
}

/* =========================================
   21. IMAGE CAROUSEL
   ========================================= */

.elementor-widget-image-carousel .swiper-wrapper {
    transition-timing-function: linear !important;
}

.swiper {
    padding-top: 20px;
}

/* =========================================
   22. ACCORDION OVERRIDES
   ========================================= */

.disabled-accordion .elementor-accordion-item:nth-child(2) {
    pointer-events: none !important;
    opacity: 0.6;
}

.disabled-accordion .elementor-accordion-item:nth-child(2) .elementor-accordion-icon {
    display: none !important;
}

/* =========================================
   23. NOTICES & MESSAGES
   ========================================= */

.e-wc-message-notice .woocommerce-message {
    background: #24aee4 !important;
    border: none;
    border-radius: 5px;
    padding: 20px 12px;
    text-align: center;
    font-family: "Outfit";
    color: #fff !important;
    text-transform: capitalize;
}

.woocommerce-message::before {
    display: none;
}

/* =========================================
   24. FEATURED BRANDS GRID
   ========================================= */

.featured-brands-grid {
    display: grid;
    grid-template-columns: repeat(var(--fb-columns, 4), 1fr);
    gap: 20px;
    padding: 20px 0;
    align-items: stretch;
}

.featured-brand-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 24px;
    border-radius: 12px;
    text-decoration: none;
    border: 1px solid #2b333b;
    min-height: 100px;
}

.featured-brand-item:hover {
    border-color: #24aee4;
}

.featured-brand-item img {
    max-width: 180px;
    max-height: 70px;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: all 0.4s ease;
    filter: grayscale(100%) brightness(10) opacity(0.4);
}

.featured-brand-item:hover img {}

.featured-brand-name {
    margin-top: 10px;
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.3);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
}

.featured-brand-item:hover .featured-brand-name {
    color: rgba(255, 255, 255, 0.8);
}

.featured-brand-name-fallback {
    font-size: 18px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.3);
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: color 0.3s ease;
}

.featured-brand-item:hover .featured-brand-name-fallback {
    color: rgba(255, 255, 255, 0.8);
}

/* =========================================
   25. CATEGORY DESCRIPTION CAROUSEL
   ========================================= */

#jsf-category-description {
    padding: 20px 0;
}

#jsf-category-description h2 {
    margin-top: 10px;
}

/* Single description display */
.ps-cat-desc__name,
.ps-cat-carousel__name {
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0 0 8px;
    color: #fff;
}

.ps-cat-desc__text,
.ps-cat-carousel__text {
    font-size: 16px;
    line-height: 1.6em;
    color: #fff;
}

.ps-cat-desc__text p:last-child,
.ps-cat-carousel__text p:last-child {
    margin-bottom: 0;
}

/* Carousel wrapper */
.ps-cat-carousel {
    position: relative;
    overflow: hidden;
    padding: 0 40px;
}

.ps-cat-carousel__track {
    position: relative;
    min-height: 80px;
}

.ps-cat-carousel__slide {
    display: none;
    animation: psCatFadeIn 0.3s ease;
}

.ps-cat-carousel__slide--active {
    display: block;
}

@keyframes psCatFadeIn {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Arrows */
.ps-cat-carousel__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: #b6b6b6;
    transition:
        background 0.2s,
        color 0.2s;
    padding: 0;
    z-index: 2;
}

.ps-cat-carousel__arrow:hover {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.ps-cat-carousel__arrow--prev {
    left: 0;
}

.ps-cat-carousel__arrow--next {
    right: 0;
}

/* Dots */
.ps-cat-carousel__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 12px;
}

.ps-cat-carousel__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.15);
    cursor: pointer;
    padding: 0;
    transition:
        background 0.2s,
        transform 0.2s;
}

.ps-cat-carousel__dot--active {
    background: #24aee4;
    transform: scale(1.25);
}

.ps-cat-carousel__dot:hover {
    background: rgba(255, 255, 255, 0.35);
}

/* =========================================
   26. NOTHING FOUND
   ========================================= */

.e-loop-nothing-found-message {
    text-align: center;
    padding: 60px 20px;
}

.e-loop-nothing-found-message__image {
    margin-bottom: 20px;
}

.e-loop-nothing-found-message__image img {
    max-width: 280px;
    height: auto;
    opacity: 0.7;
}

.e-loop-nothing-found-message__text {
    font-size: 16px;
    color: #999;
}

/* =========================================
   27. UTILITY CLASSES
   ========================================= */

.blue-btn {
    background-color: #24aee4;
    font-family: "Oswald", Sans-serif;
    font-size: 18px !important;
    font-weight: 500;
    text-transform: uppercase;
    font-style: italic;
    transition-duration: 0s;
    border: 1px solid #24aee4;
    padding: 1em 3.5em 1em 3em;
    border-radius: 3px;
    text-decoration: none !important;
}

.blue-btn:hover {
    background-color: transparent;
    color: #fff;
    border-color: #fff;
}

/* =========================================
   28. RESPONSIVE
   ========================================= */

@media (max-width: 1024px) {
    .featured-brands-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .br-columns {
        column-count: 2;
        column-gap: 20px;
    }
}

@media (max-width: 768px) {
    .featured-brands-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .featured-brand-item {
        padding: 24px 16px;
    }
}

@media (max-width: 767px) {
    .elementor-widget-search .e-search-results-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .br-columns {
        column-count: 1;
    }

    #hero-buttons .elementor-widget-button {
        width: 100% !important;
    }

    .jet-filter-label {
        padding-top: 15px !important;
    }

    .e-con>.e-con-inner.jet-offcanvas-parent {
        gap: 0;
        padding: 20px 10px;
    }

    .jet-checkboxes-list-wrapper {
        padding-bottom: 25px !important;
    }

    .jet-offcanvas {
        background-color: #20252a !important;
    }

    .jet-filter {
        padding-left: 25px;
    }

    .swiper {
        padding: 20px;
    }

    .woocommerce-cart-form__cart-item .quantity {
        display: block !important;
    }

    .elementor-58 .elementor-element.elementor-element-433d38b .e-shop-table {
        padding: 10px;
    }

    .woocommerce-js #content table.cart td,
    .woocommerce-page #content table.cart td {
        border-bottom: 1px solid #2f3f53;
        padding-top: 8px !important;
    }

    .elementor-element-0d86179 {
        margin-top: 0 !important;
    }
}

@media (max-width: 480px) {
    .featured-brands-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .featured-brand-item img {
        max-width: 130px;
        max-height: 55px;
    }
}

/* Reset Filters Button */
.ps-reset-filters-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    font-style: italic;
    font-size: 18px;
    font-weight: 500;
    color: #b6b6b6;
    background-color: transparent;
    border: 1px solid #2f3f53;
    border-radius: 10px;
    padding: 0.8em 2.5em;
    cursor: default;
    transition: all 0.25s ease;
    width: 100%;
    margin-top: 15px;
    opacity: 0.4;
    pointer-events: none;
}

.ps-reset-filters-btn.ps-filters-active {
    color: #ffffff;
    background-color: #24aee4;
    border-color: #24aee4;
    opacity: 1;
    pointer-events: auto;
    cursor: pointer;
}

.ps-reset-filters-btn.ps-filters-active:hover {
    background-color: transparent;
    color: #ffffff;
    border-color: #ffffff;
}

.ps-reset-filters-btn svg {
    transition: transform 0.3s ease;
}

.ps-reset-filters-btn.ps-filters-active:hover svg {
    transform: rotate(-360deg);
}

/* Loading state */
.ps-reset-filters-btn.ps-resetting {
    pointer-events: none;
    opacity: 0.6;
}

.ps-reset-filters-btn.ps-resetting svg {
    animation: ps-spin 0.8s linear infinite;
}

@keyframes ps-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(-360deg);
    }
}

/* Skeleton Grid Preloader */
.ps-skeleton-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 10px 0;
}

.ps-skeleton-card {
    background: #1a1f27;
    border-radius: 10px;
    padding: 15px;
    border: 1px solid #2f3f53;
}

.ps-skeleton-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    background: #272e36;
}

.ps-skeleton-line {
    border-radius: 4px;
    background: #272e36;
}

/* Shimmer animation */
.ps-shimmer {
    position: relative;
    overflow: hidden;
}

.ps-shimmer::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent 0%,
            rgba(36, 174, 228, 0.06) 40%,
            rgba(36, 174, 228, 0.12) 50%,
            rgba(36, 174, 228, 0.06) 60%,
            transparent 100%);
    animation: ps-shimmer 1.5s ease-in-out infinite;
}

@keyframes ps-shimmer {
    0% {
        left: -100%;
    }

    100% {
        left: 100%;
    }
}

/* Responsive skeleton */
@media (max-width: 1024px) {
    .ps-skeleton-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .ps-skeleton-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
}

.brands-section[id^="brand-section-"] {
    scroll-margin-top: 120px;
}

@media (max-width: 767px) {

    /* Scope to Elementor carousels */
    .elementor-widget-image-carousel,
    .elementor-widget-loop-carousel,
    .elementor-widget-media-carousel {
        position: relative;
    }

    /* LEFT edge fade */
    .elementor-widget-image-carousel::before,
    .elementor-widget-loop-carousel::before,
    .elementor-widget-media-carousel::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 70px;
        height: 100%;
        background: linear-gradient(to right,
                rgba(13, 18, 24, 0.99),
                /* darker outer edge */
                rgba(13, 18, 24, 0));
        pointer-events: none;
        z-index: 2;
    }

    /* RIGHT edge fade */
    .elementor-widget-image-carousel::after,
    .elementor-widget-loop-carousel::after,
    .elementor-widget-media-carousel::after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 70px;
        height: 100%;
        background: linear-gradient(to left,
                rgba(13, 18, 24, 0.99),
                /* darker outer edge */
                rgba(13, 18, 24, 0));
        pointer-events: none;
        z-index: 2;
    }

    /* Ensure arrows remain above fades */
    .elementor-swiper-button-prev,
    .elementor-swiper-button-next {
        z-index: 3;
    }
}

/* Close icon always visible on first open */
.closeic {
    position: fixed !important;
    /* ensures it isn't clipped by the sidebar container */
    top: 20px;
    /* adjust */
    right: 20px;
    /* adjust */
    z-index: 999999 !important;

    transform: translateZ(0);
    /* forces GPU layer */
    -webkit-transform: translateZ(0);
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

@media (max-width: 767px) {

    html,
    body {
        overflow-x: hidden !important;
        width: 100%;
    }
}

.featured-brand-item img:hover {
    filter: invert(1);
}

img.brand-card-logo:hover {
    filter: invert(1);
}

body .cart .button {
    font-family: "Outfit", Sans-serif !important;
}

span.product-brand-text {
    display: none;
}

.wps_wgc_label {
    color: #ffffff !important;
}

.wps_wgm_price {
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
}

.wps_wgm_from_name {
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
}

#wps_wgm_price,
#wps_wgm_from_name,
#wps_wgm_to_email {
    color: #ffffff;
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
    height: 55px;
    margin-top: 5px;
}

#wps_wgm_message,
#wps_wgm_to_email {
    color: #ffffff;
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
    height: 55px;
    margin-top: 5px;
}

.wps_wgm_added_wrapper p {
    margin-bottom: 20px !important;
}

.wps_wgm_delivery_method {
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
}

.woocommerce-js div.product form.cart .variations label {
    color: #ffffff !important;
	font-family: "Oswald", Sans-serif;
    font-size: 20px;
    text-transform: uppercase;
    font-style: italic;
	margin-top: 8px;
}
.woocommerce-js div.product form.cart .variations td.label{
	margin-top: 25px !important;
}
.bundle_form table.variations .required{
	color: #24aee4 !important;
}
.bundled_product_summary .bundled_product_title a.bundled_product_permalink:before{
	font-size: .5em !important;
}
.cart.bundle_data.bundle_data_477960{
	width: 100% !important;
}
.bundle_form .cart .variations select,
.bundled_product .cart .variations .bundled_variation_attribute_value,
.single-product div.product .bundle_form .cart .variations select {
    background-color: #121212;
    border: 1px solid #253b4c;
    border-radius: 8px;
    color: #ffffff;
}

.woocommerce-js div.product div.images .woocommerce-product-gallery__image:nth-child(n + 2) {
    display: none;
}

.wps_wgm_msg_info {
    margin-top: 10px !important;
}

/* Product quantity selector layout */
.single-product form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.single-product .custom-qty-label {
    font-weight: 600;
    color: #ffffff;
    margin-right: 4px;
}

.single-product .quantity {
    display: inline-flex !important;
    align-items: center;
    overflow: hidden;

    border-radius: 8px;

    height: 44px;
}

.single-product .quantity input.qty {
    width: 54px !important;
    height: 44px !important;
    border: none !important;
    text-align: center;
    font-weight: 600;
    background: #ffffff;
    color: #111111;
    padding: 0 !important;
    margin: 0 !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.single-product .quantity input.qty::-webkit-inner-spin-button,
.single-product .quantity input.qty::-webkit-outer-spin-button {
    appearance: none;
    -webkit-appearance: none;
    margin: 0;
}

.single-product .qty-minus,
.single-product .qty-plus {
    width: 44px;
    height: 44px;
    border: none;
    background: #f2f2f2;
    color: #111111;
    font-size: 20px;
    font-weight: 500;
    cursor: pointer;
    line-height: 1;
}

.single-product .qty-minus:hover,
.single-product .qty-plus:hover {
    background: #e3e3e3;
}

/* Keep Add to Cart button full-width underneath if needed */
.single-product form.cart .single_add_to_cart_button {
    flex-basis: 100%;
    width: 100%;
    margin-top: 8px;
}
/* Quantity only - do not affect Add to Cart button */
.single-product form.cart {
  display: block !important;
}

.single-product .custom-qty-label {
	font-family: "Oswald", Sans-serif !important;
    font-size: 20px !important;
    text-transform: uppercase;
    font-style: italic;
  display: block;
  color: #ffffff;
  font-weight: 600;
  margin: 0 0 6px 0;
}

.single-product form.cart .quantity {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  max-width: 140px !important;
  height: 42px !important;
  overflow: hidden;
  border: 1px solid #253B4C;
  border-radius: 6px;
  background: #121212;
  gap: 0 !important;
  margin-bottom: 12px;
}

.single-product form.cart .quantity .qty-minus,
.single-product form.cart .quantity .qty-plus {
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: #24AEE4 !important;
  color: #ffffff !important;
  font-size: 18px !important;
  line-height: 42px !important;
  cursor: pointer;
}

.qty-plus {
  border-radius: 0px 5px 5px 0px !important;
}

.qty-minus {
  border-radius: 5px 0px 0px 5px !important;
}

.single-product form.cart .quantity input.qty {
  width: 50px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: #121212 !important;
  color: #ffffff !important;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
}

/* Keep add to cart button original */
.single-product form.cart .single_add_to_cart_button {
  width: auto;
  flex: unset;
  margin-top: initial;
}
.elementor-widget-woocommerce-cart
  .woocommerce
  .wc-proceed-to-checkout
  .checkout-button:hover {
  background-color: transparent !important;
  color: #ffffff !important;
  border: 1px solid #ffffff !important;
  transition-duration: 0s;
}
.elementor-widget-woocommerce-cart
  .woocommerce
  .wc-proceed-to-checkout
  .checkout-button {
  background-color: #24aee4 !important;
  color: #ffffff !important;
  border: 1px solid #24aee4 !important;
  transition-duration: 0s;
  font-family: "Oswald", Sans-serif;
  font-size: 18px;
  font-weight: 500;
  text-transform: uppercase;
  font-style: italic;
}
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce
  .shop_table
  thead
  tr
  th,
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce
  .shop_table
  thead
  tr
  th
  span {
  font-family: "Oswald", Sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-style: italic;
}
th.product-name,
th.product-total {
  font-family: "Oswald", Sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-style: italic;
  color: #ffffff !important;
}
.woocommerce-page.woocommerce-checkout table.shop_table th,
.woocommerce.woocommerce-checkout table.shop_table th {
  padding: 12px 0px;
}
.woocommerce .woocommerce-Addresses .woocommerce-Address-title,
.woocommerce .woocommerce-Addresses .woocommerce-column__title,
.woocommerce .woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce .woocommerce-MyAccount-content .woocommerce-column__title,
.woocommerce .woocommerce-customer-details .woocommerce-Address-title,
.woocommerce .woocommerce-customer-details .woocommerce-column__title,
.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title,
.woocommerce-account .woocommerce-Addresses .woocommerce-column__title,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title,
.woocommerce-account .woocommerce-customer-details .woocommerce-Address-title,
.woocommerce-account .woocommerce-customer-details .woocommerce-column__title {
  background: #131a20;
  border-color: #131a20;

  border-radius: 10px;
}
.elementor-widget-woocommerce-my-account
  .e-my-account-tab__view-order
  .order_details,
.elementor-widget-woocommerce-my-account
  .e-my-account-tab__view-order
  .woocommerce-table--order-downloads {
  padding: 0px;
}
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce-address-fields,
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  address {
  padding: 0px;
}
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce-Address
  address,
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce-Addresses
  address {
  padding: 0px;
}
.elementor-widget-woocommerce-my-account
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom)
  .woocommerce-MyAccount-content
  h2:first-of-type {
  margin-top: 0px;
}

/* =========================================
   THANK YOU / ORDER RECEIVED PAGE
   ========================================= */

.woocommerce-order {
  font-family: "Outfit", Sans-serif;
  color: #ffffff;
}

/* Thank you message */
.woocommerce-thankyou-order-received {
  background: #131a20;
  border: 1px solid #2f3f53;
  border-radius: 10px;
  padding: 22px 24px;
  margin-bottom: 25px !important;
  color: #ffffff;
  font-family: "Oswald", Sans-serif;
  font-size: 28px;
  font-weight: 600;
  font-style: italic;
  text-transform: uppercase;
  line-height: 1.3;
}

/* Order details summary box */
.woocommerce-order ul.order_details {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  background: #131a20 !important;
  border: 1px solid #2f3f53;
  border-radius: 10px;
  padding: 0 !important;
  margin: 0 0 25px 0 !important;
  overflow: hidden;
}

.woocommerce-order ul.order_details li {
  padding: 18px 20px !important;
  border-right: 1px solid #2f3f53;
  margin: 0 !important;
  color: #9ca3af;
  font-family: "Outfit", Sans-serif;
  font-size: 13px;
  text-transform: uppercase;
}

.woocommerce-order ul.order_details li:last-child {
  border-right: none;
}

.woocommerce-order ul.order_details li strong {
  display: block;
  margin-top: 6px;
  color: #ffffff;
  font-family: "Oswald", Sans-serif;
  font-size: 20px;
  font-style: italic;
  font-weight: 600;
  text-transform: uppercase;
}

/* Section headings */
.woocommerce-order h2,
.woocommerce-order h2.woocommerce-order-details__title,
.woocommerce-order h2.woocommerce-column__title {
  background: #131a20;
  border: 1px solid #2f3f53;
  border-radius: 10px;
  padding: 18px 22px;
  margin: 25px 0 15px 0 !important;
  color: #ffffff;
  font-family: "Oswald", Sans-serif;
  font-size: 24px;
  font-weight: 600;
  font-style: italic;
  text-transform: uppercase;
}

/* Order table */
.woocommerce-order table.shop_table {
  background: #131a20;
  border: 1px solid #2f3f53 !important;
  border-radius: 10px;
  overflow: hidden;
  color: #ffffff;
  font-family: "Outfit", Sans-serif;
}

.woocommerce-order table.shop_table th,
.woocommerce-order table.shop_table td {
  padding: 16px 18px !important;
  border-color: #2f3f53 !important;
  color: #ffffff;
}

.woocommerce-order table.shop_table thead th {
  color: #9ca3af;
  font-size: 13px;
  text-transform: uppercase;
}

.woocommerce-order table.shop_table tfoot th,
.woocommerce-order table.shop_table tfoot td {
  font-weight: 600;
}

.woocommerce-order .woocommerce-table__product-name a,
.woocommerce-order .woocommerce-table__product-name {
  color: #ffffff !important;
  font-family: "Oswald", Sans-serif;
  font-size: 18px;
  font-weight: 600;
  font-style: italic;
  text-transform: uppercase;
}

.woocommerce-order .woocommerce-Price-amount {
  color: #24aee4;
  font-weight: 600;
}

/* Billing / shipping address */
.woocommerce-order .woocommerce-customer-details address {
  background: #131a20;
  border: 1px solid #2f3f53 !important;
  border-radius: 10px;
  padding: 20px !important;
  color: #ffffff;
  font-family: "Outfit", Sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

/* Mobile */
@media (max-width: 767px) {
  .woocommerce-order ul.order_details {
    grid-template-columns: 1fr;
  }

  .woocommerce-order ul.order_details li {
    border-right: none;
    border-bottom: 1px solid #2f3f53;
  }

  .woocommerce-order ul.order_details li:last-child {
    border-bottom: none;
  }

  .woocommerce-thankyou-order-received {
    font-size: 22px;
    padding: 18px;
  }
}
/* Fix order details: label strong, value normal */
.woocommerce-order ul.order_details li {
  font-family: "Oswald", Sans-serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 600;
  color: #ffffff;
  text-transform: uppercase;
}

/* Value (the actual data) */
.woocommerce-order ul.order_details li strong {
  display: block;
  margin-top: 6px;
  font-family: "Outfit", Sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  color: #ffffff;
  text-transform: none;
}
/* Order details table headings (Product / Total) */
.woocommerce-order table.shop_table thead th {
  font-family: "Oswald", Sans-serif;
  font-size: 18px !important;
  font-weight: 600;
  font-style: italic;
  text-transform: uppercase;
  color: #ffffff;
}
.e-woo-select2-wrapper .select2-results__option{
	color: #ffffff !important;
	font-family: "Outfit", Sans-serif;
}
/* Fix quantity alignment inside custom shortcode */
.custom-add-to-cart-form .custom-qty-label {
  text-align: left !important;
  margin-left: 0 !important;

}

.custom-add-to-cart-form .quantity.qty-buttons-added {
  display: inline-flex !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Force parent not to center this part */
.custom-add-to-cart-form form.cart {
  text-align: left !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}
/* Remove extra spacing inside custom add to cart form */
.custom-add-to-cart-form .custom-qty-label {
  margin-bottom: 0px !important;
}

.custom-add-to-cart-form .quantity.qty-buttons-added {
  margin-bottom: 6px !important;
}

/* Remove extra gap before button */
.custom-add-to-cart-form form.cart .single_add_to_cart_button {
  margin-top: 0 !important;
}
/* Thank you page order details - remove empty ::before column */
.woocommerce-order ul.order_details::before,
.woocommerce-order ul.order_details::after {
  display: none !important;
  content: none !important;
}

/* Keep 4-column layout */
.woocommerce-order ul.order_details {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
}

/* Prevent WooCommerce default float layout */
.woocommerce-order ul.order_details li {
  float: none !important;
  width: auto !important;
}
/* Remove margin only for address titles */
.elementor-widget-woocommerce-my-account 
.e-my-account-tab:not(.e-my-account-tab__dashboard--custom) 
.woocommerce .woocommerce-Address-title.title h2 {
  margin-bottom: 0 !important;
	padding: 6px !important;
}
/* Out of stock button - match Add to Cart style */
.woocommerce-js div.product p.stock.out-of-stock,
.woocommerce-js div.product p.stock.out-of-stock *  {
  background-color: #24AEE4 !important;
  color: #ffffff !important;
  border: 1px solid #24AEE4 !important;
  font-family: "Oswald", Sans-serif;
  font-size: 18px !important;
  font-weight: 500;
	line-height: 22px;
  text-transform: uppercase;
  font-style: italic;
padding: 1em 3.5em 1em 3em !important;
  border-radius: 3px !important;
  display: block !important;
  width: 100% !important;
  text-align: center;
	width: 100% !important;
}

/* Hover same as your buttons */

/* Make Out of Stock full width inside Elementor add to cart wrapper */
.elementor-add-to-cart.elementor-product-simple p.stock.out-of-stock {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center;
}
/* DGWT mobile dropdown fix - safe version */
@media (max-width: 767px) {
  body .dgwt-wcas-suggestions-wrapp {
    left: 10px !important;
    right: auto !important;
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    z-index: 999999999 !important;
  }

  body .dgwt-wcas-suggestions-wrapp .dgwt-wcas-suggestion {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}
/* Blur page area only, not cart sidebar */
.ps-cart-blur-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 700px;
  bottom: 0;
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 9998;
  pointer-events: none;
}

/* Disable cart blur on mobile */
@media (max-width: 767px) {
  .ps-cart-blur-overlay {
    display: none !important;
  }
}

/* Add this class to your Icon Box: custom-icon-badge */

.custom-icon-badge .elementor-icon-box-icon .elementor-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;

    background: linear-gradient(135deg, #0f2a3d, #081a26); /* dark gradient */
    border-radius: 12px;

    box-shadow: 0 4px 12px rgba(0,0,0,0.3);

    transition: all 0.3s ease;
}

/* Icon colour */
.custom-icon-badge .elementor-icon-box-icon .elementor-icon i,
.custom-icon-badge .elementor-icon-box-icon .elementor-icon svg {
    color: #2cc4ff;
    fill: #2cc4ff;
    font-size: 18px;
}

/* Optional hover */
.custom-icon-badge .elementor-icon-box-icon .elementor-icon:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.4);
}
/* Responsive */
@media (max-width: 1024px) {
  .woocommerce-order ul.order_details {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 767px) {
  .woocommerce-order ul.order_details {
    grid-template-columns: 1fr !important;
  }
}
/* Thank You page mobile spacing */
@media (max-width: 767px) {
  .woocommerce-order {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
/* Featured Brands Grid - Mobile Fix */
@media only screen and (max-width: 767px) {
  body .featured-brands-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    --fb-columns: 2 !important;
    gap: 10px !important;
    padding: 10px 0 !important;
  }

  body .featured-brands-grid .featured-brand-item {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 85px !important;
    padding: 14px 10px !important;
    box-sizing: border-box !important;
  }

  body .featured-brands-grid .featured-brand-item img {
    max-width: 110px !important;
    max-height: 45px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body .featured-brands-grid .featured-brand-name,
  body .featured-brands-grid .featured-brand-name-fallback {
    font-size: 12px !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }
}