/**
 * WooCommerce Styles for Bricks Theme
 * Clean, standard WooCommerce styling with brand colors
 * Brand Colors: Black (#000000) and Red (#e93323)
 */

/* Global settings */
html, body {
    overflow-x: hidden;
    max-width: 100%;
}

* {
    font-family: 'BPGGuardian', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* ==========================================================================
   Shop Container and Layout
   ========================================================================== */

.shop-container {
    background: #ffffff;
    min-height: calc(100vh - 160px);
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 20px;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
}

.shop-header {
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
    background: #ffffff;
    border-bottom: 1px solid #e8e8e8;
}

.shop-title {
    font-size: 28px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 20px 0;
    font-family: 'BPGGuardian', sans-serif;
}

/* ==========================================================================
   Shop and Product Archive Pages
   ========================================================================== */

.woocommerce .products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin: 0;
    padding: 0;
    justify-content: center;
    justify-items: center;
}

.woocommerce ul.products li.product {
    list-style: none;
    margin: 0;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    background: var(--brand-white, #ffffff);
    text-align: left;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* Override general product styling for shop layout to remove frame */
.shop-layout .woocommerce ul.products li.product,
.products-grid .product-card {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Modern hover effects */
.shop-layout .woocommerce ul.products li.product:hover,
.products-grid .product-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    transform: translateY(-2px) !important;
    background: #ffffff !important;
    border-color: #ccc !important;
}

.woocommerce ul.products li.product:hover {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
    transform: translateY(-4px);
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.woocommerce ul.products li.product img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.woocommerce ul.products li.product:hover img {
    transform: scale(1.05);
}

.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px;
    margin: 15px 15px 5px;
    color: var(--brand-text, #333333);
    font-weight: 600;
    transition: color 0.3s ease;
}

.woocommerce ul.products li.product:hover h2,
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
    color: var(--brand-primary, #000000);
}

.woocommerce ul.products li.product .price {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    align-items: baseline;
}

.woocommerce ul.products li.product .price ins {
    font-size: 20px !important;
    color: var(--brand-secondary, #e93323) !important;
    font-weight: bold !important;
    order: 2;
    text-decoration: none;
}

.woocommerce ul.products li.product .price del {
    font-size: 12px !important;
    color: #6b7280 !important;
    text-decoration: line-through !important;
    text-decoration-color: #242323 !important;
    order: 1;
}

/* Add to Cart Button on Product Cards */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
    background: var(--brand-secondary, #e93323);
    color: var(--brand-white, #ffffff);
    border: none;
    padding: 12px 20px;
    border-radius: 6px;
    margin: 0 15px 15px;
    display: inline-flex !important;
    width: auto;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.3s ease;
    text-align: center;
    box-sizing: border-box;
    opacity: 1 !important;
    position: static !important;
    transform: none !important;
}

.woocommerce ul.products li.product .button:hover {
    background: var(--brand-secondary, #e93323) !important;
}

.woocommerce ul.products li.product a.button.product_type_variable {
    display: block !important;
}

/* ==========================================================================
   Single Product Page
   ========================================================================== */

.woocommerce div.product {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    margin-top: 15px; /* Small space after breadcrumbs */
}

/* Position breadcrumbs closer to product */
.woocommerce .woocommerce-breadcrumb {
    margin-top: 160px !important;
    margin-bottom: 0 !important;
    padding: 0 20px !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.woocommerce div.product .product-images {
    margin-bottom: 30px;
}

.woocommerce div.product .summary {
    margin-bottom: 30px;
}

.woocommerce div.product .entry-title {
    font-size: 28px;
    margin-bottom: 20px;
    color: #000000;
    font-weight: 700;
    font-family: 'BPGGuardian', sans-serif;
}

.woocommerce div.product .price {
    font-size: 24px !important;
    margin-bottom: 20px;
    color: #7f170e !important;
    font-weight: 700 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.woocommerce div.product .price del {
    color: #6b7280 !important;
    font-size: 18px !important;
    text-decoration: line-through !important;
    text-decoration-color: #6b7280 !important;
    opacity: 1 !important;
    margin-right: 5px !important;
    display: inline-block !important;
}

.woocommerce div.product .price ins {
    text-decoration: none !important;
    color: #7f170e !important;
    font-weight: 700 !important;
    font-family: 'BPGGuardian', sans-serif !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 1.6;
    color: #333333;
}

/* Product Gallery */
/* Single Product Gallery with Carousel Hover Effects */
.woocommerce div.product .woocommerce-product-gallery {
    position: relative;
    margin-bottom: 30px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #e5e5e5;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease;
}

.woocommerce div.product .woocommerce-product-gallery:hover {
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
    border-color: #242323;
}

.woocommerce div.product .woocommerce-product-gallery__wrapper {
    border-radius: 6px;
    overflow: hidden;
}

/* ==========================================================================
   Cart and Quantity Controls
   ========================================================================== */

/* FORCE INLINE CART LAYOUT - MAXIMUM SPECIFICITY */
/* Single Product Page Cart Form Styles - Enhanced Layout */
.woocommerce form.cart,
.single-product .woocommerce form.cart,
body.single-product form.cart,
.woocommerce div.product form.cart,
.woocommerce .single-product form.cart,
html body .woocommerce form.cart {
    margin-bottom: 30px !important;
    padding: 20px !important;
    background: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 15px !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce form.cart:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
    border-color: #242323 !important;
}

/* Product page quantity — grid layout when using mini-qty wrapper */
.woocommerce form.cart .quantity.mini-qty-wrapper {
    display: inline-grid !important;
    grid-template-columns: 28px 40px 28px !important;
    grid-template-rows: 28px !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    flex-shrink: 0 !important;
    overflow: visible !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    padding: 4px !important;
}

.woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-minus { grid-column: 1 !important; grid-row: 1 !important; order: 0 !important; }
.woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-input,
.woocommerce form.cart .quantity.mini-qty-wrapper input[type="number"] { grid-column: 2 !important; grid-row: 1 !important; order: 0 !important; flex: none !important; }
.woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-plus { grid-column: 3 !important; grid-row: 1 !important; order: 0 !important; }

.woocommerce form.cart .quantity:not(.mini-qty-wrapper) {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    flex-shrink: 0 !important;
    overflow: visible !important;
}

.woocommerce form.cart .quantity input[type="number"]::-webkit-outer-spin-button,
.woocommerce form.cart .quantity input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Product/cart pages: shared mini-qty wrapper without mini-cart top margin */
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper {
    margin-top: 0 !important;
}

/* Enhanced Add to Cart Button */
.woocommerce form.cart .single_add_to_cart_button {
    background: #242323 !important;
    color: #f7e9cc !important;
    border: none !important;
    padding: 0 24px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    flex: 1 !important;
    min-width: 120px !important;
    white-space: nowrap !important;
}

.woocommerce form.cart .single_add_to_cart_button:hover {
    background: #7f170e !important;
    background-color: #7f170e !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(36,35,35, 0.3) !important;
}

/* Button Styles */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    background: var(--brand-primary, #000000);
    color: var(--brand-white, #ffffff);
    border: none;
    padding: 12px 24px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
    background: var(--brand-secondary, #e93323);
    color: var(--brand-white, #ffffff);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
    background: var(--brand-secondary, #e93323);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover {
    background: var(--brand-primary, #000000);
}

/* ==========================================================================
   Cart Page
   ========================================================================== */

.woocommerce table.cart {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 30px;
}

.woocommerce table.cart th,
.woocommerce table.cart td {
    padding: 15px;
    border: 1px solid var(--brand-border, #e8e8e8);
}

.woocommerce table.cart th {
    background: var(--brand-light, #f8f8f8);
    font-weight: 600;
    text-align: left;
}

/* Cart Totals */
.woocommerce .cart-collaterals {
    margin-top: 30px;
}

.woocommerce .cart_totals {
    background: var(--brand-light, #f8f8f8);
    padding: 20px;
    border-radius: 8px;
}

.woocommerce .cart_totals h2 {
    margin-top: 0;
    margin-bottom: 20px;
    color: var(--brand-primary, #000000);
}

/* ==========================================================================
   Checkout Page
   ========================================================================== */

.woocommerce-checkout .col2-set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 30px;
}

.woocommerce-checkout-review-order {
    background: var(--brand-light, #f8f8f8);
    padding: 20px;
    border-radius: 8px;
}

.woocommerce-checkout-review-order-table {
    margin-bottom: 20px;
}

/* Form Styles */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    width: 100%;
    padding: 12px;
    border: 2px solid var(--brand-border, #e8e8e8);
    border-radius: 4px;
    font-size: 14px;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    outline: none;
    border-color: var(--brand-secondary, #e93323);
}

/* Messages */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 6px;
    border-left: 4px solid;
}

.woocommerce-message {
    background: #d4edda;
    color: #155724;
    border-left-color: #28a745;
}

.woocommerce-info {
    background: #d1ecf1;
    color: #0c5460;
    border-left-color: #17a2b8;
}

.woocommerce-error {
    background: #f8d7da;
    color: #721c24;
    border-left-color: #dc3545;
}

/* Product Meta */
.woocommerce .product_meta {
    margin-top: 30px !important;
    padding-top: 20px !important;
    border-top: 1px solid #e8e8e8 !important;
}

.woocommerce .product_meta span {
    display: inline-block !important;
    margin-right: 15px !important;
    margin-bottom: 5px !important;
}

.woocommerce .product_meta a {
    color: var(--brand-secondary, #e93323);
    text-decoration: none;
}

.woocommerce .product_meta a:hover {
    text-decoration: underline;
}

/* ==========================================================================
   Responsive Design
   ========================================================================== */

@media (max-width: 768px) {
    .woocommerce .products {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    
    .woocommerce-checkout .col2-set {
        grid-template-columns: 1fr;
    }
    
    .woocommerce div.product .entry-title {
        font-size: 24px;
    }
    
    .woocommerce div.product .price {
        font-size: 20px;
    }
    
    .woocommerce form.cart {
        padding: 15px !important;
        flex-direction: row !important;
        gap: 12px !important;
        max-width: 100% !important;
        flex-wrap: nowrap !important;
    }
    
    .woocommerce form.cart .quantity {
        width: auto !important;
        flex-shrink: 0 !important;
    }
    
    .woocommerce form.cart .single_add_to_cart_button {
        flex: 1 !important;
        min-width: 0 !important;
        font-size: 13px !important;
        padding: 0 12px !important;
    }
}

@media (max-width: 480px) {
    .woocommerce .products {
        grid-template-columns: 1fr;
    }
    
    .woocommerce div.product {
        padding: 15px;
    }
    
    .woocommerce table.cart th,
    .woocommerce table.cart td {
        padding: 8px;
        font-size: 12px;
    }
    
    .woocommerce .cart_totals,
    .woocommerce-checkout-review-order {
        padding: 15px;
    }
    
    .woocommerce form.cart {
        padding: 12px !important;
        gap: 8px !important;
    }
    
    .woocommerce form.cart .quantity {
        width: auto !important;
    }
    
    .woocommerce form.cart .single_add_to_cart_button {
        font-size: 12px !important;
        padding: 0 8px !important;
    }
}

/* ==========================================================================
   Custom Product Fields
   ========================================================================== */

.custom-product-fields {
    margin: 20px 0;
    padding: 0;
    background: transparent;
}

/* Installment Button Style - Product Card Style */
.single-installment-button {
    display: inline-block;
    background: #ffffff;
    color: #000000;
    padding: 12px 18px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'BPGGuardian', sans-serif;
    margin: 10px 0 20px 0;
    border: 0 !important; /* removed */
    box-shadow: none !important; /* removed */
    transition: all 0.2s ease;
    cursor: pointer;
}

.single-installment-button:hover {
    transform: translateY(-1px);
    box-shadow: none !important; /* removed */
    border-color: transparent !important; /* removed */
}

.single-installment-button .installment-text {
    font-weight: 500;
}

.single-installment-button .installment-amount {
    font-weight: 700;
    color: #f7e9cc;
}

.single-installment-button .installment-suffix {
    color: #000000;
    margin-left: 2px;
}

.single-installment-info strong {
    font-weight: 700;
}

/* Dimensions display exactly like in the image */
/* Dimensions Container with Product Card Style Border - Compact Width */
.product-dimensions-container {
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    border: 0;
    margin: 10px 0;
    padding: 0;
    transition: none;
    display: block;
    width: 100%;
}

/* no hover effects when borders are removed */
.product-dimensions-container:hover {
    transform: none;
    box-shadow: none;
    border-color: transparent;
}

.dimensions-title {
    display: none;
}

.product-dimensions {
    display: flex;
    gap: 30px;
    align-items: center;
    justify-content: flex-start;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.dimension-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    min-width: 80px;
}

/* Arrow icons exactly like in image */
.dimension-icon {
    width: 32px;
    height: 32px;
    margin-bottom: 8px;
    color: #333;
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Width arrow (horizontal) */
.dimension-icon.width::before {
    content: "↔";
    font-size: 24px;
    color: #333;
}

/* Length arrow (diagonal) */
.dimension-icon.length::before {
    content: "↗";
    font-size: 24px;
    color: #333;
}

/* Height arrow (vertical) */
.dimension-icon.height::before {
    content: "↕";
    font-size: 24px;
    color: #333;
}

.dimension-label {
    font-size: 14px;
    color: #666;
    margin-bottom: 5px;
    font-family: 'BPGGuardian', sans-serif;
    font-weight: 500;
}

.dimension-value {
    font-size: 16px;
    font-weight: 700;
    color: #000;
    font-family: 'BPGGuardian', sans-serif;
}

/* Update old dimensions styling to new format */
.single-dimensions-info {
    display: none; /* Hide the old format */
}

/* Mobile responsive for single product */
@media (max-width: 768px) {
    .custom-product-fields {
        margin: 15px 0;
        padding: 12px;
    }
    
    .single-installment-info {
        font-size: 14px;
        padding: 8px 12px;
    }
    
    .single-dimensions-info {
        font-size: 13px;
        padding: 8px 12px;
    }
}

/* ==========================================================================
   COMPACT SHOP DESIGN - Small Product Cards
   ========================================================================== */

.shop-container {
    max-width: 100% !important; /* Use full width */
    width: 100% !important;
    margin: 0;
    padding: 20px 0 !important; /* No side padding at all */
}

.shop-header {
    margin-bottom: 30px;
    text-align: center;
}

.shop-title {
    font-size: 32px;
    color: var(--brand-primary, #000000);
    margin-bottom: 20px;
    font-weight: 700;
}

.shop-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    gap: 20px;
    font-family: 'BPGGuardian', sans-serif;
}

.shop-filters select,
.shop-sorting select,
#price-sorting {
    padding: 10px 15px;
    border: 2px solid #e8e8e8;
    border-radius: 6px;
    background: #ffffff;
    font-size: 14px;
    cursor: pointer;
    transition: border-color 0.3s ease;
    font-family: 'BPGGuardian', sans-serif;
    color: #333333;
}

.shop-filters select:focus,
.shop-sorting select:focus,
.shop-view-toggle select:focus {
    outline: none;
    border-color: var(--brand-secondary, #e93323);
}

.shop-view-toggle {
    display: flex;
    gap: 10px;
}

.view-toggle {
    padding: 10px 15px;
    background: var(--brand-light, #f8f8f8);
    border: 2px solid var(--brand-border, #e8e8e8);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.view-toggle.active,
.view-toggle:hover {
    background: var(--brand-primary, #000000);
    color: var(--brand-white, #ffffff);
    border-color: var(--brand-primary, #000000);
}

/* SHOP PAGE PRODUCT CARDS - USING CAROUSEL STYLES */
.products-grid,
.woocommerce ul.products,
.woocommerce-page ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 20px !important;
    margin-bottom: 30px !important;
    width: 100% !important;
    padding: 0 !important;
    list-style: none !important;
    direction: ltr !important;
    justify-content: center !important;
    justify-items: center !important;
}

/* FORCE PRICE DEL STYLES EVERYWHERE - OVERRIDE ALL THEME DEFAULTS */
.woocommerce .price del,
.woocommerce-page .price del,
.brxe-product-price .price del,
.single-product .price del,
.related.products .price del,
.upsells.products .price del,
.cross-sells .price del,
body .price del,
html body .woocommerce .price del,
html body .woocommerce-page .price del,
html body .carousel-product-card .price del,
html body .popular-products-section .price del,
html body del[aria-hidden="true"],
html body .carousel-product-card del,
html body .popular-products-section del,
html body .products-carousel del,
html body .products-carousel-wrapper del {
    font-size: 14px !important; /* larger old price on carousels */
    color: #6b7280 !important;
    text-decoration: line-through !important;
    text-decoration-color: #242323 !important;
    text-decoration-thickness: 1px !important; /* thinner strike */
    opacity: 1 !important;
    margin-right: 5px !important;
    display: inline-block !important;
}

/* Override WooCommerce column-based layouts */
.woocommerce ul.products.columns-1,
.woocommerce ul.products.columns-2,
.woocommerce ul.products.columns-3,
.woocommerce ul.products.columns-4,
.woocommerce ul.products.columns-5,
.woocommerce ul.products.columns-6 {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    direction: ltr !important;
    justify-content: center !important;
    justify-items: center !important;
}

/* Force override WooCommerce default column widths */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    width: auto !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    clear: none !important;
}

/* Remove WooCommerce float-based layouts */
.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last {
    clear: none !important;
    margin-right: 0 !important;
}

/* SHOP PAGE PRODUCT CARDS - SAME AS CAROUSEL */
.woocommerce ul.products li.product.carousel-product-card,
.woocommerce-page ul.products li.product.carousel-product-card,
.carousel-product-card {
    list-style: none !important;
    background: #ffffff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #e5e5e5 !important;
    transition: all 0.2s ease !important;
    height: 450px !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: calc(25% - 15px) !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
    position: relative !important;
    direction: ltr !important;
}

.woocommerce ul.products li.product.carousel-product-card:hover,
.woocommerce-page ul.products li.product.carousel-product-card:hover,
.carousel-product-card:hover {
    transform: none !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
    border-color: #242323 !important;
}

/* Force hover effect for all product cards */
html body .carousel-product-card:hover,
html body .woocommerce ul.products li.product.carousel-product-card:hover,
html body .woocommerce-page ul.products li.product.carousel-product-card:hover,
html body .products-carousel .carousel-product-card:hover,
html body .products-carousel-wrapper .carousel-product-card:hover,
html body .coming-soon-section .carousel-product-card:hover,
html body .popular-products-section .carousel-product-card:hover {
    transform: none !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
    border-color: #242323 !important;
}

.woocommerce ul.products li.product .carousel-product-image,
.woocommerce-page ul.products li.product .carousel-product-image {
    position: relative !important;
    overflow: hidden !important;
    height: 300px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.woocommerce ul.products li.product .carousel-product-image img,
.woocommerce-page ul.products li.product .carousel-product-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    transition: transform 0.2s ease !important;
}

.woocommerce ul.products li.product .carousel-product-card:hover .carousel-product-image img,
.woocommerce-page ul.products li.product .carousel-product-card:hover .carousel-product-image img {
    transform: scale(1.02) !important;
}

.woocommerce ul.products li.product .carousel-product-info,
.woocommerce-page ul.products li.product .carousel-product-info {
    padding: 10px 15px 15px 15px !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    height: 150px !important;
    flex-grow: 1 !important;
}

/* Pricing section - fixed height regardless of installment */
.woocommerce ul.products li.product .carousel-product-pricing,
.woocommerce-page ul.products li.product .carousel-product-pricing {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 2px !important;
    height: 40px !important;
    justify-content: flex-start !important;
}

.woocommerce ul.products li.product .carousel-product-price,
.woocommerce-page ul.products li.product .carousel-product-price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #7f170e !important;
    font-family: 'BPGGuardian', sans-serif !important;
    line-height: 1.2 !important;
    margin-bottom: 2px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
}

/* Make sure prices are side by side */
.woocommerce ul.products li.product .carousel-product-price .price,
.woocommerce-page ul.products li.product .carousel-product-price .price {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* SHOP PAGE CAROUSEL CARD PRICE DEL STYLES */
.woocommerce ul.products li.product.carousel-product-card del,
.woocommerce-page ul.products li.product.carousel-product-card del,
.woocommerce ul.products li.product.carousel-product-card .carousel-product-price del,
.woocommerce-page ul.products li.product.carousel-product-card .carousel-product-price del,
.woocommerce ul.products li.product.carousel-product-card .price del,
.woocommerce-page ul.products li.product.carousel-product-card .price del {
    font-size: 14px !important; /* increase old price font size on shop cards */
    color: #6b7280 !important;
    text-decoration: line-through !important;
    text-decoration-color: #242323 !important;
    text-decoration-thickness: 1px !important; /* thinner strike */
    opacity: 1 !important;
    margin-right: 5px !important;
    display: inline-block !important;
}

.woocommerce ul.products li.product .carousel-product-price .price ins,
.woocommerce-page ul.products li.product .carousel-product-price .price ins {
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* Installment info - fixed position regardless of existence */
.woocommerce ul.products li.product .carousel-installment-info,
.woocommerce-page ul.products li.product .carousel-installment-info {
    font-size: 11px !important;
    color: #000000 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.2 !important;
    height: 16px !important;
    display: flex !important;
    align-items: center !important;
}

.woocommerce ul.products li.product .installment-price,
.woocommerce-page ul.products li.product .installment-price {
    color: #7f170e !important;
    font-weight: 600 !important;
}

/* Product badges styling */
.product-badges {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    z-index: 10 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.sale-percentage {
    background: #242323 !important;
    color: #f7e9cc !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    text-align: center !important;
    min-width: 40px !important;
    line-height: 1.2 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
    letter-spacing: 0.5px !important;
}

/* Uniform badge size: "ახალი"/"მალე" exactly match the percentage badge (~56px pill) */
.new-badge,
.coming-soon-badge {
    min-width: 40px;
    text-align: center;
    box-sizing: content-box;
    line-height: 1.2;
    letter-spacing: 0.5px;
}
ul.products li.rp-shop-card .rp-badge {
    min-width: 40px;
    text-align: center;
    box-sizing: content-box;
}

/* Mobile: smaller percentage + "ახალი"/"მალე" badges */
@media (max-width: 768px) {
    .sale-percentage,
    .popular-products-section .sale-percentage,
    .new-badge,
    .coming-soon-badge,
    ul.products li.rp-shop-card .rp-badge {
        font-size: 10px !important;
        padding: 3px 6px !important;
        min-width: 30px !important;
        letter-spacing: 0.3px !important;
        border-radius: 5px !important;
    }
}

/* Ensure product cards have relative positioning for badges */
.woocommerce ul.products li.product.carousel-product-card,
.products-grid .product-card,
.carousel-product-card {
    position: relative !important;
}

/* Product title - fixed position */
.woocommerce ul.products li.product .carousel-product-title,
.woocommerce-page ul.products li.product .carousel-product-title {
    margin: 2px 0 0 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    height: 54px !important;
    display: flex !important;
    align-items: flex-start !important;
    overflow: hidden !important;
}

.woocommerce ul.products li.product .carousel-product-title a,
.woocommerce-page ul.products li.product .carousel-product-title a {
    color: #000000 !important;
    text-decoration: none !important;
    font-family: 'BPGGuardian', sans-serif !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.woocommerce ul.products li.product .carousel-product-title a:hover,
.woocommerce-page ul.products li.product .carousel-product-title a:hover {
    color: #f7e9cc !important;
}

/* Product actions - fixed at bottom */
.woocommerce ul.products li.product .carousel-product-actions,
.woocommerce-page ul.products li.product .carousel-product-actions {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    height: 70px !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    padding-bottom: 15px !important;
}

.woocommerce ul.products li.product .carousel-add-to-cart-btn,
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn {
    background: #242323 !important;
    color: #f7e9cc !important;
    padding: 12px 20px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    display: inline-block !important;
    transition: all 0.2s ease !important;
    border: none !important;
    cursor: pointer !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.woocommerce ul.products li.product .carousel-add-to-cart-btn:hover,
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn:hover {
    background: #242323 !important;
    transform: translateY(-1px) !important;
}

/* Remove hover effect that shows the button */
.woocommerce ul.products li.product .product-card:hover .product-actions {
    opacity: 1 !important;
    transform: none !important;
}

/* FINAL FIX: Keep the add-to-cart button visible but compact */
.woocommerce ul.products li.product .product-actions .button {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    transform: none !important;
    margin-top: 15px !important;
    width: auto !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 15px;
    margin-right: 15px;
    box-sizing: border-box;
}

/* ULTIMATE FORCE LEFT ALIGNMENT - MAXIMUM SPECIFICITY */
html body .woocommerce ul.products li.product-card .product-actions,
html body .product-actions,
html body li.product-card .product-actions {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    display: flex !important;
    flex-direction: row !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

html body .woocommerce ul.products li.product-card .product-actions a,
html body .woocommerce ul.products li.product-card .product-actions .button,
html body .product-actions a,
html body .product-actions .button,
html body li.product-card .product-actions a,
html body li.product-card .product-actions .button {
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
    justify-content: flex-start !important;
    align-self: flex-start !important;
    float: left !important;
    clear: left !important;
}

html body .woocommerce ul.products li.product-card .product-actions a::before,
html body .woocommerce ul.products li.product-card .product-actions .button::before,
html body .product-actions a::before,
html body .product-actions .button::before,
html body li.product-card .product-actions a::before,
html body li.product-card .product-actions .button::before {
    text-align: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    float: left !important;
}

.add-to-cart-btn.out-of-stock {
    background: var(--brand-gray, #666666);
    cursor: not-allowed;
}

.add-to-cart-btn.out-of-stock:hover {
    background: var(--brand-gray, #666666);
    transform: none;
}

.product-quick-actions {
    display: flex;
    gap: 3px;
}

.quick-view-btn {
    background: var(--brand-light, #f8f8f8);
    border: 1px solid var(--brand-border, #e8e8e8);
    padding: 6px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 10px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-text, #666666);
}

.add-to-wishlist-btn {
    background: var(--brand-light, #f8f8f8);
    border: 1px solid var(--brand-border, #e8e8e8);
    padding: 6px 8px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 10px;
}

.quick-view-btn:hover {
    background: var(--brand-primary, #000000);
    color: var(--brand-white, #ffffff);
    border-color: var(--brand-primary, #000000);
}

.add-to-wishlist-btn:hover {
    background: var(--brand-secondary, #e93323);
    color: var(--brand-white, #ffffff);
    border-color: var(--brand-secondary, #e93323);
}

/* No Products Found */
.no-products-found {
    text-align: center;
    padding: 40px 20px;
    background: var(--brand-light, #f8f8f8);
    border-radius: 8px;
    margin: 30px 0;
}

.no-products-found h2 {
    color: var(--brand-primary, #000000);
    font-size: 20px;
    margin-bottom: 10px;
}

.no-products-found p {
    color: var(--brand-gray, #666666);
    margin-bottom: 20px;
    font-size: 14px;
}

/* Pagination */
.woocommerce-pagination {
    margin: 40px 0 !important;
    text-align: center !important;
}

.woocommerce-pagination .page-numbers {
    display: inline-flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 8px !important;
}

.woocommerce-pagination .page-numbers li {
    margin: 0 !important;
}

.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    color: #666 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    background: white !important;
}

/* Remove hover effect for page numbers */
.woocommerce-pagination .page-numbers a:hover {
    border-color: #ddd !important;
    color: #666 !important;
    background: white !important;
}

/* Keep current page indicator styles */
.woocommerce-pagination .page-numbers span.current {
    background: #e93323 !important;
    border-color: #e93323 !important;
    color: #f7e9cc !important;
}

/* Remove "box" styling from prev/next links */
.woocommerce-pagination .page-numbers a.prev,
.woocommerce-pagination .page-numbers a.next,
.woocommerce-pagination .page-numbers span.prev,
.woocommerce-pagination .page-numbers span.next {
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

.woocommerce-pagination .page-numbers a.prev:hover,
.woocommerce-pagination .page-numbers a.next:hover {
    border: 0 !important;
    background: transparent !important;
}

/* ==========================================================================
   Responsive Design for Compact Shop - Progressive 6→5→4→3→2→1
   ========================================================================== */

/* All large and medium screens: 4 products per row */
/* RESPONSIVE DESIGN FOR CAROUSEL-STYLE PRODUCT CARDS */

/* Desktop: 4 products per row */
@media (min-width: 1200px) {
    .products-grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 20px !important;
    }
    
    .woocommerce ul.products li.product.carousel-product-card,
    .woocommerce-page ul.products li.product.carousel-product-card {
        max-width: none !important;
    }
}

/* Tablet: 2 products per row */
@media (max-width: 1199px) and (min-width: 768px) {
    .products-grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
    
    .woocommerce ul.products li.product.carousel-product-card,
    .woocommerce-page ul.products li.product.carousel-product-card {
        max-width: none !important;
    }
}

/* Mobile: 1 product per row */
@media (max-width: 767px) {
    .products-grid,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }
    
    .shop-container {
        padding: 15px;
    }
    
    .shop-title {
        font-size: 24px;
    }
    
    .woocommerce ul.products li.product.carousel-product-card,
    .woocommerce-page ul.products li.product.carousel-product-card {
        height: 400px !important;
        max-width: 350px !important;
        margin: 0 auto !important;
    }
    
    .woocommerce ul.products li.product .carousel-product-image,
    .woocommerce-page ul.products li.product .carousel-product-image {
        height: 250px !important;
    }
    
    .woocommerce ul.products li.product .carousel-product-info,
    .woocommerce-page ul.products li.product .carousel-product-info {
        height: 150px !important;
    }
}

/* CLEANED UP - REMOVED OLD CONFLICTING STYLES */

/* CLEANED UP - OLD BUTTON STYLES REMOVED */

/* ULTIMATE FORCE LEFT ALIGNMENT - MAXIMUM SPECIFICITY */
html body.woocommerce ul.products li.product-card .product-actions,
html body.woocommerce-page ul.products li.product-card .product-actions,
html body div.woocommerce ul.products li.product .product-actions,
html body div.woocommerce-page ul.products li.product .product-actions {
    width: 100% !important;
    display: block !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

html body.woocommerce ul.products li.product-card .product-actions a,
html body.woocommerce-page ul.products li.product-card .product-actions a,
html body div.woocommerce ul.products li.product .product-actions a,
html body div.woocommerce-page ul.products li.product .product-actions a,
html body.woocommerce ul.products li.product-card .product-actions .button,
html body.woocommerce-page ul.products li.product-card .product-actions .button,
html body div.woocommerce ul.products li.product .product-actions .button,
html body div.woocommerce-page ul.products li.product .product-actions .button {
    position: relative !important;
    margin: 0 !important;
    padding: 4px 16px !important; /* Reduced padding height */
    background: #e93323 !important;
    background-color: #e93323 !important;
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
    border: none !important;
    border-radius: 12px !important;
    /* display removed because it is ignored when float is set */
    float: left !important;
    min-height: 20px !important; /* Half the height */
    line-height: 20px !important; /* Half the line height */
    width: auto !important;
    min-width: 80px !important; /* Minimum width */
}

html body.woocommerce ul.products li.product-card .product-actions a::before,
html body.woocommerce-page ul.products li.product-card .product-actions a::before,
html body div.woocommerce ul.products li.product .product-actions a::before,
html body div.woocommerce-page ul.products li.product .product-actions a::before,
html body.woocommerce ul.products li.product-card .product-actions .button::before,
html body.woocommerce-page ul.products li.product-card .product-actions .button::before,
html body div.woocommerce ul.products li.product .product-actions .button::before,
html body div.woocommerce-page ul.products li.product .product-actions .button::before {
    content: " დამატება" !important; /* Added space before text */
    color: #f7e9cc !important;
    font-size: 11px !important; /* Reduced font size for smaller button */
    font-weight: 700 !important;
    text-align: left !important;
    display: block !important;
    text-indent: 0 !important;
    position: absolute !important;
    top: 50% !important;
    left: 12px !important; /* Reduced left position */
    transform: translateY(-50%) !important;
    white-space: nowrap !important;
}

/* FORCE 4 COLUMNS EVERYWHERE */
html body .woocommerce ul.products,
html body .woocommerce-page ul.products,
html body .products-grid,
html body div.woocommerce ul.products,
html body div.woocommerce-page ul.products,
html body .brxe-woocommerce-products .products,
/* Default product grid - only for pages without shop-layout */
html body ul.products.columns-1,
html body ul.products.columns-2,
html body ul.products.columns-3,
html body ul.products.columns-4,
html body ul.products.columns-5,
html body ul.products.columns-6 {
    grid-template-columns: repeat(4, 1fr) !important;
    display: grid !important;
    gap: 25px !important;
    width: 100vw !important; /* Full viewport width only when not in shop layout */
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 15px !important;
    box-sizing: border-box !important;
}

/* Override for shop layout - constrain within container.
   The selector used to read ".shop-layout html body ul.products…", which can
   never match (html is not a descendant of .shop-layout), so the 100vw above
   kept winning and the grid ran past its 1360px column. */
html body .shop-layout ul.products.columns-1,
html body .shop-layout ul.products.columns-2,
html body .shop-layout ul.products.columns-3,
html body .shop-layout ul.products.columns-4,
html body .shop-layout ul.products.columns-5,
html body .shop-layout ul.products.columns-6,
html body .shop-layout .products-grid {
    width: 100% !important; /* Constrained to container width */
    max-width: 100% !important;
    padding: 0 !important; /* No padding inside shop layout */
}

/* Medium screens still 4 columns */
@media (max-width: 799px) and (min-width: 600px) {
    html body .woocommerce ul.products,
    html body .woocommerce-page ul.products,
    html body .products-grid,
    html body div.woocommerce ul.products,
    html body div.woocommerce-page ul.products,
    html body .brxe-woocommerce-products .products {
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 12px !important;
    }
}

/* Small screens: 3 columns */
@media (max-width: 599px) and (min-width: 400px) {
    html body .woocommerce ul.products,
    html body .woocommerce-page ul.products,
    html body .products-grid,
    html body div.woocommerce ul.products,
    html body div.woocommerce-page ul.products,
    html body .brxe-woocommerce-products .products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 10px !important;
    }
}

/* Very small screens: 2 columns */
@media (max-width: 399px) {
    html body .woocommerce ul.products,
    html body .woocommerce-page ul.products,
    html body .products-grid,
    html body div.woocommerce ul.products,
    html body div.woocommerce-page ul.products,
    html body .brxe-woocommerce-products .products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
}

/* FULL WIDTH OVERRIDE — do not zero body padding (header top + mobile bottom nav need it) */
html {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background-color: #ffffff !important;
}

body {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background-color: #ffffff !important;
}

.woocommerce, .woocommerce-page {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Override theme container constraints - only for non-shop layouts */
body:not(.shop-layout) .container, 
body:not(.shop-layout) .main-container, 
body:not(.shop-layout) .content-container {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Shop layout container constraints */
.shop-layout .container, 
.shop-layout .main-container, 
.shop-layout .content-container {
    max-width: 1400px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

/* Shop Layout with Sidebar */
.shop-layout {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    max-width: 1400px;
    margin: 90px auto 0 auto;
    padding: 20px;
    background: #ffffff;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
}

.shop-content {
    flex: 1;
    min-width: 0; /* Prevent flex item from overflowing */
}

.shop-sidebar-wrapper {
    flex: 0 0 320px; /* Increased sidebar width */
    position: sticky;
    top: 20px;
    height: auto;
    min-height: calc(100vh - 40px);
    overflow-y: visible;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
}

/* Style the sidebar content to match homepage */
.shop-sidebar-wrapper .homepage-sidebar {
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
}

.shop-sidebar-wrapper .sidebar-categories,
.shop-sidebar-wrapper .sidebar-filters {
    padding: 20px;
}

.shop-sidebar-wrapper .sidebar-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-text, #333333);
    margin: 0 0 20px 0;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--brand-orange, #242323);
}

/* Adjust products grid for sidebar layout.
   width/max-width are !important because the global "html body .woocommerce
   ul.products { width: 100vw }" rule otherwise makes the grid viewport-wide
   while sitting inside a 1360px column — invisible with fixed-px columns, but
   it pushes 1fr columns off the right edge. */
.shop-layout .products-grid,
.shop-layout .woocommerce ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
    max-width: 100% !important;
    width: 100% !important;
    gap: 25px !important; /* Larger gap for bigger cards */
}

.shop-layout .shop-content {
    max-width: calc(1200px - 220px - 20px - 20px); /* Container width - sidebar width - gap - padding */
    width: 100%;
}

/* Ensure 3 columns fit perfectly within header width */
@media (min-width: 1200px) {
    .shop-layout .shop-content {
        max-width: 900px; /* Keep content area width */
    }
}

/* Product cards extremely tight */
/* Modern product cards */
.shop-layout .woocommerce ul.products li.product,
.shop-layout .product-card,
.products-grid .product-card {
    flex: 0 0 auto !important;
    width: 280px !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 12px !important;
    padding: 16px !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important; /* ღილაკები ერთ დონეზე */
    align-items: flex-start !important;
    text-align: left !important;
    height: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
}

/* Modern product images */
.shop-layout .product-image-wrapper,
.products-grid .product-image-wrapper {
    width: 100% !important;
    height: 220px !important;
    overflow: hidden !important;
    display: block !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    order: 1 !important;
    border-radius: 12px !important;
    background: #f9f9f9 !important;
}

.shop-layout .woocommerce ul.products li.product img,
.shop-layout .product-image-wrapper img,
.products-grid .product-image-wrapper img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 12px !important;
    background-color: #f9f9f9 !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    transition: transform 0.3s ease !important;
    image-rendering: auto !important;
}

/* Modern image hover effect */
.shop-layout .woocommerce ul.products li.product:hover img,
.shop-layout .product-image-wrapper:hover img,
.products-grid .product-card:hover img {
    transform: scale(1.02) !important; /* Subtle zoom on hover */
}

.shop-layout .product-info,
.products-grid .product-info {
    width: 100% !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    order: 2 !important;
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

/* Modern typography */
.shop-layout .product-title,
.products-grid .product-title {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    margin: 8px 0 4px !important;
    line-height: 1.3 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 3.6em !important; /* სათაურების ერთ დონეზე გასწორება */
}

/* Product meta wrapper */
.shop-layout .product-meta-wrapper,
.products-grid .product-meta-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    margin-top: 6px !important;
    margin-bottom: 0 !important;
}

/* Price styling */
.shop-layout .price,
.products-grid .price {
    margin-bottom: 2px !important;
}

/* Main price */
.shop-layout .price ins .woocommerce-Price-amount,
.products-grid .price ins .woocommerce-Price-amount {
    color: #7f170e !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Old price strikethrough */
.shop-layout .price del,
.products-grid .price del {
    text-decoration: line-through !important;
    color: #6b7280 !important;
    font-size: 10px !important;
    text-decoration-color: #242323 !important;
    opacity: 1 !important;
}

/* Installment text */
.shop-layout .woocommerce-price-installment,
.products-grid .woocommerce-price-installment {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #000 !important;
    min-height: 20px !important;
    margin: 0 !important;
    visibility: visible !important;
}

.shop-layout .woocommerce-price-installment.empty,
.products-grid .woocommerce-price-installment.empty {
    visibility: hidden !important;
    min-height: 22px !important;
    display: block !important;
}

.shop-layout .woocommerce-price-installment span,
.products-grid .woocommerce-price-installment span {
    color: #242323 !important;
}

/* Mobile responsive adjustments */
@media (max-width: 1200px) {
    .shop-layout {
        flex-direction: row;
        padding: 0 15px;
    }
    
    .shop-sidebar-wrapper {
        flex: 0 0 300px;
        position: sticky;
        height: auto;
        min-height: calc(100vh - 40px);
        margin-bottom: 20px;
    }
    
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px;
    }
}

/* Large desktop - 4 columns when sidebar is present.
   1fr columns instead of the old fixed 280px so four cards always fill the row
   exactly (≈352px each at 1512px, ≈325px at 1400px). */
@media (min-width: 1400px) {
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        justify-content: flex-start !important;
    }
}

/* Standard desktop - 4 columns */
@media (min-width: 1201px) and (max-width: 1399px) {
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        justify-content: flex-start !important;
    }
}

@media (max-width: 799px) and (min-width: 600px) {
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(2, 280px) !important;
        gap: 20px;
        justify-content: center !important;
    }
    
    .shop-layout .shop-content {
        max-width: 100%;
    }
}

@media (max-width: 599px) and (min-width: 400px) {
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(1, 280px) !important;
        gap: 15px;
        justify-content: center !important;
    }
}

@media (max-width: 399px) {
    .shop-layout .products-grid,
    .shop-layout .woocommerce ul.products {
        grid-template-columns: repeat(1, 280px) !important;
        gap: 15px;
        justify-content: center !important;
    }
}

/* Modern add to cart button */
.shop-layout .add-to-cart-btn,
.products-grid .add-to-cart-btn,
.shop-layout .woocommerce ul.products li.product .button,
.products-grid .woocommerce ul.products li.product .button,
.shop-layout .add-to-cart-button,
.products-grid .add-to-cart-button {
    font-size: 14px !important;
    padding: 8px 14px !important;
    background-color: #242323 !important;
    color: #f7e9cc !important;
    border-radius: 8px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.2s ease !important;
    align-self: flex-start !important;
    border: none !important;
    cursor: pointer !important;
    width: 120px !important;
    text-align: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    margin: 6px 0 0 0 !important;
}

.shop-layout .add-to-cart-btn:hover,
.products-grid .add-to-cart-btn:hover,
.shop-layout .woocommerce ul.products li.product .button:hover,
.products-grid .woocommerce ul.products li.product .button:hover,
.shop-layout .add-to-cart-button:hover,
.products-grid .add-to-cart-button:hover {
    background-color: #242323 !important;
    transform: translateY(-1px) !important;
}

/* Modern loading state for buttons */
.shop-layout .add-to-cart-btn.loading,
.products-grid .add-to-cart-btn.loading,
.shop-layout .add-to-cart-button.loading,
.products-grid .add-to-cart-button.loading {
    background-color: #ccc !important;
    color: #666 !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
}

.shop-layout .add-to-cart-button.disabled,
.products-grid .add-to-cart-button.disabled {
    background-color: #ccc !important;
    color: #666 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

.shop-layout .add-to-cart-button.in-cart,
.products-grid .add-to-cart-button.in-cart {
    background-color: #28a745 !important;
    color: #f7e9cc !important;
    cursor: default !important;
}

/* Cart button wrapper */
.shop-layout .cart-button-wrapper,
.products-grid .cart-button-wrapper {
    margin-top: 6px !important;
    width: 100% !important;
}

.shop-layout .cart-button-wrapper .cart,
.products-grid .cart-button-wrapper .cart {
    margin: 0 !important;
    width: 100% !important;
}

/* Stock status */
.shop-layout .stock-status,
.products-grid .stock-status {
    margin-bottom: 4px !important;
    min-height: 24px !important;
}

.shop-layout .stock-status .out-of-stock,
.products-grid .stock-status .out-of-stock {
    color: #999 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.shop-layout .stock-status .low-stock,
.products-grid .stock-status .low-stock {
    color: #f7e9cc !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* Modern product card animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.shop-layout .woocommerce ul.products li.product,
.products-grid .product-card {
    animation: fadeInUp 0.6s ease-out !important;
}

/* Modern responsive adjustments for the new design */
@media (max-width: 1200px) {
    .shop-layout .shop-container {
        max-width: 100% !important;
        padding: 0 20px !important;
    }
    
    .shop-layout .shop-grid {
        grid-template-columns: repeat(2, 280px) !important;
        gap: 20px !important;
        justify-content: center !important;
    }
}

@media (max-width: 768px) {
    .shop-layout .shop-grid {
        grid-template-columns: 280px !important;
        gap: 15px !important;
        justify-content: center !important;
    }
    
    .shop-layout .woocommerce ul.products li.product,
    .products-grid .product-card {
        max-width: 250px !important;
        width: 250px !important;
        margin: 0 auto !important;
    }
    
    .shop-layout .product-image-wrapper,
    .products-grid .product-image-wrapper {
        max-width: 220px !important;
        width: 220px !important;
        height: 180px !important;
    }
    
    .shop-layout .product-image-wrapper img,
    .products-grid .product-image-wrapper img {
        max-width: 220px !important;
        width: 220px !important;
        height: 180px !important;
    }
}

/* Remove ins text decoration for clean styling */
ins.woocommerce-Price-amount,
.woocommerce-Price-amount ins,
.price ins,
.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins,
.bricks-element-product-price ins,
.woocommerce ins,
.woocommerce .price ins {
  text-decoration: none !important;
  color: inherit !important;
  all: unset !important;
}

/* ====== FORCE DEL ELEMENT STYLING - HIGHEST PRIORITY FOR SHOP ====== */
html body.woocommerce del,
html body.woocommerce-page del,
html body.woocommerce .carousel-product-card del,
html body.woocommerce-page .carousel-product-card del,
html body.woocommerce del[aria-hidden="true"],
html body.woocommerce-page del[aria-hidden="true"],
html body.post-type-archive-product del,
html body.post-type-archive-product del[aria-hidden="true"] {
    font-size: 12px !important;
    color: #444444 !important;
    text-decoration: line-through !important;
    text-decoration-color: #242323 !important;
    opacity: 1 !important;
    margin-right: 5px !important;
    display: inline-block !important;
    font-weight: normal !important;
}

/* ====== SIDEBAR FILTER STYLES ====== */

.shop-sidebar {
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
    width: 100%;
    max-width: 300px;
    font-family: 'BPGGuardian', sans-serif;
    position: sticky;
    top: 20px;
    height: auto;
    min-height: 100%;
}

.sidebar-filter-header {
    margin-bottom: 15px;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 10px;
}

.main-filter-title {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    margin: 0;
    font-family: 'BPGGuardian', sans-serif;
}

.sidebar-filter-section {
    margin-bottom: 20px;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 15px;
}

.sidebar-filter-section:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.filter-title {
    font-size: 14px;
    font-weight: 600;
    color: #000000;
    margin: 0 0 10px 0;
    font-family: 'BPGGuardian', sans-serif;
}

/* Categories Filter */
.categories-filter {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.filter-category-item {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 4px;
    color: #666666;
    text-decoration: none;
    font-size: 13px;
    transition: all 0.2s ease;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
}

.filter-category-item:hover {
    background: #fef2f2;
    border-color: #242323;
}

/* Filter Checkboxes */
.filter-category-item input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    margin-right: 10px !important;
    border: 2px solid #ddd !important;
    border-radius: 4px !important;
    position: relative !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background: white !important;
    padding: 0 !important;
    transition: all 0.2s ease !important;
}

.filter-category-item input[type="checkbox"]:checked {
    background: #e93323 !important;
    border-color: #e93323 !important;
}

.filter-category-item input[type="checkbox"]:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    top: 2px !important;
    width: 4px !important;
    height: 10px !important;
    border: solid white !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}

.filter-category-item input[type="checkbox"]:hover {
    border-color: #242323;
}

.category-name {
    flex: 1;
    margin-right: 8px;
}

.category-count {
    font-size: 12px;
    opacity: 0.7;
}

/* Price Filter */
.price-range-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.price-range-slider {
    position: relative;
    margin: 30px 0 20px 0;
    height: 60px;
}

.price-slider {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 4px;
    border-radius: 2px;
    background: #e0e0e0 !important;
    outline: none;
    position: absolute;
    top: 30px;
    pointer-events: none;
    z-index: 1;
}

.price-slider:first-of-type {
    background: #e0e0e0;
    z-index: 1;
}

.price-slider:last-of-type {
    background: transparent;
    z-index: 2;
}

.price-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #242323;
    cursor: pointer;
    pointer-events: all;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    position: relative;
    z-index: 3;
    border: 2px solid #ffffff;
}

.price-slider::-moz-range-thumb {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #242323;
    cursor: pointer;
    pointer-events: all;
    border: 2px solid #ffffff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

/* Price Labels Above Sliders */
.price-slider-labels {
    position: relative;
    height: 35px;
    margin-bottom: 5px;
    width: 100%;
}

.price-label {
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    background: #242323;
    color: #f7e9cc;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    font-family: 'BPGGuardian', sans-serif;
    white-space: nowrap;
    z-index: 10;
    min-width: 45px;
    text-align: center;
    transition: left 0.05s ease-out;
    will-change: left;
}

.price-label::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #242323;
}

#price-label-min {
    left: 0%;
}

#price-label-max {
    left: 100%;
}

.price-inputs {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}

.price-inputs input[type="number"] {
    flex: 1;
    padding: 6px 8px;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 12px;
    font-family: 'BPGGuardian', sans-serif;
    text-align: center;
}

.price-inputs input[type="number"]:focus {
    outline: none;
    border-color: #242323;
}

.price-separator {
    color: #666666;
    font-weight: bold;
}

.price-display {
    text-align: center;
    font-size: 12px;
    color: #666666;
    font-weight: 600;
    margin-top: 5px;
}

.apply-filter-btn {
    background: #242323;
    color: #f7e9cc;
    border: none;
    padding: 8px 15px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    transition: all 0.2s ease;
    font-family: 'BPGGuardian', sans-serif;
}

.apply-filter-btn:hover {
    background: #b91c1c;
    transform: translateY(-1px);
}

/* Checkbox Filters */
.filter-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 6px 0;
    font-size: 12px;
    color: #666666;
}

.filter-checkbox input[type="checkbox"] {
    display: none;
}

.checkmark {
    width: 18px;
    height: 18px;
    border: 2px solid #ddd;
    border-radius: 3px;
    position: relative;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.filter-checkbox:hover .checkmark {
    border-color: #242323;
}

.filter-checkbox input[type="checkbox"]:checked + .checkmark {
    background: #242323;
    border-color: #242323;
}

.filter-checkbox input[type="checkbox"]:checked + .checkmark::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #f7e9cc;
    font-size: 12px;
    font-weight: bold;
}

.checkbox-label {
    font-family: 'BPGGuardian', sans-serif;
}

.filter-checkbox:hover .checkbox-label {
    color: #f7e9cc;
}

/* Filter Actions */
.filter-actions {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #f0f0f0;
}

.clear-filters-btn {
    background: transparent;
    color: #666666;
    border: 1px solid #ddd;
    padding: 8px 15px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    transition: all 0.2s ease;
    font-family: 'BPGGuardian', sans-serif;
}

.clear-filters-btn:hover {
    background: #f8f8f8;
    border-color: #242323;
    color: #f7e9cc;
}

/* Sort Select Styling */
.sort-select {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 12px;
    font-family: 'BPGGuardian', sans-serif;
    background: #ffffff;
    color: #333333;
    cursor: pointer;
    transition: border-color 0.2s ease;
}

.sort-select:focus {
    outline: none;
    border-color: #242323;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .shop-sidebar {
        max-width: 250px;
        padding: 15px;
    }
    
    .filter-title {
        font-size: 15px;
    }
    
    .filter-category-item {
        padding: 8px 12px;
        font-size: 13px;
    }
}

@media (max-width: 768px) {
    .shop-sidebar {
        max-width: 100%;
        margin-bottom: 20px;
    }
    
    .sidebar-filter-section {
        margin-bottom: 20px;
        padding-bottom: 15px;
    }
    
    .price-inputs {
        flex-direction: column;
        gap: 8px;
    }
    
    .price-inputs input[type="number"] {
        width: 100%;
    }
    
    .price-separator {
        display: none;
    }
}

/* Single Product Badges Container */
.single-product-badges {
    position: absolute;
    top: 15px;
    right: 15px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    z-index: 10;
}

/* Position badges inside product gallery */
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .ax-product-gallery {
    position: relative;
}

.woocommerce div.product .woocommerce-product-gallery .single-product-badges,
.woocommerce div.product .ax-product-gallery .single-product-badges,
.woocommerce div.product .ax-product-gallery__main .single-product-badges {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 10;
}

/* Single Product Sale Badge */
.single-product-sale-badge {
    background: #242323;
    color: #f7e9cc;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    font-family: 'BPGGuardian', sans-serif;
    box-shadow: 0 2px 6px rgba(36,35,35, 0.3);
    text-align: center;
    min-width: 60px;
    line-height: 1.2;
    letter-spacing: 0.5px;
}

/* Single Product Badge (ახალი/მალე) */
.single-product-badge {
    background: #242323;
    color: #f7e9cc;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    font-family: 'BPGGuardian', sans-serif;
    box-shadow: 0 2px 6px rgba(36,35,35, 0.3);
    text-align: center;
    min-width: 60px;
    line-height: 1.2;
    letter-spacing: 0.5px;
}

.woocommerce div.product .woocommerce-product-gallery {
    position: relative;
    margin-bottom: 30px;
}

.woocommerce ul.products li.product.carousel-product-card {
    position: relative;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    margin-bottom: 20px;
    width: 100%;
    max-width: 320px;
}

/* Add margin to sale carousel */
#saleCarousel {
    margin-top: 40px;
}

/* Add margin to sale section */
.sale-section {
    margin-top: 60px;
}

.woocommerce ul.products li.product.carousel-product-card {
    position: relative;
    background: #ffffff;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    margin-bottom: 20px;
    width: 100%;
    max-width: 320px;
}

/* Add margin to sale section */
#saleTitle {
    margin-top: 60px;
}

#saleCarousel {
    margin-top: 20px;
}

/* Pagination Styles */
.woocommerce-pagination {
    margin: 40px 0 !important;
    text-align: center !important;
}

@media (min-width: 769px) {
    .shop-layout .shop-content > .woocommerce-pagination {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        clear: both !important;
    }
}

@media (max-width: 768px) {
    .shop-layout .shop-content > .woocommerce-pagination {
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        padding: 0 !important;
        clear: both !important;
    }
}

.woocommerce-pagination .page-numbers {
    display: inline-flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 8px !important;
}

.woocommerce-pagination .page-numbers li {
    margin: 0 !important;
}

.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    color: #666 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    background: white !important;
}

.woocommerce-pagination .page-numbers a:hover {
    border-color: #e93323 !important;
    color: #e93323 !important;
    background: white !important;
}

.woocommerce-pagination .page-numbers span.current {
    background: #e93323 !important;
    border-color: #e93323 !important;
    color: #f7e9cc !important;
}

.filter-section {
    margin-bottom: 30px;
}

.filter-section h4 {
    font-size: 18px;
    margin-bottom: 15px;
    color: #1d1d1b;
    font-weight: 600;
}

/* ==========================================================================
   Single Product Add to Cart Form Fix
   ========================================================================== */

/* Force proper alignment for all variations */
.woocommerce div.product form.cart,
.woocommerce .single-product form.cart,
.single-product .woocommerce form.cart,
body.single-product form.cart,
html body .woocommerce form.cart {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 15px !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: none !important;
}

/* Quantity sizes to its content (unified mini-cart dropdown design) */
.woocommerce div.product form.cart .quantity,
.woocommerce .single-product form.cart .quantity,
.single-product .woocommerce form.cart .quantity,
body.single-product form.cart .quantity,
html body .woocommerce form.cart .quantity {
    width: auto !important;
    height: auto !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}

/* Ensure button fills remaining space */
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce .single-product form.cart .single_add_to_cart_button,
.single-product .woocommerce form.cart .single_add_to_cart_button,
body.single-product form.cart .single_add_to_cart_button,
html body .woocommerce form.cart .single_add_to_cart_button {
    flex: 1 !important;
    height: 48px !important;
    min-width: 120px !important;
}

/* Override theme specificity */
html body .woocommerce div.product form.cart {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
}

/* Product meta inline display */
.woocommerce .product_meta {
    margin-top: 30px !important;
    padding-top: 20px !important;
    border-top: 1px solid #e8e8e8 !important;
}

.woocommerce .product_meta span {
    display: inline-block !important;
    margin-right: 15px !important;
    margin-bottom: 5px !important;
} 

.woocommerce form.cart .single_add_to_cart_button {
    height: 56px !important;
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.3rem !important;
    border-radius: 12px !important;
    padding: 0 32px !important;
    box-sizing: border-box !important;
    margin: -2px 0 0 0 !important;
    flex: 1 !important;
}

/* Related Products Styling */
.related.products {
    margin-top: 100px !important;
}

.related.products h2 {
    font-size: 24px !important;
    margin-bottom: 30px !important;
    font-weight: 600 !important;
}

.related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 20px !important;
    margin: 50px 0 0 0 !important;
    padding: 0 !important;
}

.related.products ul.products li.product {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}

.related.products ul.products li.product:hover {
    box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
}

.related.products ul.products li.product a img {
    margin: 0 !important;
    width: 100% !important;
    height: 280px !important;
    object-fit: cover !important;
}

.related.products ul.products li.product .woocommerce-loop-product__title {
    padding: 15px 15px 5px !important;
    font-size: 18px !important;
    color: #000 !important;
    margin: 0 !important;
    font-weight: normal !important;
}

.related.products ul.products li.product .price {
    padding: 0 15px 15px !important;
    font-size: 20px !important;
    color: #e31e24 !important;
    margin: 0 !important;
}

.related.products ul.products li.product .price del {
    color: #666 !important;
    opacity: 0.5 !important;
    font-size: 16px !important;
}

.related.products ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: normal !important;
}

.related.products ul.products li.product .button {
    margin: 0 !important;
    width: 100% !important;
    padding: 12px !important;
    text-align: center !important;
    background: #e31e24 !important;
    color: #f7e9cc !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 16px !important;
    text-transform: none !important;
    transition: background-color 0.3s ease !important;
}

.related.products ul.products li.product .button:hover {
    background: #c41a1f !important;
}

/* Hide default star rating if exists */
.related.products ul.products li.product .star-rating {
    display: none !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .related.products ul.products {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
    }
    
    .related.products ul.products li.product a img {
        height: 240px !important;
    }
}

@media (max-width: 480px) {
    .related.products ul.products {
        grid-template-columns: 1fr !important;
    }
}

/* Related Products Carousel Styles */
.related.products {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
    padding: 0 20px !important;
}

.related.products .products-carousel {
    display: flex !important;
    gap: 25px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 10px 5px !important;
    margin: -10px -5px !important;
}

.related.products .carousel-product-card {
    width: 320px !important;
    min-width: 320px !important;
}

@media (max-width: 768px) {
    .related.products .carousel-product-card {
        width: 300px !important;
        min-width: 300px !important;
    }
}

/* Related Products Carousel Styles */
.related.products {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
    padding: 0 20px !important;
}

.related.products .section-title {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin-bottom: 30px !important;
    font-family: 'BPGGuardian', sans-serif !important;
}

.related.products .products-carousel-wrapper {
    position: relative !important;
    width: 100% !important;
    margin: 0 auto !important;
}

.related.products .products-carousel {
    display: flex !important;
    gap: 25px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 10px 5px !important;
    margin: -10px -5px !important;
}

.related.products .products-carousel::-webkit-scrollbar {
    display: none !important;
}

.related.products .carousel-nav-btn {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 40px !important;
    height: 40px !important;
    background: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 10 !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

.related.products .carousel-nav-btn:hover {
    background: #f5f5f5 !important;
    border-color: #242323 !important;
    color: #f7e9cc !important;
}

.related.products .carousel-nav-prev {
    left: -20px !important;
}

.related.products .carousel-nav-next {
    right: -20px !important;
}

.related.products .carousel-nav-btn svg {
    width: 20px !important;
    height: 20px !important;
    stroke: currentColor !important;
}

/* Product Card Styles */
.related.products .carousel-product-card {
    list-style: none !important;
    background: #ffffff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #e5e5e5 !important;
    transition: all 0.2s ease !important;
    height: 450px !important;
    display: flex !important;
    flex-direction: column !important;
    width: 320px !important;
    min-width: 320px !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
    position: relative !important;
    direction: ltr !important;
    flex-shrink: 0 !important;
    scroll-snap-align: start !important;
}

.related.products .carousel-product-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
    border-color: #242323 !important;
}

.related.products .carousel-product-image {
    position: relative !important;
    overflow: hidden !important;
    height: 300px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.related.products .carousel-product-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    transition: transform 0.2s ease !important;
}

.related.products .carousel-product-card:hover .carousel-product-image img {
    transform: scale(1.02) !important;
}

.related.products .carousel-product-info {
    padding: 10px 15px 15px 15px !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    height: 150px !important;
    flex-grow: 1 !important;
}

.related.products .carousel-product-pricing {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 2px !important;
    height: 40px !important;
    justify-content: flex-start !important;
}

.related.products .carousel-product-price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #7f170e !important;
    font-family: 'BPGGuardian', sans-serif !important;
    line-height: 1.2 !important;
    margin-bottom: 2px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
}

.related.products .carousel-product-price .price {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.related.products .carousel-product-price del {
    font-size: 12px !important;
    color: #6b7280 !important;
    text-decoration: line-through !important;
    text-decoration-color: #242323 !important;
    opacity: 1 !important;
    margin-right: 5px !important;
    display: inline-block !important;
}

.related.products .carousel-product-price ins {
    text-decoration: none !important;
    font-weight: 700 !important;
}

.related.products .carousel-installment-info {
    font-size: 11px !important;
    color: #000000 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.2 !important;
    height: 16px !important;
    display: flex !important;
    align-items: center !important;
}

.related.products .installment-price {
    color: #7f170e !important;
    font-weight: 600 !important;
}

.related.products .carousel-product-title {
    margin: 0 0 8px 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    height: 36px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.related.products .carousel-product-title a {
    color: #000000 !important;
    text-decoration: none !important;
    font-family: 'BPGGuardian', sans-serif !important;
}

.related.products .carousel-product-title a:hover {
    color: #f7e9cc !important;
}

.related.products .carousel-product-pricing {
    margin: 0 0 4px 0 !important;
}

.related.products .carousel-product-price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #7f170e !important;
    font-family: 'BPGGuardian', sans-serif !important;
    line-height: 1.2 !important;
}

.related.products .carousel-installment-info {
    font-size: 11px !important;
    color: #000000 !important;
    font-family: 'BPGGuardian', sans-serif !important;
    margin: 0 0 12px 0 !important;
    line-height: 1.2 !important;
}

.related.products .carousel-installment-info .installment-price {
    color: #7f170e !important;
    font-weight: 600 !important;
}

.related.products .carousel-product-actions {
    margin-top: auto !important;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .related.products .carousel-nav-btn {
        display: none !important;
    }
    
    .related.products .products-carousel {
        gap: 15px !important;
    }
    
    .related.products .carousel-product-card {
        width: 300px !important;
        min-width: 300px !important;
    }
}

/* Related Products Carousel Styles */
.related.products {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.related.products .homepage-container {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 0 !important;
}

.related.products .carousel-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 30px !important;
    width: 100% !important;
    margin-left: 0 !important;
}

.related.products .section-title {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin: 0 !important;
    font-family: 'BPGGuardian', sans-serif !important;
}

.related.products .products-carousel-wrapper {
    position: relative !important;
    overflow: hidden !important;
    margin-left: 0 !important;
    width: 100% !important;
    margin-right: 0 !important;
    padding-top: 5px !important;
}

.related.products .carousel-nav-btn {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 50px !important;
    height: 50px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    z-index: 15 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #666666 !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    backdrop-filter: blur(8px) !important;
}

.related.products .carousel-nav-btn:hover {
    background: #242323 !important;
    color: #f7e9cc !important;
    border-color: #242323 !important;
    transform: translateY(-50%) scale(1.1) !important;
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3) !important;
}

.related.products .carousel-nav-btn:disabled {
    opacity: 0.3 !important;
    cursor: not-allowed !important;
    transform: translateY(-50%) !important;
}

.related.products .carousel-nav-btn:disabled:hover {
    background: rgba(255, 255, 255, 0.9) !important;
    color: #666666 !important;
    border-color: #e5e5e5 !important;
    transform: translateY(-50%) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

.related.products .carousel-nav-prev {
    left: 10px !important;
}

.related.products .carousel-nav-next {
    right: 10px !important;
}

.related.products .products-carousel {
    display: flex !important;
    gap: 20px !important;
    transition: transform 0.3s ease !important;
}

.related.products .carousel-product-card {
    flex: 0 0 calc(25% - 15px) !important;
    background: #ffffff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #e5e5e5 !important;
    transition: all 0.2s ease !important;
    height: 450px !important;
    display: flex !important;
    flex-direction: column !important;
    max-width: calc(25% - 15px) !important;
}

/* Responsive styles for carousels */
@media (max-width: 1200px) {
    .related.products .carousel-product-card {
        flex: 0 0 calc(33.333% - 15px) !important;
        max-width: calc(33.333% - 15px) !important;
    }
}

@media (max-width: 992px) {
    .related.products .carousel-product-card {
        flex: 0 0 calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
    }
}

@media (max-width: 576px) {
    .related.products .carousel-product-card {
        flex: 0 0 calc(100% - 10px) !important;
        max-width: calc(100% - 10px) !important;
    }
    
    .related.products .carousel-nav-btn {
        width: 40px !important;
        height: 40px !important;
    }
}

/* Mobile Product Card Improvements */
@media (max-width: 768px) {
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        margin: 0 0 20px 0 !important;
        padding: 15px !important;
        width: 100% !important;
        max-width: none !important;
        border-radius: 12px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important;
        background: #ffffff !important;
    }

    .woocommerce ul.products li.product .product-image-wrapper,
    .woocommerce-page ul.products li.product .product-image-wrapper {
        height: 200px !important;
        margin-bottom: 15px !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 16px !important;
        margin-bottom: 10px !important;
        line-height: 1.4 !important;
        height: auto !important;
        max-height: 44px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
    }

    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price {
        font-size: 18px !important;
        margin-bottom: 10px !important;
    }

    .woocommerce ul.products li.product .button,
    .woocommerce-page ul.products li.product .button {
        width: auto !important;
        display: inline-flex !important;
        min-height: 40px !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 12px 20px !important;
        font-size: 14px !important;
        border-radius: 6px !important;
        margin-left: 15px !important;
        margin-right: 15px !important;
    }

    /* Product Grid Layout */
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
        padding: 0 15px !important;
    }

    /* Single Product Page Mobile */
    .woocommerce div.product div.images,
    .woocommerce-page div.product div.images {
        margin-bottom: 20px !important;
    }

    .woocommerce div.product div.summary,
    .woocommerce-page div.product div.summary {
        padding: 20px !important;
        margin-bottom: 20px !important;
    }

    .woocommerce div.product .product_title {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }

    .woocommerce div.product p.price {
        font-size: 24px !important;
        margin: 15px 0 !important;
    }

    .woocommerce div.product form.cart {
        flex-direction: column !important;
        gap: 15px !important;
    }

    .woocommerce div.product form.cart .quantity {
        width: auto !important;
        margin-right: 0 !important;
    }

    .woocommerce div.product form.cart .button {
        width: 100% !important;
        padding: 15px !important;
        font-size: 16px !important;
    }
}

/* Extra Small Devices */
@media (max-width: 480px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: 1fr !important;
        padding: 0 10px !important;
    }

    .woocommerce ul.products li.product .product-image-wrapper,
    .woocommerce-page ul.products li.product .product-image-wrapper {
        height: 180px !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 15px !important;
    }

    .woocommerce div.product .product_title {
        font-size: 20px !important;
    }

    .woocommerce div.product p.price {
        font-size: 20px !important;
    }
}

/* Hide dimensions on cart page */
.woocommerce-cart .product-name .variation dt,
.woocommerce-cart .product-name .variation dd,
.woocommerce-cart .product-name dl.variation,
.cart_item .variation dt,
.cart_item .variation dd {
  display: none !important;
}

/* Only show specific attributes like color and material */
.woocommerce-cart .variation [data-attribute_name="pa_color"],
.woocommerce-cart .variation [data-attribute_name="pa_material"],
.cart_item .variation [data-attribute_name="pa_color"],
.cart_item .variation [data-attribute_name="pa_material"] {
  display: block !important;
}

/* Hide dimension variations in mini cart */
.widget_shopping_cart_content .variation dt,
.widget_shopping_cart_content .variation dd {
  display: none !important;
}

/* Show color and material in mini cart */
.widget_shopping_cart_content .variation [data-attribute_name="pa_color"],
.widget_shopping_cart_content .variation [data-attribute_name="pa_material"] {
  display: block !important;
}

/* Hide any remaining dimension attributes */
[data-attribute_name="pa_sigrdze"],
[data-attribute_name="pa_sigane"],
[data-attribute_name="pa_simagle"],
[data-attribute_name="pa_length"],
[data-attribute_name="pa_width"],
[data-attribute_name="pa_height"],
.variation dt:contains("სიგრძე"),
.variation dt:contains("სიგანე"),
.variation dt:contains("სიმაღლე"),
.variation dt:contains("Length"),
.variation dt:contains("Width"),
.variation dt:contains("Height") {
  display: none !important;
}

/* Hide product metadata in cart */
.wc-block-cart-item__product .wc-block-components-product-metadata,
.wc-block-cart-item__product .wc-block-components-product-metadata__description,
.woocommerce-cart .product-name .wc-block-components-product-metadata,
.woocommerce-cart .product-name .wc-block-components-product-metadata__description {
  display: none !important;
}

/* Hide specific dimension images and text */
.wc-block-components-product-metadata img[src*="1-300x263.png"],
.wc-block-components-product-metadata img[src*="2-300x263.png"],
.wc-block-components-product-metadata img[src*="3-300x263.png"],
.wc-block-components-product-metadata__description img {
  display: none !important;
}

/* Hide dimension text */
.wc-block-components-product-metadata__description:contains("სიგრძე"),
.wc-block-components-product-metadata__description:contains("სიგანე"),
.wc-block-components-product-metadata__description:contains("სიმაღლე") {
  display: none !important;
}

/* Cart page positioning */
.woocommerce-cart .woocommerce,
.woocommerce-cart .wc-block-cart {
  margin-top: 50px;
  padding-top: 30px;
}

.woocommerce-cart .wc-block-cart__title,
.woocommerce-cart .entry-title {
  margin-top: 30px;
  margin-bottom: 30px;
  font-size: 32px;
  font-weight: 600;
  color: #1f2937;
}

/* Adjust cart page layout */
.woocommerce-cart .wc-block-cart__main {
  background: #ffffff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.woocommerce-cart .wc-block-cart__sidebar {
  background: #ffffff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-cart .wc-block-cart {
    margin-top: 30px;
    padding-top: 20px;
  }

  .woocommerce-cart .wc-block-cart__title,
  .woocommerce-cart .entry-title {
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 28px;
  }

  .woocommerce-cart .wc-block-cart__main,
  .woocommerce-cart .wc-block-cart__sidebar {
    padding: 20px;
  }
}

/* Mobile and Tablet Bottom Navigation Compatibility */
@media (max-width: 991px) {
    /* Ensure mobile bottom navigation shows */
    .mobile-bottom-nav {
        display: block !important;
    }
    
    /* Fix carousel wrapper positioning */
    .products-carousel-wrapper {
        width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        position: relative !important;
        overflow: visible !important;
    }
    
    /* Override carousel display for mobile/tablet to show exactly 4 cards */
    .products-carousel {
        display: flex !important;
        gap: 12px !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        padding: 15px !important;
        margin: 0 auto !important;
        width: calc(100% - 30px) !important;
        box-sizing: border-box !important;
    }
    
    .products-carousel::-webkit-scrollbar {
        display: none !important;
    }
    
    /* Show narrower product cards in carousel for mobile - taller height for button space */
    /* Make generic carousel cards scale so 2 full + partial 3rd show */
    .products-carousel-wrapper { --mobile-pad: 15px; }
    .products-carousel { gap: 12px !important; }
    .products-carousel .carousel-product-card {
        flex: 0 0 calc((100vw - (var(--mobile-pad) * 2) - 12px) / 2 - 8px) !important;
        min-width: calc((100vw - (var(--mobile-pad) * 2) - 12px) / 2 - 8px) !important;
        max-width: calc((100vw - (var(--mobile-pad) * 2) - 12px) / 2 - 8px) !important;
        scroll-snap-align: start !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        height: 380px !important;
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Hide categories sidebar on mobile/tablet homepage */
    .compact-categories {
        display: none !important;
    }
    
    /* Banner slider takes full width */
    .banner-slider-wrapper {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 10px !important;
    }
}

/* Extra description inside dimensions container */
.ax-extra-description { margin-top: 12px; }
.ax-extra-description .ax-extra-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
}
.ax-extra-description .ax-extra-divider { display: none !important; }
.ax-extra-description .ax-extra-body {
    color: #1f2937;
    line-height: 1.8;
    font-weight: 300;
    font-family: 'BPGGuardian', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ax-extra-description.expanded .ax-extra-body {
    -webkit-line-clamp: unset;
    line-clamp: unset;
    display: block;
}
.ax-extra-description .ax-extra-toggle {
    margin-top: 8px;
    background: transparent;
    border: 0;
    color: #f7e9cc;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ax-extra-description .ax-extra-toggle .chevron { transition: transform .2s ease; }
.ax-extra-description.expanded .ax-extra-toggle .chevron { transform: rotate(180deg); }

/* Shop grid cards styled like carousel */
ul.products li.rp-shop-card { list-style:none; overflow: visible !important; position: relative; }
/* Shop card visual identity = homepage carousel card identity:
   border, radius, shadow, hover effect, image area & info padding all
   mirror the carousel-card / card-image / card-info styles defined in
   style.css (3529-3603). */
ul.products li.rp-shop-card .rp-card { background:#fff; border:1px solid #e5e5e5; border-radius:8px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,.1); transition:all .2s ease; display:flex; flex-direction:column; height:100%; }
ul.products li.rp-shop-card .rp-card:hover{ transform:none; box-shadow:0 4px 12px rgba(0,0,0,.15); border-color:#e5e5e5; border-top:1px solid #e5e5e5; z-index:5; }
ul.products li.rp-shop-card .rp-img{ position:relative; height:250px; display:flex; align-items:center; justify-content:center; background:#fff; overflow:hidden; }
ul.products li.rp-shop-card .rp-badges{ position:absolute; top:8px; right:8px; display:flex; flex-direction:column; gap:6px; z-index:2; }
ul.products li.rp-shop-card .rp-badges.rp-badges-left{ right:auto !important; left:8px; align-items:flex-start; }
ul.products li.rp-shop-card .rp-badge{ background:#242323; color:#f7e9cc; padding:4px 8px; border-radius:6px; font-size:12px; font-weight:600; box-shadow:0 2px 6px rgba(36,35,35,.3); font-family:'BPGGuardian', sans-serif; display:inline-block; }
ul.products li.rp-shop-card .rp-image{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; display:block; transition:transform .2s ease; }
ul.products li.rp-shop-card .rp-card:hover .rp-image{ transform:scale(1.02); }
ul.products li.rp-shop-card .rp-info{ padding:15px; display:flex; flex-direction:column; gap:0; background:#fff; position:relative; z-index:1; flex-grow:1; }
ul.products li.rp-shop-card .rp-price{ color:#7f170e; font-weight:700; font-family:'BPGGuardian',sans-serif; line-height:1.2; font-size:16px; display:flex; align-items:baseline; flex-wrap:wrap; gap:6px; }
ul.products li.rp-shop-card .rp-installment{ font-size:12px; color:#000; font-family:'BPGGuardian',sans-serif; margin:0 0 8px 0; line-height:1.1; height:14px; display:flex; align-items:center; }
ul.products li.rp-shop-card .rp-installment .installment-price{ color:#7f170e; }
ul.products li.rp-shop-card .rp-installment .amt{ color:#7f170e; }
ul.products li.rp-shop-card .rp-title{ color:#333; text-decoration:none; font-weight:600; font-size:16px; line-height:1.3; display:block; overflow:visible; height:auto; margin:0 0 8px 0; font-family:'BPGGuardian',sans-serif; }
ul.products li.rp-shop-card .rp-actions{ margin-top:auto; display:flex; align-items:flex-end; }
ul.products li.rp-shop-card .button{ background:#242323; color:#f7e9cc; padding:10px 18px; border-radius:6px; font-weight:700; text-decoration:none; box-shadow:0 1px 2px rgba(0,0,0,.05); min-height:36px; }
/* Keep card content order consistent on desktop & mobile: title -> price -> actions */
ul.products li.rp-shop-card .rp-title { order: 1; }
ul.products li.rp-shop-card .rp-pricing { order: 2; }
ul.products li.rp-shop-card .rp-actions { order: 3; }
/* Prevent image overlaying text: enforce stacking and reserved space */
ul.products li.rp-shop-card .rp-img{ z-index:0; flex:0 0 auto; }
ul.products li.rp-shop-card .rp-info{ position:relative; z-index:2; background:#fff; flex:1 1 auto; }

/* Frameless card + centered text + full-width „არჩევა" button (shop) */
ul.products li.rp-shop-card,
ul.products li.rp-shop-card:hover,
ul.products li.rp-shop-card .rp-card,
ul.products li.rp-shop-card .rp-card:hover,
ul.products li.rp-shop-card .rp-img,
ul.products li.rp-shop-card .rp-info { border:none !important; box-shadow:none !important; }
ul.products li.rp-shop-card .rp-info { text-align:center; }
ul.products li.rp-shop-card .rp-price { justify-content:center; }
ul.products li.rp-shop-card .rp-actions { display:block; }
body ul.products li.rp-shop-card .carousel-add-to-cart-btn,
.woocommerce ul.products li.product.rp-shop-card .carousel-add-to-cart-btn,
.woocommerce-page ul.products li.product.rp-shop-card .carousel-add-to-cart-btn { display:flex !important; width:100% !important; }

/* Card proportions mirror the homepage carousel card across breakpoints.
   Desktop (>=992px): card 400px, image 250px.
   Tablet (<=991px) : card 360px, image 210px, info padding 12px.
   Mobile (<=768px) : handled by style.css (aspect-ratio 1/1 image, flexible height). */
@media (min-width: 992px) {
  ul.products li.rp-shop-card .rp-card { min-height: 400px; height: auto; }
  ul.products li.rp-shop-card .rp-img  { height: 250px; }
  ul.products li.rp-shop-card .rp-info { min-height: 150px; height: auto; padding: 15px; }
}
@media (max-width: 991px) {
  ul.products li.rp-shop-card .rp-card { min-height: 360px; height: auto; }
  ul.products li.rp-shop-card .rp-img  { height: 210px; }
  ul.products li.rp-shop-card .rp-info { padding: 12px; min-height: 150px; }
}
@media (max-width: 576px) {
  ul.products { display:grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap:15px; }
  ul.products li.product { width:auto !important; margin:0 !important; }
}

/* Mobile: ensure product grid is pushed below the mobile shop header */
@media (max-width: 768px){
  .shop-container .mobile-shop-header{ margin-bottom: 18px !important; }
  .shop-container .shop-layout{ margin-top: 12px !important; clear: both !important; }
}

@media (max-width: 768px){
  /* Extra spacing below filters/sort */
  .shop-container .mobile-shop-header{ margin-bottom: 28px !important; }
  .shop-container .shop-layout{ margin-top: 20px !important; }
}

/* ===================================
  Shop/Product Grid - Add to cart button styles to match carousel
  =================================== */
.woocommerce ul.products li.product a.button,
.woocommerce-page ul.products li.product a.button,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button {
	background: #242323 !important;
	color: #f7e9cc !important;
	padding: 12px 20px !important;
	border-radius: 6px !important;
	text-decoration: none !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	font-family: 'BPGGuardian', sans-serif !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
	border: none !important;
	cursor: pointer !important;
	min-height: 40px !important;
}

.woocommerce ul.products li.product a.button:hover,
.woocommerce-page ul.products li.product a.button:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce-page ul.products li.product .add_to_cart_button:hover {
	background: #242323 !important;
	transform: translateY(-1px) !important;
}

/* Hide WooCommerce "View cart" link appended after AJAX add */
.woocommerce a.added_to_cart.wc-forward { display: none !important; }

/* Hide WooCommerce "View cart" link in product loops and widgets */
.woocommerce a.added_to_cart,
.woocommerce-page a.added_to_cart,
.widget_shopping_cart a.added_to_cart {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Out-of-stock in shop loop: render as plain red text (no button styling) */
.woocommerce ul.products li.product .carousel-add-to-cart-btn.disabled,
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn.disabled,
.woocommerce ul.products li.product .carousel-add-to-cart-btn[aria-disabled="true"],
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn[aria-disabled="true"],
ul.products li.rp-shop-card .carousel-add-to-cart-btn.disabled,
ul.products li.rp-shop-card .carousel-add-to-cart-btn[aria-disabled="true"] {
  background: transparent !important;
  background-color: transparent !important;
  color: #dc2626 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-align: left !important;
  font-weight: 700 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  opacity: 1 !important;
  min-height: 0 !important;
  min-width: 0 !important;
  width: auto !important;
  display: inline-block !important;
}

.woocommerce ul.products li.product .carousel-add-to-cart-btn.disabled:hover,
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn.disabled:hover,
.woocommerce ul.products li.product .carousel-add-to-cart-btn[aria-disabled="true"]:hover,
.woocommerce-page ul.products li.product .carousel-add-to-cart-btn[aria-disabled="true"]:hover,
ul.products li.rp-shop-card .carousel-add-to-cart-btn.disabled:hover,
ul.products li.rp-shop-card .carousel-add-to-cart-btn[aria-disabled="true"]:hover {
  background: transparent !important;
  color: #dc2626 !important;
  transform: none !important;
}

ul.products li.rp-shop-card .rp-price ins,
ul.products li.rp-shop-card .rp-price ins .woocommerce-Price-amount,
ul.products li.rp-shop-card .rp-price ins bdi { color:#7f170e !important; }

ul.products li.rp-shop-card .rp-price del {
	color:#6b7280 !important;
	text-decoration: line-through;
	text-decoration-color:#6b7280 !important;
	text-decoration-thickness:1.5px;
	font-size:14px;
	display:inline-flex;
	align-items:baseline;
}

ul.products li.rp-shop-card .rp-price del .woocommerce-Price-amount,
ul.products li.rp-shop-card .rp-price del bdi {
	color:#6b7280 !important;
	text-decoration: none;
}

/* =============================
   AX OVERRIDES: Shop/Filter colors → brand orange
   ============================= */
:root {
    --brand-secondary: #242323;
}

/* Product card buttons */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
	background: var(--brand-secondary, #242323) !important;
	color: #f7e9cc !important;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--brand-secondary, #242323) !important;
}

/* Ensure minimal product action buttons use new color */
html body .product-actions a,
html body .product-actions .button {
	background: var(--brand-secondary, #242323) !important;
}

/* Filters/sidebar */
.apply-filter-btn {
	background: #242323 !important;
	color: #f7e9cc !important;
}
.apply-filter-btn:hover { background: #242323 !important; }

.filter-category-item:hover { border-color: #242323 !important; }
.filter-category-item input[type="checkbox"]:checked {
	background: #242323 !important;
	border-color: #242323 !important;
}

/* Checkbox widget */
.filter-checkbox:hover .checkmark { border-color: #242323 !important; }
.filter-checkbox input[type="checkbox"]:checked + .checkmark {
	background: #242323 !important;
	border-color: #242323 !important;
}
.filter-checkbox:hover .checkbox-label { color: #f7e9cc !important; }

/* Price slider + labels */
.price-slider:not(:first-of-type) { background: #242323 !important; }
.price-slider::-webkit-slider-thumb,
.price-slider::-moz-range-thumb { background: #242323 !important; }
.price-label { background: #242323 !important; }
.price-label::after { border-top-color: #242323 !important; }

/* Select focus states in shop controls */
.shop-filters select:focus,
.shop-sorting select:focus,
.shop-view-toggle select:focus,
.sort-select:focus { border-color: #242323 !important; }

/* Pagination color */
.woocommerce-pagination .page-numbers a:hover {
	border-color: #242323 !important;
	color: #f7e9cc !important;
}
.woocommerce-pagination .page-numbers span.current {
	background: #242323 !important;
	border-color: #242323 !important;
	color: #f7e9cc !important;
}

/* =============================
   AX HIGH-SPECIFICITY FIXES: Add-to-cart + Sale badges
   ============================= */
/* Force add-to-cart buttons (all loops/integrations) */
html body .woocommerce ul.products li.product-card .product-actions a,
html body .woocommerce ul.products li.product-card .product-actions .button,
html body .woocommerce-page ul.products li.product-card .product-actions a,
html body .woocommerce-page ul.products li.product-card .product-actions .button,
html body div.woocommerce ul.products li.product .product-actions a,
html body div.woocommerce ul.products li.product .product-actions .button,
html body div.woocommerce-page ul.products li.product .product-actions a,
html body div.woocommerce-page ul.products li.product .product-actions .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button,
.brxe-woocommerce-products .products .add_to_cart_button,
.brxe-woocommerce-products .products .button,
.brxe-woocommerce-products .products .added_to_cart {
  background: #242323 !important;
  border-color: #242323 !important;
  color: #f7e9cc !important;
}

/* Force sale badge color everywhere */
.sale-percentage,
.badge.onsale,
.woocommerce .products .badge.onsale,
.woocommerce.products .badge.onsale,
.woocommerce span.onsale,
.woocommerce-page span.onsale {
  background: #242323 !important;
  border-color: #242323 !important;
  color: #f7e9cc !important;
}

/* AX HOTFIX: Price slider track should be light gray */
.price-slider { background: #e0e0e0 !important; }
.price-slider:not(:first-of-type) { background: transparent !important; }

/* Mobile layout: position elements immediately under the price and align to price left edge */
@media (max-width: 768px) {
  /* Ensure the summary area is block flow and left-aligned */
  .woocommerce div.product .summary { display: block !important; }
  /* Price block keeps its natural left edge */
  .woocommerce div.product .price { margin-left: 0 !important; padding-left: 0 !important; }
  /* Custom fields: right after price */
  .woocommerce div.product .summary .custom-product-fields {
    margin-top: 8px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  /* Cart form: immediately after custom fields */
  .woocommerce div.product .summary form.cart {
    margin-top: 10px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  /* Categories/meta under cart, aligned to price */
  .woocommerce div.product .summary .product_meta {
    margin-top: 12px !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
}

/* Remove cart form border/shadow on single product */
html body .woocommerce div.product form.cart,
html body .single-product .woocommerce form.cart,
html body .woocommerce form.cart {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Remove white background from cart section container if any */
.woocommerce div.product .summary.entry-summary form.cart,
.single-product .woocommerce form.cart {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* Single product quantity chrome comes from shared .mini-qty-* in header.css */
body:not(.single-product) .woocommerce div.product form.cart .quantity.mini-qty-wrapper {
    margin-top: 0 !important;
}

/* Single installment info should behave like price: aligned left, close vertically, non-clickable */
.woocommerce div.product .summary .single-installment-button {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important; /* no space between parts */
    margin: -26px 0 8px 0 !important; /* move 30px closer (4px - 30px = -26px) */
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    cursor: default !important;
    pointer-events: none !important; /* no click */
    color: #000 !important;
    line-height: 1.2 !important;
}
.woocommerce div.product .summary .single-installment-button .installment-text,
.woocommerce div.product .summary .single-installment-button .installment-amount,
.woocommerce div.product .summary .single-installment-button .installment-suffix {
    margin: 0 !important;
    padding: 0 !important;
}
/* Ensure container aligns with price */
.woocommerce div.product .summary .custom-product-fields {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Subtle background for single product summary (replaces border) */
.woocommerce div.product .summary.entry-summary {
    border: 0 !important;
    background: #f5f5f5 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    padding: 20px !important; /* inner gap */
    position: relative !important;
    top: -80px !important;
}

/* Shift summary to the right on desktop */
@media (min-width: 1024px) {
  .woocommerce div.product .summary.entry-summary {
    margin-left: 80px !important;
  }
}

/* Full-width layout for single product page */
body.single-product .container,
body.single-product .site-content,
body.single-product .content-area,
body.single-product .site-main,
body.single-product .main-container,
body.single-product .content-container,
body.single-product .woocommerce,
body.single-product .woocommerce .container {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Product wrapper itself */
body.single-product .woocommerce div.product {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Breadcrumbs full-width */
body.single-product .woocommerce .woocommerce-breadcrumb {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* White separator line under each major section */
/* Remove white separators under sections */

/* Lower the summary block slightly to align with design */
@media (min-width: 768px) {
  .woocommerce div.product .summary.entry-summary {
    top: -40px !important; /* was -80px */
  }
}

/* Force top-level wrappers to full width on single product */
body.single-product #primary,
body.single-product #content,
body.single-product #main,
body.single-product main.site-main,
body.single-product .site,
body.single-product .site-container,
body.single-product .wrap,
body.single-product .container-fluid,
body.single-product .bricks-container {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 60px !important;
  padding-right: 20px !important;
}

/* Ensure the immediate product container has no auto-centering margins */
body.single-product .product.type-product {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (min-width: 1024px) {
  /* Expand summary width by 140px to the right without moving its starting position */
  .woocommerce div.product .summary.entry-summary {
    width: calc(100% + 140px) !important;
    margin-right: -140px !important; /* keep left edge fixed */
  }
}

/* Align cart section left edge with price/installment/description */
.woocommerce div.product .summary.entry-summary form.cart {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* AX: Main gallery frame styles live in woocommerce/single-product/ax-product-gallery.css */

/* AX: Lift entire body section up by 30px on single product */
body.single-product .site-content,
body.single-product .content-area,
body.single-product .site-main,
body.single-product #content,
body.single-product #primary,
body.single-product .main-container,
body.single-product .content-container,
body.single-product .woocommerce,
body.single-product .bricks-container {
	margin-top: -30px !important;
	padding-top: 0 !important;
}

/* AX: Shift breadcrumb left on single product */
body.single-product nav.woocommerce-breadcrumb {
	margin-left: -20px !important;
	padding-left: 0 !important;
}

/* AX: Larger breadcrumb font on single product */
body.single-product nav.woocommerce-breadcrumb {
	font-size: 20px !important; /* adjusted */
	line-height: 1.4 !important;
}

/* AX: Breadcrumb custom SVG separator sizing */
body.single-product nav.woocommerce-breadcrumb img.ax-breadcrumb-sep {
	display: inline-block !important;
	width: 12px !important;
	height: 12px !important;
	margin: 0 6px !important;
	vertical-align: middle !important;
	object-fit: contain !important;
}

/* AX: Add subtle separator line 10px below breadcrumb */
body.single-product nav.woocommerce-breadcrumb::after {
	content: "";
	display: block;
	height: 1px;
	background: #e0e0e0 !important;
	margin-top: 20px;
	opacity: 0.9;
	width: 100%;
}

/* AX: Limit breadcrumb underline to gallery column on desktop */
@media (min-width: 1024px) {
	body.single-product nav.woocommerce-breadcrumb { position: relative; }
	body.single-product nav.woocommerce-breadcrumb::after {
		width: calc(50% - 0px) !important; /* widened by 20px */
	}
}

/* AX: Push single-product content down on desktop so the fixed header
   doesn't cover the breadcrumb. Uses padding-top on the content wrappers
   (padding cannot margin-collapse, so it reliably moves content DOWN). */
@media (min-width: 992px) {
	body.single-product #main,
	body.single-product main.site-main,
	body.single-product #primary,
	body.single-product #content,
	body.single-product .site-main {
		padding-top: 20px !important;
	}
}

/* AX: Inline installment next to price */
.single-product .summary .ax-price-with-installment { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; width: 100%; margin-left: 0; margin-right: 0; padding: 0 0 8px 0; margin-top: -20px !important; }
.single-product .summary .ax-installment-inline { color: #000; font-size: 16px; line-height: 1.2; white-space: nowrap; margin-left: auto; }
.single-product .summary .ax-installment-amount { color: #7f170e; font-weight: 700; margin-left: 2px; }
.single-product .summary .ax-installment-suffix { color: #000; margin-left: 2px; }
@media (min-width: 1024px){ .single-product .summary .ax-price-with-installment { gap: 16px; } }

/* AX: Full-width white divider under product dimensions */
.single-product .summary .product-dimensions-container {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 0 0 12px 0 !important;
}

/* AX: Keep only the mobile duplicate title hidden; show main product title */
.single-product .summary.entry-summary .ax-mobile-title { display: none !important; }

/* AX: Modern summary card layout */
.woocommerce div.product .summary.entry-summary {
    background: #f3f4f6 !important; /* match fs-header-container gray */
    border-radius: 12px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.06) !important;
    padding: 24px 24px 28px 24px !important;
}

/* Title */
.single-product .summary.entry-summary .product_title.entry-title {
    font-size: 28px !important;
    line-height: 1.25 !important;
    margin-left: 0 !important;
    margin-bottom: 6px !important;
}

/* Inline SKU just under title */
.single-product .summary.entry-summary .ax-sku-inline {
    color: #9ca3af; /* light gray */
    font-size: 11px;
    margin-bottom: 12px;
    margin-left: 0 !important;
}
.single-product .summary.entry-summary .ax-sku-inline .ax-sku-value {
    color: #9ca3af; /* match label */
    font-weight: 600;
}

/* Price above description with thick divider */
.single-product .summary.entry-summary .price,
.single-product .summary.entry-summary .ax-price-with-installment {
    border-bottom: 0;
    padding-bottom: 10px;
    margin-bottom: 14px;
}

/* Removed white separators between sections per request */

/* Description readability */
.single-product .summary.entry-summary .woocommerce-product-details__short-description {
    color: #111827; /* gray-900 */
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 16px;
}

/* Stock status below price */
.single-product .summary.entry-summary .ax-stock-status { font-size: 14px; margin: 6px 0 12px; }
.single-product .summary.entry-summary .ax-stock-status.in { color: #16a34a; }
.single-product .summary.entry-summary .ax-stock-status.out { color: #dc2626; }

/* Specs list styling */
.product-specs-list { display: grid; grid-template-columns: 1fr; gap: 8px; }
.product-specs-list .spec-item { display: flex; gap: 8px; }
.product-specs-list .spec-label { color: #6b7280; min-width: 140px; }
.product-specs-list .spec-value { color: #111827; }

/* Quantity label alignment */
.single-product .summary.entry-summary .ax-qty-label {
    display: inline-flex;
    align-items: center;
    margin-right: 10px;
    font-weight: 600;
    color: #111827;
}

/* Inline layout for qty and button */
.single-product .summary.entry-summary form.cart {
    display: flex;
    align-items: center;
    gap: 12px;
}
.single-product .summary.entry-summary form.cart .single_add_to_cart_button {
    height: 44px;
    padding: 0 24px;
    border-radius: 8px;
}

/* AX: Mobile centering fixes for single product */
@media (max-width: 767px) {
	/* Normalize container paddings so content is centered */
	body.single-product #primary,
	body.single-product #content,
	body.single-product #main,
	body.single-product main.site-main,
	body.single-product .site,
	body.single-product .site-container,
	body.single-product .wrap,
	body.single-product .container-fluid,
	body.single-product .bricks-container {
		padding-left: 20px !important;
		padding-right: 20px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	/* Reset breadcrumb left shift on mobile */
	body.single-product nav.woocommerce-breadcrumb { margin-left: 0 !important; padding-left: 0 !important; }
	/* Avoid over-wide lines within the summary on mobile */
	.single-product .summary .ax-price-with-installment,
	.single-product .summary .product-dimensions-container {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		/* No extra padding so all items share the same left start */
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Ensure title is visible above SKU and price on mobile */
	.single-product .summary.entry-summary .product_title.entry-title { display: block !important; margin-bottom: 8px !important; }
	.single-product .summary.entry-summary .ax-price-with-installment,
	.single-product .summary.entry-summary .price { margin-top: 0 !important; }
}

/* AX: Breadcrumb single-line + smaller text on mobile */
@media (max-width: 480px) {
	body.single-product nav.woocommerce-breadcrumb {
		font-size: 12px !important;
		line-height: 1.2 !important;
		white-space: nowrap !important;
	}
	body.single-product nav.woocommerce-breadcrumb a { white-space: nowrap !important; }
	body.single-product nav.woocommerce-breadcrumb img.ax-breadcrumb-sep {
		width: 8px !important; height: 8px !important; margin: 0 4px !important;
	}
}

@media (max-width: 767px) {
	/* Ensure summary card is centered and full width on mobile */
	.woocommerce div.product .summary.entry-summary {
		margin-left: 0 !important;
		margin-right: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		padding-left: 20px !important;  /* global inner padding */
		padding-right: 20px !important; /* global inner padding */
	}
}

@media (max-width: 767px) {
	/* Lower summary by 80px relative to desktop offset */
	.woocommerce div.product .summary.entry-summary { top: 0 !important; }
}

/* AX: Mobile full-bleed width for summary and related products section */
@media (max-width: 767px) {
	.woocommerce div.product .summary.entry-summary {
		width: calc(100% + 80px) !important;
		margin-left: -40px !important;
		margin-right: -40px !important;
	}
	.related-products-carousel-4315-section {
		width: calc(100% + 40px) !important;
		margin-left: -20px !important;
		margin-right: -20px !important;
	}
}

/* AX: Mobile - remove horizontal padding for related products carousel container */
@media (max-width: 767px) {
	#related-products-carousel-4315-section.related.products {
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding: 0 !important;
	}
	#related-products-carousel-4315-section .rp-container,
	#related-products-carousel-4315-section .homepage-container {
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding: 0 !important;
	}
}

/* AX: Mobile - full-bleed width for related products section by ID */
@media (max-width: 767px) {
	#related-products-carousel-4315-section {
		width: calc(100% + 40px) !important;
		margin-left: -20px !important;
		margin-right: -20px !important;
	}
}

/* AX: Mobile - related products add button style */
@media (max-width: 767px) {
	#related-products-carousel-4315-section .rp-btn {
		background: #242323 !important;
		color: #f7e9cc !important;
		padding: 12px 20px !important;
		border-radius: 6px !important;
		text-decoration: none !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		font-family: 'BPGGuardian', sans-serif !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		transition: all 0.2s ease !important;
		border: none !important;
		cursor: pointer !important;
		min-height: 40px !important;
	}
}

/* AX: Mobile - related products carousel card sizing: show 2 full cards */
@media (max-width: 767px) {
    #related-products-carousel-4315-section .carousel-card,
    #related-products-carousel-4315-section .products-carousel .carousel-card,
    #related-products-carousel-4315-section .new-popular-carousel .carousel-card,
    #related-products-carousel-4315-section .carousel-product-card {
        /* container has ~16px side padding and ~12px gap */
        flex: 0 0 calc((100vw - 32px - 12px) / 2) !important;
        min-width: calc((100vw - 32px - 12px) / 2) !important;
        max-width: calc((100vw - 32px - 12px) / 2) !important;
        height: 320px !important;
    }
}

/* AX: Tablet widths - lower summary by 60px relative to desktop offset */
@media (min-width: 768px) and (max-width: 1060px) {
	.woocommerce div.product .summary.entry-summary {
		top: 40px !important; /* was -80px on desktop */
	}
}

/* AX: Mobile - Move stock status 3px to the left */
@media (max-width: 767px) {
    .single-product .summary.entry-summary .ax-stock-status.in {
        margin-left: -3px !important;
    }
}

/* ==========================================================================
   AX: High Quality Product Images - Original Quality
   ========================================================================== */

/* Force high-quality rendering for all product images */
.woocommerce img,
.woocommerce-page img,
.products img,
.product img,
.woocommerce-product-gallery img,
.cart_item img,
.mini_cart_item img,
.z-item-thumb img,
.rp-image,
.carousel-product-image img,
.card-image img,
.popular-card-image img {
	image-rendering: auto !important;
	-ms-interpolation-mode: bicubic !important;
}

/* Additional quality settings for cart and mini-cart */
.woocommerce-cart-form img,
.woocommerce-mini-cart img,
.widget_shopping_cart img {
	image-rendering: auto !important;
	max-width: 100% !important;
	height: auto !important;
}

/* Single product page gallery images */
.ax-product-gallery img,
.ax-thumb-image,
#ax-main-image {
	image-rendering: auto !important;
}

/* Main gallery image sizing: desktop in ax-product-gallery.css; mobile there too */
@media (min-width: 769px) {
	body.single-product .ax-product-gallery__main #ax-main-image {
		width: 92% !important;
		height: 92% !important;
		max-width: 92% !important;
		max-height: 92% !important;
		object-fit: contain !important;
	}
}

/* Homepage slider images - original quality */
.main-slider img,
.slider-section img,
.slide img {
	image-rendering: auto !important;
	-ms-interpolation-mode: bicubic !important;
}

/* Blog post images - original quality */
.blog-card-thumb img,
.blog-modal-thumb img,
.article-thumb img,
.blog-card .thumb img,
.homepage-blog-article img {
	image-rendering: auto !important;
	-ms-interpolation-mode: bicubic !important;
}

/* ==========================================================================
   AX: Hide filters on /search/
   ========================================================================== */

body.search .shop-filter,
body.search-results .shop-filter,
body.search-no-results .shop-filter,
body.page-slug-search .shop-filter,
body.search .filter-overlay,
body.search-results .filter-overlay,
body.search-no-results .filter-overlay,
body.page-slug-search .filter-overlay {
	display: none !important;
}

body.search .mobile-filter-button,
body.search-results .mobile-filter-button,
body.search-no-results .mobile-filter-button,
body.page-slug-search .mobile-filter-button {
	display: none !important;
}

body.search .shop-layout .shop-content,
body.search-results .shop-layout .shop-content,
body.search-no-results .shop-layout .shop-content,
body.page-slug-search .shop-layout .shop-content {
	max-width: 100% !important;
}

/* Search: content height follows results (override shop min-heights from shop-sorting.css) */
body.search .shop-container,
body.search-results .shop-container,
body.search-no-results .shop-container,
body.page-slug-search .shop-container {
	min-height: 0 !important;
}

body.search .shop-content,
body.search-results .shop-content,
body.search-no-results .shop-content,
body.page-slug-search .shop-content {
	min-height: 0 !important;
}

@media (max-width: 768px) {
	body.search .shop-container,
	body.search-results .shop-container,
	body.search-no-results .shop-container,
	body.page-slug-search .shop-container {
		min-height: 0 !important;
		height: auto !important;
	}

	body.search .shop-layout,
	body.search-results .shop-layout,
	body.search-no-results .shop-layout,
	body.page-slug-search .shop-layout {
		margin-top: 12px !important;
	}

	body.search .shop-content,
	body.search-results .shop-content,
	body.search-no-results .shop-content,
	body.page-slug-search .shop-content {
		min-height: 0 !important;
		padding-bottom: calc(var(--ax-mobile-nav-bar-height, 70px) + var(--ax-mobile-cart-bar-height, 0px) + 16px) !important;
	}

	body.search .shop-layout .products-grid,
	body.search-results .shop-layout .products-grid,
	body.search-no-results .shop-layout .products-grid,
	body.page-slug-search .shop-layout .products-grid,
	body.search .shop-layout .woocommerce ul.products,
	body.search-results .shop-layout .woocommerce ul.products,
	body.search-no-results .shop-layout .woocommerce ul.products,
	body.page-slug-search .shop-layout .woocommerce ul.products,
	body.search #products-container,
	body.search-results #products-container,
	body.search-no-results #products-container,
	body.page-slug-search #products-container {
		min-height: 0 !important;
	}
}

/* Desktop: show 4 product cards per row on search results */
@media (min-width: 1200px) {
	body.search .shop-layout .products-grid,
	body.search-results .shop-layout .products-grid,
	body.search-no-results .shop-layout .products-grid,
	body.page-slug-search .shop-layout .products-grid,
	body.search .shop-layout .woocommerce ul.products,
	body.search-results .shop-layout .woocommerce ul.products,
	body.search-no-results .shop-layout .woocommerce ul.products,
	body.page-slug-search .shop-layout .woocommerce ul.products {
		grid-template-columns: repeat(4, 280px) !important;
		gap: 16px !important;
		justify-content: center !important;
	}
}

/* AX: Mobile shop grid cards — match the carousel-card design.
   Image area is square (aspect-ratio 1/1) so the (square) product photo
   shows fully without vertical elongation; card grows naturally. */
@media (max-width: 768px) {
	body.woocommerce ul.products li.rp-shop-card .rp-card,
	body.woocommerce-page ul.products li.rp-shop-card .rp-card {
		/* fill the grid item so all cards in a row have equal height */
		height: 100% !important;
		/* Reduce mobile card height: size to content instead of the 360/400px
		   min-height. Equal heights kept via grid stretch. */
		min-height: 0 !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-img,
	body.woocommerce-page ul.products li.rp-shop-card .rp-img {
		height: auto !important;
		aspect-ratio: 1 / 1 !important;
		width: 100% !important;
		flex: 0 0 auto !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-image,
	body.woocommerce-page ul.products li.rp-shop-card .rp-image {
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
		object-position: center center !important;
		margin: 0 auto !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-img-link,
	body.woocommerce-page ul.products li.rp-shop-card .rp-img-link {
		display: flex !important;
		width: 100% !important;
		height: 100% !important;
		align-items: center !important;
		justify-content: center !important;
	}
}

@media (max-width: 576px) {
	body.woocommerce ul.products li.rp-shop-card .rp-card,
	body.woocommerce-page ul.products li.rp-shop-card .rp-card {
		/* fill the grid item so all cards in a row have equal height */
		height: 100% !important;
		min-height: 0 !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-img,
	body.woocommerce-page ul.products li.rp-shop-card .rp-img {
		height: auto !important;
		aspect-ratio: 1 / 1 !important;
		width: 100% !important;
		flex: 0 0 auto !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-image,
	body.woocommerce-page ul.products li.rp-shop-card .rp-image {
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
		object-position: center center !important;
	}
}

/* AX: Ensure shop grid product images are fully visible (no crop) */
body.woocommerce ul.products li.rp-shop-card .rp-img,
body.woocommerce-page ul.products li.rp-shop-card .rp-img {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
}

body.woocommerce ul.products li.rp-shop-card .rp-image,
body.woocommerce-page ul.products li.rp-shop-card .rp-image {
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	transform: none !important;
	margin: 0 auto !important;
}

/* AX: Mobile shop card title font-size = 10px */
@media (max-width: 768px) {
	body.woocommerce ul.products li.rp-shop-card .rp-title,
	body.woocommerce-page ul.products li.rp-shop-card .rp-title,
	ul.products li.rp-shop-card .rp-title {
		font-size: 10px !important;
		line-height: 1.3 !important;
		min-height: 0 !important;
	}
}

/* AX: Desktop shop cards - product image fills the image area (100%), ისე
   როგორც carousel card-ში. (ადრე 82%-ზე იყო შემცირებული.) */
@media (min-width: 769px) {
	body.woocommerce ul.products li.rp-shop-card .rp-img .rp-image,
	body.woocommerce-page ul.products li.rp-shop-card .rp-img .rp-image,
	body.woocommerce ul.products li.rp-shop-card .rp-img img.rp-image,
	body.woocommerce-page ul.products li.rp-shop-card .rp-img img.rp-image {
		width: auto !important;
		height: auto !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
	}
}

/* AX: Desktop shop cards - give the two-line Georgian title enough height
   so descenders on the second line are not clipped. */
@media (min-width: 769px) {
	body.woocommerce ul.products li.rp-shop-card .rp-card,
	body.woocommerce-page ul.products li.rp-shop-card .rp-card,
	ul.products li.rp-shop-card .rp-card {
		min-height: 405px !important;
		height: auto !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-info,
	body.woocommerce-page ul.products li.rp-shop-card .rp-info,
	ul.products li.rp-shop-card .rp-info {
		min-height: 155px !important;
		height: auto !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-title,
	body.woocommerce-page ul.products li.rp-shop-card .rp-title,
	ul.products li.rp-shop-card .rp-title {
		line-height: 1.35 !important;
		height: auto !important;
		min-height: 48px !important;
		max-height: none !important;
		margin-bottom: 8px !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-pricing,
	body.woocommerce-page ul.products li.rp-shop-card .rp-pricing,
	ul.products li.rp-shop-card .rp-pricing {
		margin-top: 0 !important;
	}

	body.woocommerce ul.products li.rp-shop-card .rp-actions,
	body.woocommerce-page ul.products li.rp-shop-card .rp-actions,
	ul.products li.rp-shop-card .rp-actions {
		margin-top: 4px !important;
		margin-bottom: 0 !important;
	}
}

/* AX: Remove installment display site-wide. */
.card-installment,
.popular-card-installment,
.carousel-installment-info,
.installment-info,
.rp-installment,
.woocommerce-price-installment,
.single-installment-button,
.single-installment-info,
.ax-installment-inline,
.ax-installment-amount,
.ax-installment-suffix {
	display: none !important;
}

.ax-price-with-installment {
	display: inline !important;
}

ul.products li.rp-shop-card .rp-pricing {
	min-height: 18px !important;
	gap: 0 !important;
}

/* AX: Mobile shop cards after removing installment - move price/button upward
   and reduce the card's content height by removing the old reserved spacing. */
@media (max-width: 768px) {
	body.woocommerce ul.products li.product.rp-shop-card .rp-info,
	body.woocommerce-page ul.products li.product.rp-shop-card .rp-info,
	ul.products li.product.rp-shop-card .rp-info {
		padding: 8px 10px 10px !important;
		gap: 1px !important;
		min-height: 8px !important;
	}

	body.woocommerce ul.products li.product.rp-shop-card .rp-title,
	body.woocommerce-page ul.products li.product.rp-shop-card .rp-title,
	ul.products li.product.rp-shop-card .rp-title {
		min-height: 26px !important;
		max-height: 26px !important;
		margin: 0 0 2px 0 !important;
	}

	body.woocommerce ul.products li.product.rp-shop-card .rp-pricing,
	body.woocommerce-page ul.products li.product.rp-shop-card .rp-pricing,
	ul.products li.product.rp-shop-card .rp-pricing {
		min-height: 18px !important;
		margin-top: 1px !important;
		gap: 0 !important;
	}

	body.woocommerce ul.products li.product.rp-shop-card .rp-actions,
	body.woocommerce-page ul.products li.product.rp-shop-card .rp-actions,
	ul.products li.product.rp-shop-card .rp-actions {
		margin-top: 4px !important;
		margin-bottom: 0 !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
		width: 100% !important;
	}

	body.woocommerce ul.products li.product.rp-shop-card .carousel-add-to-cart-btn.disabled,
	body.woocommerce-page ul.products li.product.rp-shop-card .carousel-add-to-cart-btn.disabled,
	body.woocommerce ul.products li.product.rp-shop-card .carousel-add-to-cart-btn[aria-disabled="true"],
	body.woocommerce-page ul.products li.product.rp-shop-card .carousel-add-to-cart-btn[aria-disabled="true"],
	ul.products li.product.rp-shop-card .carousel-add-to-cart-btn.disabled,
	ul.products li.product.rp-shop-card .carousel-add-to-cart-btn[aria-disabled="true"] {
		display: block !important;
		width: 100% !important;
		text-align: left !important;
		padding-left: 0 !important;
		margin-left: 0 !important;
	}
}

/* ==========================================================================
   AX: Single product — stable form.cart (sold individually parity)
   Scoped to single product only; does not affect shop/archive buttons.
   ========================================================================== */

body.single-product .woocommerce div.product .summary.entry-summary form.cart,
body.single-product .woocommerce div.product form.cart {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 15px !important;
	width: 100% !important;
	max-width: none !important;
}

body.single-product .woocommerce div.product form.cart .ax-qty-label {
	flex: 0 0 auto !important;
	margin: 0 10px 0 0 !important;
	white-space: nowrap !important;
}

body.single-product .woocommerce div.product form.cart .quantity {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	overflow: visible !important;
}

/* Reserve quantity column only when no quantity UI is present at all */
body.single-product .woocommerce div.product form.cart:not(:has(.quantity .mini-qty-btn)):not(:has(.quantity input.qty))::before {
	content: '' !important;
	display: block !important;
	flex: 0 0 140px !important;
	width: 140px !important;
	min-width: 140px !important;
	height: 48px !important;
	order: 1 !important;
}

body.single-product .woocommerce div.product form.cart .ax-qty-label {
	order: 0 !important;
}

body.single-product .woocommerce div.product form.cart .quantity {
	order: 1 !important;
}

body.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
	order: 2 !important;
	flex: 1 1 0% !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin-left: 0 !important;
	align-self: center !important;
}

body.single-product .woocommerce div.product form.cart:has(.quantity .mini-qty-btn)::before {
	content: none !important;
	display: none !important;
	flex: 0 0 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	height: 0 !important;
}

@media (max-width: 768px) {
	body.single-product .woocommerce div.product form.cart {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		max-width: 100% !important;
		gap: 12px !important;
	}

	body.single-product .woocommerce div.product form.cart:not(:has(.quantity .mini-qty-btn)):not(:has(.quantity input.qty))::before {
		flex: 0 0 120px !important;
		width: 120px !important;
		min-width: 120px !important;
		max-width: 120px !important;
	}

	body.single-product .woocommerce div.product form.cart .quantity {
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	body.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
		flex: 1 1 0% !important;
		font-size: 13px !important;
		padding: 0 12px !important;
	}
}

@media (max-width: 480px) {
	body.single-product .woocommerce div.product form.cart {
		gap: 8px !important;
	}

	body.single-product .woocommerce div.product form.cart:not(:has(.quantity .mini-qty-btn)):not(:has(.quantity input.qty))::before {
		flex: 0 0 100px !important;
		width: 100px !important;
		min-width: 100px !important;
		max-width: 100px !important;
	}

	body.single-product .woocommerce div.product form.cart .quantity {
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	body.single-product .woocommerce div.product form.cart .single_add_to_cart_button {
		font-size: 12px !important;
		padding: 0 8px !important;
	}
}

/* --------------------------------------------------------------------------
   Product page quantity: override Bricks woocommerce.min.css bar layout so it
   matches fs-cart-dropdown .mini-qty-* (separate bordered buttons + input).
   -------------------------------------------------------------------------- */
body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper {
	display: inline-grid !important;
	grid-template-columns: 28px 40px 28px !important;
	grid-template-rows: 28px !important;
	align-items: center !important;
	justify-items: center !important;
	gap: 8px !important;
	width: auto !important;
	max-width: none !important;
	padding: 4px !important;
	margin-top: 0 !important;
	background: #fff !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	overflow: visible !important;
	flex: 0 0 auto !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-minus,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-minus {
	grid-column: 1 !important;
	grid-row: 1 !important;
	order: 0 !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-plus,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-plus {
	grid-column: 3 !important;
	grid-row: 1 !important;
	order: 0 !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-btn,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-btn {
	width: 28px !important;
	height: 28px !important;
	flex: 0 0 28px !important;
	border: 1px solid #242323 !important;
	background: #242323 !important;
	border-radius: 4px !important;
	color: #f7e9cc !important;
	font-size: 16px !important;
	font-weight: bold !important;
	line-height: 1 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 1 !important;
	cursor: pointer !important;
	user-select: none !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-btn:hover,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-btn:hover {
	background: #242323 !important;
	color: #f7e9cc !important;
	border-color: #242323 !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-btn:disabled,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-btn:disabled {
	opacity: 0.5 !important;
	cursor: not-allowed !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-input,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-input,
body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper input[type="number"],
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper input[type="number"] {
	grid-column: 2 !important;
	grid-row: 1 !important;
	order: 0 !important;
	flex: none !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 28px !important;
	text-align: center !important;
	border: 1px solid #ddd !important;
	border-left: 1px solid #ddd !important;
	border-right: 1px solid #ddd !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	background: #fff !important;
	color: #333 !important;
	padding: 0 !important;
	line-height: 28px !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
	-webkit-appearance: none !important;
}

body.single-product .woocommerce form.cart .quantity.mini-qty-wrapper .mini-qty-input:focus,
body.single-product .woocommerce div.product form.cart .quantity.mini-qty-wrapper .mini-qty-input:focus {
	outline: none !important;
	border-color: #242323 !important;
	box-shadow: 0 0 0 2px rgba(36,35,35, 0.1) !important;
}

/* =========================================================================
   AX PRODUCT CARD REDESIGN (2026-07) — carousel + shop cards
   მოცულობის badge · ღვინის სახეობა (subtitle) · გრავირების pill · გამყოფი ·
   ფასის ბლოკი (ფასი + ლარი) | თვალის ღილაკი + „+ კალათაში".
   ეს ბლოკი ბოლოს იტვირთება → აჭარბებს ძველ card წესებს.
   ========================================================================= */

/* ---- ბარათის ჩარჩო (frame ხელახლა ჩართული) ---- */
body ul.products li.rp-shop-card .rp-card,
body ul.products li.rp-shop-card .rp-card:hover,
.new-popular-carousel .carousel-card,
section[class^="carousel-"] .carousel-card {
    border: 1px solid #ececec !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 10px rgba(36,35,35,.05) !important;
    overflow: hidden !important;
    background: #fff !important;
}
body ul.products li.rp-shop-card .rp-card:hover,
.new-popular-carousel .carousel-card:hover,
section[class^="carousel-"] .carousel-card:hover {
    border: 1px solid #e2ddd2 !important;
    box-shadow: 0 6px 18px rgba(36,35,35,.10) !important;
}

/* ---- ფოტოს კონტეინერის სიმაღლის გაზრდა ----
   carousel-ში .card-image არის flex item flex-basis:250px-ით, რაც height-ს
   აჭარბებს → საჭიროა flex-basis-ის override (მაღალი specificity-ით). */
body ul.products li.rp-shop-card .rp-img { height: 320px !important; }
.new-popular-carousel .carousel-card .card-image,
section[class^="carousel-"] .carousel-card .card-image { height: 320px !important; flex: 0 0 320px !important; }

/* ---- info ბლოკი: ცენტრი, auto სიმაღლე ---- */
body ul.products li.rp-shop-card .rp-info,
.new-popular-carousel .card-info,
section[class^="carousel-"] .card-info {
    text-align: center !important;
    align-items: center !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 16px !important;
    gap: 0 !important;
}

/* ---- მოცულობის badge (top-right, plain text) ---- */
.ax-vol-badge {
    font-family: 'BPGGuardian', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #4a4644;
    line-height: 1;
    letter-spacing: .01em;
    text-align: right;
}

/* ---- subtitle (ღვინის სახეობა) ---- */
.ax-card-sub {
    display: block;
    font-family: 'BPGGuardian', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    color: #8a847d;
    margin: 0 0 6px;
    text-align: center;
}

/* ---- title (გამსხვილებული, ცენტრში) ---- */
body ul.products li.rp-shop-card .rp-title,
.new-popular-carousel .card-title,
section[class^="carousel-"] .card-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #242323 !important;
    line-height: 1.3 !important;
    margin: 0 0 12px !important;
    text-align: center !important;
    height: auto !important;
}
.new-popular-carousel .card-title a,
section[class^="carousel-"] .card-title a,
body ul.products li.rp-shop-card .rp-title { color: #242323 !important; }

/* ---- გრავირების pill ---- */
.ax-engrave-note {
    display: inline-block !important;
    margin: 0 auto 14px !important;
    padding: 7px 16px !important;
    border: 1px solid #e8d9b4 !important;
    border-radius: 9px !important;
    background: #faf6ec !important;
    color: #7f170e !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

/* ---- გამყოფი ---- */
.ax-card-divider {
    width: 100%;
    height: 0;
    border: 0;
    border-top: 1px solid #ececec;
    margin: 4px 0 14px;
}

/* ---- foot: ფასი | actions ---- */
.ax-card-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    margin-top: auto;
}
.ax-price-block {
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ax-price-label {
    font-family: 'BPGGuardian', sans-serif;
    font-size: 12px;
    color: #8a847d;
    line-height: 1;
}
body ul.products li.rp-shop-card .rp-price,
.new-popular-carousel .card-price,
section[class^="carousel-"] .card-price {
    color: #7f170e !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    justify-content: flex-start !important;
    align-items: baseline !important;
    margin: 0 !important;
    height: auto !important;
    line-height: 1.15 !important;
}
/* ფასის შიდა თანხა — bordeaux; ფასდაკლების ძველი ფასი — მუქი ნაცრისფერი */
body ul.products li.rp-shop-card .rp-price .woocommerce-Price-amount,
body ul.products li.rp-shop-card .rp-price ins,
.new-popular-carousel .card-price .woocommerce-Price-amount,
.new-popular-carousel .card-price ins,
section[class^="carousel-"] .card-price .woocommerce-Price-amount,
section[class^="carousel-"] .card-price ins { color: #7f170e !important; }
body ul.products li.rp-shop-card .rp-price del,
body ul.products li.rp-shop-card .rp-price del .woocommerce-Price-amount,
.new-popular-carousel .card-price del,
.new-popular-carousel .card-price del .woocommerce-Price-amount,
section[class^="carousel-"] .card-price del,
section[class^="carousel-"] .card-price del .woocommerce-Price-amount { color: #9a938c !important; }

/* ---- actions: თვალი + კალათა ---- */
.ax-card-cta { display: flex; align-items: center; gap: 8px; }
.ax-quickview {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e2ddd2;
    border-radius: 10px;
    color: #6b6560;
    background: #fff;
    text-decoration: none;
    transition: border-color .15s ease, color .15s ease;
}
.ax-quickview:hover { border-color: #7f170e; color: #7f170e; }

/* არჩევის ღილაკი — მუქი #242323 (ძველ სტილს აჭარბებს) */
body ul.products li.rp-shop-card .ax-card-cta .carousel-add-to-cart-btn,
.new-popular-carousel .ax-card-cta .carousel-add-to-cart-btn,
section[class^="carousel-"] .ax-card-cta .carousel-add-to-cart-btn {
    background: #242323 !important;
    color: #f7e9cc !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 12px 18px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: auto !important;
    min-height: 44px !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transition: background .15s ease !important;
}
body ul.products li.rp-shop-card .ax-card-cta .carousel-add-to-cart-btn:hover,
.new-popular-carousel .ax-card-cta .carousel-add-to-cart-btn:hover,
section[class^="carousel-"] .ax-card-cta .carousel-add-to-cart-btn:hover {
    background: #3a3737 !important;
    transform: none !important;
}
.ax-cart-plus { font-size: 17px; font-weight: 700; line-height: 1; }
body ul.products li.rp-shop-card .ax-card-cta .carousel-add-to-cart-btn.disabled,
body ul.products li.rp-shop-card .ax-card-cta .carousel-add-to-cart-btn[aria-disabled="true"],
.new-popular-carousel .ax-card-cta .carousel-add-to-cart-btn.disabled,
section[class^="carousel-"] .ax-card-cta .carousel-add-to-cart-btn.disabled,
section[class^="carousel-"] .ax-card-cta .carousel-add-to-cart-btn[aria-disabled="true"] {
    background: #e6e2da !important;
    color: #8a847d !important;
    cursor: not-allowed !important;
    transform: none !important;
}

/* ---- ძველი order წესების გაუქმება (DOM order-ს დავეყრდნოთ) ---- */
ul.products li.rp-shop-card .rp-info .ax-card-sub,
ul.products li.rp-shop-card .rp-info .rp-title,
ul.products li.rp-shop-card .rp-info .ax-engrave-note,
ul.products li.rp-shop-card .rp-info .ax-card-divider,
ul.products li.rp-shop-card .rp-info .ax-card-foot { order: 0 !important; }

/* ---- თანაბარი სიმაღლე: ყველა ბარათი რიგში/კარუსელში ერთი სიმაღლის ---- */
.woocommerce ul.products,
.woocommerce-page ul.products { align-items: stretch !important; }
ul.products li.rp-shop-card { height: 100% !important; display: flex !important; }
ul.products li.rp-shop-card .rp-card { height: 100% !important; }
.new-popular-carousel .carousel-track,
section[class^="carousel-"] .carousel-track { align-items: stretch !important; }
.new-popular-carousel .carousel-card,
section[class^="carousel-"] .carousel-card { height: auto !important; }

/* ---- Hover: carousel ზუსტად ისე როგორც shop card — ნულოვანი მოძრაობა ----
   transition მხოლოდ box-shadow/border-color-ზე (არა „all"), რომ layout-ის
   არცერთი თვისება არ დაანიმაციდეს (რაც ხაზის „აწევას" იწვევდა). */
body ul.products li.rp-shop-card .rp-card,
.new-popular-carousel .carousel-card,
section[class^="carousel-"] .carousel-card {
    transition: box-shadow .2s ease, border-color .2s ease !important;
}
body ul.products li.rp-shop-card .rp-card:hover,
body ul.products li.rp-shop-card .rp-card:hover *,
.new-popular-carousel .carousel-card:hover,
.new-popular-carousel .carousel-card:hover *,
section[class^="carousel-"] .carousel-card:hover,
section[class^="carousel-"] .carousel-card:hover * { transform: none !important; }
body ul.products li.rp-shop-card .rp-image,
.new-popular-carousel .card-image img,
section[class^="carousel-"] .card-image img { transition: none !important; }

/* ---- Responsive: ვიწრო ბარათებზე foot ვერტიკალურად ---- */
@media (max-width: 768px) {
    .ax-card-foot { flex-direction: column; align-items: stretch; gap: 10px; }
    .ax-price-block { text-align: center; align-items: center; }
    body ul.products li.rp-shop-card .rp-price,
    .new-popular-carousel .card-price,
    section[class^="carousel-"] .card-price { justify-content: center !important; }
    .ax-card-cta { justify-content: center; }
    body ul.products li.rp-shop-card .ax-card-cta .carousel-add-to-cart-btn,
    .new-popular-carousel .ax-card-cta .carousel-add-to-cart-btn,
    section[class^="carousel-"] .ax-card-cta .carousel-add-to-cart-btn { flex: 1 1 auto; }
    .ax-card-sub { font-size: 11px !important; }
    body ul.products li.rp-shop-card .rp-title,
    .new-popular-carousel .card-title,
    section[class^="carousel-"] .card-title { font-size: 14px !important; }
    body ul.products li.rp-shop-card .rp-img { height: 260px !important; }
    .new-popular-carousel .carousel-card .card-image,
    section[class^="carousel-"] .carousel-card .card-image { height: 260px !important; flex: 0 0 260px !important; }
    body ul.products li.rp-shop-card .rp-price,
    .new-popular-carousel .card-price,
    section[class^="carousel-"] .card-price { font-size: 16px !important; }
}

/* ==========================================================================
   Card photo hover-swap: shop cards (.rp-img-link) and every carousel card
   (.card-image-link) show the product's second photo (first WooCommerce
   gallery image) on hover. ax_product_card_featured_img() in functions.php
   renders both <img> tags; this just crossfades between them. Products with
   no gallery image only get the primary <img>, so hovering is a no-op there.
   ========================================================================== */
.rp-img-link, .card-image-link { position: relative; }

/* Carousel cards only: give the image-wrapping <a> an explicit box the same
   size as its .card-image parent (shop cards already get this from
   .rp-img-link's own flex/100% rule). An absolutely-positioned child's
   width/height:100% only resolves against a positioned ancestor that has a
   real (non-auto) size — without this, .card-image-link just shrinks to the
   primary photo's own rendered size, so the hover photo (sized off that
   auto height) doesn't fully cover it: a gap of the card's background shows
   above the photo, and the primary photo's bottom edge peeks out from behind
   the hover photo. */
.card-image-link {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    align-items: flex-start;
    justify-content: center;
}

/* style.css has breakpoint-scoped rules re-centering this link
   (".card-image a { align-items:center }", one variant !important'd under
   max-width:768px) that beat the align-items above both on desktop and on
   mobile, re-centering the primary photo instead of top-aligning it — the
   primary photo (auto-sized, often shorter than the 298x320 box) then
   leaves an equal gap top and bottom, showing as a white strip above the
   photo. Force top alignment, scoped 3 classes deep so it outranks those
   rules (including the !important mobile one) regardless of viewport. */
.carousel-card .card-image .card-image-link,
.rp-shop-card .rp-img .rp-img-link,
html body.woocommerce ul.products li.product.rp-shop-card .rp-card .rp-img-link,
html body.woocommerce-page ul.products li.product.rp-shop-card .rp-card .rp-img-link {
    align-items: flex-start !important;
}

.ax-card-img-hover {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: top center;
    opacity: 0;
    transition: opacity 0.25s ease, transform 0.2s ease;
    pointer-events: none;
}

/* style.css has an unscoped, higher-specificity !important rule
   (.card-image img { width:auto !important; height:auto !important } )
   meant to keep the PRIMARY photo from stretching. It also matches this
   hover photo and was overriding the 100%/100% box above, collapsing the
   hover photo to its intrinsic aspect ratio instead of filling the card —
   causing both the top gap and the peeking-through first photo. This
   selector is scoped 3 classes deep to outrank that rule regardless of
   stylesheet load order. */
.card-image .card-image-link img.ax-card-img-hover,
.rp-img .rp-img-link img.ax-card-img-hover {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: top center !important;
}

body ul.products li.rp-shop-card .rp-card:hover .ax-card-img-hover,
.new-popular-carousel .carousel-card:hover .ax-card-img-hover,
section[class^="carousel-"] .carousel-card:hover .ax-card-img-hover {
    opacity: 1;
    transform: scale(1.02);
}
