.custom-mini-cart-dropdown {
    height: auto;
    min-height: 0;
    max-height: none;
}

.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.home .add_to_cart_button.qbutton.add-to-cart-button,
.post-type-archive .add_to_cart_button.qbutton.add-to-cart-button,
.woocommerce-shop .add_to_cart_button.qbutton.add-to-cart-button,
.tax-product_cat .add_to_cart_button.qbutton.add-to-cart-button,
.page-reduceri .add_to_cart_button.qbutton.add-to-cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #494DA7;
    color: #fff;
    border: 0;
    border-radius: 25px;
    font-size: 14px !important;
    font-weight: 500;
    line-height: 1;
    padding: 0 18px;
    min-height: 40px;
    text-decoration: none;
}

.home .add_to_cart_button.qbutton.add-to-cart-button::before,
.post-type-archive .add_to_cart_button.qbutton.add-to-cart-button::before,
.woocommerce-shop .add_to_cart_button.qbutton.add-to-cart-button::before,
.tax-product_cat .add_to_cart_button.qbutton.add-to-cart-button::before,
.page-reduceri .add_to_cart_button.qbutton.add-to-cart-button::before {
    content: none !important;
    display: none !important;
    background: none !important;
    margin-right: 0 !important;
}

.home .add_to_cart_button.qbutton.add-to-cart-button:hover,
.post-type-archive .add_to_cart_button.qbutton.add-to-cart-button:hover,
.woocommerce-shop .add_to_cart_button.qbutton.add-to-cart-button:hover,
.tax-product_cat .add_to_cart_button.qbutton.add-to-cart-button:hover,
.page-reduceri .add_to_cart_button.qbutton.add-to-cart-button:hover {
    background-color: #5B62F8;
    color: #fff;
}

ul.wpr-woo-mini-cart.woocommerce-mini-cart.cart_list.product_list_widget {
    height: auto;
    max-height: none;
    overflow-y: visible;
}

.categoriesWrapper .custom-category-filter a,
.categoriesWrapper .custom-category-filter a:visited,
.categoriesWrapper .custom-category-filter a:active,
.categoriesWrapper .custom-category-filter a:focus {
    color: #3f3f3f;
    text-decoration: none;
    transition: color 0.2s ease, text-shadow 0.2s ease, transform 0.2s ease;
}

.categoriesWrapper .custom-category-filter a:hover,
.categoriesWrapper .custom-category-filter a:focus-visible {
    color: #1f1f1f;
    text-shadow: 0 0 12px rgba(31, 31, 31, 0.14);
    transform: translateY(-1px);
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 4px 8px;
    border-radius: 8px;
    background: #ebedf4;
    color: #4c589e !important;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category a,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category a:visited,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category a:active,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category a:focus {
    color: #4c589e;
}

.premium-woocommerce.premium-woo-products-carousel .slick-track {
    display: flex;
}

.premium-woocommerce.premium-woo-products-carousel .slick-slide {
    height: auto;
}

.premium-woocommerce.premium-woo-products-carousel .slick-slide > div,
.premium-woocommerce.premium-woo-products-carousel li.product,
.premium-woocommerce.premium-woo-products-carousel li.product.product-type-simple,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-product-wrapper {
    height: 100%;
}

.premium-woocommerce.premium-woo-products-carousel li.product,
.premium-woocommerce.premium-woo-products-carousel li.product.product-type-simple,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-product-wrapper {
    display: flex;
    flex-direction: column;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap {
    flex: 1 1 auto;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    padding-bottom: 56px;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product__link,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product__link {
    width: 100%;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-product-category {
    width: fit-content;
    max-width: 100%;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .price,
.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-atc-button {
    margin-top: auto;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .price {
    position: absolute;
    left: 20px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    width: auto;
    margin-top: 0;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-atc-button {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    width: auto;
    margin-top: 0;
    margin-left: 0;
}

.premium-woocommerce.premium-woo-products-carousel .premium-woo-products-details-wrap .premium-woo-atc-button .button {
    padding-left: 12px;
    padding-right: 12px;
}

@media (min-width: 1025px) {
    body > .wp-site-blocks > header.wp-block-template-part {
        position: sticky;
        top: 0;
        z-index: 1000;
        background-color: #fff;
        transition: box-shadow 0.2s ease;
    }

    body > .wp-site-blocks > header.wp-block-template-part .wc-blocks-pattern-header-essential {
        transition: padding 0.2s ease;
    }

    body > .wp-site-blocks > header.wp-block-template-part .wp-block-site-logo img {
        transition: max-width 0.2s ease;
    }

    body > .wp-site-blocks > header.wp-block-template-part .custom-mini-cart-dropdown {
        top: calc(100% + 8px);
    }

    body > .wp-site-blocks > header.wp-block-template-part.is-compact {
        box-shadow: 0 8px 24px rgba(18, 16, 15, 0.08);
    }

    body > .wp-site-blocks > header.wp-block-template-part.is-compact .wc-blocks-pattern-header-essential {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    body > .wp-site-blocks > header.wp-block-template-part.is-compact .wp-block-site-logo img {
        max-width: 146px;
        height: auto;
    }

    .woocommerce-checkout .entry-content.alignwide.wp-block-post-content.is-layout-flow.wp-block-post-content-is-layout-flow {
        max-width: unset !important;
        margin-left: 13.54% !important;
        margin-right: 13.54% !important;
    }

    header .wc-blocks-pattern-header-essential > p {
        margin: 0 8px 0 auto !important;
        display: flex;
        align-items: center;
        line-height: 1;
    }

    header .wc-blocks-pattern-header-essential .wp-block-woocommerce-mini-cart {
        margin: 0 !important;
    }

    header .wc-blocks-pattern-header-essential > p .custom-login,
    header .wc-blocks-pattern-header-essential .wp-block-woocommerce-mini-cart {
        transform: translateY(-6px);
    }

    /* Checkout: title container same visual language as cart */
    .woocommerce-checkout main h2.elementor-heading-title {
        background-color: white;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        margin-bottom: 0;
        max-width: unset !important;
        margin-left: 13.54% !important;
        margin-right: 13.54% !important;
        padding: 24px 0 32px;
    }

    /* Checkout: place order button aligned right */
    .woocommerce-checkout #payment #place_order,
    .woocommerce-page #payment #place_order {
        margin-left: auto;
        margin-right: 0;
    }

    /* Coupon apply button: smaller but same style family as place order */
    .woocommerce-page .woocommerce-form-coupon .button[name="apply_coupon"] {
        min-width: 200px;
        height: 45px;
        padding: 0 20px;
        background: #494DA7;
        border-radius: 30px;
        color: #fff;
        border: 0;
        font-size: 14px;
        font-weight: 500;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .woocommerce-page .woocommerce-form-coupon .button[name="apply_coupon"]:hover {
        background: #5a5fbd;
    }

    /* Shipping row text should be light, not bold */
    .woocommerce-checkout .woocommerce-shipping-totals.shipping th,
    .woocommerce-checkout .woocommerce-shipping-totals.shipping td,
    .woocommerce-checkout .woocommerce-shipping-totals.shipping td *,
    .woocommerce-checkout .woocommerce-shipping-totals.shipping th * {
        font-weight: 300 !important;
    }
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .wc-block-components-notice-banner__content {
    font-size: 13px !important;
    line-height: 1.3 !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .wc-block-components-notice-banner__content svg {
    width: 14px !important;
    height: 14px !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .wc-block-components-notice-banner__content img {
    width: 14px !important;
    height: 14px !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .wc-block-components-notice-banner__content::before {
    width: 14px !important;
    height: 14px !important;
    font-size: 14px !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle a.showcoupon {
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

@media (max-width: 1024px) {
    .woocommerce-loop-product__title, .wp-block-post-title {
        font-size: 20px !important;
    }
    .wc-blocks-pattern-header-essential {
        padding-right: 0 !important;
    }
    .wc-blocks-pattern-header-essential .wp-block-navigation {
        margin-right: -6.77%;
    }

    .tax-product_cat .wp-container-core-columns-is-layout-28f84493,
    .tax-product_cat .wp-container-core-group-is-layout-0492b643 {
        margin-top: 60px !important;
    }
    .tax-product_cat .wp-container-core-group-is-layout-0492b643 {
        margin-top: 0 !important;
    }
    .tax-product_cat .wp-container-core-group-is-layout-17124a9a + .wp-container-core-group-is-layout-0492b643,
    .woocommerce-shop .wp-container-core-group-is-layout-0492b643 + .wp-container-core-group-is-layout-0492b643 {

        margin-top: 20px !important;
        margin-bottom: 20px;
    }

    .tax-product_cat .wp-container-core-group-is-layout-0492b643 .left-banner,
    .woocommerce-shop .wp-container-core-group-is-layout-0492b643 .left-banner {
        margin-bottom: 20px !important;
    }

    .tax-product_cat .mobile-filters-btn {
        top: 50px;
    }

    .tax-product_cat .wp-container-core-group-is-layout-0492b643 > .custom-swiper-banner.premium-woocommerce {
        margin-top: 12px;
    }

    .tax-product_cat main > div:last-of-type,
    .woocommerce-shop main > div:last-of-type {
        display: block;
        max-width: 100% !important;
        margin-left: 23px !important;
        margin-right: 23px !important;
    }
    .tax-product_cat .custom-swiper-banner,
    .woocommerce-shop .custom-swiper-banner {
        height: unset !important;
    }

    .home .elementor-widget-premium-woo-products .premium-woocommerce .premium-woo-products-details-wrap .premium-woo-atc-button .button.add_to_cart_button.qbutton.add-to-cart-button {
        display: inline-flex !important;
        width: auto !important;
        min-width: 106px;
        height: 40px !important;
        padding: 0 18px !important;
        font-size: 14px !important;
        border-radius: 25px !important;
        line-height: 1 !important;
    }

    .home .elementor-widget-premium-woo-products .premium-woocommerce .premium-woo-products-details-wrap .premium-woo-atc-button .button.add_to_cart_button.qbutton.add-to-cart-button::before {
        content: none !important;
        display: none !important;
        background: none !important;
    }

    body {
        --mobile-fixed-header-height: 62px;
        --mobile-fixed-header-gap: 12px;
        --mobile-mini-cart-side-gap: 12px;
    }

    #mobile-fixed-header {
        z-index: 9998;
    }

    #mobile-fixed-header .mobile-header-inner {
        position: relative;
        z-index: 9998;
    }

    .custom-mini-cart-dropdown {
        position: fixed;
        left: var(--mobile-mini-cart-side-gap);
        right: auto;
        top: auto !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + var(--mobile-fixed-header-height)) !important;
        z-index: 9999;
        width: calc(100vw - (var(--mobile-mini-cart-side-gap) * 2));
        max-width: calc(100vw - (var(--mobile-mini-cart-side-gap) * 2));
        min-width: calc(100vw - (var(--mobile-mini-cart-side-gap) * 2));
        margin: 0;
        box-sizing: border-box;
        transform: none !important;
        max-height: min(70vh, 560px);
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        box-shadow: none !important;
    }
}
