﻿/* -- Shop/Products page header banner height reduction --------------------- */
.woocommerce-page .woostify-page-header,
.post-type-archive-product .woostify-page-header,
.tax-product_cat .woostify-page-header,
.page-template-default .woostify-page-header,
.woocommerce .woostify-page-header,
.woostify-page-header { min-height: 80px !important; padding: 16px 0 !important; }

/* -- Remove sticky header -------------------------------------------------- */
.elementor-element-f36c5ce,
.elementor-element-f36c5ce.elementor-sticky--active,
.elementor-element-f36c5ce.elementor-sticky--effects {
    position: static !important;
    top: auto !important;
    z-index: auto !important;
    transform: none !important;
    width: auto !important;
}
/* Hide any spacer div Elementor injects for sticky offset */
.elementor-element-f36c5ce + .elementor-sticky__spacer,
.elementor-sticky__spacer {
    display: none !important;
    height: 0 !important;
}
/* Remove body padding added by Elementor sticky JS */
body.elementor-page-924 {
    padding-top: 0 !important;
}
/* â”€â”€ Desktop Header: prevent nav items (e.g. "Contact") from wrapping â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (min-width: 1025px) {
    .elementor-location-header .elementor-nav-menu--main {
        flex-wrap: nowrap !important;
    }
    .elementor-location-header .elementor-nav-menu--main > li {
        white-space: nowrap !important;
    }
}

/* â”€â”€ Search Bar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.ch-search-wrap {
    max-width: 900px;
    margin: 0 auto 36px;
    padding: 20px 24px;
    background: #f8f8f8;
    border-radius: 20px;
    position: relative;
}

.ch-filter-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
}

.ch-search-form {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: box-shadow .2s, border-color .2s;
    flex: 2 1 0;
    min-width: 0;
}

.ch-search-form:focus-within {
    border-color: #1a1a1a;
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}

.ch-search-input {
    flex: 1;
    border: none;
    outline: none;
    padding: 13px 16px;
    font-size: 13.5px;
    font-family: Poppins, sans-serif;
    background: transparent;
    color: #1a1a1a;
    min-width: 0;
}

.ch-search-input::placeholder {
    color: #bbb;
    font-weight: 400;
}

.ch-search-btn {
    background: #1a1a1a;
    border: none;
    color: #fff;
    width: 46px;
    flex-shrink: 0;
    cursor: pointer;
    transition: background .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    border-radius: 0 13px 13px 0;
}

.ch-search-btn:hover {
    background: #333;
}

/* ── Custom dropdowns ────────────────────────────────────────────────────── */

.ch-dropdown {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
}

.ch-dd-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    padding: 13px 16px;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #1a1a1a;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: border-color .2s, box-shadow .2s;
    text-align: left;
}

.ch-dd-btn:hover, .ch-dropdown.open .ch-dd-btn {
    border-color: #1a1a1a;
    box-shadow: 0 4px 20px rgba(0,0,0,0.10);
}

.ch-dd-chevron {
    flex-shrink: 0;
    transition: transform .2s;
}

.ch-dropdown.open .ch-dd-chevron {
    transform: rotate(180deg);
}

.ch-dd-menu {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.12);
    overflow: hidden;
    z-index: 999;
    animation: ch-dd-fade .15s ease;
}

@keyframes ch-dd-fade {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.ch-dropdown.open .ch-dd-menu {
    display: block;
}

.ch-dd-item {
    padding: 11px 16px;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #1a1a1a;
    cursor: pointer;
    transition: background .12s;
}

.ch-dd-item:hover {
    background: #f5f5f5;
}

.ch-dd-item.active {
    font-weight: 600;
    background: #f8f8f8;
    color: #1a1a1a;
}

.ch-dd-has-kids {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
}
.ch-cat-arrow {
    flex-shrink: 0;
    transition: transform 0.2s ease;
    opacity: 0.5;
}
.ch-dd-has-kids.ch-dd-expanded .ch-cat-arrow {
    transform: rotate(180deg);
    opacity: 0.8;
}
.ch-dd-sub {
    padding: 8px 16px 8px 26px;
    font-size: 13px;
    color: #555;
    position: relative;
    display: none;
}
.ch-dd-sub::before {
    content: '–';
    position: absolute;
    left: 14px;
    color: #ccc;
    font-size: 11px;
}
.ch-dd-sub:hover {
    background: #f5f5f5;
    color: #1a1a1a;
}


/* ── Add to cart button loading state — CSS fallback for encoding fix ───── */
/* When .loading, hide button text and show "Adding…" via ::after to avoid
   encoding corruption from source JS showing "Addingâ€¦" */
.single_add_to_cart_button.loading {
    color: transparent !important;
    position: relative !important;
}
.single_add_to_cart_button.loading::after {
    content: 'Adding…' !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    color: #1a1a1a !important;
    font-family: Poppins, sans-serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    white-space: nowrap !important;
    pointer-events: none !important;
}

/* ── Stock progress bar ─────────────────────────────────────────────────── */
.ch-stock-wrap {
    margin: 12px 0 4px !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
}
.ch-stock-label {
    font-family: Poppins, sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #444 !important;
    display: block !important;
    margin-bottom: 8px !important;
    letter-spacing: 0.2px;
}
.ch-stock-track {
    width: 100% !important;
    height: 8px !important;
    background: #ececec !important;
    border-radius: 100px !important;
    overflow: hidden !important;
    position: relative !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.08) !important;
}
.ch-stock-fill {
    display: block !important;
    height: 100% !important;
    width: 0;
    border-radius: 100px !important;
    transition: width 0.9s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
}
.ch-stock-fill::after {
    content: '';
    position: absolute;
    top: 0; right: 0;
    width: 10px; height: 100%;
    background: rgba(255,255,255,0.35);
    border-radius: 0 100px 100px 0;
}
.ch-stock-fill.ch-stock-critical {
    animation: ch-stock-pulse 1.8s ease-in-out infinite;
}
@keyframes ch-stock-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.75; }
}
.ch-stock-urgency {
    display: block !important;
    font-family: Poppins, sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    margin-top: 5px !important;
    letter-spacing: 0.3px;
}
.ch-stock-urgency { color: #e67e22; }
.ch-stock-critical + .ch-stock-urgency,
.ch-stock-wrap:has(.ch-stock-critical) .ch-stock-urgency { color: #e74c3c; }
/* Override Woostify default bar */
.woostify-product-stock-progress {
    height: 10px !important;
    background: #ebebeb !important;
    border-radius: 100px !important;
    overflow: hidden !important;
    display: block !important;
    margin-top: 10px !important;
    position: relative !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.1) !important;
}
.woostify-product-stock-progress .woostify-single-product-stock-progress-bar {
    display: block !important;
    height: 100% !important;
    margin: 0 !important;
    border-radius: 100px !important;
    background: linear-gradient(90deg, #1a1a1a 0%, #444 60%, #222 100%) !important;
    transition: width 1.1s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}
/* Shimmer sweep animation */
.woostify-product-stock-progress .woostify-single-product-stock-progress-bar::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -60% !important;
    width: 50% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.28), transparent) !important;
    animation: ch-stock-shimmer 2.2s ease-in-out infinite !important;
    border-radius: 100px !important;
}
@keyframes ch-stock-shimmer {
    0%   { left: -60%; }
    100% { left: 120%; }
}

/* ── Search indicator ───────────────────────────────────────────────────── */
.ch-searching-msg {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 12px;
    padding: 10px 20px;
    background: #fff;
    border: 1.5px solid #e8e8e8;
    border-radius: 50px;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

.ch-searching-msg[style*="display: block"],
.ch-searching-msg[style*="display:block"] {
    display: flex !important;
}

.ch-search-spinner {
    width: 16px;
    height: 16px;
    border: 2px solid #e8e8e8;
    border-top-color: #1a1a1a;
    border-radius: 50%;
    animation: ch-spin .7s linear infinite;
    flex-shrink: 0;
}

@keyframes ch-spin {
    to { transform: rotate(360deg); }
}

.ch-search-label {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #1a1a1a;
    letter-spacing: 0.2px;
}

.ch-search-pulse-dots {
    display: flex;
    gap: 4px;
    align-items: center;
}

.ch-search-pulse-dots span {
    width: 4px;
    height: 4px;
    background: #1a1a1a;
    border-radius: 50%;
    animation: ch-pulse-dot .9s ease-in-out infinite;
}

.ch-search-pulse-dots span:nth-child(2) { animation-delay: .15s; }
.ch-search-pulse-dots span:nth-child(3) { animation-delay: .3s; }

@keyframes ch-pulse-dot {
    0%, 80%, 100% { transform: scale(0.6); opacity: .4; }
    40%            { transform: scale(1);   opacity: 1; }
}

/* â”€â”€ Results Modal â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.ch-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.55);
    z-index: 99999;
    align-items: flex-start;
    justify-content: center;
    padding-top: 60px;
    backdrop-filter: blur(3px);
}

.ch-modal-overlay.active {
    display: flex;
}

.ch-modal {
    background: #fff;
    border-radius: 16px;
    width: 92%;
    max-width: 860px;
    max-height: 78vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 60px rgba(0,0,0,0.25);
    animation: ch-modal-in .22s ease;
}

@keyframes ch-modal-in {
    from { opacity: 0; transform: translateY(-20px) scale(.97); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}

.ch-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 24px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.ch-modal-title {
    font-family: Poppins, sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #2c2c2c;
}

.ch-modal-close {
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
    color: #666;
    line-height: 1;
    padding: 4px 8px;
    border-radius: 6px;
    transition: background .15s;
}

.ch-modal-close:hover {
    background: #f0f0f0;
    color: #2c2c2c;
}

.ch-modal-body {
    overflow-y: auto;
    padding: 20px 24px;
    flex: 1;
}

.ch-no-results {
    text-align: center;
    padding: 40px 20px;
    font-family: Poppins, sans-serif;
    color: #888;
    font-size: 15px;
}

.ch-results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 16px;
}

.ch-result-card {
    border: 1px solid #eee;
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: transform .18s, box-shadow .18s;
    display: block;
}

.ch-result-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
    text-decoration: none;
    color: inherit;
}

.ch-result-img {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
    display: block;
    background: #f5f5f5;
}

.ch-result-info {
    padding: 10px 12px 12px;
}

.ch-result-name {
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: #2c2c2c;
    line-height: 1.4;
    margin-bottom: 6px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ch-result-price {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #2c2c2c;
}

.ch-result-price del {
    color: #aaa;
    font-weight: 400;
    font-size: 11px;
    margin-right: 4px;
}

.ch-sale-badge {
    display: inline-block;
    background: #e74c3c;
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    margin-bottom: 4px;
    font-family: Poppins, sans-serif;
    letter-spacing: .3px;
}

/* â”€â”€ Portrait Product Images â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woostify-product-thumbnail img,
.product-loop-thumbnail img {
    aspect-ratio: 3 / 4 !important;
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    background: #f5f5f5 !important;
}

/* Remove fixed height that forces square */
.woocommerce ul.products li.product a img {
    max-height: none !important;
}

@media (max-width: 768px) {
    .ch-results-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    .ch-modal {
        width: 96%;
        max-height: 85vh;
        border-radius: 12px;
    }
    .ch-modal-overlay {
        padding-top: 30px;
    }
}

/* â”€â”€ Discount Percentage Badge â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Override Woostify + WooCommerce default sale badge â€” black pill */
.woostify-tag-on-sale,
.ch-discount-badge,
.woocommerce span.onsale,
.woocommerce-page span.onsale {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    background: #1a1a1a !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .3px !important;
    padding: 5px 12px !important;
    border-radius: 50px !important;
    min-height: auto !important;
    min-width: auto !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    z-index: 9 !important;
    border: none !important;
}

/* â”€â”€ Hide star ratings on product cards â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.woocommerce ul.products li.product .star-rating,
.woocommerce-page ul.products li.product .star-rating,
.woocommerce ul.products li.product .woocommerce-loop-product__rating,
.woocommerce-page ul.products li.product .woocommerce-loop-product__rating,
body.woocommerce-cart ul.products li.product .star-rating,
body.woocommerce-cart ul.products li.product .woocommerce-loop-product__rating,
body.woocommerce-cart .star-rating,
body.woocommerce-cart .woocommerce-product-rating {
    display: none !important;
}

/* â”€â”€ Product Card Typography (Task 3) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Product title â€” styling on h2, clamp on the a inside */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2.product_title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
h2.woocommerce-loop-product__title {
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #1a1a1a !important;
    letter-spacing: .2px !important;
    line-height: 1.5 !important;
    text-transform: none !important;
    margin-bottom: 6px !important;
    overflow: hidden !important;
    display: block !important;
}

/* Line clamp 2 â€” applied to the a tag (where text actually lives) */
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce ul.products li.product h2.product_title a,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title a,
h2.woocommerce-loop-product__title a {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: inherit !important;
    text-decoration: none !important;
}

/* Cart block grid title clamp */
.wc-block-grid__product-title a {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: inherit !important;
    text-decoration: none !important;
}

/* â”€â”€ Bank Details page â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
/* Thank you page heading */
p.woocommerce-thankyou-order-received {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
    font-size: 24px !important;
}

/* Order received page — Order Details & Address headings */
h2.woocommerce-order-details__title,
h2.woocommerce-column__title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}

/* Order received table headers */
.woocommerce-order-details .woocommerce-table thead th,
.woocommerce-order-details .woocommerce-table tfoot th,
.woocommerce-order-details .woocommerce-table tfoot td strong {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

/* ── Order received page — full black/white color scheme ───────────────────── */
/* Thank you box — black border instead of brown/gold */
.woocommerce-notice--success,
p.woocommerce-thankyou-order-received {
    border-color: #000 !important;
    color: #000 !important;
}

/* Order summary meta (Order number, Date, Total, Payment method) */
.woocommerce-order-overview,
.woocommerce-order-overview li,
.woocommerce-order-overview li strong,
.woocommerce-order-overview li a {
    color: #000 !important;
    border-color: #e0e0e0 !important;
}

/* Table headers, footers, headings */
.woocommerce-table--order-details thead th,
.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td,
.woocommerce-table--order-details tfoot td strong,
h2.woocommerce-order-details__title,
h2.woocommerce-column__title {
    color: #000 !important;
    border-color: #e0e0e0 !important;
}

/* Table body text + prices — Poppins 600 */
.woocommerce-table--order-details tbody td,
.woocommerce-table--order-details tbody th,
.woocommerce-table--order-details .woocommerce-Price-amount {
    color: #111 !important;
}

.woocommerce-table--order-details .woocommerce-Price-amount,
.woocommerce-table--order-details tfoot td .woocommerce-Price-amount,
.woocommerce-table--order-details tbody td .woocommerce-Price-amount {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    color: #111 !important;
}

/* General order page text */
.woocommerce-order,
.woocommerce-order p,
.woocommerce-order address {
    color: #111 !important;
}

/* Address box borders */
.woocommerce-column--billing-address,
.woocommerce-column--shipping-address {
    border-color: #e0e0e0 !important;
}

/* All links on order received page */
.woocommerce-order a,
.woocommerce-order-overview a,
.woocommerce-table--order-details a,
.woocommerce-order-overview li a,
.woocommerce-order-overview__payment-method a {
    color: #111 !important;
    text-decoration: none !important;
}

/* All text + links in order received table — force black */
.woocommerce-table--order-details .woocommerce-shipping-totals td,
.woocommerce-table--order-details .woocommerce-shipping-totals td *,
.woocommerce-table--order-details tbody td,
.woocommerce-table--order-details tbody td *,
.woocommerce-table--order-details tfoot td,
.woocommerce-table--order-details tfoot td *,
.woocommerce-table--order-details tfoot td bdi,
.woocommerce-table--order-details .woocommerce-Price-amount,
.woocommerce-table--order-details .woocommerce-Price-amount bdi,
.woocommerce-table--order-details tbody td a,
.woocommerce-table--order-details tbody td a:hover,
.woocommerce-table__product-name a,
.woocommerce-table__product-name a:hover {
    color: #111 !important;
    text-decoration: none !important;
}

/* ── Checkout page — Barlow Condensed fonts + black/white scheme ───────────── */

/* Page heading "CHECKOUT" */
.woocommerce-page .woostify-page-header h1,
.page-id-590 .entry-title,
body.woocommerce-checkout .woostify-page-header h1 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #fff !important;
}

/* Block checkout section headings (Contact information, Shipping address, etc.) */
.wc-block-checkout__step-title,
.wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-contact-information-block .wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-shipping-address-block .wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-delivery-address-block .wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-payment-block .wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-step__title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}

/* Form field labels */
.wc-block-components-text-input label,
.wc-block-components-select label,
.wc-block-components-checkbox label,
.wc-block-components-form label,
.wc-block-checkout label {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
    font-size: 13px !important;
}

/* Input fields text */
.wc-block-components-text-input input,
.wc-block-components-select select,
.wc-block-checkout input[type="text"],
.wc-block-checkout input[type="email"],
.wc-block-checkout input[type="tel"],
.wc-block-checkout textarea {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 400 !important;
    color: #000 !important;
    border-color: #ccc !important;
}

/* Payment method labels */
.wc-block-components-payment-method-label,
.wc-block-components-payment-method-label__label,
.wc-block-components-radio-control__label,
.wc-block-components-radio-control-accordion-option__label {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}

/* Payment method description text */
.wc-block-components-payment-method-description,
.wc-block-components-radio-control-accordion-option .wc-block-components-payment-method-description p,
.wc-block-components-payment-method-description p {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #444 !important;
}

/* Order summary sidebar */
.wc-block-components-order-summary__title,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block h2 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}

/* Order summary item names and prices */
.wc-block-components-order-summary-item__name,
.wc-block-components-order-summary-item__individual-prices,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-totals-item__description {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #000 !important;
}

/* "Subtotal", "Shipping", "Total" row labels */
.wc-block-components-totals-item__label {
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .03em !important;
}

/* Place Order button */
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-proceed-to-checkout-block a,
.wc-block-cart__submit-button {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    font-size: 18px !important;
    background: #000 !important;
    color: #fff !important;
    border-color: #000 !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-cart__submit-button:hover {
    background: #222 !important;
    color: #fff !important;
}

/* "Return to cart" and other links */
.wc-block-checkout__return-to-cart-link,
.wc-block-checkout a {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #000 !important;
}

/* Coupon/discount section */
.wc-block-components-totals-coupon__form label,
.wc-block-components-totals-coupon button {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

/* Policy/terms text */
.wc-block-checkout__terms,
.wc-block-checkout__terms p,
.wc-block-checkout__terms a {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #444 !important;
}

/* Sidebar: "Order summary" heading */
.wc-block-components-order-summary .wc-block-components-panel__button,
.wc-block-components-order-summary .wc-block-components-panel__button span,
.wc-block-checkout__sidebar .wc-block-components-panel__button,
.wc-block-checkout__sidebar .wc-block-components-panel__button-title,
.wc-block-checkout__sidebar .wc-block-components-panel__button *,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel__button,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel__button span,
.wc-block-components-checkout-order-summary__title,
.wc-block-components-checkout-order-summary__title-text,
p.wc-block-components-checkout-order-summary__title-text {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}

/* Sidebar: product names, descriptions */
.wc-block-components-order-summary-item__name,
.wc-block-components-order-summary-item__meta-text,
.wc-block-components-order-summary-item__description {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #000 !important;
}

/* Sidebar: all prices — Poppins 600 to match product card style */
.wc-block-components-order-summary-item__individual-prices,
.wc-block-components-order-summary-item__price,
.wc-block-components-order-summary-item__regular-price,
.wc-block-components-totals-item__value,
.wc-block-components-totals-item__value bdi,
.wc-block-components-totals-item__value .woocommerce-Price-amount,
.wc-block-components-order-summary-item .woocommerce-Price-amount,
.wc-block-checkout__sidebar .woocommerce-Price-amount,
.wc-block-checkout__sidebar .woocommerce-Price-amount bdi,
.wc-block-checkout__sidebar .wc-block-components-formatted-money-amount,
.wp-block-woocommerce-checkout-order-summary-block .woocommerce-Price-amount,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .woocommerce-Price-amount,
.wc-block-components-totals-item__value .wc-block-formatted-money-amount,
.wc-block-components-totals-item__value .wc-block-components-formatted-money-amount {
    font-family: 'Poppins', sans-serif !important;
    color: #000 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
}

/* TOTAL row price — slightly larger */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount,
.wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #000 !important;
}

/* "Add coupons" */
.wc-block-components-totals-coupon .wc-block-components-panel__button,
.wc-block-components-totals-coupon .wc-block-components-panel__button span {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #000 !important;
}

/* "Return to Cart" link */
.wc-block-checkout__return-to-cart-link,
.wc-block-checkout__return-to-cart-link span {
    font-family: 'Barlow Condensed', sans-serif !important;
    color: #000 !important;
    text-decoration: none !important;
}

/* ALL price amounts site-wide — Poppins normal weight, black */
.wc-block-formatted-money-amount,
.wc-block-components-formatted-money-amount,
.wc-block-checkout__sidebar .wc-block-formatted-money-amount,
.wc-block-checkout__sidebar .wc-block-components-formatted-money-amount,
.wc-block-components-totals-item .wc-block-formatted-money-amount,
.wc-block-components-totals-item .wc-block-components-formatted-money-amount,
.wc-block-components-order-summary-item .wc-block-formatted-money-amount,
body .wc-block-formatted-money-amount,
body .wc-block-components-formatted-money-amount {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 400 !important;
    color: #000 !important;
}

/* Shipping price Rs250 on left side */
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__description,
.wc-block-components-shipping-rates-control .wc-block-formatted-money-amount,
.wc-block-components-radio-control__option .wc-block-formatted-money-amount {
    color: #000 !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 400 !important;
}

/* Hide duplicate "STANDARD SHIPPING" row in checkout sidebar totals */
.wc-block-components-totals-shipping:not(:first-of-type) {
    display: none !important;
}

/* Terms link colors */
.wc-block-checkout__terms a,
.wc-block-checkout a {
    color: #000 !important;
    text-decoration: underline !important;
}

/* Free shipping bar text */
.wc-block-components-notice-banner,
.wc-block-components-notice-banner p,
.ch-free-shipping-bar,
.ch-free-shipping-bar * {
    font-family: 'Barlow Condensed', sans-serif !important;
}

.ch-easypaisa-note {
    text-align: center;
    margin-top: 16px;
    padding: 12px 16px;
    background: #f0faf0;
    border: 1px solid #6dc04b;
    border-radius: 6px;
    font-size: 14px;
    color: #000;
    font-family: 'Poppins', sans-serif;
}

h2.wc-bacs-bank-details-heading {
    text-align: center;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    color: #000 !important;
}
.woocommerce-bacs-bank-details {
    text-align: center;
}
.woocommerce-bacs-bank-details h3,
.woocommerce-bacs-bank-details .wc-bacs-bank-details-account-name {
    color: #000 !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}
.woocommerce-bacs-bank-details ul,
.woocommerce-bacs-bank-details li,
.woocommerce-bacs-bank-details p {
    color: #000 !important;
    list-style: none !important;
    padding: 0 !important;
}

/* â”€â”€ Homepage Collection Headings â€“ Barlow Condensed â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.elementor-widget-heading .elementor-heading-title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

/* â”€â”€ Inline Price Display (Task 4) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: #1a1a1a !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
    font-size: 12px !important;
    color: #aaa !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
    opacity: 1 !important;
}

.woocommerce ul.products li.product .price del .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price del .woocommerce-Price-amount {
    color: #aaa !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    font-size: 14px !important;
    background: transparent !important;
}

.woocommerce ul.products li.product .price ins .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price ins .woocommerce-Price-amount {
    color: #1a1a1a !important;
    font-weight: 600 !important;
}

/* â”€â”€ Shipping progress notice (cart + checkout) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.ch-shipping-notice {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    padding: 10px 14px;
    border-radius: 8px;
    margin-bottom: 14px;
    line-height: 1.5;
}
.ch-shipping-free {
    background: #eaf7ec;
    color: #2e7d32;
    border: 1px solid #c8e6c9;
}
.ch-shipping-progress {
    background: #fff8e1;
    color: #555;
    border: 1px solid #ffe082;
}
.ch-shipping-bar {
    height: 5px;
    background: #e0e0e0;
    border-radius: 3px;
    margin-top: 8px;
    overflow: hidden;
}
.ch-shipping-bar-fill {
    height: 100%;
    background: #1a1a1a;
    border-radius: 3px;
    transition: width .4s ease;
}

/* â”€â”€ Product Card Click Animation â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    transition: transform 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    will-change: transform;
}
.woocommerce ul.products li.product.ch-card-pressing,
.woocommerce-page ul.products li.product.ch-card-pressing {
    transform: scale(0.96) !important;
    transition: transform 0.08s ease !important;
}

/* â”€â”€ Quick Add Button (positioned inside product image link) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link {
    position: relative !important;
    display: block !important;
}

.ch-quick-add-btn {
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 38px;
    height: 38px;
    background: #2c2c2c;
    color: #fff;
    border: none;
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 14px rgba(0,0,0,0.35);
    transition: background .18s, transform .18s;
    z-index: 10;
    padding: 0;
}
.ch-quick-add-btn:hover { background: #444; transform: scale(1.1); }

/* â”€â”€ Quick View Modal Overlay â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.ch-qv-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.65);
    z-index: 999999;
    align-items: flex-end;
    justify-content: center;
    backdrop-filter: blur(6px);
}
.ch-qv-overlay.active { display: flex; }
.ch-qv-modal {
    background: #fff;
    width: 100%;
    max-width: 480px;
    max-height: 94vh;
    border-radius: 20px 20px 0 0;
    overflow-y: auto;
    overflow-x: hidden;
    position: relative;
    animation: ch-qv-up .35s cubic-bezier(.32,1.02,.6,1);
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.ch-qv-modal::-webkit-scrollbar { display: none; }
@keyframes ch-qv-up {
    from { transform: translateY(60px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}
@media (min-width: 700px) {
    .ch-qv-overlay { align-items: center; }
    .ch-qv-modal {
        max-width: 860px;
        max-height: 88vh;
        border-radius: 20px;
        animation: ch-qv-pop .3s cubic-bezier(.32,1.02,.6,1);
        position: relative;
    }
    #ch-qv-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        min-height: 480px;
    }
}
@keyframes ch-qv-pop {
    from { transform: scale(0.94); opacity: 0; }
    to   { transform: scale(1);    opacity: 1; }
}
.ch-qv-topbar {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px 0;
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 3;
}
@media (min-width: 700px) {
    .ch-qv-topbar { position: absolute; top: 0; left: 0; right: 0; padding: 0; background: transparent; z-index: 10; }
    .ch-qv-handle { display: none; }
}
.ch-qv-handle {
    width: 36px; height: 4px;
    background: #e0e0e0;
    border-radius: 2px;
    margin: 0 auto;
}
.ch-qv-close-btn {
    position: absolute;
    right: 14px;
    top: 10px;
    background: rgba(255,255,255,0.95);
    border: none;
    width: 34px; height: 34px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    line-height: 1;
    box-shadow: 0 2px 10px rgba(0,0,0,0.12);
    transition: background .15s, transform .15s;
    z-index: 11;
}
.ch-qv-close-btn:hover { background: #fff; transform: scale(1.08); }
.ch-qv-img-wrap {
    width: 100%;
    aspect-ratio: 3/4;
    overflow: hidden;
    background: #f5f5f5;
    position: relative;
    flex-shrink: 0;
}
@media (min-width: 700px) {
    .ch-qv-img-wrap { aspect-ratio: unset; height: 100%; min-height: 480px; border-radius: 20px 0 0 20px; }
}
.ch-qv-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity .25s;
}
.ch-qv-gallery-nav {
    position: absolute;
    bottom: 16px;
    left: 0; right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    pointer-events: none;
}
.ch-qv-nav-btn {
    background: rgba(255,255,255,0.9);
    border: none;
    border-radius: 50%;
    width: 38px; height: 38px;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a1a1a;
    pointer-events: all;
    box-shadow: 0 2px 10px rgba(0,0,0,0.18);
    transition: background .15s, transform .15s;
}
.ch-qv-nav-btn:hover { background: #fff; transform: scale(1.05); }
.ch-qv-nav-btn:disabled { opacity: .25; cursor: default; transform: none; }
.ch-qv-dots {
    display: flex;
    gap: 5px;
    align-items: center;
    background: rgba(0,0,0,0.3);
    padding: 5px 10px;
    border-radius: 20px;
    pointer-events: all;
}
.ch-qv-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: rgba(255,255,255,0.45);
    cursor: pointer;
    transition: background .15s, transform .15s;
}
.ch-qv-dot.active { background: #fff; transform: scale(1.35); }
@media (min-width: 700px) {
    .ch-qv-right-panel { display: flex; flex-direction: column; overflow-y: auto; scrollbar-width: none; }
    .ch-qv-right-panel::-webkit-scrollbar { display: none; }
}
.ch-qv-info { padding: 18px 22px 6px; }
.ch-qv-brand {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #aaa;
    margin-bottom: 6px;
}
.ch-qv-name {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 10px;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.ch-qv-price {
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 6px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.ch-qv-price del { font-weight: 400; color: #bbb; font-size: 13px; }
.ch-qv-price ins { text-decoration: none; color: #1a1a1a; }
.ch-qv-info::after {
    content: '';
    display: block;
    height: 1px;
    background: #f0f0f0;
    margin: 12px 0 0;
}
.ch-qv-attr { margin-bottom: 14px; padding: 0 22px; }
.ch-qv-attr-label {
    font-family: Poppins, sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #aaa;
    margin-bottom: 10px;
}
.ch-qv-swatches { display: flex; flex-wrap: wrap; gap: 8px; }
.ch-qv-swatch {
    border: 1.5px solid #e0e0e0;
    background: #fff;
    border-radius: 8px;
    padding: 8px 18px;
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #2c2c2c;
    cursor: pointer;
    transition: border-color .15s, background .15s, color .15s;
    min-width: 46px;
    text-align: center;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.ch-qv-swatch:hover { border-color: #1a1a1a; background: #f8f8f8; }
.ch-qv-swatch.selected { background: #1a1a1a; border-color: #1a1a1a; color: #fff; }
.ch-qv-swatch.unavailable { opacity: .3; cursor: not-allowed; text-decoration: line-through; }
.ch-qv-color-pack { cursor: default !important; opacity: 0.7 !important; pointer-events: none !important; }
.ch-qv-pack-attr-color { cursor: default !important; pointer-events: none !important; }
.ch-qv-pack-attr-color:hover { border-color: #e0e0e0 !important; background: transparent !important; color: inherit !important; }
.ch-qv-pack-attr-color.selected { background: #1a1a1a !important; border-color: #1a1a1a !important; color: #fff !important; }
.ch-qv-swatches .ch-color-sep { display: inline-flex; align-items: center; align-self: center; color: #ccc; font-size: 18px; font-weight: 300; margin: 0 2px; line-height: 1; pointer-events: none; }
.ch-qv-bottom {
    padding: 12px 16px 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: auto;
}
@media (min-width: 700px) { .ch-qv-bottom { padding: 12px 22px 24px; } }
.ch-qv-action-row { display: flex; align-items: center; gap: 10px; }
.ch-qv-qty-ctrl {
    display: flex;
    align-items: center;
    border: 1.5px solid #e0e0e0;
    border-radius: 50px;
    height: 50px;
    flex-shrink: 0;
    overflow: hidden;
    background: #fafafa;
}
.ch-qv-qty-btn {
    background: none;
    border: none;
    width: 42px;
    height: 50px;
    font-size: 20px;
    cursor: pointer;
    color: #2c2c2c;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .12s;
}
.ch-qv-qty-btn:hover { background: #f0f0f0; }
.ch-qv-qty-num {
    width: 36px;
    text-align: center;
    font-family: Poppins, sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #2c2c2c;
    border: none;
    outline: none;
    background: transparent;
}
.ch-qv-atc-btn {
    flex: 1;
    height: 50px;
    border: 1.5px solid #1a1a1a;
    border-radius: 50px;
    background: #fff;
    color: #1a1a1a;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background .18s, color .18s;
    letter-spacing: .3px;
    white-space: nowrap;
    padding: 0 12px;
}
.ch-qv-atc-btn:hover { background: #1a1a1a; color: #fff; }
.ch-qv-atc-btn:disabled { opacity: .45; cursor: not-allowed; }
.ch-qv-buy-btn {
    width: 100%;
    height: 52px;
    border: none;
    border-radius: 50px;
    background: linear-gradient(135deg, #1a1a1a 0%, #3a3a3a 100%);
    color: #fff;
    font-family: Poppins, sans-serif;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: .4px;
    transition: opacity .2s, transform .15s;
    box-shadow: 0 4px 16px rgba(0,0,0,0.18);
}
.ch-qv-buy-btn:hover { opacity: 0.88; transform: translateY(-1px); color: #fff; text-decoration: none; }
/* QV Trust Signals — 3 column horizontal row */
.ch-qv-trust {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    padding: 12px 0;
    border: 1px solid #ebebeb;
    border-radius: 10px;
    margin: 16px 22px 0;
    gap: 0;
    background: #fafafa;
}
.ch-qv-trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
}
.ch-qv-trust-item svg {
    color: #1a1a1a;
    opacity: 0.8;
    display: block;
    flex-shrink: 0;
}
.ch-qv-trust-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
    letter-spacing: 0.2px;
}
.ch-qv-trust-sub {
    font-family: 'Poppins', sans-serif;
    font-size: 10px;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    line-height: 1.2;
}
.ch-qv-trust-divider {
    width: 1px;
    height: 36px;
    background: #e8e8e8;
    flex-shrink: 0;
}
/* Hide on mobile */
@media (max-width: 700px) {
    .ch-qv-trust { display: none; }
}

.ch-qv-stock {
    text-align: center;
    font-family: Poppins, sans-serif;
    font-size: 11.5px;
    color: #999;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding-bottom: 2px;
}
.ch-qv-stock-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.ch-qv-stock-dot.low { background: #f39c12; }
.ch-qv-stock-dot.out { background: #e74c3c; }
.ch-qv-stock-dot.ok  { background: #27ae60; }
.ch-qv-toast {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%) translateY(20px);
    background: #1a1a1a;
    color: #fff;
    padding: 11px 24px;
    border-radius: 50px;
    font-family: Poppins, sans-serif;
    font-size: 13.5px;
    font-weight: 500;
    opacity: 0;
    transition: opacity .25s, transform .25s;
    z-index: 9999999;
    white-space: nowrap;
    pointer-events: none;
    box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}
.ch-qv-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   SIZE CHART MODAL
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

.ch-size-chart-link {
    display: inline-flex;
    align-items: center;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #1a1a1a;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
    margin-bottom: 14px;
}
.ch-size-chart-link:hover { color: #444; }

.ch-sc-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.55);
    z-index: 999999;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(3px);
    padding: 16px;
}
.ch-sc-overlay.active { display: flex; }

.ch-sc-modal {
    background: #fff;
    border-radius: 18px;
    width: 100%;
    max-width: 560px;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,0.2);
    animation: ch-sc-in .22s ease;
}
@keyframes ch-sc-in {
    from { opacity:0; transform: scale(.96) translateY(10px); }
    to   { opacity:1; transform: scale(1) translateY(0); }
}

.ch-sc-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}
.ch-sc-title {
    font-family: Poppins, sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1a;
}
.ch-sc-close {
    background: #f2f2f2;
    border: none;
    width: 32px; height: 32px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #555;
    line-height: 1;
}
.ch-sc-close:hover { background: #e5e5e5; }

.ch-sc-body {
    overflow-y: auto;
    padding: 14px 16px 16px;
    -webkit-overflow-scrolling: touch;
}
.ch-sc-body > *:first-child,
.ch-sc-table-wrap {
    margin-top: 0 !important;
}
.ch-sc-body table {
    margin: 0 !important;
}
.ch-sc-body p:empty,
.ch-sc-body br:first-child {
    display: none !important;
}

.ch-sc-diagram {
    background: #f5f5f5;
    border-radius: 12px;
    padding: 16px 12px 12px;
    margin-bottom: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid #e8e8e8;
}
.ch-sc-diagram svg {
    max-width: 340px;
    width: 100%;
    height: auto;
}
.ch-sc-diagram-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 12px;
    justify-content: center;
}
.ch-sc-diagram-legend span {
    font-family: Poppins, sans-serif;
    font-size: 11px;
    color: #ccc;
}

.ch-sc-table-wrap { overflow-x: auto; }

.ch-sc-table-wrap table,
.ch-sc-body table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
}
.ch-sc-table-wrap table th,
.ch-sc-body table th {
    background: #1a1a1a !important;
    color: #fff !important;
    padding: 10px 14px !important;
    text-align: left !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: .3px !important;
}
.ch-sc-table-wrap table td,
.ch-sc-body table td {
    padding: 10px 14px !important;
    border-bottom: 1px solid #eee !important;
    color: #333 !important;
}
.ch-sc-table-wrap table tr:last-child td,
.ch-sc-body table tr:last-child td { border-bottom: none !important; }
.ch-sc-table-wrap table tr:nth-child(even) td,
.ch-sc-body table tr:nth-child(even) td { background: #f9f9f9 !important; }

@media (max-width: 480px) {
    .ch-sc-modal { border-radius: 18px 18px 0 0; max-height: 90vh; }
    .ch-sc-overlay { align-items: flex-end; padding: 0; }
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   SINGLE PRODUCT PAGE
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* Related products â€” responsive grid */
.related.products,
.up-sells.products {
    width: 100% !important;
}

.related.products ul.products,
.up-sells.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
}

.related.products ul.products li.product,
.up-sells.products ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    float: none !important;
}

.related.products ul.products li.product .product-loop-image-wrapper,
.up-sells.products ul.products li.product .product-loop-image-wrapper,
.related.products ul.products li.product a img,
.up-sells.products ul.products li.product a img {
    width: 100% !important;
    height: auto !important;
}

/* Tablet â€” 3 columns */
@media (max-width: 992px) and (min-width: 577px) {
    .related.products ul.products,
    .up-sells.products ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* Mobile â€” 2 columns */
@media (max-width: 576px) {
    .related.products ul.products,
    .up-sells.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
}

/* FBT + Recently Viewed prices â€“ match product card style */
.related.products .price,
.ch-recently-viewed .price {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    flex-wrap: wrap !important;
    font-family: Poppins, sans-serif !important;
    font-size: 11px !important;
    color: #1a1a1a !important;
}
.related.products .price del,
.ch-recently-viewed .price del {
    font-size: 11px !important;
    color: #aaa !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
    opacity: 1 !important;
}
.related.products .price del .woocommerce-Price-amount,
.ch-recently-viewed .price del .woocommerce-Price-amount {
    color: #aaa !important;
    font-size: 11px !important;
    font-weight: 400 !important;
}
.related.products .price ins,
.ch-recently-viewed .price ins {
    text-decoration: none !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    font-size: 12px !important;
    background: transparent !important;
}
.related.products .price ins .woocommerce-Price-amount,
.ch-recently-viewed .price ins .woocommerce-Price-amount {
    color: #1a1a1a !important;
    font-weight: 600 !important;
    font-size: 12px !important;
}

.related.products .product-loop-meta .loop-add-to-cart-btn,
.related.products .product-loop-meta .add_to_cart_button,
.up-sells.products .product-loop-meta .loop-add-to-cart-btn,
.up-sells.products .product-loop-meta .add_to_cart_button {
    display: none !important;
}

/* FBT â€” pull price up to match homepage/recently viewed spacing */
.related .product-loop-meta.no-transform {
    margin-top: -25px !important;
}


/* Star rating â€” black on single product page */
.single-product .star-rating span,
.single-product .star-rating::before,
.single-product .star-rating span::before {
    color: #1a1a1a !important;
}

/* Product title â€” Barlow Condensed, bold uppercase (Outfitters style) */
.single-product .product_title,
.woocommerce-page .product_title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #1a1a1a !important;
    line-height: 1.2 !important;
    margin-bottom: 8px !important;
}

/* Short description â€” shown below price, Outfitters style */
.single-product .woocommerce-product-details__short-description,
.woocommerce-product-details__short-description {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
    color: #555 !important;
    margin: 12px 0 16px !important;
}

.single-product .woocommerce-product-details__short-description p {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.75 !important;
    color: #555 !important;
    margin: 0 !important;
}

/* Price */
.single-product .woocommerce-Price-amount,
.single-product p.price {
    font-family: Poppins, sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
}
.single-product p.price del {
    color: #aaa !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}
.single-product p.price del .woocommerce-Price-amount { color: #aaa !important; font-size: 14px !important; font-weight: 400 !important; }
.single-product p.price ins { text-decoration: none !important; }
.single-product p.price ins .woocommerce-Price-amount { color: #1a1a1a !important; }

/* Variation swatches â€” size options */
.single-product .variations td.value select,
.single-product .woo-variation-swatches .swatch-label {
    font-family: Poppins, sans-serif !important;
    text-transform: uppercase !important;
}
.cfvsw-swatches-option .cfvsw-label-text {
    text-transform: uppercase !important;
}

/* Quantity control */
.single-product .quantity {
    display: flex !important;
    align-items: center !important;
    border: 1.5px solid #d8d8d8 !important;
    border-radius: 50px !important;
    overflow: visible !important;
    width: 130px !important;
    min-width: 130px !important;
    height: 50px !important;
    flex-shrink: 0 !important;
    background: #fff !important;
}
.single-product .quantity input.qty {
    border: none !important;
    outline: none !important;
    text-align: center !important;
    width: 42px !important;
    flex: 1 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    background: transparent !important;
    -moz-appearance: textfield !important;
    box-shadow: none !important;
    padding: 0 !important;
    height: 100% !important;
    min-width: 0 !important;
}
.single-product .quantity input.qty::-webkit-inner-spin-button,
.single-product .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; }

/* Woostify +/- quantity buttons inside .quantity */
.single-product .quantity .product-qty {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 48px !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    background: transparent !important;
    color: #1a1a1a !important;
    user-select: none !important;
    transition: background .15s !important;
    border-radius: 50px !important;
}
.single-product .quantity .product-qty:hover {
    background: #f5f5f5 !important;
}
.single-product .quantity .product-qty svg {
    width: 14px !important;
    height: 14px !important;
    fill: #1a1a1a !important;
    pointer-events: none !important;
    display: block !important;
}

/* Cart form â€” vertical stack */
.single-product form.cart {
    display: block !important;
    margin-bottom: 10px !important;
}

/* Qty + ATC on same row (variable products) */
.single-product .woocommerce-variation-add-to-cart,
.single-product form.cart > .quantity ~ button {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
    margin-top: 12px !important;
}

/* Simple product: qty + button side by side */
.single-product form.cart .quantity {
    display: inline-flex !important;
    vertical-align: middle !important;
    margin-right: 10px !important;
    margin-bottom: 0 !important;
}
.single-product form.cart .single_add_to_cart_button {
    vertical-align: middle !important;
}

/* Add to Cart â€” outlined pill */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button,
.woocommerce .single-product .cart .button,
.woocommerce-page .single-product button[name="add-to-cart"] {
    background: #fff !important;
    color: #1a1a1a !important;
    border: 2px solid #1a1a1a !important;
    border-radius: 50px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: .2px !important;
    padding: 0 20px !important;
    height: 50px !important;
    flex: 1 !important;
    cursor: pointer !important;
    transition: background .2s, color .2s !important;
    text-transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
}
.single-product .single_add_to_cart_button:hover {
    background: #f5f5f5 !important;
    color: #1a1a1a !important;
}

/* Buy it now â€” full-width black pill below ATC row */
.ch-sp-buy-now {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    height: 52px !important;
    margin-top: 0 !important;
    background: #1a1a1a !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .3px !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
}
.ch-sp-buy-now:hover { background: #333 !important; color: #fff !important; text-decoration: none !important; }

/* Model note â€” above qty + ATC row */
.single-product .ch-model-note {
    display: block !important;
    width: 100% !important;
    font-size: 13px !important;
    color: #aaa !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    text-align: center !important;
    font-family: Poppins, sans-serif !important;
    line-height: 1.5 !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* Colour note â€” below Buy it now */
.single-product .ch-color-note {
    display: block !important;
    width: 100% !important;
    font-size: 11.5px !important;
    color: #aaa !important;
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    text-align: center !important;
    line-height: 1.6 !important;
    font-family: Poppins, sans-serif !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* Hide buy now on product cards (shop/category) â€” only show on single product & QV modal */
.woocommerce-shop ul.products a.woostify-buy-now,
.woocommerce-shop ul.products .woostify-buy-now-btn,
.tax-product_cat ul.products a.woostify-buy-now,
.tax-product_cat ul.products .woostify-buy-now-btn,
ul.products li.product a.woostify-buy-now,
ul.products li.product .woostify-buy-now-btn,
ul.products li.product .add_to_cart_button,
ul.products li.product .product-loop-action { display: none !important; }

/* Hide theme's own buy now on single product (we use our own) */
.single-product a.woostify-buy-now,
.single-product .woostify-buy-now-btn { display: none !important; }

/* SKU / Category meta */
.single-product .product_meta {
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    color: #888 !important;
    margin-top: 16px !important;
}
.single-product .product_meta a { color: #1a1a1a !important; }


/* â”€â”€â”€ Out-of-stock size swatch â€” diagonal slash â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

.cfvsw-swatches-option.cfvsw-swatches-out-of-stock,
.cfvsw-swatches-option.cfvsw-swatches-disabled {
    position: relative !important;
    opacity: 0.45 !important;
    cursor: not-allowed !important;
}

.cfvsw-swatches-option.cfvsw-swatches-out-of-stock::after,
.cfvsw-swatches-option.cfvsw-swatches-disabled::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 120% !important;
    height: 1.5px !important;
    background: #999 !important;
    transform: translate(-50%, -50%) rotate(-45deg) !important;
    pointer-events: none !important;
    border-radius: 2px !important;
}

/* â”€â”€â”€ Barlow Condensed â€” shop/archive page headings â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

.woocommerce-products-header__title,
.woocommerce-archive-description h1,
.woocommerce-archive-description h2,
body.woocommerce .page-title,
body.woocommerce-page .page-title,
.entry-title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* â”€â”€â”€ DM Sans â€” product description tab (Outfitters body text style) â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

.woocommerce-Tabs-panel--description,
.woocommerce-Tabs-panel--description p,
.woocommerce-product-details__short-description {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 400 !important;
    line-height: 1.8 !important;
    color: #333 !important;
}

.woocommerce-Tabs-panel--description p {
    margin-bottom: 18px !important;
}

.woocommerce-Tabs-panel--description h4,
.woocommerce-Tabs-panel--description h3,
.woocommerce-Tabs-panel--description h2 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #1a1a1a !important;
    margin: 22px 0 10px !important;
}

.woocommerce-Tabs-panel--description ul {
    padding-left: 20px !important;
    margin: 0 0 18px !important;
    list-style: disc !important;
}

.woocommerce-Tabs-panel--description ul li {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #444 !important;
    margin-bottom: 7px !important;
    line-height: 1.7 !important;
}

/* Tab labels â€” uppercase clean style */
.woocommerce-tabs .tabs li a {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

/* "PRODUCT DESCRIPTION" heading label inside tab (if rendered as section title) */
.woocommerce-Tabs-panel--description > h2:first-child {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    color: #1a1a1a !important;
    margin-bottom: 18px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #eee !important;
}

/* â”€â”€ Product Video â€” inline in Flickity gallery â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Video slide in the main images carousel */
.ch-video-figure {
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
}
.ch-video-figure video.ch-pv-player {
    width: 100%;
    height: 100%;
    max-width: 100%;
    display: block;
    object-fit: contain;
    background: #000;
}

/* Gallery thumbnail strip — force square for all thumbnails */
.product-thumbnail-images .thumbnail-item img {
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center top !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

/* Video thumbnail in the thumbnail strip — match same square shape */
.ch-video-thumb {
    cursor: pointer;
    max-width: 70px;
    width: 70px;
}
.ch-video-thumb-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    aspect-ratio: 1 / 1;
    background: #111;
    border-radius: 3px;
    border: 1px solid transparent;
    box-sizing: border-box;
    overflow: hidden;
}
.ch-video-thumb.is-nav-selected .ch-video-thumb-inner,
.ch-video-thumb:hover .ch-video-thumb-inner {
    background: #333;
    border-color: #555;
}

/* â”€â”€ Button Press Animations â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* QV popup â€” Add to Cart */
.ch-qv-atc-btn {
    transition: background .18s, transform .08s ease !important;
}
.ch-qv-atc-btn:active:not(:disabled) {
    transform: scale(0.95) !important;
    transition: transform 0.06s ease !important;
}

/* QV popup â€” Buy it now */
.ch-qv-buy-btn {
    transition: background .18s, color .18s, transform .08s ease !important;
}
.ch-qv-buy-btn:active {
    transform: scale(0.95) !important;
    transition: transform 0.06s ease !important;
}

/* Product page â€” Add to Cart */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button {
    transition: background .2s, color .2s, transform .08s ease !important;
}
.single-product .single_add_to_cart_button:active:not(.disabled):not([disabled]),
.single-product button.single_add_to_cart_button:active:not(.disabled):not([disabled]) {
    transform: scale(0.95) !important;
    transition: transform 0.06s ease !important;
}

/* Product page â€” Buy it now */
.ch-sp-buy-now {
    transition: background .2s, transform .08s ease !important;
}
.ch-sp-buy-now:active {
    transform: scale(0.95) !important;
    transition: transform 0.06s ease !important;
}

/* â”€â”€â”€ Colour swatches â€” product page (outside CFVSW, our own container) â”€â”€â”€â”€â”€*/

#ch-color-section {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 6px;
}

.ch-sp-color-swatch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background: #fff;
    color: #2c2c2c;
    font-size: 13px;
    font-family: Poppins, sans-serif;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    user-select: none;
}
.ch-sp-color-swatch:hover {
    border-color: #999;
}
.ch-sp-color-swatch.ch-sp-color-selected {
    border-color: #1a1a1a;
    background: #1a1a1a;
    color: #fff;
}

/* Pack/pair colours: informational only, no click */
.ch-sp-color-swatch.ch-color-pack {
    cursor: default !important;
    pointer-events: none !important;
}

/* Shake animation when colour required but not selected */
@keyframes ch-shake {
    0%, 100% { transform: translateX(0); }
    20%       { transform: translateX(-5px); }
    40%       { transform: translateX(5px); }
    60%       { transform: translateX(-4px); }
    80%       { transform: translateX(4px); }
}
.ch-color-shake {
    animation: ch-shake 0.5s ease !important;
}

/* QV pipe separator (kept for QV modal) */
.ch-color-sep {
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    color: #ccc !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    margin: 0 4px !important;
    line-height: 1 !important;
    pointer-events: none !important;
}
/* Pack/pair colours in QV: informational only */
.ch-color-pack {
    cursor: default !important;
    pointer-events: none !important;
}

/* â”€â”€ Shop & category pages: 4 products per row desktop, 2 on mobile â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.woocommerce-shop .products,
.tax-product_cat .products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}
/* Desktop: 4 per row */
.woocommerce-shop .products .product,
.tax-product_cat .products .product {
    width: calc(25% - 15px) !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
}
/* Tablet: 3 per row */
@media (max-width: 768px) {
    .woocommerce-shop .products .product,
    .tax-product_cat .products .product {
        width: calc(33.333% - 14px) !important;
    }
}
/* Mobile: 2 per row */
@media (max-width: 480px) {
    .woocommerce-shop .products .product,
    .tax-product_cat .products .product {
        width: calc(50% - 10px) !important;
        gap: 12px !important;
    }
}

/* â”€â”€ Hide shop sidebar completely, make product grid full width â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.woocommerce-shop .site-main,
.tax-product_cat .site-main,
.woocommerce-page .site-main {
    display: block !important;
}
.woocommerce-shop .sidebar-shop,
.tax-product_cat .sidebar-shop,
.woocommerce-page .sidebar-shop,
.woocommerce-shop #secondary,
.tax-product_cat #secondary,
.woocommerce-page #secondary,
.woocommerce-shop .widget-area,
.tax-product_cat .widget-area,
.woocommerce-page .widget-area {
    display: none !important;
}
.woocommerce-shop #primary,
.tax-product_cat #primary,
.woocommerce-page #primary {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
}

/* â”€â”€ Header: hamburger LEFT, logo CENTER, cart only RIGHT â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Hide search, account, wishlist icons. Keep only cart.                    */
.header-search-icon,
.header-wishlist-icon,
.tools-icon.my-account {
    display: none !important;
}

/* â”€â”€ Hide Filter button only â€” keep Default sorting dropdown â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
#toggle-sidebar-mobile-button {
    display: none !important;
}

/* â”€â”€ Checkout: Place Order button â€” black background, white text â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
#place_order,
.woocommerce #payment #place_order,
.woocommerce-checkout #payment #place_order {
    background: #1a1a1a !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: background .2s, transform .08s ease !important;
    display: block !important;
    text-align: center !important;
    pointer-events: all !important;
}
#place_order:hover,
.woocommerce #payment #place_order:hover {
    background: #333 !important;
    color: #fff !important;
}
#place_order:active {
    transform: scale(0.97) !important;
}
#place_order {
    transition: background .15s, transform .06s ease, opacity .15s !important;
    -webkit-tap-highlight-color: transparent;
}
#place_order.processing {
    opacity: 0.7 !important;
    pointer-events: none !important;
}

/* ── Page header banner: hide product title on single product pages ──────────
   Only breadcrumb (Home / Category) should show, not the full product name. */
.single-product .page-header .entry-title,
.single-product .page-header h1,
.single-product .page-header h2 {
    display: none !important;
}
.single-product .page-header {
    padding: 14px 0 !important;
}

/* â”€â”€ Category pages: hide Woostify's (sometimes wrong) title, show ours â”€â”€â”€â”€â”€*/
.tax-product_cat .page-header .entry-title:not(.ch-cat-title) {
    display: none !important;
}
/* Fix yellow title color on category pages â†’ white */
.page-header .entry-title,
.page-header h1 {
    color: #ffffff !important;
}
/* Breadcrumb text white */
.page-header .woostify-breadcrumb,
.page-header .woostify-breadcrumb a,
.page-header .woostify-breadcrumb span {
    color: rgba(255,255,255,0.85) !important;
}

/* â”€â”€ Mobile hamburger button: fix yellow background â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.toggle-sidebar-menu-btn,
.toggle-sidebar-menu-btn *,
.woostify-icon-bar {
    background-color: transparent !important;
    color: #2c2c2c !important;
}
.woostify-icon-bar span,
.woostify-icon-bar span::before,
.woostify-icon-bar span::after {
    background-color: #2c2c2c !important;
}

/* â”€â”€ Mobile menu panel â€” reference image style â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   White panel, dark brand strip, bold category headers, indented sub-items */
.sidebar-menu {
    background: #fff !important;
    width: 290px !important;
    max-width: 88vw !important;
    padding: 0 !important;
    box-shadow: 4px 0 30px rgba(0,0,0,0.15) !important;
    overflow-y: auto !important;
}

/* CHAHATEIN brand strip at top */
.sidebar-menu::before {
    content: 'CHAHATEIN';
    display: block;
    background: #2c2c2c;
    color: #fff;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 4px;
    text-align: center;
    padding: 16px 20px;
}

/* Hide default Menu/Categories tab */
.sidebar-menu .mobile-nav-tab {
    display: none !important;
}

/* Reset list styles */
.sidebar-menu .navigation-menu,
.sidebar-menu .navigation-menu ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Top-level items (Home, Winter Collection, Summer Collection, Contact) */
.sidebar-menu .navigation-menu > li > a {
    display: block !important;
    padding: 16px 24px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border-bottom: 1px solid #efefef !important;
    background: #fff !important;
    transition: padding-left 0.2s !important;
}

.sidebar-menu .navigation-menu > li > a:hover {
    padding-left: 30px !important;
    background: #f9f9f9 !important;
}

/* Winter icon */
.sidebar-menu .navigation-menu > li:nth-child(2) > a::before { content: 'â„  '; }
/* Summer icon */
.sidebar-menu .navigation-menu > li:nth-child(3) > a::before { content: 'â˜€  '; }

/* Sub-menu items (Hoodies, QZ, Trousers, T-Shirts, Polo Shirts) */
.sidebar-menu .navigation-menu > li > ul {
    background: #f7f7f7 !important;
    border-bottom: 2px solid #e8e8e8 !important;
}

.sidebar-menu .navigation-menu > li > ul > li > a {
    display: block !important;
    padding: 11px 24px 11px 38px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #555 !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    border-bottom: 1px solid #efefef !important;
    transition: color 0.2s, padding-left 0.2s !important;
}

.sidebar-menu .navigation-menu > li > ul > li > a::before {
    content: 'â€” ';
    color: #bbb;
}

.sidebar-menu .navigation-menu > li > ul > li > a:hover {
    color: #1a1a1a !important;
    padding-left: 44px !important;
    background: #f0f0f0 !important;
}

/* Arrow icon next to parent items with children */
.sidebar-menu .navigation-menu > li.menu-item-has-children > .arrow-icon {
    color: #2c2c2c !important;
}

/* Close overlay button */
#woostify-overlay .woostify-svg-icon {
    background: #2c2c2c !important;
    border-radius: 50% !important;
    padding: 6px !important;
    width: 36px !important;
    height: 36px !important;
}

/* â”€â”€ Hide size swatches & BUY NOW on shop/category product cards â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   Keeps the image, title, price, and our "+" quick-view button visible.    */
.woocommerce-shop ul.products .cfvsw-shop-container,
.tax-product_cat ul.products .cfvsw-shop-container,
.woocommerce-shop ul.products .cfvsw-swatches-container,
.tax-product_cat ul.products .cfvsw-swatches-container,
.woocommerce-shop ul.products .variations_form,
.tax-product_cat ul.products .variations_form,
.woocommerce-shop ul.products .add_to_cart_button,
.tax-product_cat ul.products .add_to_cart_button,
.woocommerce-shop ul.products .loop-add-to-cart-btn,
.tax-product_cat ul.products .loop-add-to-cart-btn,
ul.products li.product .loop-add-to-cart-btn,
.woocommerce-shop ul.products .product-loop-action,
.tax-product_cat ul.products .product-loop-action {
    display: none !important;
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   RESPONSIVE â€” Desktop (769px+) already handled above as base styles
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ Tablet (481px â€“ 768px) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 768px) {

    /* Search */
    .ch-search-wrap { max-width: 100%; padding: 14px; margin-bottom: 16px; border-radius: 16px; }
    .ch-filter-row { flex-wrap: wrap; gap: 8px; }
    .ch-filter-row .ch-search-form { width: 100%; order: 1; flex: none; }
    .ch-filter-row .ch-dropdown { flex: 1; order: 2; min-width: 0; }
    .ch-filter-row .ch-filter-reset { order: 3; }
    .ch-search-input { padding: 11px 12px; font-size: 13px; }
    .ch-search-btn { width: 42px; }
    .ch-dd-btn { padding: 11px 14px; font-size: 12px; }

    /* Search results modal */
    .ch-modal-overlay { padding-top: 20px; }
    .ch-modal { width: 96%; max-height: 88vh; border-radius: 14px; }
    .ch-modal-header { padding: 14px 16px; }
    .ch-modal-body { padding: 14px 16px; }
    .ch-results-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }

    /* Product cards */
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.product_title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title,
    h2.woocommerce-loop-product__title {
        font-size: 12px !important;
        display: block !important;
        overflow: hidden !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title a,
    .woocommerce ul.products li.product h2.product_title a,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title a,
    h2.woocommerce-loop-product__title a {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price { font-size: 12px !important; }
    .woocommerce ul.products li.product .price ins,
    .woocommerce-page ul.products li.product .price ins { font-size: 13px !important; }

    /* Quick add button */
    .ch-quick-add-btn { width: 34px; height: 34px; font-size: 20px; }

    /* Quick view modal */
    .ch-qv-modal { max-height: 92vh; }
    .ch-qv-name { font-size: 13px; }
    .ch-qv-price { font-size: 15px; }
    .ch-qv-swatch { padding: 6px 14px; font-size: 12px; }
    .ch-qv-atc-btn { font-size: 12px; }
    .ch-qv-buy-btn { font-size: 14px; height: 48px; }

    /* Toast */
    .ch-qv-toast { font-size: 13px; padding: 10px 20px; bottom: 20px; }

    /* Single product â€” tablet sizes */
    .single-product .product_title { font-size: 22px !important; }
    .single-product p.price { font-size: 16px !important; }
    .ch-sp-buy-now { font-size: 14px !important; height: 50px !important; }

    /* Size chart table */
    .ch-sc-body table th, .ch-sc-body table td { font-size: 13px !important; padding: 8px 10px !important; }

    /* Cart table â€” horizontal scroll on tablet/mobile */
    .woocommerce-cart .woocommerce-cart-form { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .woocommerce-cart table.cart { min-width: 500px; }
}

/* â”€â”€ Mobile (max 480px) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 480px) {

    /* Search — row 1: search bar, row 2: both filters */
    .ch-search-wrap { padding: 12px; border-radius: 14px; }
    .ch-filter-row { flex-wrap: wrap; gap: 8px; }
    .ch-filter-row .ch-search-form { width: 100%; order: 1; flex: none; }
    .ch-filter-row .ch-dropdown { flex: 1; order: 2; min-width: 0; } .ch-dd-btn { font-size: 11px; padding: 10px 12px; }
    .ch-filter-row .ch-filter-reset { order: 3; }
    .ch-search-input { padding: 10px 12px; font-size: 13px; }
    .ch-search-btn { padding: 10px 14px; font-size: 12px; }

    /* Search results modal â€” near fullscreen */
    .ch-modal-overlay { padding-top: 10px; align-items: flex-end; }
    .ch-modal {
        width: 100%;
        max-height: 92vh;
        border-radius: 18px 18px 0 0;
    }
    .ch-modal-header { padding: 12px 14px; }
    .ch-modal-title { font-size: 14px; }
    .ch-modal-body { padding: 12px 14px; }
    .ch-results-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .ch-result-name { font-size: 11px; }
    .ch-result-price { font-size: 12px; }

    /* Product cards â€” tighter on small screens */
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.product_title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title,
    h2.woocommerce-loop-product__title {
        font-size: 11px !important;
        line-height: 1.4 !important;
        display: block !important;
        overflow: hidden !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title a,
    .woocommerce ul.products li.product h2.product_title a,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title a,
    h2.woocommerce-loop-product__title a {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price { font-size: 11px !important; gap: 4px !important; }
    .woocommerce ul.products li.product .price ins,
    .woocommerce-page ul.products li.product .price ins { font-size: 12px !important; }
    .woocommerce ul.products li.product .price del,
    .woocommerce-page ul.products li.product .price del { font-size: 10px !important; }

    /* Sale badge â€” slightly smaller on mobile */
    .woostify-tag-on-sale,
    .ch-discount-badge,
    .woocommerce span.onsale,
    .woocommerce-page span.onsale {
        font-size: 10px !important;
        padding: 4px 8px !important;
        top: 6px !important;
        left: 6px !important;
    }

    /* Quick add button â€” slightly smaller */
    .ch-quick-add-btn { width: 30px; height: 30px; font-size: 18px; bottom: 6px; right: 6px; }

    /* Quick view modal â€” full-width bottom sheet */
    .ch-qv-overlay { align-items: flex-end; }
    .ch-qv-modal {
        max-width: 100%;
        max-height: 95vh;
        border-radius: 20px 20px 0 0;
    }
    .ch-qv-info { padding: 12px 14px 4px; }
    .ch-qv-brand { font-size: 9px; letter-spacing: 1.5px; }
    .ch-qv-name { font-size: 13px; margin-bottom: 6px; }
    .ch-qv-price { font-size: 15px; }
    .ch-qv-attr { padding: 0 14px; margin-bottom: 10px; }
    .ch-qv-attr-label { font-size: 9px; letter-spacing: 1.5px; margin-bottom: 8px; }
    .ch-qv-swatch { padding: 6px 12px; font-size: 12px; }
    .ch-qv-bottom { padding: 10px 14px 16px; gap: 8px; }
    .ch-qv-action-row { gap: 8px; }
    .ch-qv-qty-ctrl { height: 46px; }
    .ch-qv-qty-btn { width: 38px; height: 46px; font-size: 18px; }
    .ch-qv-qty-num { font-size: 14px; width: 32px; }
    .ch-qv-atc-btn { height: 46px; font-size: 12px; padding: 0 10px; }
    .ch-qv-buy-btn { height: 46px; font-size: 14px; }
    .ch-qv-stock { font-size: 11px; }

    /* Toast â€” full-width friendly */
    .ch-qv-toast {
        width: 90%;
        text-align: center;
        white-space: normal;
        font-size: 13px;
        padding: 10px 16px;
        bottom: 16px;
    }

    /* Single product â€” small screen */
    .single-product .product_title { font-size: 18px !important; word-break: break-word !important; }
    .single-product .woocommerce-variation-add-to-cart,
    .single-product form.cart { flex-wrap: wrap !important; }
    .single-product .single_add_to_cart_button { width: 100% !important; flex: 1 1 100% !important; }
    .single-product .quantity { flex-shrink: 0 !important; }
    .ch-sp-buy-now { font-size: 14px !important; height: 48px !important; }

    /* Size chart â€” horizontal scroll */
    .ch-sc-wrap, .ch-sc-table-wrap { overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; }
    .ch-sc-body table { min-width: 340px !important; }
    .ch-sc-body table th, .ch-sc-body table td { font-size: 12px !important; padding: 7px 8px !important; white-space: nowrap !important; }

    /* Color/size swatches â€” wrap */
    .cfvsw-swatches-container { flex-wrap: wrap !important; gap: 6px !important; }

    /* Testimonial carousel â€” reduce slide padding on mobile */
    .elementor-924 .elementor-element-9aee96c .elementor-main-swiper .swiper-slide {
        padding: 24px 16px 30px 16px !important;
    }
    .elementor-924 .elementor-element-9aee96c .elementor-testimonial__text {
        font-size: 13px !important;
    }
    .elementor-924 .elementor-element-9aee96c .elementor-testimonial__name {
        font-size: 14px !important;
    }
    .elementor-924 .elementor-element-9aee96c .elementor-testimonial__image img {
        width: 36px !important;
        height: 36px !important;
    }
}

/* â”€â”€ Footer Quick Link buttons â†’ plain text links â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.elementor-location-footer .elementor-widget-button .elementor-button {
    background: transparent !important;
    background-color: transparent !important;
    color: #ffffff !important;
    border: none !important;
    padding: 4px 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    border-radius: 0 !important;
    display: inline !important;
    line-height: 1.8 !important;
}
.elementor-location-footer .elementor-widget-button .elementor-button:hover {
    color: #cccccc !important;
    background: transparent !important;
}

/* â”€â”€ Feature 2: Product card hover â€“ second image swap â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
ul.products li.product img.attachment-woocommerce_thumbnail {
    transition: opacity .25s ease;
}

/* â”€â”€ Feature 3: Sticky Add to Cart bar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.ch-sticky-atc {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    background: #fff;
    border-top: 1px solid #e0e0e0;
    box-shadow: 0 -3px 16px rgba(0,0,0,.12);
    z-index: 9990;
    transform: translateY(100%);
    transition: transform .3s cubic-bezier(.4,0,.2,1);
    padding: 10px 20px;
}
.ch-sticky-atc.ch-sticky-atc-visible {
    transform: translateY(0);
}
.ch-sticky-atc-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 14px;
}
.ch-sticky-atc-img {
    width: 50px; height: 50px;
    object-fit: cover;
    border-radius: 4px;
    flex-shrink: 0;
}
.ch-sticky-atc-info {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}
.ch-sticky-atc-name {
    display: block;
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: 'Poppins', sans-serif;
}
.ch-sticky-atc-price {
    display: block;
    font-size: 13px;
    color: #666;
    font-family: 'Poppins', sans-serif;
}
.ch-sticky-atc-btn {
    background: #111;
    color: #fff;
    border: none;
    padding: 11px 22px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    white-space: nowrap;
    flex-shrink: 0;
    cursor: pointer;
    transition: background .2s;
}
.ch-sticky-atc-btn:hover { background: #333; color: #fff; }
@media (max-width: 480px) {
    .ch-sticky-atc { padding: 8px 14px; }
    .ch-sticky-atc-img { display: none; }
    .ch-sticky-atc-btn { padding: 10px 14px; font-size: 13px; }
}

/* â”€â”€ Feature 6: Recently Viewed products â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.ch-recently-viewed {
    margin: 48px auto 24px;
    clear: both;
    padding: 0 20px;
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
}
.ch-rv-title,
.related.products > h2,
.related.products h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    text-align: center !important;
    color: #000 !important;
    padding-bottom: 25px !important;
}
.ch-recently-viewed .woocommerce-loop-product__title,
.ch-recently-viewed h2.product_title,
.ch-recently-viewed .price,
.ch-recently-viewed .price ins,
.ch-recently-viewed .price .woocommerce-Price-amount {
    color: #000 !important;
}
/* Recently Viewed â€“ product grid */
.ch-recently-viewed ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
}
.ch-recently-viewed ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
}
@media (max-width: 1024px) {
    .ch-recently-viewed ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
@media (max-width: 767px) {
    .ch-recently-viewed ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
}

/* — Trust Signals --------------------------------------------------------- */
.ch-trust-wrap {
    margin-top: 16px;
    padding: 0;
    background: transparent;
    border: none;
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    box-sizing: border-box;
}
.ch-trust-payment {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 10px 10px 0 0;
    padding: 11px 14px;
    border-bottom: none;
}
.ch-trust-label {
    font-size: 11px;
    color: #999;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    flex-shrink: 0;
}
.ch-trust-badge {
    font-size: 11px;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
    padding: 5px 12px;
    border-radius: 6px;
    letter-spacing: 0.2px;
    color: #fff;
    flex-shrink: 0;
}
.ch-trust-cod  { background: #1a1a1a; }
.ch-cod-short { display: inline !important; }
.ch-cod-full  { display: none !important; }
@media (min-width: 600px) {
    .ch-cod-short { display: none !important; }
    .ch-cod-full  { display: inline !important; }
}
.ch-trust-jazz { background: linear-gradient(135deg, #a50034 0%, #d4003f 100%); }
.ch-trust-easy { background: linear-gradient(135deg, #1a8c3e 0%, #24b854 100%); }
.ch-trust-badges {
    display: flex;
    align-items: stretch;
    background: #f8f9f8;
    border: 1px solid #e8e8e8;
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}
.ch-trust-item {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px 10px;
    font-family: 'Poppins', sans-serif;
}
.ch-trust-item:not(:last-child) { border-right: 1px solid #e4eae4; }
.ch-trust-icon {
    width: 20px;
    height: 20px;
    color: #2eaa5e;
    flex-shrink: 0;
}
.ch-trust-text { display: flex; flex-direction: column; gap: 1px; }
.ch-trust-title { font-size: 11px; font-weight: 600; color: #1a1a1a; line-height: 1.3; }
.ch-trust-sub   { font-size: 9.5px; font-weight: 400; color: #888; line-height: 1.3; }
@media (max-width: 380px) {
    .ch-trust-badges { flex-direction: column; }
    .ch-trust-item:not(:last-child) { border-right: none; border-bottom: 1px solid #e4eae4; }
}

/* ── Skeleton Loading Animation ──────────────────────────────────────────── */
@keyframes ch-shimmer {
    0%   { background-position: -600px 0; }
    100% { background-position: 600px 0; }
}
.product-loop-image-wrapper img:not([src]),
.product-loop-image-wrapper img[src=""],
.woocommerce-loop-product__link img {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 600px 100%;
    animation: ch-shimmer 1.4s ease-in-out infinite;
    min-height: 1px;
}
.woocommerce-loop-product__link img.ch-img-loaded {
    animation: none !important;
    background: none !important;
}

/* ── Reviews Rating Summary Badge ────────────────────────────────────────── */
.ch-rrs-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 24px;
    padding: 16px 20px;
    background: #f8f8f8;
    border-radius: 50px;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.ch-rrs-stars { display: flex; gap: 2px; align-items: center; }
.ch-rrs-score {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
}
.ch-rrs-score span {
    font-size: 16px;
    color: #999;
    font-weight: 400;
}
.ch-rrs-divider {
    width: 1px;
    height: 24px;
    background: #ddd;
}
.ch-rrs-count {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    color: #666;
}
.ch-rrs-count strong { color: #1a1a1a; }
@media (max-width: 600px) {
    .ch-rrs-wrap { gap: 10px; padding: 12px 16px; border-radius: 14px; }
    .ch-rrs-score { font-size: 22px; }
    .ch-rrs-divider { display: none; }
}

/* ── Customer Reviews ────────────────────────────────────────────────────── */
.ch-reviews-section {
    padding: 8px 0 24px;
    overflow: hidden;
}
.ch-reviews-track-wrap {
    overflow-x: scroll;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 8px 0 12px;
    scroll-behavior: smooth;
}
.ch-reviews-track-wrap::-webkit-scrollbar { display: none; }
.ch-reviews-track {
    display: flex;
    gap: 16px;
    align-items: stretch;
}
.ch-review-card {
    flex-shrink: 0;
    background: #fff;
    border-radius: 16px;
    border: 1px solid #ebebeb;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    padding: 22px 20px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: box-shadow .2s, transform .2s;
}
.ch-review-card:hover {
    box-shadow: 0 6px 24px rgba(0,0,0,0.10);
    transform: translateY(-2px);
}
@media (max-width: 960px) { .ch-review-card { flex: 0 0 calc(50% - 8px); } }
@media (max-width: 600px) { .ch-review-card { flex: 0 0 100%; align-self: flex-start; } }
@media (max-width: 600px) { .ch-reviews-track { align-items: flex-start; } }

.ch-review-top {
    display: flex;
    align-items: center;
    gap: 12px;
}
.ch-review-avatar {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Poppins, sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
    letter-spacing: 0.5px;
    background: #1a1a1a !important;
}
.ch-review-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ch-review-name {
    font-family: Poppins, sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1.2;
}
.ch-review-verified {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #1a1a1a;
    color: #fff;
    font-family: Poppins, sans-serif;
    font-size: 10px;
    font-weight: 600;
    padding: 3px 8px 3px 4px;
    border-radius: 50px;
    letter-spacing: 0.2px;
}
.ch-review-verified svg {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}
.ch-review-stars {
    display: flex;
    gap: 2px;
}
.ch-review-stars svg {
    width: 16px;
    height: 16px;
}
.ch-review-text {
    font-family: Poppins, sans-serif;
    font-size: 13.5px;
    color: #444;
    line-height: 1.7;
    margin: 0;
    flex: 1;
}
.ch-reviews-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    margin-top: 10px;
}
.ch-rv-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ddd;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: background .2s, transform .2s;
}
.ch-rv-dot.active {
    background: #1a1a1a;
    transform: scale(1.3);
}

/* ── Blog Grid ────────────────────────────────────────────────────────────── */
.ch-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 32px 16px 60px;
}
@media (max-width: 900px)  { .ch-blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .ch-blog-grid { grid-template-columns: 1fr; gap: 16px; } }

.ch-blog-card {
    background: #fff;
    border-radius: 14px;
    border: 1px solid #ebebeb;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow .2s, transform .2s;
}
.ch-blog-card:hover {
    box-shadow: 0 8px 32px rgba(0,0,0,0.10);
    transform: translateY(-3px);
}

.ch-blog-img-wrap {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
    background: #f5f5f5;
}
.ch-blog-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
    display: block;
}
.ch-blog-card:hover .ch-blog-img-wrap img { transform: scale(1.04); }
.ch-blog-img-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
}
.ch-blog-img-placeholder svg {
    width: 48px;
    height: 48px;
    color: #ccc;
}

.ch-blog-body {
    padding: 18px 20px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 8px;
}

.ch-blog-cat {
    font-family: Poppins, sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    background: #1a1a1a;
    padding: 3px 10px;
    border-radius: 50px;
    align-self: flex-start;
}

.ch-blog-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.3;
}
.ch-blog-title a { color: inherit; text-decoration: none; }
.ch-blog-title a:hover { color: #444; }

.ch-blog-excerpt {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    color: #666;
    line-height: 1.65;
    margin: 0;
    flex: 1;
}

.ch-blog-footer {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 4px;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
}
.ch-blog-meta {
    font-family: Poppins, sans-serif;
    font-size: 11px;
    color: #aaa;
    display: flex;
    align-items: center;
    gap: 4px;
}
.ch-blog-meta svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
}
.ch-blog-read-more {
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #1a1a1a;
    text-decoration: none;
    margin-left: auto;
    transition: color .15s;
}
.ch-blog-read-more:hover { color: #555; }

/* ── Single Product Page — Gallery Image Fix (no cropping) ─────────────────── */
.single-product .product-images,
.single-product .has-variation-swatches .product-gallery:not(.column-style):not(.grid-style) .product-images {
    height: auto !important;
}
.single-product .product-images-container .image-item img,
.single-product .product-images .image-item img,
.single-product .woocommerce-product-gallery__image img,
.single-product .product-gallery img:not(.thumbnail-item img) {
    object-fit: contain !important;
    object-position: center center !important;
    aspect-ratio: unset !important;
    width: 100% !important;
    height: auto !important;
    background: #f8f8f8 !important;
}

/* ── Single Blog Post Page ─────────────────────────────────────────────────── */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-title,
body.single-post h1,
body.single-post h2,
body.single-post h3,
body.single-post h4 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    letter-spacing: 0.5px;
    line-height: 1.2;
}
.single-post .page-header .entry-title,
.single-post .page-header h1 {
    color: #ffffff !important;
}
.single-post .entry-title {
    font-size: 36px !important;
    margin-bottom: 20px;
}
.single-post .entry-content h2 { font-size: 26px !important; margin: 32px 0 14px; }
.single-post .entry-content h3 { font-size: 21px !important; margin: 24px 0 10px; }

.single-post .entry-content p,
.single-post .entry-content li,
.single-post .entry-content blockquote,
body.single-post p {
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #444 !important;
}
.single-post .entry-content strong {
    font-family: Poppins, sans-serif !important;
    color: #1a1a1a !important;
}

/* â"€â”€ Empty Cart "New in store" Block Grid â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Heading */
.wp-block-woocommerce-empty-cart-block h2.wp-block-heading.has-text-align-center:not(.wc-block-cart__empty-cart__title) {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    font-size: 18px !important;
    color: #000 !important;
    margin-bottom: 16px !important;
}

/* Grid layout â€” match shop page 2 cols on mobile */
.wc-block-grid.has-4-columns {
    grid-template-columns: repeat(4, 1fr) !important;
}
@media (max-width: 1024px) {
    .wc-block-grid.has-4-columns { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 767px) {
    .wc-block-grid.has-4-columns { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Product image â€” same 3:4 portrait ratio as shop page */
.wc-block-grid__product-image img {
    aspect-ratio: 3 / 4 !important;
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
    background: #f5f5f5 !important;
}

/* Cart block grid title */
.wc-block-grid__product-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #2c2c2c !important;
    line-height: 1.4 !important;
    margin: 8px 0 4px !important;
    text-align: center !important;
    overflow: hidden !important;
    display: block !important;
}

/* Product price â€” same as shop, centered */
.wc-block-grid__product-price.price {
    font-size: 11px !important;
    display: flex !important;
    gap: 5px !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
}
.wc-block-grid__product-price.price ins {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #000 !important;
    text-decoration: none !important;
}
.wc-block-grid__product-price.price del {
    color: #888 !important;
    font-size: 10px !important;
    font-weight: 400 !important;
}
.wc-block-grid__product-price.price .woocommerce-Price-amount {
    color: inherit !important;
}

/* Hide SALE badge and BUY NOW button in empty cart "New in store" block */
.wc-block-grid__product-onsale,
.wc-block-grid__product .add_to_cart_button,
.wc-block-grid__product .wc-block-components-product-button,
.wc-block-grid__product .wc-block-grid__product-add-to-cart,
.wc-block-grid__product .woostify-buy-now-btn,
.wc-block-grid__product .product-loop-action { display: none !important; }

/* Sale badge â€” match our black pill style */
.wc-block-grid__product-onsale {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    z-index: 3 !important;
    background: #1a1a1a !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    font-family: 'Poppins', sans-serif !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
    letter-spacing: .3px !important;
    line-height: 1.4 !important;
}
.wc-block-grid__product-onsale .screen-reader-text { display: none !important; }

/* Card wrapper â€” position relative for badge */
.wc-block-grid__product {
    position: relative !important;
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
}

/* Image wrapper â€” no extra padding */
.wc-block-grid__product-image {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    line-height: 0 !important;
}



/* --- Improved size swatch buttons (single product page) ------------------- */
.single-product .cfvsw-swatches-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
}
.single-product .cfvsw-swatches-option.cfvsw-label-option {
    min-width: 46px !important;
    min-height: 46px !important;
    width: auto !important;
    height: 46px !important;
    padding: 0 14px !important;
    border-radius: 6px !important;
    border: 1.5px solid #d0d0d0 !important;
    background: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: border-color .2s, background .2s, color .2s !important;
    box-sizing: border-box !important;
}
.single-product .cfvsw-swatches-option.cfvsw-label-option .cfvsw-swatch-inner {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    line-height: 1 !important;
}
.single-product .cfvsw-swatches-option.cfvsw-label-option:hover {
    border-color: #1a1a1a !important;
    background: #f5f5f5 !important;
}
.single-product .cfvsw-swatches-option.cfvsw-label-option.cfvsw-selected,
.single-product .cfvsw-swatches-option.cfvsw-label-option.selected {
    border-color: #1a1a1a !important;
    background: #1a1a1a !important;
}
.single-product .cfvsw-swatches-option.cfvsw-label-option.cfvsw-selected .cfvsw-swatch-inner,
.single-product .cfvsw-swatches-option.cfvsw-label-option.selected .cfvsw-swatch-inner {
    color: #fff !important;
}


/* --- WhatsApp button pulse/blink animation — only after page fully loaded -- */
@keyframes ch-wa-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(73, 230, 112, 0.7); }
    60%  { box-shadow: 0 0 0 14px rgba(73, 230, 112, 0); }
    100% { box-shadow: 0 0 0 0 rgba(73, 230, 112, 0); }
}
.ch-page-loaded .chaty-widget .chaty-svg,
.ch-page-loaded .chaty-widget .chaty-channel a,
.ch-page-loaded .chaty-widget .chaty-channel button {
    animation: ch-wa-pulse 2s ease-out infinite !important;
}

/* --- Header cart icon: remove black circle, clean icon style -------------- */
.elementor-element-78f18d5 .elementor-menu-cart__toggle .elementor-button,
.elementor-element-cc6756d .elementor-menu-cart__toggle .elementor-button {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    width: auto !important;
    height: auto !important;
    min-height: unset !important;
    color: #1a1a1a !important;
}
.elementor-element-78f18d5 .elementor-menu-cart__toggle .elementor-button:hover,
.elementor-element-cc6756d .elementor-menu-cart__toggle .elementor-button:hover {
    background: transparent !important;
    color: #555 !important;
}
/* Hide the price text inside cart button */
.elementor-element-78f18d5 .elementor-menu-cart__toggle .elementor-button-text,
.elementor-element-cc6756d .elementor-menu-cart__toggle .elementor-button-text {
    display: none !important;
}
/* Cart SVG icon size */
.elementor-element-78f18d5 .elementor-button-icon,
.elementor-element-cc6756d .elementor-button-icon {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
}
.elementor-element-78f18d5 .e-font-icon-svg,
.elementor-element-cc6756d .e-font-icon-svg {
    width: 26px !important;
    height: 26px !important;
    fill: #1a1a1a !important;
}
/* Count badge - small red dot top-right */
.elementor-element-78f18d5 .elementor-button-icon-qty,
.elementor-element-cc6756d .elementor-button-icon-qty {
    position: absolute !important;
    top: -6px !important;
    right: -8px !important;
    background: #e53935 !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    font-family: 'Poppins', sans-serif !important;
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
}
/* Hide count badge when cart is empty (qty = 0) */
.elementor-menu-cart--empty-indicator-hide .elementor-button-icon-qty[data-counter="0"] {
    display: none !important;
}

/* --- Quick View skeleton loader ------------------------------------------- */
@keyframes ch-sk-shimmer {
    0%   { background-position: -600px 0; }
    100% { background-position: 600px 0; }
}
.ch-qv-sk-shimmer {
    background: linear-gradient(90deg, #f0f0f0 25%, #e4e4e4 50%, #f0f0f0 75%);
    background-size: 600px 100%;
    animation: ch-sk-shimmer 1.4s ease-in-out infinite;
    border-radius: 6px;
}
.ch-qv-skeleton {
    display: flex;
    width: 100%;
    min-height: 420px;
}
.ch-qv-sk-img {
    width: 50%;
    flex-shrink: 0;
    border-radius: 20px 0 0 20px;
    min-height: 420px;
}
.ch-qv-sk-right {
    flex: 1;
    padding: 32px 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.ch-qv-sk-line {
    border-radius: 6px;
    height: 14px;
    margin-bottom: 10px;
}
.ch-qv-sk-swatch {
    width: 52px;
    height: 36px;
    border-radius: 8px;
    flex-shrink: 0;
}
.ch-qv-sk-btn {
    width: 100%;
    height: 48px;
    border-radius: 50px;
}
@media (max-width: 699px) {
    .ch-qv-skeleton { flex-direction: column; min-height: unset; }
    .ch-qv-sk-img { width: 100%; border-radius: 0; min-height: 260px; }
    .ch-qv-sk-right { padding: 20px 18px; }
}


/* --- Cart sidebar: hide View Cart, keep only Checkout button -------------- */
.elementor-menu-cart__footer-buttons .elementor-button--view-cart {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    background: transparent !important;
    color: #1a1a1a !important;
    border: 1.5px solid #1a1a1a !important;
    border-radius: 50px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    padding: 14px 24px !important;
    text-align: center !important;
    text-decoration: none !important;
    pointer-events: all !important;
    cursor: pointer !important;
    transition: background .2s, color .2s !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart span {
    color: #1a1a1a !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
    background: #1a1a1a !important;
    color: #fff !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover span {
    color: #fff !important;
}
.elementor-menu-cart__footer-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px 20px 20px !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    background: #1a1a1a !important;
    color: #fff !important;
    border-color: #1a1a1a !important;
    border-radius: 50px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    padding: 14px 24px !important;
    text-align: center !important;
    text-decoration: none !important;
    pointer-events: all !important;
    cursor: pointer !important;
    transition: background .2s !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout span {
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover {
    background: #333 !important;
    color: #fff !important;
}


/* --- Force cart sidebar content visible ----------------------------------- */
.elementor-menu-cart__container .widget_shopping_cart_content,
.elementor-menu-cart__main .widget_shopping_cart_content,
.elementor-menu-cart__main .woocommerce-mini-cart,
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.elementor-menu-cart__main {
    display: flex !important;
    flex-direction: column !important;
}


/* --- Mobile: push WhatsApp button above sticky ATC bar -------------------- */
@media (max-width: 767px) {
    body.single-product .chaty-widget {
        bottom: 80px !important;
        transition: bottom .3s cubic-bezier(.4,0,.2,1) !important;
    }
}




/* ═══════════════════════════════════════════════════════════════════════════
   AJAX Shop Page
═══════════════════════════════════════════════════════════════════════════ */

/* Layout */
.ch-shop-wrap {
    display: flex;
    gap: 28px;
    align-items: flex-start;
    max-width: 1300px;
    margin: 0 auto;
    padding: 20px 16px 60px;
    position: relative;
}

/* ── Sidebar ────────────────────────────────────────────────────────────── */
.ch-shop-sidebar {
    width: 260px;
    flex-shrink: 0;
    background: #fff;
    border: 1px solid #ebebeb;
    border-radius: 14px;
    overflow: hidden;
    position: sticky;
    top: 100px;
}
.ch-shop-filter-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px 12px;
    border-bottom: 1px solid #f0f0f0;
}
.ch-shop-filter-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #1a1a1a;
}
.ch-shop-reset {
    background: none;
    border: none;
    font-family: Poppins, sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #e74c3c;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 6px;
    transition: background .15s;
}
.ch-shop-reset:hover { background: #fff0ef; }

.ch-shop-filter-section {
    padding: 14px 18px;
    border-bottom: 1px solid #f5f5f5;
}
.ch-shop-filter-section:last-child { border-bottom: none; }

.ch-shop-section-label {
    font-family: Poppins, sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #aaa;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ch-sc-chevron { font-size: 9px; }

/* Search */
.ch-shop-search-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1.5px solid #e8e8e8;
    border-radius: 8px;
    padding: 8px 12px;
    background: #fafafa;
    transition: border-color .15s;
}
.ch-shop-search-wrap:focus-within { border-color: #1a1a1a; background: #fff; }
.ch-shop-search {
    border: none;
    outline: none;
    background: transparent;
    font-family: Poppins, sans-serif;
    font-size: 12px;
    color: #1a1a1a;
    width: 100%;
}
.ch-shop-search::placeholder { color: #bbb; }

/* Categories */
.ch-shop-cat-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ch-shop-cat-item {
    font-family: Poppins, sans-serif;
    font-size: 12.5px;
    color: #555;
    padding: 7px 10px;
    border-radius: 8px;
    cursor: pointer;
    transition: background .15s, color .15s;
    line-height: 1.4;
}
.ch-shop-cat-item:hover { background: #f5f5f5; color: #1a1a1a; }
.ch-shop-cat-item.active {
    background: #1a1a1a;
    color: #fff;
    font-weight: 600;
}
.ch-shop-subcat-list {
    list-style: none;
    margin: 4px 0 0 10px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.ch-shop-subcat {
    font-size: 11.5px;
    padding: 5px 10px;
    color: #888;
}
.ch-shop-subcat:hover { color: #1a1a1a; }
.ch-shop-subcat.active { background: #f0f0f0; color: #1a1a1a; font-weight: 600; }

/* Price Range */
.ch-shop-price-wrap { padding: 4px 0 0; }
.ch-price-slider-track {
    position: relative;
    height: 4px;
    background: #e8e8e8;
    border-radius: 4px;
    margin: 18px 0 14px;
}
.ch-price-fill {
    position: absolute;
    height: 4px;
    background: #1a1a1a;
    border-radius: 4px;
    top: 0;
    left: 0;
    right: 0;
}
.ch-price-range {
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 4px;
    background: transparent;
    pointer-events: none;
    margin: 0;
}
.ch-price-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px; height: 18px;
    border-radius: 50%;
    background: #1a1a1a;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    cursor: pointer;
    pointer-events: all;
}
.ch-price-range::-moz-range-thumb {
    width: 18px; height: 18px;
    border-radius: 50%;
    background: #1a1a1a;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    cursor: pointer;
    pointer-events: all;
}
.ch-price-labels {
    display: flex;
    justify-content: space-between;
    font-family: Poppins, sans-serif;
    font-size: 11px;
    color: #555;
}
.ch-price-labels b { font-weight: 600; color: #1a1a1a; }

/* ── Main area ───────────────────────────────────────────────────────────── */
.ch-shop-main { flex: 1; min-width: 0; }

.ch-shop-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid #f0f0f0;
}
.ch-shop-count {
    font-family: Poppins, sans-serif;
    font-size: 13px;
    color: #888;
}
.ch-shop-count #ch-count-num {
    font-weight: 700;
    color: #1a1a1a;
    font-size: 14px;
}
.ch-shop-sort {
    border: 1.5px solid #e8e8e8;
    border-radius: 8px;
    padding: 7px 12px;
    font-family: Poppins, sans-serif;
    font-size: 12px;
    color: #333;
    background: #fff;
    cursor: pointer;
    outline: none;
    transition: border-color .15s;
}
.ch-shop-sort:focus { border-color: #1a1a1a; }

/* Loading overlay */
.ch-shop-grid-wrap { position: relative; min-height: 200px; }
.ch-shop-loading-overlay {
    display: none;
    position: absolute;
    inset: 0;
    background: rgba(255,255,255,0.75);
    z-index: 10;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}
.ch-shop-loading-overlay.active { display: flex; }
.ch-shop-spinner {
    width: 36px; height: 36px;
    border: 3px solid #e8e8e8;
    border-top-color: #1a1a1a;
    border-radius: 50%;
    animation: ch-spin .7s linear infinite;
}
@keyframes ch-spin { to { transform: rotate(360deg); } }

/* Empty state */
.ch-shop-empty {
    text-align: center;
    padding: 60px 20px;
    color: #bbb;
}
.ch-shop-empty p {
    font-family: Poppins, sans-serif;
    font-size: 14px;
    margin-top: 14px;
    color: #aaa;
}

/* Pagination */
.ch-shop-pagination { margin-top: 32px; }
.ch-page-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
}
.ch-page-btn {
    min-width: 38px; height: 38px;
    border: 1.5px solid #e8e8e8;
    background: #fff;
    border-radius: 8px;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #555;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
    padding: 0 10px;
}
.ch-page-btn:hover { border-color: #1a1a1a; color: #1a1a1a; }
.ch-page-btn.active { background: #1a1a1a; border-color: #1a1a1a; color: #fff; font-weight: 700; }
.ch-page-ellipsis {
    font-family: Poppins, sans-serif;
    font-size: 14px;
    color: #aaa;
    padding: 0 4px;
    align-self: center;
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */
.ch-shop-mob-toggle {
    display: none;
    align-items: center;
    gap: 8px;
    background: #1a1a1a;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 10px 18px;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    margin-bottom: 16px;
}
.ch-shop-mob-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 9998;
}
.ch-shop-mob-backdrop.active { display: block; }

@media (max-width: 768px) {
    .ch-shop-wrap { flex-direction: column; gap: 0; padding: 12px 12px 60px; }
    .ch-shop-mob-toggle { display: flex; }
    .ch-shop-sidebar {
        position: fixed;
        top: 0; left: 0;
        height: 100vh;
        width: 290px;
        z-index: 9999;
        border-radius: 0;
        overflow-y: auto;
        transform: translateX(-100%);
        transition: transform .3s cubic-bezier(.4,0,.2,1);
        box-shadow: 4px 0 24px rgba(0,0,0,0.15);
    }
    .ch-shop-sidebar.open { transform: translateX(0); }
    .ch-shop-topbar { flex-wrap: wrap; gap: 10px; }
    .ch-shop-sort { font-size: 11px; }
}

/* Shop page: equal height product cards */
.ch-simple-shop .products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.ch-simple-shop .products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
}
.ch-simple-shop .products li.product .product-loop-wrapper,
.ch-simple-shop .products li.product .woostify-product-wrapper {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}
.ch-simple-shop .products li.product .product-loop-image-wrapper img {
    width: 100% !important;
    aspect-ratio: 3/4 !important;
    object-fit: cover !important;
    display: block !important;
}
@media (max-width: 768px) {
    .ch-simple-shop .products { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
}
@media (max-width: 480px) {
    .ch-simple-shop .products { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
}

/* Shop filter reset button */
.ch-filter-reset {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: none;
    border: 1.5px solid #e0e0e0;
    border-radius: 50px;
    padding: 0 16px;
    height: 46px;
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #e74c3c;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s, border-color .15s;
    flex-shrink: 0;
}
.ch-filter-reset:hover { background: #fff0ef; border-color: #e74c3c; }

/* Shop page loading overlay */
.ch-shop-overlay-loading {
    position: absolute;
    inset: 0;
    background: rgba(255,255,255,0.82);
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    min-height: 200px;
    backdrop-filter: blur(2px);
}
.ch-shop-spinner-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
.ch-shop-spin {
    width: 40px;
    height: 40px;
    border: 3px solid #e8e8e8;
    border-top-color: #1a1a1a;
    border-radius: 50%;
    animation: ch-shop-spin .7s linear infinite;
}
@keyframes ch-shop-spin { to { transform: rotate(360deg); } }
.ch-shop-spinner-wrap span {
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: #888;
    letter-spacing: 0.5px;
}
.ch-simple-shop { position: relative; }
.ch-simple-shop .star-rating,
.ch-simple-shop .woocommerce-product-rating { display: none !important; }

/* Shop page price — match homepage style */
.ch-simple-shop .products li.product .price {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: #1a1a1a !important;
    justify-content: center !important;
}
.ch-simple-shop .products li.product .price del {
    font-size: 12px !important;
    color: #aaa !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
    opacity: 1 !important;
}
.ch-simple-shop .products li.product .price del .woocommerce-Price-amount {
    color: #aaa !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}
.ch-simple-shop .products li.product .price ins {
    text-decoration: none !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    font-size: 14px !important;
    background: transparent !important;
}
.ch-simple-shop .products li.product .price ins .woocommerce-Price-amount {
    color: #1a1a1a !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}

/* ── Trust Stats (Why Choose section, desktop only) ─────────────────────── */
#ch-trust-stats {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 28px;
    padding: 20px 24px;
    min-height: 76px;
    background: #f8f8f8;
    border-radius: 12px;
    border: 1px solid #ebebeb;
}
.ch-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    gap: 4px;
}
.ch-stat-num {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
    letter-spacing: -0.5px;
}
.ch-stat-plus, .ch-stat-unit {
    font-size: 16px;
    font-weight: 600;
    color: #555;
}
.ch-stat-star {
    font-size: 20px;
    color: #1a1a1a;
}
.ch-stat-label {
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    text-align: center;
}
.ch-stat-divider {
    width: 1px;
    height: 36px;
    background: #ddd;
    flex-shrink: 0;
}
/* ── Trust Features row (Why Choose, desktop only) ──────────────────────── */
#ch-trust-features {
    display: flex;
    align-items: center;
    margin-top: 12px;
    padding: 20px 24px;
    min-height: 76px;
    background: #f8f8f8;
    border-radius: 12px;
    border: 1px solid #ebebeb;
    gap: 0;
}
.ch-feat {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    gap: 4px;
}
.ch-feat svg {
    color: #1a1a1a;
    margin-bottom: 2px;
    opacity: 0.8;
    transition: transform 0.3s ease;
}
.ch-feat-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.2px;
}
.ch-feat-sub {
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    text-align: center;
}
.ch-feat-divider {
    width: 1px;
    height: 36px;
    background: #ddd;
    flex-shrink: 0;
}
/* ── Trust cards animations ─────────────────────────────────────────────── */
@keyframes ch-trust-fadein {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}
#ch-trust-stats,
#ch-trust-features {
    opacity: 0;
}
#ch-trust-stats.ch-visible {
    animation: ch-trust-fadein 0.55s ease forwards;
}
#ch-trust-features.ch-visible {
    animation: ch-trust-fadein 0.55s ease 0.15s forwards;
}
.ch-stat:hover .ch-stat-num {
    transform: scale(1.08);
    transition: transform 0.25s ease;
}
.ch-stat-num {
    display: inline-block;
    transition: transform 0.25s ease;
}
.ch-feat:hover svg {
    transform: scale(1.2);
}
.ch-feat:hover .ch-feat-title {
    color: #333;
}
/* ── Mobile Separate Cards (single product page) ───────────────────────── */
@media (max-width: 991px) {
    .ch-trust-payment {
        background: #f8f8f8 !important;
        border: 1px solid #ebebeb !important;
        border-radius: 12px !important;
        margin-bottom: 8px !important;
    }
    .ch-trust-badges {
        background: #f8f8f8 !important;
        border: 1px solid #ebebeb !important;
        border-radius: 12px !important;
        overflow: hidden;
        margin-bottom: 8px !important;
    }
    .ch-trust-badges .ch-trust-item {
        border-bottom: 1px solid #ebebeb !important;
    }
    .ch-trust-badges .ch-trust-item:last-child {
        border-bottom: none !important;
    }
    .ch-trust-wrap {
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
    }
    .ch-trust-payment {
        display: none !important;
    }
}
#ch-mob-stats-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    box-sizing: border-box;
    padding: 14px 16px;
    background: #f8f8f8;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    margin-top: 0;
    animation: ch-trust-fadein 0.5s ease forwards;
}
.ch-mob-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    gap: 3px;
}
.ch-mob-num {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    line-height: 1;
}
.ch-mob-plus, .ch-mob-star {
    font-size: 13px;
    font-weight: 700;
}
.ch-mob-unit {
    font-size: 15px;
}
.ch-mob-days {
    font-size: 10px;
    font-weight: 600;
    vertical-align: baseline;
    margin-left: 1px;
}
.ch-mob-label {
        font-family: 'Poppins', sans-serif;
    font-size: 8.5px;
    font-weight: 500;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    text-align: center;
}
.ch-mob-divider {
    width: 1px;
    height: 28px;
    background: #ddd;
    flex-shrink: 0;
}

/* ── Mobile header: all 3 icons vertically centered ─────────────────────── */
@media (max-width: 991px) {
    .elementor-element-cc6756d,
    .elementor-element-d44cf69,
    .elementor-element-45b7a49 {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .elementor-element-cc6756d .elementor-widget-container,
    .elementor-element-cc6756d .elementor-menu-cart__wrapper,
    .elementor-element-cc6756d .elementor-menu-cart__toggle_wrapper,
    .elementor-element-cc6756d .elementor-menu-cart__toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 100% !important;
    }
}

/* ── Custom Footer ──────────────────────────────────────────────────────────── */
.elementor-location-footer { display: none !important; }

#ch-footer {
    background: #111827;
    color: #d1d5db;
    font-family: 'Poppins', sans-serif;
    margin-top: 48px;
}
.ch-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 56px 32px 32px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1.6fr;
    gap: 40px;
    align-items: start;
}
.ch-footer-logo {
    height: 80px;
    width: auto;
    display: block;
    margin-top: -14px;
    margin-bottom: 14px;
    filter: invert(1);
}
.ch-footer-tagline {
    font-size: 13px;
    line-height: 1.75;
    color: #9ca3af;
    margin: 0 0 18px;
}
.ch-footer-social {
    display: flex;
    gap: 14px;
}
.ch-footer-social a {
    color: #9ca3af;
    display: flex;
    align-items: center;
    transition: color 0.2s;
}
.ch-footer-social a:hover { color: #fff; }

.ch-footer-heading {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #fff;
    margin: 0 0 16px;
}
.ch-footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.ch-footer-links a {
    color: #9ca3af;
    text-decoration: none;
    font-size: 13.5px;
    transition: color 0.2s;
}
.ch-footer-links a:hover { color: #fff; }

.ch-footer-contact {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.ch-footer-contact li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
    color: #9ca3af;
    line-height: 1.5;
}
.ch-footer-contact svg { flex-shrink: 0; margin-top: 2px; color: #6b7280; }

.ch-footer-bottom {
    border-top: 1px solid #1f2937;
    padding: 18px 32px;
    text-align: center;
}
.ch-footer-bottom p {
    margin: 0;
    font-size: 12.5px;
    color: #6b7280;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
    .ch-footer-inner {
        grid-template-columns: 1fr 1fr 1fr;
        gap: 28px;
        padding: 40px 24px 24px;
    }
    .ch-footer-brand { grid-column: 1 / -1; }
}

/* Mobile */
@media (max-width: 767px) {
    .ch-footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
        padding: 36px 20px 20px;
    }
    .ch-footer-brand { grid-column: 1 / -1; }
    .ch-footer-bottom { padding: 14px 20px; }
}
@media (max-width: 400px) {
    .ch-footer-inner { grid-template-columns: 1fr; }
}
