/* html, */
/* body {
    position: relative;
    height: 100%;
    padding: 0;
  } */

body {
    /* background: #f7f7f7; */
    /* font-family: Helvetica Neue, Helvetica, Arial, sans-serif; */
    /* font-size: 14px; */
    /* color: #000; */
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

/* Storefront UX polish: prevent accidental text selection on click/tap/drag.
   Keep selection enabled where users type or copy text intentionally. */
body {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
input,
textarea,
select,
[contenteditable="true"],
.select2-search__field,
.header-location-input,
.mobile-search-inline-input {
    -webkit-user-select: text !important;
    -moz-user-select: text !important;
    -ms-user-select: text !important;
    user-select: text !important;
}

/* Header dropdown z-index / clipping fix */
header.wrapper,
header.wrapper .content-wrapper,
header.wrapper .bg-gradient-reverse-primary,
header.wrapper .container {
    overflow: visible !important;
}
header.wrapper .dropdown-menu{
    z-index: 3000 !important;
}

/* Header topbar responsive guardrails */
.bg-gradient-reverse-primary .container.d-flex {
    flex-wrap: wrap;
    row-gap: 6px;
}
.bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill {
    min-width: 0;
}
.bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill .navbar-nav {
    flex-wrap: wrap;
    row-gap: 2px;
}
.bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill .navbar-nav .nav-item a {
    word-break: break-word;
}

@media (max-width: 991.98px) {
    .bg-gradient-reverse-primary .container.d-flex {
        justify-content: center;
    }
    .bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill {
        width: 100%;
    }
    .bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill .navbar-nav {
        justify-content: center;
    }
}

/* Footer full-bleed background guard (prevents white gap on some responsive widths) */
footer.text-inverse{
    width: 100%;
    max-width: 100%;
    background-color: #1f56a8;
}
footer.text-inverse > section.bg-mirswa{
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background-color: #1f56a8;
}

/* Footer app links (uses existing backend links; keeps footer color unchanged) */
.footer-app-links-title{
    font-size: 13px;
    font-weight: 700;
}
.footer-app-links-row{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
/* Footer bottom split (60/40) + vertical alignment */
.footer-bottom-bar{
    padding-bottom: 18px;
}
.footer-bottom-left-inner{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}
.footer-social{
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.footer-social a{
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255,255,255,0.10);
    transition: transform .12s ease, background .12s ease;
}
.footer-social a:hover{
    background: rgba(255,255,255,0.16);
    transform: translateY(-1px);
}
.footer-copyright{
    font-size: 13px;
    line-height: 1.35;
}
.footer-bottom-right{
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.footer-bottom-right .footer-app-links-row{
    justify-content: flex-end;
    align-items: center;
}
@media (max-width: 991.98px){
    .footer-bottom-right{
        justify-content: flex-start;
    }
    .footer-bottom-right .footer-app-links-row{
        justify-content: flex-start;
    }
}

/* Store badges like official style */
.footer-store-badge{
    display: inline-flex;
    text-decoration: none;
    border-radius: 10px;
    overflow: hidden;
    transform: translateY(0);
    transition: transform .15s ease, filter .15s ease;
}
.footer-store-badge:hover{
    transform: translateY(-1px);
    filter: brightness(1.04);
}
.footer-store-badge svg{
    width: 155px;
    height: 46px;
    display: block;
}
@media (max-width: 575.98px){
    .footer-logo-footer{
        width: min(220px, 78vw);
        height: auto;
    }
    .footer-app-links-row{
        justify-content: center;
        width: 100%;
    }
    .footer-store-badge svg{
        width: 140px;
        height: 42px;
    }
    .footer-bottom-left-inner{
        justify-content: center;
        text-align: center;
    }
    .footer-bottom-right{
        justify-content: center;
    }
}

/* Professional e-commerce zoom behavior:
   disable mirror/lens zoom overlays and rely on clean click-to-open viewer. */
.zoomContainer,
.zoomWindow,
.zoomLens,
.zoomTint,
.zoomWrapper {
    display: none !important;
}

/* PDP magnifier lens (desktop hover) */
.pdp-magnifier-lens{
    position: absolute;
    width: 170px;
    height: 170px;
    border-radius: 999px;
    border: 2px solid color-mix(in srgb, var(--primary-color) 35%, rgba(15, 23, 42, 0.18));
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
    background-repeat: no-repeat;
    background-color: transparent;
    pointer-events: none;
    opacity: 0;
    transform: scale(.98);
    transition: opacity .12s ease, transform .12s ease;
    z-index: 20;
}
.pdp-magnifier-lens.is-active{
    opacity: 1;
    transform: scale(1);
}
@media (max-width: 991.98px){
    .pdp-magnifier-lens{ display: none !important; }
}

.product_other_images,
.product-view-image-container img {
    cursor: zoom-in;
}

/* Product card hover actions: keep icons compact (premium) */
.item figure .item-link,
.item figure .item-like,
.item figure .item-view,
.item figure .item-compare,
.swiper-slide figure .item-link,
.swiper-slide figure .item-like,
.swiper-slide figure .item-view,
.swiper-slide figure .item-compare {
    width: 1.3rem !important;
    height: 1.3rem !important;
    line-height: 1.3rem !important;
    font-size: 0.65rem !important;
}

.item figure .item-link i,
.item figure .item-like i,
.item figure .item-view i,
.item figure .item-compare i,
.swiper-slide figure .item-link i,
.swiper-slide figure .item-like i,
.swiper-slide figure .item-view i,
.swiper-slide figure .item-compare i{
    font-size: 0.65rem !important;
}

/* Product card actions should be professional:
   - Horizontal on top-right (wishlist, quick-view, compare)
   - Small icons
   - Responsive sizing
   - Exclude Auto Ads section */
.item figure .item-like,
.item figure .item-view,
.item figure .item-compare,
.swiper-slide figure .item-like,
.swiper-slide figure .item-view,
.swiper-slide figure .item-compare {
    top: 0.75rem !important;
    bottom: auto !important;
    left: auto !important;
    opacity: 1 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    z-index: 4 !important;
}
.item figure .item-like,
.swiper-slide figure .item-like {
    right: 0.55rem !important;
}
.item figure .item-view,
.swiper-slide figure .item-view {
    right: 2.15rem !important;
}
.item figure .item-compare,
.swiper-slide figure .item-compare {
    right: 3.75rem !important;
}
.main-content .item figure .item-like,
.main-content .item figure .item-view,
.main-content .item figure .item-compare,
.main-content .swiper-slide figure .item-like,
.main-content .swiper-slide figure .item-view,
.main-content .swiper-slide figure .item-compare {
    top: 0.75rem !important;
    bottom: auto !important;
    left: auto !important;
    opacity: 1 !important; /* don't rely on hover */
    margin: 0 !important;
    margin-top: 0 !important;
    z-index: 4 !important;
}
/* Horizontal positions (right-to-left stacking) */
.main-content .item figure .item-like,
.main-content .swiper-slide figure .item-like {
    right: 0.55rem !important;
}
.main-content .item figure .item-view,
.main-content .swiper-slide figure .item-view {
    right: 2.15rem !important;
}
.main-content .item figure .item-compare,
.main-content .swiper-slide figure .item-compare {
    right: 3.75rem !important;
}
/* Exclude Auto Ads section actions (keep their own UI) */
.auto-product-ads-wrap .item figure .item-like,
.auto-product-ads-wrap .item figure .item-view,
.auto-product-ads-wrap .item figure .item-compare,
.auto-product-ads-wrap .swiper-slide figure .item-like,
.auto-product-ads-wrap .swiper-slide figure .item-view,
.auto-product-ads-wrap .swiper-slide figure .item-compare {
    top: unset !important;
    right: unset !important;
}

/* Sale badge responsive sizing */
.sale_tag {
    width: 44px;
    height: 44px;
    font-size: 11px;
}
/* Discount should be shown only in circle badge, not again below image/card title area. */
.main-content .item .special-price.striped-price,
.main-content .swiper-slide .special-price.striped-price {
    display: none !important;
}
@media (max-width: 991.98px) {
    .sale_tag { width: 40px; height: 40px; font-size: 10px; }
    .main-content .item figure .item-like,
    .main-content .item figure .item-view,
    .main-content .item figure .item-compare,
    .main-content .swiper-slide figure .item-like,
    .main-content .swiper-slide figure .item-view,
    .main-content .swiper-slide figure .item-compare {
        width: 1.2rem !important;
        height: 1.2rem !important;
        line-height: 1.2rem !important;
        font-size: 0.58rem !important;
    }
    .main-content .item figure .item-like { right: 0.42rem !important; top: 0.5rem !important; }
    .main-content .item figure .item-view { right: 1.75rem !important; top: 0.5rem !important; }
    .main-content .item figure .item-compare { right: 3.08rem !important; top: 0.5rem !important; }
    .main-content .swiper-slide figure .item-like { right: 0.42rem !important; top: 0.5rem !important; }
    .main-content .swiper-slide figure .item-view { right: 1.75rem !important; top: 0.5rem !important; }
    .main-content .swiper-slide figure .item-compare { right: 3.08rem !important; top: 0.5rem !important; }
}
@media (max-width: 575.98px) {
    .sale_tag { width: 36px; height: 36px; font-size: 9px; }
    .main-content .item figure .item-like,
    .main-content .item figure .item-view,
    .main-content .item figure .item-compare,
    .main-content .swiper-slide figure .item-like,
    .main-content .swiper-slide figure .item-view,
    .main-content .swiper-slide figure .item-compare {
        width: 1.1rem !important;
        height: 1.1rem !important;
        line-height: 1.1rem !important;
        font-size: 0.55rem !important;
    }
    .main-content .item figure .item-like { right: 0.35rem !important; top: 0.42rem !important; }
    .main-content .item figure .item-view { right: 1.55rem !important; top: 0.42rem !important; }
    .main-content .item figure .item-compare { right: 2.75rem !important; top: 0.42rem !important; }
    .main-content .swiper-slide figure .item-like { right: 0.35rem !important; top: 0.42rem !important; }
    .main-content .swiper-slide figure .item-view { right: 1.55rem !important; top: 0.42rem !important; }
    .main-content .swiper-slide figure .item-compare { right: 2.75rem !important; top: 0.42rem !important; }
}

/* .nav {
    --bs-nav-link-hover-color: var(--primary-color) !important;
} */

/* .nav-tabs.nav-tabs-basic .nav-link.active,
.nav-tabs.nav-tabs-basic .nav-item.show .nav-link {
    border-color: var(--primary-color) !important;
} */


.search_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(0);
    letter-spacing: -0.01rem;
    position: relative;
    border: 0px;
    background: white;
}

/* Auto-rotating horizontal product ads (below hero slider) */
.auto-product-ads-track {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.auto-product-ad-card {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 12px;
    background: #fff;
    padding: 10px;
    min-height: 102px;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.04), 0 8px 18px rgba(15, 23, 42, 0.06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    will-change: transform;
}
.auto-product-ad-link{
    display: flex;
    align-items: center;
    gap: 10px;
    color: inherit;
    width: 100%;
}
.auto-product-ad-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 2px 0 rgba(15, 23, 42, 0.05), 0 14px 32px rgba(15, 23, 42, 0.14);
    border-color: color-mix(in srgb, var(--primary-color) 30%, rgba(15, 23, 42, 0.10));
}
.auto-product-ad-media {
    width: 92px;
    min-width: 92px;
    height: 84px;
    border-radius: 10px;
    overflow: hidden;
    background: linear-gradient(180deg, #f8fafc, #eef2f7);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.auto-product-ad-media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .22s ease;
}
.auto-product-ad-card:hover .auto-product-ad-media img {
    transform: scale(1.04);
}

.auto-product-ad-actions{
    position: absolute;
    top: auto;
    right: 8px;
    bottom: 8px;
    display: flex;
    flex-direction: row;
    gap: 6px;
    z-index: 3;
    opacity: 0;
    transform: translateY(2px);
    transition: opacity .18s ease, transform .18s ease;
    pointer-events: none; /* enabled on buttons below */
}
.auto-product-ad-card:hover .auto-product-ad-actions{
    opacity: 1;
    transform: translateY(0);
}
.auto-product-ad-action{
    pointer-events: auto;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.10);
    background: rgba(255,255,255,0.96);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: transform .15s ease, border-color .15s ease;
}
.auto-product-ad-action i{
    font-size: 13px;
    color: #0f172a;
}
.auto-product-ad-action:hover{
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--primary-color) 35%, rgba(15, 23, 42, 0.12));
}

@media (max-width: 767.98px){
    .auto-product-ad-actions{
        opacity: 1;
        transform: none;
    }
}

/* Keep custom action placement scoped ONLY to auto ads cards. */
.auto-product-ads-wrap .auto-product-ad-actions{
    right: 4px;
    bottom: 4px;
    gap: 4px;
    max-width: calc(100% - 8px);
    flex-wrap: nowrap;
}
.auto-product-ads-wrap .auto-product-ad-action{
    width: 21px;
    height: 21px;
    min-width: 21px;
}
.auto-product-ads-wrap .auto-product-ad-action i{
    font-size: 9px;
}
@media (max-width: 767.98px){
    .auto-product-ads-wrap .auto-product-ad-actions{
        right: 3px;
        bottom: 3px;
        gap: 3px;
    }
    .auto-product-ads-wrap .auto-product-ad-action{
        width: 20px;
        height: 20px;
        min-width: 20px;
    }
    .auto-product-ads-wrap .auto-product-ad-action i{
        font-size: 8px;
    }
}
.auto-product-ad-content {
    min-width: 0;
}
.auto-product-ad-title {
    color: #111827;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.auto-product-ad-price-row {
    margin-top: 6px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}
.auto-product-ad-rating {
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #f59e0b;
    font-size: 12px;
    letter-spacing: .3px;
}
.auto-product-ad-stars {
    font-size: 12px;
    letter-spacing: 1px;
}
.auto-product-ad-rating-num {
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
}
.auto-product-ad-price {
    color: #0f172a;
    font-size: 15px;
    font-weight: 700;
}
.auto-product-ad-strike {
    color: #dc2626;
    font-size: 12px;
    text-decoration: line-through;
}
.auto-product-ad-discount {
    color: #059669;
    font-size: 11px;
    font-weight: 700;
}
@media (max-width: 991.98px) {
    .auto-product-ads-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 767.98px) {
    .auto-product-ads-track {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .auto-product-ad-card {
        min-height: 94px;
        padding: 7px;
    }
    .auto-product-ad-media {
        width: 84px;
        min-width: 84px;
        height: 78px;
    }
}

.search_btn:not(.btn-link):hover {
    transform: none;
    box-shadow: none;
}

.refer_and_earn_border {
    border: 2px dashed #343f52;
}

.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-check:checked+.btn,
:not(.btn-check)+.btn:active,
.btn:first-child:active,
.btn.active,
.btn.show {
    color: var(--bs-btn-active-color);
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    box-shadow: var(--bs-btn-active-shadow);
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-primary.focus,
.btn-primary:focus {
    box-shadow: none !important;
}

.swiper-slide {
    text-align: center;
    font-size: 16px;
    background: #fff;
    /* background-color: #f7f7f7; */
}

/* .swiper-slide-category {
    width: 160px !important;
} */

.category-swiper>.swiper-controls>.swiper-navigation {
    display: none;
}

.swiper-slide-category img {
    height: 60px;
    border-radius: 8px;
}

/* Avoid global swiper-wrapper padding (causes end gaps). Scope it to category row only. */
.category-swiper .swiper-wrapper {
    padding: 0 !important;
}

.category-swiper{
    padding: 0 10px;
    width: 100%;
    max-width: 100%;
    overflow: hidden !important; /* prevents any spill/blue line */
    position: relative;
    clip-path: inset(0); /* hard clip transformed wrapper */
}

.category-swiper .swiper-wrapper{
    box-sizing: border-box;
}

.category-swiper .swiper-slide,
.category-swiper .brand_image_div{
    box-sizing: border-box;
}


.category-image-container img {
    max-height: 100%;
    border-radius: 8px;
    max-width: 100%;
}

.category-image-container {
    height: 75px !important;
    width: 75px !important;
}

.description_img img {
    max-width: 100% !important;
}

/* Deal countdown timer (boxed style) */
.deal-timer {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    max-width: 100%;
}
.deal-timer-label {
    font-weight: 600;
    font-size: 12px;
    color: #e2626b; /* matches text-danger-ish */
}
.deal-timer-boxes {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    max-width: 100%;
}
.deal-timer-box {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 8px;
    border: 1px solid rgba(226, 98, 107, 0.35);
    background: rgba(226, 98, 107, 0.08);
    border-radius: 10px;
    line-height: 1;
    max-width: 100%;
}
.deal-timer-num {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    font-size: 12px;
    color: #1e2228;
}
.deal-timer-unit {
    font-weight: 600;
    font-size: 10px;
    color: #60697b;
}
.deal-timer-sep {
    font-weight: 700;
    color: #60697b;
    margin: 0 1px;
}

/* Deal card badges */
.deal_tag,
.sale_tag {
    top: 10px;
    left: 10px;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    letter-spacing: 0.4px;
}

/* Use single-brand accent for SALE badge */
.sale_tag{
    background: var(--primary-color) !important;
    color: #fff !important;
}
.deal_tag_right {
    left: auto;
    right: 10px;
    top: 10px;
    z-index: 3;
}
.deal-discount-pill {
    margin-top: 6px;
    font-weight: 700;
}

/* Product detail title spacing */
.product-title-pro {
    padding-right: 8px;
    padding-left: 8px;
    margin-bottom: 6px;
    line-height: 1.25;
}

/* Product detail: available offers box */
.promo-offer-box {
    border-radius: 12px;
    border: 1px solid #e9edf5 !important;
    background: #fff;
}
.promo-offer-box ul li {
    line-height: 1.25;
}
.promo-ticket {
    position: relative;
    border: 1px dashed #f4cf65;
    border-radius: 10px;
    background: linear-gradient(180deg, #fff9e6 0%, #fffdf4 100%);
    padding: 12px 14px;
    box-shadow: inset 0 0 0 1px rgba(244, 207, 101, 0.25);
}
.promo-ticket::before,
.promo-ticket::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 12px;
    height: 12px;
    background: #fff;
    border: 1px solid #e8edf5;
    border-radius: 999px;
    transform: translateY(-50%);
}
.promo-ticket::before {
    left: -7px;
}
.promo-ticket::after {
    right: -7px;
}
.promo-ticket-code {
    letter-spacing: 0.5px;
    font-size: 12px;
    padding: 6px 10px;
    border-radius: 999px;
}

/* Ticket layout: button bottom aligned (marketplace-like) */
.promo-ticket-row {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 10px;
}
.promo-ticket-main {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    align-content: flex-start;
    flex: 1 1 auto;
    min-width: 0;
}
.promo-ticket-main > span:nth-child(2) {
    display: block;
    width: 100%;
    font-size: 16px;
}
.promo-ticket-main > span:nth-child(3) {
    font-size: 13px;
}
.promo-ticket-row .apply-product-promo {
    align-self: center;
    margin-top: 0;
    white-space: nowrap;
    min-width: 84px;
    max-width: 100%;
    height: 42px;
    border-width: 2px;
    font-weight: 700;
    flex: 0 0 auto;
}

/* Applied coupon highlight (ticket stays visibly active) */
.promo-ticket:has(.apply-product-promo.is-applied) {
    border-color: #27ae60;
    background: linear-gradient(180deg, #ecfff3 0%, #f7fff9 100%);
    box-shadow: inset 0 0 0 1px rgba(39, 174, 96, 0.25);
}

.apply-product-promo.is-applied {
    background: #fff5f5 !important;
    border-color: #e53935 !important;
    color: #c62828 !important;
    font-weight: 700;
}
.promo-ticket .text-dark.small.mt-1 {
    margin-top: 10px !important;
    font-size: 13px;
}
.promo-ticket .text-muted.small.mt-1 {
    margin-top: 4px !important;
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 767.98px) {
    .promo-ticket {
        padding: 10px 10px;
    }
    .promo-ticket-row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }
    .promo-ticket-row .apply-product-promo {
        align-self: flex-end;
        min-width: 90px;
        height: 38px;
    }
}

/* Desktop scaling safety: prevent Apply button overflow at 110%-125% zoom */
@media (max-width: 1599.98px) and (min-width: 768px) {
    .promo-ticket-row {
        flex-wrap: wrap;
        align-items: flex-start;
    }
    .promo-ticket-main {
        flex: 1 1 100%;
    }
    .promo-ticket-row .apply-product-promo {
        align-self: flex-start;
        margin-left: auto;
        height: 40px;
    }
    .product-delivery-card .input-group {
        flex-wrap: wrap;
        gap: 8px;
    }
    .product-delivery-card .input-group .form-control {
        flex: 1 1 100%;
        width: 100%;
    }
    .product-delivery-card .input-group .btn {
        flex: 0 0 auto;
    }
}
.product-detail-card {
    background: #fff;
    border: 1px solid #eef1f4;
    border-radius: 12px;
    padding: 14px;
}
.product-page-details .post-title {
    margin-bottom: 4px;
}
.product-page-details p {
    margin-bottom: 8px;
}
.product-page-details .num-block {
    max-width: 240px;
}
.product-page-details .product-page-div {
    margin-top: 6px;
    padding-top: 6px !important;
    flex-wrap: wrap;
    row-gap: 8px;
}
.product-page-details .product-permission-feature {
    justify-content: flex-start !important;
    gap: 18px;
}
.product-page-details .product-permission-feature {
    flex-wrap: wrap;
    overflow: visible !important;
    align-items: flex-start;
}
.product-page-details .product-permission-feature > div {
    flex: 1 1 130px;
    min-width: 130px;
    max-width: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.product-page-details .product-permission {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
}
.product-page-details .product-permission img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}
.product-page-details .product-permission-text {
    margin-top: 6px;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
    line-height: 1.3;
    text-align: center;
}
.product-page-details .promo-offer-box {
    margin-top: 12px !important;
}
.product-layout-wrap {
    margin-bottom: 10px;
    margin-top: 0 !important;
    --pdp-sticky-offset: 146px;
}

/* NOTE: do not override global header positioning here.
   Theme already manages sticky/fixed header. */
.product-gallery-card {
    background: #fff;
    border: 1px solid #e8edf5;
    border-radius: 12px;
    padding: 10px;
}
.product-gallery-wrap {
    position: sticky;
    top: var(--pdp-sticky-offset);
    align-self: flex-start;
}
.product-page-details .post-header.product-detail-card {
    position: static;
    top: auto;
    box-shadow: none;
}
.product-short-desc {
    color: #5f6b7a;
    line-height: 1.4;
}
.product-page-details .product-title-pro {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.35;
    padding-left: 0;
    padding-right: 0;
}
.product-page-details #price {
    font-size: 26px !important;
    font-weight: 700;
    color: #111827;
}
.product-page-details .striped-price {
    font-size: 14px;
}
.product-delivery-card {
    border: 1px solid #e9edf5;
    border-radius: 10px;
    padding: 10px;
    background: #fbfdff;
}
.product-delivery-card .input-group {
    display: flex;
    flex-wrap: nowrap;
}
.product-delivery-card .input-group .form-control {
    min-width: 0;
}
.product-cta-row .btn {
    min-height: 44px;
    font-weight: 700;
    border-radius: 8px !important;
}
.product-cta-row #add_cart,
.product-cta-row #buy_now,
.product-cta-row a.btn.btn-yellow {
    min-width: 0;
    padding-left: 16px;
    padding-right: 16px;
}
.product-cta-row #add_cart,
.product-cta-row a.btn.btn-yellow {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
}
.product-cta-row #buy_now {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
}
.product-cta-row #compare,
.product-cta-row .add-to-fav-btn,
.product-cta-row a.btn-success {
    min-width: 44px;
    width: 44px !important;
    height: 44px;
    border-radius: 8px !important;
}
.product-cta-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 8px !important;
    position: sticky;
    top: var(--pdp-sticky-offset);
    z-index: 8;
    background: #fff;
    padding: 8px 0;
    margin-bottom: 8px;
    border-bottom: 1px solid #eef2f7;
}
.product-cta-row .btn {
    flex: 0 0 auto;
}
.product-cta-row #add_cart,
.product-cta-row #buy_now,
.product-cta-row a.btn.btn-yellow {
    flex: 1 1 auto;
}

.product-cta-row .pdp-qty-in-cta {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
}

.pdp-coupon-bar {
    border: 1px solid #e6eef7;
    background: #f3fbf7;
    border-radius: 10px;
    padding: 10px 12px;
}
.pdp-coupon-bar .pdp-remove-coupon {
    font-weight: 700;
    color: #6b7280;
}
.product-highlights-card {
    border: 1px solid #e9edf5;
    border-radius: 10px;
    padding: 10px 12px;
    background: #fff;
}
.product-spec-card {
    border: 1px solid #e9edf5;
    border-radius: 10px;
    padding: 10px 12px;
    background: #fff;
}
.product-spec-card .product-detail-tab tr td:first-child {
    color: #6b7280;
    width: 42%;
}
.product-spec-card .product-detail-tab tr td {
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f2f5f9;
    vertical-align: top;
}
.product-spec-card .product-detail-tab tr:last-child td {
    border-bottom: 0;
}
.product-tabs-wrap-container .product-detail-tabs {
    border-bottom: 1px solid #e9edf5;
    background: #fff;
    border-radius: 10px 10px 0 0;
    padding: 6px 10px 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
}
.product-tabs-wrap-container .product-nav-tab {
    white-space: nowrap;
}
.product-tabs-wrap-container .product-detail-tabs .nav-item {
    display: flex;
}
.product-tabs-wrap-container .product-detail-tabs .product-nav-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
}
.product-tabs-wrap-container .product-tab-panel {
    background: #fff;
    border: 1px solid #e9edf5;
    border-top: 0;
    border-radius: 0 0 10px 10px;
    min-height: 220px;
    overflow: visible;
}

/* PDP: avoid fixed-height scroll traps inside tab content */
.product-tabs-wrap-container .tab-pane {
    overflow: visible;
}

/* PDP description tab: use full panel width */
#product-desc,
#product-desc > .row,
#product-desc .description.description_img {
    width: 100%;
    max-width: 100%;
}
#product-desc > .row {
    margin-left: 0;
    margin-right: 0;
}
#product-desc .description.description_img {
    flex: 0 0 100%;
    padding-left: 0;
    padding-right: 0;
}
#product-desc .description.description_img > * {
    max-width: 100% !important;
}
#product-desc .description.description_img > div,
#product-desc .description.description_img .tw\:space-y-6,
#product-desc .description.description_img .tw\:space-y-6 > div {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both;
}
#product-desc .description.description_img p,
#product-desc .description.description_img li,
#product-desc .description.description_img h1,
#product-desc .description.description_img h2,
#product-desc .description.description_img h3,
#product-desc .description.description_img h4,
#product-desc .description.description_img h5,
#product-desc .description.description_img h6,
#product-desc .description.description_img div,
#product-desc .description.description_img span {
    max-width: 100%;
}
#product-desc .description.description_img [style*="width"] {
    max-width: 100% !important;
}

/* PDP: reduce extra whitespace above gallery on large screens */
.product-layout-wrap {
    padding-top: 0;
}

/* Keep right detail column as sticky scroll region until tabs end */
.product-page-details {
    position: relative;
}

/* Sticky inside PDP needs overflow visible on ancestors */
@media (min-width: 992px) {
    .pdp-page .product-page-details {
        overflow: visible !important;
        z-index: 0;
    }
    .pdp-page #pdp-cta-anchor {
        overflow: visible !important;
    }
}

.product-tabs-wrap-container .product-nav-tab {
    font-weight: 600;
    color: #475467;
}
.product-tabs-wrap-container .product-nav-tab.active {
    color: var(--primary-color) !important;
    border-bottom: 2px solid var(--primary-color) !important;
}

/* PDP tabs: use full available width on desktop */
@media (min-width: 992px) {
    .product-tabs-wrap-container .product-detail-tabs {
        width: 100%;
        overflow-x: hidden;
        white-space: normal;
    }
    .product-tabs-wrap-container .product-detail-tabs .nav-item {
        flex: 1 1 0;
        text-align: center;
    }
    .product-tabs-wrap-container .product-detail-tabs .product-nav-tab {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* PDP tabs: responsive behavior for tablet and mobile */
@media (max-width: 991.98px) {
    .product-tabs-wrap-container .product-detail-tabs {
        width: 100%;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        padding: 4px 6px 0;
        gap: 4px;
    }
    .product-tabs-wrap-container .product-detail-tabs .nav-item {
        flex: 0 0 auto;
    }
    .product-tabs-wrap-container .product-detail-tabs .product-nav-tab {
        min-height: 40px;
        padding: 8px 12px;
        font-size: 14px;
    }
}
@media (max-width: 575.98px) {
    .product-tabs-wrap-container .product-detail-tabs .product-nav-tab {
        min-height: 38px;
        padding: 7px 10px;
        font-size: 13px;
    }
}
.product-gallery-wrap .product-thumb-img .swiper-slide {
    border: 1px solid #eef2f7;
    border-radius: 8px;
    background: #fff;
    padding: 2px;
}
.product-gallery-wrap .product-thumb-img .swiper-slide-thumb-active {
    border-color: var(--primary-color);
}
.product-gallery-wrap .gallery-top-1 .swiper-slide figure {
    border: 1px solid #eef2f7;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
    margin: 0;
    height: 520px;
    position: relative;
}

/* PDP zoom button: modern, always clickable (bottom-right) */
.pdp-page .product-gallery-wrap .gallery-top-1 .swiper-slide figure .item-link {
    position: absolute;
    right: 12px;
    bottom: 12px;
    left: auto;
    top: auto;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(15, 23, 42, 0.10);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(6px);
}
.pdp-page .product-gallery-wrap .gallery-top-1 .swiper-slide figure .item-link i {
    font-size: 20px;
    color: #0f172a;
}
.pdp-page .product-gallery-wrap .gallery-top-1 .swiper-slide figure .item-link:hover {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--primary-color) 35%, rgba(15, 23, 42, 0.12));
}
.pdp-page .pdp-breadcrumb-wrap {
    position: sticky;
    top: 72px;
    z-index: 1000;
    background: #f2f2ff;
    border-bottom: 1px solid #e9edf5;
}

@media (min-width: 992px) {
    .pdp-page #pdp-cta-anchor {
        position: sticky;
        bottom: 0;
        z-index: 2;
    }
    /* keep wishlist visible; hide other icons if needed */
    .pdp-page #pdp-cta-anchor #compare,
    .pdp-page #pdp-cta-anchor a.btn-success {
        display: none !important;
    }
    /* Prevent auto-jump feeling while swiping/scrolling on PDP mobile */
    .pdp-page,
    .pdp-page .pdp-right-top,
    .pdp-page .product-tabs-wrap-container .product-detail-tabs {
        scroll-behavior: auto !important;
    }
}

/* PDP fixed-split desktop layout (50/50) */
@media (min-width: 992px) {
    :root {
        /* header + sticky breadcrumb (tuned to avoid bottom gap) */
        --pdp-fixedsplit-offset: 112px;
        --pdp-cta-bar-safe: 64px;       /* reserve space for CTA bar (avoid bottom gap) */
    }
    /* Remove extra bottom whitespace from Bootstrap spacing */
    .pdp-page .main-content.product-layout-wrap {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    .pdp-page .main-content.product-layout-wrap > .row,
    .pdp-page .main-content.product-layout-wrap .row.g-3 {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    .pdp-page .product-layout-wrap > .row {
        align-items: stretch;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-auto-rows: minmax(0, 1fr);
        gap: 12px;
    }
    .pdp-page .product-layout-wrap > .row > .product-gallery-wrap,
    .pdp-page .product-layout-wrap > .row > .pdp-right-col {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    /* Left: sticky gallery */
    .pdp-page .product-gallery-wrap {
        position: sticky;
        top: var(--pdp-fixedsplit-offset);
        height: calc(100dvh - var(--pdp-fixedsplit-offset));
        overflow: hidden;
    }
    .pdp-page .product-gallery-wrap .product-gallery-card {
        height: 100%;
    }

    /* Right: fixed-height panel with internal scroll + sticky footer */
    .pdp-page .pdp-right-col {
        display: flex;
        flex-direction: column;
        position: sticky;
        top: var(--pdp-fixedsplit-offset);
        height: calc(100dvh - var(--pdp-fixedsplit-offset));
        min-height: calc(100dvh - var(--pdp-fixedsplit-offset));
        max-height: calc(100dvh - var(--pdp-fixedsplit-offset));
        overflow: hidden; /* prevent content from rendering below CTA */
    }
    .pdp-page .pdp-right-top {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        padding-bottom: 8px;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: auto;
    }
    /* Hide scrollbar indicator but keep scroll */
    .pdp-page .pdp-right-top {
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE/Edge legacy */
    }
    .pdp-page .pdp-right-top::-webkit-scrollbar {
        width: 0;
        height: 0;
    }
    .pdp-page #pdp-cta-anchor {
        width: 100%;
        background: #fff;
        border: 1px solid #e9edf5;
        border-radius: 12px;
        box-shadow: 0 10px 24px rgba(16, 24, 40, 0.10);
        padding: 10px;
        margin-top: 0 !important; /* remove visible gap above CTA on desktop */
        /* visually attach to bottom edge */
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        position: sticky;
        bottom: 8px !important;
        margin-bottom: 0 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row {
        width: 100%;
        /* prevent older CTA styles creating extra spacing/gap */
        border: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    /* Desktop CTA bar: make all controls same height and aligned */
    .pdp-page #pdp-cta-anchor .product-cta-row {
        display: flex !important;
        align-items: stretch !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row > * {
        height: 44px;
        min-height: 44px;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .btn {
        height: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        line-height: 1;
    }
    /* Qty block */
    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block {
        height: 44px;
        display: flex;
        align-items: stretch;
        margin: 0 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in {
        height: 44px !important;
        width: 120px !important;
        margin-top: 0 !important;
        border: 1px solid #d7dee8;
        border-radius: 10px;
        float: none;
        display: flex;
        align-items: center;
        overflow: hidden;
        background: #fff;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in span {
        height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        float: none;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input {
        height: 44px;
        float: none;
        font-weight: 700;
        color: #475467;
        background: #fff;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block input,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block .minus,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block .plus {
        height: 44px;
        line-height: 44px;
    }
    /* Wishlist icon button */
    .pdp-page #pdp-cta-anchor .product-cta-row .add-to-fav-btn {
        height: 44px !important;
        min-width: 44px;
        width: 44px;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    /* Make primary CTAs fill remaining width */
    .pdp-page #pdp-cta-anchor .product-cta-row #add_cart,
    .pdp-page #pdp-cta-anchor .product-cta-row #buy_now {
        flex: 1 1 0;
        min-width: 160px;
        border-radius: 10px !important;
    }
}

/* Hide horizontal scrollbar indicator on tab strip (keep swipe/scroll) */
.product-tabs-wrap-container .product-detail-tabs {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge legacy */
}
.product-tabs-wrap-container .product-detail-tabs::-webkit-scrollbar {
    width: 0;
    height: 0;
}

/* Marketplace-like CTA colors on PDP bottom bar */
.pdp-page #pdp-cta-anchor #add_cart {
    background: #ff9f00 !important;
    border-color: #ff9f00 !important;
    color: #fff !important;
}
.pdp-page #pdp-cta-anchor #buy_now {
    background: #fb641b !important;
    border-color: #fb641b !important;
    color: #fff !important;
}

/* Responsive PDP action bar (mobile/tablet) */
@media (max-width: 991.98px) {
    /* Single search UI on mobile/tablet: keep input bar, hide header icon trigger */
    .desktop-search,
    a.desktop-search,
    .navbar-other a.desktop-search,
    .navbar-other .nav-link.desktop-search {
        display: none !important;
    }

    .mobile-searchbar {
        display: block !important;
    }

    /* full-width bottom bar like app */
    .pdp-page #pdp-cta-anchor {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
        box-sizing: border-box !important;
        padding: 10px 12px;
        background: #fff;
        border-top: 1px solid #e9edf5;
        z-index: 1200;
        overflow-x: hidden !important;
    }

    /* reserve space so content doesn't hide behind bar */
    .pdp-page {
        padding-bottom: 84px;
    }

    .pdp-page #pdp-cta-anchor .product-cta-row {
        width: 100% !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        display: flex;
        align-items: stretch;
        gap: 8px !important;
        flex-wrap: nowrap;
    }

    /* qty compact, buttons take remaining width */
    .pdp-page #pdp-cta-anchor .pdp-qty-in-cta {
        flex: 0 0 auto;
    }

    /* Mobile CTA bar: force equal heights and remove large paddings */
    .pdp-page #pdp-cta-anchor .product-cta-row > * {
        height: 44px;
        min-height: 44px;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .btn {
        height: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        line-height: 1;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block,
    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta {
        margin: 0 !important;
        padding: 0 !important; /* overrides py-3 from markup */
        display: flex;
        align-items: stretch;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in {
        height: 44px !important;
        width: 116px !important;
        margin-top: 0 !important;
        border-radius: 10px;
        display: flex;
        align-items: center;
        overflow: hidden;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in span,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input {
        height: 44px !important;
        line-height: 44px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input {
        font-weight: 700;
    }

    .pdp-page #pdp-cta-anchor #add_cart,
    .pdp-page #pdp-cta-anchor #buy_now {
        flex: 1 1 0;
        min-width: 0;
        white-space: nowrap;
    }

    /* keep wishlist visible on mobile; hide compare/whatsapp icons */
    .pdp-page #pdp-cta-anchor #compare,
    .pdp-page #pdp-cta-anchor a.btn-success {
        display: none !important;
    }

    /* Lift floating chat/whatsapp widgets above fixed bottom CTA bar */
    .pdp-page .whatsapp-icon {
        bottom: calc(84px + 12px) !important;
    }
    .pdp-page #chat-iframe {
        bottom: calc(84px + 12px) !important;
    }
}

.product-page-details .product-rating-small {
    margin-top: 6px;
    margin-bottom: 8px;
}
.product-page-details .deal-countdown {
    display: inline-block;
    background: #fff3f3;
    border: 1px solid #ffd6d6;
    border-radius: 8px;
    padding: 4px 8px;
    font-weight: 600;
}
@media (max-width: 991.98px) {
    .product-page-details .post-header.product-detail-card {
        position: static;
        top: auto;
    }
    .product-gallery-wrap {
        position: static;
        top: auto;
    }
    .product-layout-wrap {
        margin-top: 0 !important;
    }
    .product-gallery-card {
        padding: 8px;
        border-radius: 10px;
    }
    .product-page-details .post-header.product-detail-card {
        padding: 12px;
        border-radius: 10px;
    }
    .product-page-details .product-rating-small {
        margin-top: 4px;
        margin-bottom: 6px;
    }
    .product-page-details .promo-offer-box {
        margin-top: 10px !important;
    }
    .product-page-details .product-delivery-card {
        margin-top: 10px !important;
    }
    .product-page-details .product-highlights-card {
        margin-top: 10px !important;
        padding: 10px;
        gap: 12px !important;
    }
    .product-page-details .product-cta-row {
        margin-top: 10px !important;
        padding-top: 0 !important;
        position: static;
        top: auto;
        z-index: auto;
        background: transparent;
        border-bottom: 0;
    }
    .product-page-details .product-spec-card {
        margin-top: 10px !important;
    }
    .product-cta-row #add_cart,
    .product-cta-row #buy_now,
    .product-cta-row a.btn.btn-yellow {
        min-width: 0;
        width: calc(50% - 4px);
    }
    .product-cta-row {
        column-gap: 8px !important;
    }
    .product-page-details #compare,
    .product-page-details .add-to-fav-btn,
    .product-page-details a.btn-success {
        width: 40px !important;
        min-width: 40px;
        height: 40px;
    }
    .product-tabs-wrap-container {
        margin-top: 8px !important;
    }
    .product-tabs-wrap-container .product-detail-tabs {
        padding: 4px 8px 0;
    }
    .product-tabs-wrap-container .product-tab-panel {
        padding: 10px !important;
    }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    .product-layout-wrap {
        --pdp-sticky-offset: 126px;
    }
}

/* Marketplace-like desktop behavior: all tab contents scroll in same panel */
@media (min-width: 992px) {
    .product-tabs-wrap-container .product-tab-panel {
        max-height: none;
        overflow-y: visible;
        overscroll-behavior: auto;
    }
}

/* ===== PDP-only behavior (stable) ===== */
/* Hide separate coupon bar; state shown inside offer rows only */
.pdp-page .pdp-coupon-bar {
    display: none !important;
}

/* Sticky CTA container (marketplace-like). This is bounded by the right column,
   so it will stop before Related Products automatically. */
@media (min-width: 992px) {
    .pdp-page #pdp-cta-anchor {
        position: sticky;
        bottom: 8px;
        z-index: 50;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row {
        position: static;
        background: transparent;
        border: 0;
        border-radius: 0;
        padding: 0;
        box-shadow: none;
        display: flex;
        align-items: center;
        flex-wrap: nowrap !important;
        overflow-x: visible;
        overflow-y: visible;
        gap: 8px !important;
    }

    .pdp-page #pdp-cta-anchor .product-cta-row > * {
        flex: 0 0 auto;
    }

    /* Keep primary CTAs wide, icons fixed */
    .pdp-page #pdp-cta-anchor .product-cta-row #add_cart,
    .pdp-page #pdp-cta-anchor .product-cta-row #buy_now {
        flex: 1 0 150px;
        min-width: 150px;
    }

    .pdp-page #pdp-cta-anchor .product-cta-row .add-to-fav-btn,
    .pdp-page #pdp-cta-anchor .product-cta-row #compare,
    .pdp-page #pdp-cta-anchor .product-cta-row a.btn-success {
        flex: 0 0 44px;
        min-width: 44px;
    }
}

/* Site-wide compact breadcrumb spacing (modern theme) */
.deeplink_wrapper .wrapper.bg-soft-grape .container {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.deeplink_wrapper .breadcrumb {
    margin-bottom: 0;
    font-size: 13px;
    line-height: 1.2;
}

.sub_category-image-container {
    /* height: 100px !important; */
    width: 100px !important;
}

.sub_category-image-container img {
    max-height: 100%;
    max-width: 100%;
    border-radius: 8px;
}

.brand_image_div {
    width: 70px !important;
    height: 70px !important;
}

.brand_image_div img {
    object-fit: cover;
    max-width: 100%;
    max-height: 100%;
}

.progress-wrap.active-progress {
    opacity: 1 !important;
}

/* .category-swiper .swiper-controls .swiper-navigation {
    display: none;
} */

section.slider>.pb-md-1>.swiper-controls {
    position: relative !important;
}
section.slider>.pb-0>.swiper-controls {
    position: relative !important;
}

/* .swiper-controls {
    margin-top: 20px;
} */

/* Prevent global swiper padding creating trailing blank space */
.hero-slider-enhanced .swiper-wrapper {
    padding: 0 !important;
}

.slide-img {
    height: auto;
    width: 100%;

}

.slide-img img {
    width: 100%;
    height: auto;
}

.swiper-slide img {
    width: 100%;
    height: auto;
}

/* .slide-img {
    height: 500px;
} */

/* .swiper-slide-style4 {
    width: 310px !important;
    margin-right: 20px !important;
} */

.logo-img img {
    max-width: 100%;
    max-height: 100%;
}

/* .navbar-brand img {
    width: 50%;
} */

.product-grid .price span,
.striped-price {
    color: red;
    font-size: 13px;
    font-weight: 400;
    text-decoration: line-through;
    margin-left: 3px;
    display: inline-block;
}

button.btn.btn-secondary.dropdown-toggle {
    gap: 2px;
    display: flex;
    align-items: baseline;
}

figure img {
    
    width: 100% ;
}

/* .fig_image{
    height: 150px !important;
} */

.gallery-thumbs .swiper-controls {
    display: none;
}

/* num in counting  */
.num-in {
    background: #FFFFFF;
    border: 2px solid rgba(0, 0, 0, 0.1);
    height: 40px;
    width: 110px;
    float: left;
    margin-top: -22px;
}

.num-in span {
    width: 30%;
    display: block;
    height: 40px;
    float: left;
    position: relative;
}

.num-in span:before,
.num-in span:after {
    content: '';
    position: absolute;
    background-color: #667780;
    height: 2px;
    width: 10px;
    top: 50%;
    left: 50%;
    margin-top: -1px;
    margin-left: -5px;
}

.num-in span.plus:after {
    transform: rotate(90deg);
}

.num-in input {
    float: left;
    width: 60%;
    height: 36px;
    border: none;
    text-align: center;
    font-weight: 900;
    color: #b0b0b0;
}

.num-in input:focus {
    color: black;
    outline: none;
}

/* order details progressbar */
.orders-section .card-header > .d-flex,
.orders-section .media-body,
.orders-section .media-body h5,
.orders-section .media-body p,
.orders-section .media-body a {
    min-width: 0;
}
.orders-section .card-header > .d-flex {
    gap: 12px;
    align-items: flex-start;
}
.orders-section .card-header .btn-xs,
.orders-section .media-body .btn-xs {
    max-width: 100%;
    white-space: normal;
}
.orders-section .media-body p,
.orders-section .media-body a,
.orders-section .media-body h5 {
    overflow-wrap: anywhere;
}
.orders-section .logo-fit {
    max-width: 100%;
    height: auto;
}

.orders-section #progressbar #step1:before {
    content: "1";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step2:before {
    content: "2";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step3:before {
    content: "3";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step4:before {
    content: "4";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step5:before {
    content: "5";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step6:before {
    content: "6";
    color: #fff;
    width: 29px;
    text-align: center;
}

.orders-section #progressbar #step7:before {
    content: "7";
    color: #fff;
    width: 29px;
    text-align: center;
}

section #progressbar div.active:after {
    background: var(--primary-color);
}

@media (max-width: 1024px) {
    .process-wrapper.line [class*=col-]:not(:last-child):after {
        width: 100%;
        position: absolute;
        content: "";
        height: 1px;
        background: none;
        border-top: 1px solid rgba(164, 174, 198, 0.2);
        top: 1.2rem;
        z-index: 1;
    }

    .orders-section .media.flex-column.flex-sm-row {
        gap: 16px;
    }

}

@media (max-width: 767.98px) {
    .orders-section .card-header > .d-flex {
        flex-wrap: wrap;
    }
    .orders-section .card-header .flex-col.my-auto,
    .orders-section .card-header h6.ml-auto.mr-3 {
        width: 100%;
        margin-right: 0 !important;
    }
    .orders-section .card-header h6.ml-auto.mr-3 {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    .orders-section .card-header h6.ml-auto.mr-3 .btn-xs,
    .orders-section .card-header h6.ml-auto.mr-3 .badge {
        margin: 0 !important;
    }
    .orders-section .media.flex-column.flex-sm-row {
        gap: 12px;
    }
    .orders-section .align-self-center.img-fluid {
        align-self: flex-start !important;
    }
    .orders-section .align-self-center.img-fluid img.logo-fit {
        width: 120px;
        height: auto;
    }
}

#step2,
#step3 {
    text-align: center;
}

#step4,
#step5 {
    text-align: right;
}

#step6 {
    text-align: end;
}

#step7 {
    text-align: end;
}

#progressbar div.cancel {
    color: red !important;
}

.orders-section #progressbar div.cancel:after {
    width: 0;
}


.blog_category .select2-container {
    width: 100% !important;
    /* padding-left: 109px; */
}

.blog-img {
    /* width: 300px; */
    height: 230px;
}

.product-list-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}

.product-bg {
    background-color: rgb(255, 255, 255);
    border-radius: 10px;
}

.item-compare {
    margin-top: 0 !important;
}

.swiper-img {
    border: 1px solid #c2c2c2;
    border-radius: 1.4mm;
    width: 88% !important;
    height: 60px !important;
    display: flex;
    align-items: center;
}

.swiper-img img {
    width: 100% !important;
}

.swiper-image img {
    max-width: 100% !important;
    max-height: 80px !important;
}

/* width */
.product-thumb-img::-webkit-scrollbar {
    width: 7px;
}

/* Track */
.product-thumb-img::-webkit-scrollbar-track {
    border-radius: 7px;
}

/* Handle */
.product-thumb-img::-webkit-scrollbar-thumb {
    background: rgb(178, 174, 174);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

.swiper-slide-container>.swiper-controls {
    display: none;
}

.offer-img img {
    max-width: 100%;
    max-height: 100%;
    width: -webkit-fill-available;
}

.offer-img {
    width:100%;
    height: auto;
}

/* .offer-image {
    height: 330px;
    width: 100%;
} */

.faq_image {
    height: 350px;
    /* width: 430px; */
}

.faq_image img {
    max-width: 100%;
    max-height: 100%;
}

.blog-card-img {
    width: 100% !important;
    height: 300px;
    display: flex;
    align-content: center;
    justify-content: center;
    overflow: hidden;
}

/* .blog-card-img img {
    max-width: 100% !important;
    max-height: 100%;
} */

.fav-row .row {
    margin: 0;
}


.accordion-card {
    position: relative;
    display: flex;
    flex-direction: column;
}

.cart-img {
    width: 110px !important;
    height: 100px !important;
}

.cart-img img {
    max-width: 100% !important;
    max-height: 100% !important;
}

.checkout-img {
    width: 40% !important;
    height: 90px !important;
}

.checkout-img img {
    max-width: 100% !important;
    max-height: 100% !important;
}

/* Cart page responsive hardening */
.cart-table-wrapper .cart-product-desc-list td {
    vertical-align: middle;
}
.cart-table-wrapper .cart-product-desc-list .post-title {
    min-width: 0;
    overflow-wrap: anywhere;
}
.cart-table-wrapper .product-quantity .num-in {
    min-width: 110px;
}
.cart-table-wrapper .move-to-cart {
    max-width: 100%;
    white-space: normal;
}

@media (max-width: 991.98px) {
    .cart-table-wrapper .cart-product-desc-list td.option {
        display: flex !important;
        align-items: flex-start !important;
        gap: 12px;
    }
    .cart-table-wrapper .cart-product-desc-list td.option > .w-100 {
        min-width: 0;
        margin-left: 0 !important;
    }
    .cart-img {
        width: 84px !important;
        height: 84px !important;
        flex: 0 0 84px;
    }
    .cart-table-wrapper .product-line-price {
        white-space: nowrap;
    }
}

@media (max-width: 575.98px) {
    /* Prevent column squeeze that makes product name vertical */
    .cart-table-wrapper {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .cart-table-wrapper table.table-responsive,
    .cart-table-wrapper table.table-responsive-sm,
    .cart-table-wrapper table.table-cart-product {
        display: block;              /* allow horizontal scroll */
        width: max-content;
        min-width: 720px;            /* keep columns readable on small screens */
        max-width: 100%;
        overflow-x: auto;
    }
    .cart-table-wrapper .cart-product-desc-list .post-title a {
        white-space: normal;
        word-break: break-word;
        overflow-wrap: anywhere;
    }
    .cart-table-wrapper .cart-product-desc-list td:last-child {
        white-space: nowrap;
    }
    .cart-table-wrapper .product-quantity .num-in {
        min-width: 96px;
    }
    .cart-table-wrapper .move-to-cart {
        width: 100%;
    }
}

/* Favorites page responsive hardening */
.fav-row .product-content,
.fav-row .list-product-title,
.fav-row .list-product-desc {
    min-width: 0;
}
.fav-row .list-product-title,
.fav-row .list-product-desc {
    overflow-wrap: anywhere;
}
.fav-row .button .add_to_cart {
    max-width: 100%;
    white-space: normal;
}

@media (max-width: 767.98px) {
    .fav-row .my-3 > .d-flex {
        flex-wrap: wrap;
        gap: 12px;
    }
    .fav-row .my-3 .col-md-4,
    .fav-row .my-3 .col-7,
    .fav-row .my-3 .col-md-8 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
    .fav-row .my-3 .col-7.col-md-8 {
        padding-left: 0;
        padding-right: 0;
    }
    .fav-row .button .add_to_cart {
        width: 100%;
        justify-content: center;
    }
}

.iziModal.isAttached,
.iziModal.isFullscreen {
    border-radius: 12px !important;
}

.compare-img {
    /* width: 100px !important; */
    height: 270px !important;
}

.compare-img img {
    max-width: 100% !important;
    max-height: 100% !important;
}

.reviews .review-box {
    background-color: #e8e8e8;
    display: flex;
    align-items: center;
}

.review-img {
    width: 100% !important;
    height: 90px !important;
}

.review-img img {
    max-width: 100% !important;
    max-height: 100% !important;
}

/* .btn-outline-primary:hover {
    color: white !important;
} */

.refer-img-box {
    height: 250px;
    /* width: 400px; */
}

.refer-img-box img {
    max-width: 100% !important;
    max-height: 100% !important;
}

.footer-logo-footer {
    width: 240px;
    height: 80px;
}

.footer-logo-footer img {
    max-width: 100%;
    max-height: 100%;
}

.list-unstyled li a:hover {
    color: white !important;
}

.link_cursor {
    cursor: pointer;
}

.promo-code-img {
    height: 100px;
    width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.promo-code-img img {
    max-height: 100%;
    max-width: 100%;
}

.copy-promo-code {
    border: 1px dashed;
    background: #ebebeb;
    max-width: 100%;
    display: flex;
    align-items: center;
    border-radius: 8px;
    cursor: pointer;
    justify-content: space-between;
}

/* ---------------------------------------------------------------------------------------------- 
      Product-listing 
  */

.product-listing .title {
    font-size: 16px;
}

.sidebar-filter {
    display: none;
}

/* filter sidebar scroll */
.filter_attributes {
    max-height: 300px;
    overflow-y: scroll;
}

.filter_attributes::-webkit-scrollbar {
    width: 7px;
}

.filter_attributes::-webkit-scrollbar-track {
    border-radius: 7px;
}

.filter_attributes::-webkit-scrollbar-thumb {
    background: rgb(66, 66, 66);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

/* brand filter sidebar scroll */
.brand_filter {
    max-height: 160px;
    overflow-y: scroll;
}

.title_wrap {
    text-wrap: nowrap !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    display: block;
}

.brand_filter::-webkit-scrollbar {
    width: 7px;
}

.brand_filter::-webkit-scrollbar-track {
    border-radius: 7px;
}

.brand_filter::-webkit-scrollbar-thumb {
    background: rgb(66, 66, 66);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

/* HIDE RADIO */
.brand_div [type=radio] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.brand_div {
    height: 35px !important;
    width: 35px !important;
}

/* IMAGE STYLES */
.brand_div [type=radio]+img {
    cursor: pointer;
    max-height: 35px;
    max-width: 35px;
    object-fit: contain;
}

/* CHECKED STYLES */
.brand_div [type=radio]:checked+img {
    outline: 2px solid var(--primary-color);
}

.selected-brand {
    outline: 2px solid var(--primary-color);
}

.selected-category {
    background-color: var(--primary-color);
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScxLjUnIGZpbGw9JyNmZmYnLz48L3N2Zz4=);
}

/* category filter scroll sidebar */
.category_filter {
    max-height: 210px;
    overflow-y: scroll;
}

.category_filter::-webkit-scrollbar {
    width: 7px;
}

.category_filter::-webkit-scrollbar-track {
    border-radius: 7px;
}

.category_filter::-webkit-scrollbar-thumb {
    background: rgb(66, 66, 66);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

/* select2 */

#offcanvas-search .select2-results {
    z-index: 999999;
    position: fixed;
    background: white;
    width: inherit;
    /* overflow: scroll;
    height: 50%; */
}

.select2-results__options {
    max-height: 300px;
    overflow: auto;
}

.select2-result-repository {
    padding-top: 4px;
    padding-bottom: 3px;
}

.select2-result-repository__avatar {
    float: left;
    width: 60px;
    height: 60px;
    margin-right: 10px;
    text-align: center !important;
}

.select2-result-repository__icon {
    float: left;
    width: 60px;
    height: 25px;
    margin-right: 10px;
    text-align: center !important;
}

.select2-result-repository__avatar img {
    max-width: 100%;
    max-height: 100%;
    border-radius: 2px;
}

.select2-result-repository__meta {
    margin-left: 70px;
}

.select2-result-repository__meta_icon {
    margin-left: 0px;
}

.select2-result-repository__title {
    word-wrap: break-word;
    line-height: 1.1;
    margin-bottom: 4px;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers {
    margin-right: 1em;
}

.select2-result-repository__forks,
.select2-result-repository__stargazers,
.select2-result-repository__watchers {
    display: inline-block;
    color: #aaa;
    font-size: 11px;
}

.select2-result-repository__description {
    font-size: 13px;
    color: #777;
    margin-top: 4px;
}

.select2-results__option--highlighted {
    opacity: 1 !important;
}

.select2-results__option--highlighted .select2-result-repository__title {
    color: rgb(31, 30, 30);
    color: black;
    font-weight: bold;
}

.select2-results__option--highlighted .select2-result-repository__forks,
.select2-results__option--highlighted .select2-result-repository__stargazers,
.select2-results__option--highlighted .select2-result-repository__description,
.select2-results__option--highlighted .select2-result-repository__watchers {
    color: rgb(31, 30, 30);
}

/* .select2-container--adwitt .select2-results>.select2-results__options {
    max-height: 300px;
    overflow: auto;
} */

.select2-selection__rendered {
    word-wrap: break-word !important;
    text-overflow: hidden !important;
    overflow: hidden;
    white-space: normal !important;
}

.select2-selection__placeholder {
    color: #bcbbbb;
}

@keyframes searchPlaceholderFade {
    from { opacity: 0.35; }
    to { opacity: 1; }
}

.search-placeholder-fade::placeholder,
.search-placeholder-fade {
    animation: searchPlaceholderFade .45s ease;
}

.edit_city .select2-container {
    width: 100% !important;
}

/* .select2-container .select2-selection--single { */
/* margin-top: 8px; */
/* padding: 8px;
    height: 100% !important; */
/* } */

.mobile-search .select2-container {
    border: 2px solid rgba(185, 185, 185, .2);
}

.mobile-search-inline-input {
    width: 100%;
    height: 40px;
    border: 1px solid #dbe2ea;
    border-radius: 10px;
    padding: 0 12px;
    font-size: 15px;
    color: #1f2937;
    background: #fff;
    box-shadow: none;
}
.mobile-search-inline-input:focus {
    border-color: color-mix(in srgb, var(--primary-color) 45%, #dbe2ea);
    outline: none;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--primary-color) 12%, transparent);
}

.select2-results__options {
    overflow-y: auto;
}

.select2-dropdown {
    z-index: 9999;
    border: 0px solid var(--border-color);
    border-radius: 0px;
}

.select2-search--dropdown .select2-search__field {
    border-radius: 6px;
    padding: 2px;
}

.select2-results__option {
    opacity: 0.8;
    transition: 150ms;
}

.product-page-details .btn-group>.active {
    background-color: #343f52 !important;
    /* background-color: var(--primary-color) !important;  */
}

/* PDP attribute selectors: safe wrapping for zoomed desktop + small screens */
.product-page-details h6[id],
.product-page-details .btn-group.btn-group-toggle[id] {
    min-width: 0;
}
.product-page-details .btn-group.btn-group-toggle + h6,
.product-page-details h6.m-0.mt-2 {
    overflow-wrap: anywhere;
}
.product-page-details .btn-group.btn-group-toggle {
    width: 100%;
    align-items: flex-start;
    row-gap: 8px !important;
}
.product-page-details .btn-group.btn-group-toggle > ul {
    margin: 0;
    flex: 0 0 auto;
}
.product-page-details .btn-group.btn-group-toggle label.btn {
    max-width: 100%;
}
.product-page-details .btn-group.btn-group-toggle .btn-aqua,
.product-page-details .btn-group.btn-group-toggle .btn-default {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-width: 44px;
    max-width: min(100%, 180px);
    padding: 8px 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.product-page-details .btn-group.btn-group-toggle .fullCircle {
    width: 42px;
    height: 42px;
    min-width: 42px;
    padding: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.product-page-details .btn-group.btn-group-toggle .swatche-image {
    max-width: 56px;
    height: 56px;
    width: 56px;
    object-fit: cover;
    display: block;
    border-radius: 10px;
}
.product-page-details .btn-group.btn-group-toggle .swatche-image + input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.product-page-details .btn-group.btn-group-toggle label.btn:has(.swatche-image) {
    padding: 4px;
}

@media (max-width: 1599.98px) and (min-width: 768px) {
    .product-page-details .btn-group.btn-group-toggle .btn-aqua,
    .product-page-details .btn-group.btn-group-toggle .btn-default {
        padding: 7px 10px;
        font-size: 13px;
    }
}

@media (max-width: 575.98px) {
    .product-page-details .btn-group.btn-group-toggle {
        gap: 6px !important;
    }
    .product-page-details .btn-group.btn-group-toggle .btn-aqua,
    .product-page-details .btn-group.btn-group-toggle .btn-default {
        padding: 6px 9px;
        font-size: 12px;
    }
    .product-page-details .btn-group.btn-group-toggle .swatche-image {
        max-width: 48px;
        height: 48px;
        width: 48px;
    }
    .product-page-details .btn-group.btn-group-toggle .fullCircle {
        width: 38px;
        height: 38px;
        min-width: 38px;
    }
}


/* accordion in filter */
.accordion-wrapper .card-header button:before {
    color: black !important;
}

.accordion-wrapper .card-header button:hover::before {
    color: var(--primary-color) !important;
}

.accordion-wrapper .card-header button:hover {
    color: var(--primary-color) !important;
}



@media (min-width: 1024px) {
    .swiper-auto .swiper-slide {
        width: 850px;
    }

    .swiper-auto.swiper-auto-xs .swiper-slide {
        width: 600px;
    }

    .logo-img {
        /* width: 187px !important; */
        height: 50px !important;
    }

    .mobile-searchbar {
        display: none;
    }

    .mobile_quick_view {
        display: none;
    }
}


@media (max-width: 991.98px) {

    .map.rounded-top iframe,
    .image-wrapper.rounded-top {
        border-top-left-radius: 0.4rem !important;
        border-top-right-radius: 0.4rem !important;
        width: 350px !important;
    }

    /* .image-wrapper.rounded-4-top {
      border-top-left-radius: 0.8rem !important;
      border-top-right-radius: 0.8rem !important;
    } */
}


@media (min-width: 768px) and (max-width: 1023.98px) {
    .swiper-auto .swiper-slide {
        width: 600px;
    }

    .swiper-auto.swiper-auto-xs .swiper-slide {
        width: 400px;
    }

    .logo-img {
        /* width: 187px !important; */
        height: 40px !important;
    }

    .mobile-searchbar {
        display: none;
    }

    .mobile_quick_view {
        display: none;
    }
}

@media (max-width: 767px) {
    .swiper-auto.swiper-auto-xs .swiper-slide {
        width: 300px;
    }

    .desktop-search {
        display: none;
    }

    .desktop_quick_view {
        display: none;
    }

    .slide-img {
        width:100%;
        height: auto;
    
        /* max-width: 1290px; */
    }

    .mySwiper .swiper-wrapper .swiper-mobile-slide {
        width: 190px !important;
    }
}


@media screen and (max-width: 450px) {
    .sidebar-filter-sm {
        display: none;
    }

    .desktop-search {
        display: none;
    }

    .desktop_quick_view {
        display: none;
    }
}

@media screen and (max-width:500px) {
    #chat-iframe {
        width: calc(100vw - 16px) !important;
        right: 8px !important;
        left: 8px !important;
        bottom: 72px !important;
        height: min(70vh, 560px) !important;
        border-radius: 16px !important;
    }
    #chat-close-button{
        right: 12px;
        bottom: calc(min(70vh, 560px) + 84px);
    }
}

.sale_tag {
    top: 1rem;
    left: 1rem;
}

/* Extra small devices (phones, 600px and down) */

@media only screen and (max-width: 600px) {
    .swiper-container.swiper-thumbs-container {
        display: none;
    }

    .fig_image {
        height: 150px !important;
    }

    .mt-3 {
        margin-top: 0px !important;
    }

    .mb-13 {
        margin-bottom: 0rem !important;
    }

    /* .isotope{
        height: 0px !important;
    } */

    .default-style .post-header h4 {
        font-size: 14px !important;
        margin-bottom: 0px !important;
    }

    .style_3 .product-content h4 {
        font-size: 14px !important;
    }

    .style_4 .product-content h4 {
        font-size: 14px !important;
    }

    .mySwiper .swiper-wrapper .swiper-mobile-slide {
        width: 190px !important;
    }

    .product_listing_list h4 {
        font-size: 0.75rem;
    }

    .product_listing_list .product-rating-small {
        margin-bottom: 0px !important;
    }

    .sale_tag {
        top: 0.1rem !important;
        left: 0.1rem !important;
    }

    .product_listing_list>.mt-n2 {
        display: none;
    }

    /* .swiper-slide-style4 {
        width: 150px !important;
    } */

    .default_heading h3 {
        font-size: 18px;
    }

    .default_heading h6 {
        font-size: 16px !important;
    }

    .seller-image-container {
        /* width: 150px !important; */
        height: 200px !important;
    }

    .seller-image-container .fig_seller_image {
        width: 150px !important;
        /* height: 150px !important; */
    }

    .sidebar-filter-sm {
        display: none;
    }

    .listing-page .filter-nav {
        display: none;
    }

    .logo-img {
        /* width: 187px !important; */
        height: 75px !important;
    }

    /* .swiper-slide-category {
        width: 100px !important;
        margin-right: 10px !important;
    } */

    .swiper-slide-category img {
        height: 75px;
        border-radius: 8px;
    }
}

@media only screen and (min-width: 800px) {
    .product-preview-image-section-sm {
        display: none;
    }

}

@media (max-width:799px) {
    .swiper-thumbs-container {
        display: none !important;
    }
}


/* Small devices (portrait tablets and large phones, 600px and up) */

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

    /* .swiper-container.swiper-thumbs-container {
        display: none;
    } */
    .filter-nav {
        display: none;
    }

    .sidebar-filter-sm {
        display: none;
    }
}

/* Medium devices (landscape tablets, 768px and up) */

@media only screen and (max-width: 768px) {
    .filter-nav {
        display: none;
    }

    .sidebar-filter-sm {
        display: none;
    }

    /* .swiper-slide-category img {
        height: 110px;
    } */
}

/* Extra small devices (phones, 990px and down) */

@media only screen and (max-width: 991px) {
    .product-page-preview-image-section-md {
        display: none;
    }

    .sidebar-filter-sm {
        display: none;
    }

    /* .swiper-slide-category img {
        height: 110px;
    } */
    .logo-img {
        /* width: 187px !important; */
        height: 75px !important;
    }

}

@media only screen and (min-width: 1000px) {

    .filter-sidebar-mobile {
        display: none;
    }

    .slide-img {
        height: auto;
        width:100%;
    }

    .swiper-slide-category img {
        height: 110px;
        border-radius: 8px;
    }

    /* .swiper-slide-category {
        width: 150px !important;
        margin-right: 10px !important;
    } */
}

#pills-tab>.nav-item a:hover {
    color: var(--primary-color) !important;
}

.buy-now-btn {
    position: fixed;
    bottom: 18px;
    left: 18px;
    z-index: 9999;
}

/* color-switcher */

.setting-icon {
    font-size: 1.7rem !important;
    margin-top: 6px;
}

#colors-switcher {
    background: none repeat scroll 0 0 #fff;
    -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    left: -189px;
    position: fixed;
    top: 24%;
    width: 189px;
    z-index: 9999;
    padding: 10px 5px
}

#colors-switcher .color-bottom {
    background: none repeat scroll 0 0 #fff
}

#colors-switcher .color-bottom a.settings {
    background: none repeat scroll 0 0 #fff;
    height: 41px;
    position: absolute;
    right: -40px;
    top: 28px;
    width: 40px;
    padding: 3px;
    border-radius: 0 30px 30px 0
}

#colors-switcher ul.color-style {
    list-style: none outside none;
    overflow: hidden;
    padding: 0;
    border-radius: 0px;
}

.list-item-inline {
    display: inline-block;
}

#colors-switcher ul.color-style li.list-inline-item:not(:last-child) {
    margin-right: 0px;
    margin-bottom: 0
}

#colors-switcher ul.color-style li a {
    cursor: pointer;
    display: block;
    height: 35px;
    width: 35px;
    border-radius: 50%;
    margin: 3px
}

#colors-switcher ul.color-style .blue {
    background-color: #1e4071;
}

#colors-switcher ul.color-style .aqua {
    background-color: #54a8c7;
}

#colors-switcher ul.color-style .fuchsia {
    background-color: #e668b3;
}

#colors-switcher ul.color-style .grape {
    background-color: #605dba;
}

#colors-switcher ul.color-style .green {
    background-color: #45c4a0;
}


#colors-switcher ul.color-style .leaf {
    background-color: #7cb798;
}

#colors-switcher ul.color-style .navy {
    background-color: #343f52;
}

#colors-switcher ul.color-style .orange {
    background-color: #f78b77;
}

#colors-switcher ul.color-style .pink {
    background-color: #d16b86;
}

#colors-switcher ul.color-style .purple {
    background-color: #747ed1;
}

#colors-switcher ul.color-style .red {
    background-color: #e2626b;
}

#colors-switcher ul.color-style .sky {
    background-color: #5eb9f0;
}

#colors-switcher ul.color-style .violet {
    background-color: #a07cc5;
}

.product-preview-image-section-sm .swiper-controls .swiper-navigation .swiper-button {
    display: none;
}

.swiper-style4 .swiper-controls .swiper-navigation .swiper-button {
    display: none;
}

.swiper-navigation .swiper-button {
    display: none;
}

.whatsapp-icon {
    position: fixed;
    left: 20px;
    bottom: 65px;
    z-index: 9999;
    width: 45px;
    height: 45px;
    /* box-shadow: rgba(99, 99, 99, 0.2) 0px 0px 3px 0px; */
}

.whatsapp-icon .btn {
    padding: 0 !important;
}

.whatsapp-icon .btn img {
    max-width: 100%;
    max-height: 100%;
}

/* chat css */

.chat-hide-show {
    display: none !important;
}

.chat-min {
    /* height: 73vh !important; */
    height: 100% !important;
    max-height: 850px;
}

.image-box-100 {
    display: flex;
    justify-content: center;
    align-items: baseline;
    width: 100px;
    height: 100px;
}

.image-box-100 img {
    max-width: 100%;
    max-height: 100%;
}

.chat-min>.select2-container {
    width: 100% !important;
}

.chat-max {
    height: 88vh !important;
}

.chat-theme-dark {
    background-color: #1A1D21 !important;
    border-top: 2px solid #17a2b8 !important;
}

.chat-theme-light {
    background-color: #F8F8FA !important;
    border-top: 2px solid #383F45 !important;
}

.chat-theme-light .chat-left .person-group-chat {
    background: #8e8e8e;
    padding: 1px 5px;
    border-radius: 3px;
    position: absolute;
    color: #ececec;
    top: -22px;
    left: 0;
    font-size: 12px;
}

.chat-theme-light .chat-right .person-group-chat {
    background: #8e8e8e;
    padding: 1px 5px;
    border-radius: 3px;
    position: absolute;
    color: #ececec;
    top: -22px;
    right: 0;
    font-size: 12px;
}

.chat-avtar-search {
    border-radius: 50%;
    border: none;
    width: 50px;
    height: 50px;
    background: #99e2ff;
    text-align: center;
    line-height: 52px;
    font-size: 26px;
    font-weight: 800;
    color: #777777;
    margin: 0px 16px 0px 0px;
}

.chat-avtar-main {
    border-radius: 50%;
    border: none;
    width: 45px;
    height: 45px;
    background: #e1ebff;
    text-align: center;
    line-height: 52px;
    font-size: 26px;
    font-weight: 800;
    color: #777777;
}

.chat-box .chat-content .chat-item>.chat-avtar {
    float: left;
    /*    border-radius: 50%;
    border: none;
    width: 50px;
    height: 50px;
    background: #e1ebff;
    text-align: center;
    line-height: 52px;
    font-size: 26px;
    font-weight: 800;
    color: #777777;*/
    -webkit-user-drag: none !important;
}

.chat-box .chat-content .chat-item.chat-right .chat-avtar {
    float: right;
    /*    border-radius: 50%;
    border: none;
    width: 50px;
    height: 50px;
    background: #ffe1e1;
    text-align: center;
    line-height: 52px;
    font-size: 26px;
    font-weight: 800;
    color: #777777;*/
    -webkit-user-drag: none;
}

.chat-theme-light .delete-msg {
    position: absolute;
    color: white;
    top: 0;
    right: 3px;
}

.chat-theme-dark .delete-msg {
    position: absolute;
    color: white;
    top: 0;
    right: 3px;
}

.chat-theme-light .download-msg {
    position: absolute;
    color: black;
    top: 0;
    left: 3px;
}

.chat-theme-dark .download-msg {
    position: absolute;
    color: black;
    top: 0;
    left: 3px;
}

.chat_media_img {
    grid-area: img;
}

.chat_media_file {
    grid-area: file;
    color: #b13c3c;
}

.chat_media_size {
    grid-area: size;
}


.chat-theme-light .chat-files {
    text-align: center;
    display: grid;
    grid-template-areas:
        'img file file file size size';
    grid-gap: 10px;
    background-color: #cccccc;
    border-radius: 3px;
    padding: 10px;
    color: black;
    margin: 1px;
}

.chat-theme-dark .chat-files {
    text-align: center;
    display: grid;
    grid-template-areas:
        'img file file file size size';
    grid-gap: 10px;
    background-color: #cccccc;
    border-radius: 3px;
    padding: 10px;
    color: black;
    margin: 1px;
}

.chat-files-search {
    text-align: center;
    display: grid;
    grid-template-areas:
        'img file file file size fa-download';
    grid-gap: 10px;
    background-color: #cccccc;
    border-radius: 3px;
    padding: 10px;
    color: black;
    margin: 1px;
}

.chat-theme-light .chat-image-view {
    position: relative;
    background-color: #cccccc;
    border-radius: 3px;
    padding: 5px;
    color: black;
    margin: 1px;
}


.chat-theme-light .msg_text_media {
    display: grid;
}

.chat-theme-dark .chat-image-view {
    position: relative;
    background-color: #cccccc;
    border-radius: 3px;
    padding: 5px;
    color: black;
    margin: 1px;
}

.chat-theme-dark .msg_text_media {
    display: grid;
}

.chat-theme-light .download-btn-styling {
    background: #27ab45;
    color: black;
    padding: 7px;
    border-radius: 3px;
    display: none;
    margin: 8px 5px 0px 0px;
}

.chat-theme-dark .download-btn-styling {
    background: #27ab45;
    color: black;
    padding: 7px;
    border-radius: 3px;
    display: none;
    margin: 8px 5px 0px 0px;
}

.chat-image-view:hover .download-btn-styling {
    display: block;
}

.chat-files:hover .download-btn-styling {
    display: block;
}


.chat-theme-light .go-to-bottom-btn {
    cursor: pointer;
    padding: 6px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: white !important;
    border: none;
    position: absolute;
    top: -48%;
    right: 0px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    box-shadow: 0px 4px 7px 4px #00000036;
    display: none;
    z-index: 2;
}

.chat-theme-dark .go-to-bottom-btn {
    cursor: pointer;
    padding: 6px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: white !important;
    border: none;
    position: absolute;
    top: -48%;
    right: 0px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    box-shadow: 0px 4px 7px 4px #00000036;
    display: none;
    z-index: 2;
}

.chat-theme-dark .chat-preview-btn {
    position: absolute;
    top: 30%;
    right: 60px;
    color: #868686 !important;
}

.direct-chat-msg.right>.direct-chat-text::after {
    content: '';
    position: absolute;
    right: -10px;
    top: 28%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left-color: #007bff;
    border-right: 0;
    margin-top: 5px;
    border-bottom-right-radius: 0px;
}

.direct-chat-msg.left>.direct-chat-text::after {
    content: '';
    position: absolute;
    left: -10px;
    top: 20%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-right-color: #d2d6de;
    border-left: 0;
    margin-top: 6px;
    border-bottom-left-radius: 0px;
}

.chat-theme-light .chat-preview-btn {
    position: absolute;
    top: 30%;
    right: 60px;
    color: #414141 !important;
}

.chat-theme-dark .chat-preview-btn:hover {
    color: #5a5a5a !important;
}

.chat-theme-light .chat-preview-btn:hover {
    color: #303030 !important;
}

.chat-theme-dark .chat-time {
    color: #d8d8d8 !important;
}

.chat-theme-light .new-msg-rcv {
    font-weight: 1000 !important;
    color: #383F45 !important;
}

.chat-theme-dark .new-msg-rcv {
    font-weight: 1000 !important;
    color: #FFFFFF !important;
}

.chat-theme-light .chat-bg {
    background-image: url(../images/bg-chat.jpg) !important;
}

.chat-theme-light .text-successg {
    color: #39E500 !important;
}

.chat-theme-dark .chat-bg {
    background-color: #303335 !important;
}

.chat-theme-dark .text-success {
    color: #39E500 !important;
}

.chat-theme-dark .chat-search-box {
    background-color: #1a1d21 !important;
    border: 1px solid #a6a7ab !important;
    border-radius: .25rem !important;
    margin-right: 8px !important;
    height: 30px !important;
    width: -webkit-fill-available;
}

.chat-theme-dark .chat-search-box:hover {
    background-color: #363b42 !important;
    border: 1px solid #c9cacc !important;
}

.chat-theme-dark .chat-search-box:focus {
    background-color: #363b42 !important;
    border: 1px solid #c9cacc !important;
    color: #c9cacc !important;
}

.chat-theme-light .chat-search-box {
    border-radius: .25rem !important;
    margin-right: 8px !important;
    height: 30px !important;
    width: -webkit-fill-available;
}

.chat-theme-light .chat-search-box:hover {
    background-color: #f2f2f7;
    border-color: #d9dae4;
}

.chat-theme-dark .chat-search-btn {
    background-color: #1a1d21 !important;
    border-color: #a6a7ab !important;
}

.chat-scroll {
    overflow: scroll !important;
    outline: none !important;
}

/* width */
.chat-scroll::-webkit-scrollbar {
    width: 7px;
}

/* Track */
.chat-scroll::-webkit-scrollbar-track {
    border-radius: 7px;
}

/* Handle */
.chat-scroll::-webkit-scrollbar-thumb {
    background: rgb(66, 66, 66);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

.chat-theme-dark .active {
    font-weight: 700 !important;
    background: #3abaf4;
    padding: 3px 15px;
    color: #FFFDF9 !important;
}

.chat-theme-dark .active:hover {
    background: #3abaf4 !important;
    color: #FFFDF9 !important;
}

.chat-theme-light .active {
    font-weight: 700 !important;
    background: #3abaf4;
    padding: 3px 15px;
    color: #FFFDF9 !important;
}

.chat-theme-light .active:hover {
    background: #3abaf4 !important;
    color: #FFFDF9 !important;
}

.chat-theme-dark .chat-person {
    font-weight: 700;
    color: #ababab;
    padding: 3px 15px;
}

.chat-theme-dark code {
    background: #e8e8e8;
    padding: 6px 8px;
    border-radius: 4px;
}

.chat-theme-light code {
    background: #e8e8e8;
    padding: 6px 8px;
    border-radius: 4px;
}

.chat-theme-dark .chat-person:hover {
    background: rgb(0, 0, 0);
    cursor: pointer;
}

.chat-theme-light .chat-person {
    font-weight: 500;
    color: #4f5961;
    padding: 3px 15px;
}

.chat-theme-light .chat-person:hover {
    background: #FFFFFF;
    cursor: pointer;
}

.chat-theme-dark .text-color {
    color: #ababab !important;

}

.chat-theme-light .text-color {
    color: #383F45 !important;
}

.chat-theme-dark .text-color h4 {
    color: #ababab !important;
}

.chat-theme-light .text-color h4 {
    color: #383F45 !important;
}

.chat-theme-dark .theme-inputs {
    background-color: #1a1d21 !important;
    border: 1px solid #a6a7ab !important;
    border-radius: 6px !important;
    color: #c9cacc !important;
    height: auto !important;
    white-space: pre-wrap !important;
}

.chat-theme-light .theme-inputs {
    border: 1px solid #383F45 !important;
    border-radius: 6px !important;
    height: auto !important;
    white-space: pre-wrap !important;
}

.chat-card-header {
    line-height: 9px !important;
    min-height: 0px !important;
    padding: 5px 8px !important;
    border-bottom: 0px !important;
}

.chat-card-header h4 {
    font-size: 17px !important;
    font-weight: 500;
}

.chat-list-unstyled-border li {
    border-bottom: 0px !important;
    padding-bottom: 0px !important;
    margin-bottom: 0px !important;
}

.chat-card-body {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    flex: 0 !important;
}

.chat-img-undrag {
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}


.chat_divider {
    padding: 8px 10px;
    text-align: center;
    font-size: medium;
    color: brown;
    margin: 0 0 20px 0px;
    display: flex;
    align-items: center;
    text-align: center;
}

.chat_divider::before,
.chat_divider::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #cf9a5e;
}

.chat_divider::before {
    margin-right: .25em;
}

.chat_divider::after {
    margin-left: .25em;
}


.chat_loader {
    padding: 8px 10px;
    text-align: center;
    font-size: medium;
    color: brown;
    margin: 0 0 20px 0px;
    display: flex;
    align-items: center;
    text-align: center;
    display: none;
}

.chat_loader::before,
.chat_loader::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #cf9a5e;
}

.chat_loader::before {
    margin-right: .25em;
}

.chat_loader::after {
    margin-left: .25em;
}


#chat-input-textarea-result {
    background-color: rgba(117, 117, 117, 0.36);
    position: absolute;
    bottom: 51px;
    border: 1.5px dashed rgb(119, 122, 125) !important;
    border-radius: 6px !important;
    height: auto;
}

.badge-chat {
    vertical-align: middle;
    border-radius: 5px;
    float: right;
    background-color: #fc544b;
    color: white;
    /* display: inline-block; if you get any error from this class then first uncmnt this and check */
    padding: .30em 1em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    margin-top: 2px;
}

#chat-button.opened,
#chat-iframe.opened {
    transition: all 0.35s ease-in-out;
    box-shadow: 0px 19px 10px 2px #00000014
}

#chat-iframe {
    border-radius: 26px;
}

.chat-iframe {
    display: none;
    position: fixed;
    bottom: 80px;
    right: 20px;
    width: min(450px, calc(100vw - 24px));
    height: min(600px, calc(100vh - 120px));
    border: none;
    z-index: 999;
    background: #fff;
}
.chat-iframe.is-open {
    display: block !important;
}

/* Premium UI for floating chat iframe only */
.floating-chat-embed{
    background: #f6f7fb;
}
.floating-chat-embed .deeplink_wrapper{
    padding: 10px 10px 14px;
}
.floating-chat-embed .container{
    padding-left: 6px;
    padding-right: 6px;
}
.floating-chat-embed .floating-chat-title{
    font-size: 18px;
    font-weight: 800;
    margin: 0;
    color: #0f172a;
}
.floating-chat-embed .floating-chat-topbar{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 2px 10px;
}
.floating-chat-embed .floating-chat-close{
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 12px;
    background: rgba(15,23,42,.06);
    color: #0f172a;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .12s ease, transform .12s ease;
}
.floating-chat-embed .floating-chat-close:hover{
    background: rgba(15,23,42,.10);
    transform: translateY(-1px);
}
.floating-chat-embed #floating_chat_view{
    margin: 0 !important;
}
.floating-chat-embed .chat-section,
.floating-chat-embed .main-content{
    height: 100%;
}
.floating-chat-embed #floating_chat_view{
    height: calc(100vh - 64px);
}
.floating-chat-embed .row.h-100{
    height: 100%;
}

/* Messenger-like layout: full-height panels */
.floating-chat-embed #floating_chat_view > .row{
    height: 100%;
    margin: 0;
}
.floating-chat-embed .floating-chat-users{
    height: 100%;
}
.floating-chat-embed .floating-chat-users .card.chat-theme-light{
    height: 100%;
    max-height: none;
}
.floating-chat-embed #chat_area{
    height: 100%;
}
.floating-chat-embed #chat_area .card.chat-box{
    height: 100%;
    display: flex;
    flex-direction: column;
}
.floating-chat-embed #chat-box-content{
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto !important;
    background: #f5f6f7;
}

/* Messenger-like header */
.floating-chat-embed #mychatbox2 .chat-card-header{
    padding: 10px 12px !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    background: #fff !important;
}
.floating-chat-embed #mychatbox2 .floating-chat-back-btn{
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(15,23,42,.06);
}
.floating-chat-embed #chat-avtar-main{
    width: 36px !important;
    height: 36px !important;
    border-radius: 999px !important;
    background: #e7f0ff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}
.floating-chat-embed #chat_title{
    font-size: 14px;
    font-weight: 800;
    color: #111827;
}
.floating-chat-embed #chat_online_status{
    font-size: 12px;
    color: #6b7280;
}

/* Messenger-like conversation list */
.floating-chat-embed .chat-card-body{
    padding: 8px 8px 10px !important;
}
.floating-chat-embed .chat-person{
    border-radius: 12px;
    padding: 10px 10px;
    font-weight: 700;
}
.floating-chat-embed .chat-person.new-msg-rcv{
    background: rgba(0, 132, 255, 0.10);
}

/* Messenger-like message bubbles (Stisla chat markup) */
.floating-chat-embed .chat-box .chat-content{
    padding: 12px !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item{
    margin-bottom: 10px !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details{
    max-width: 78%;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-text{
    border-radius: 18px !important;
    padding: 10px 12px !important;
    line-height: 1.35;
    background: #fff !important;
    border: 1px solid rgba(15,23,42,.06);
    box-shadow: 0 1px 0 rgba(15,23,42,.03);
}
.floating-chat-embed .chat-box .chat-content .chat-item.chat-right .chat-details .chat-text{
    background: #0084ff !important;
    color: #fff !important;
    border-color: #0084ff !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-time{
    font-size: 11px;
    color: #9aa3af !important;
    margin-top: 4px;
}

/* Messenger-like input bar */
.floating-chat-embed #mychatbox2 .chat-form{
    padding: 10px 10px !important;
    background: #fff !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
}
.floating-chat-embed #chat-form2 .mb-n5,
.floating-chat-embed #chat-form2 .mb-n1{
    margin-bottom: 0 !important;
}
.floating-chat-embed #chat-form2 .form-group{
    margin: 0 !important;
}
.floating-chat-embed #chat-form2 .chat-support-inline-note{
    position: static !important;
    margin: 0 0 8px 0 !important;
    border-radius: 10px;
    font-size: 12px;
    line-height: 1.35;
}
.floating-chat-embed #chat-form2 .chat-support-inline-note .quick-connect-support{
    margin-top: 6px !important;
    margin-left: 0 !important;
}
.floating-chat-embed .chat-box .chat-content{
    padding-bottom: 14px !important;
}
.floating-chat-embed #chat-form2 .input-group{
    display: flex;
    align-items: flex-end;
    gap: 8px;
}
.floating-chat-embed #chat-input-textarea{
    border-radius: 18px !important;
    border: 1px solid rgba(15,23,42,.12) !important;
    background: #f5f6f7 !important;
    padding: 10px 12px !important;
    min-height: 42px !important;
    max-height: 120px;
    overflow: auto;
}
.floating-chat-embed .btn-send-msg{
    background: #0084ff !important;
    border-color: #0084ff !important;
    color: #fff !important;
}
.floating-chat-embed .btn-file{
    background: rgba(15,23,42,.06) !important;
    border-color: rgba(15,23,42,.08) !important;
    color: #111827 !important;
}
.floating-chat-embed .card.chat-theme-light{
    border: 0;
    border-radius: 18px;
    box-shadow: 0 14px 40px rgba(15, 23, 42, 0.10);
    overflow: hidden;
    background: #fff;
}
.floating-chat-embed .chat-card-header{
    background: #fff;
    border-bottom: 1px solid rgba(15,23,42,.08);
    padding: 12px 14px;
}
.floating-chat-embed .chat-card-header h4{
    margin: 0;
    font-size: 14px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: .2px;
}
.floating-chat-embed .search_user + .select2,
.floating-chat-embed .search_user{
    width: 100% !important;
}
.floating-chat-embed .select2-container--default .select2-selection--multiple{
    border: 1px solid rgba(15,23,42,.12) !important;
    border-radius: 14px !important;
    min-height: 44px !important;
    padding: 6px 10px !important;
    box-shadow: 0 1px 0 rgba(15,23,42,.04);
}
.floating-chat-embed .select2-container--default.select2-container--focus .select2-selection--multiple{
    border-color: color-mix(in srgb, var(--primary-color) 55%, rgba(15,23,42,.18)) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-color) 18%, transparent);
}
.floating-chat-embed .chat-card-body{
    padding: 10px 10px 6px;
}
.floating-chat-embed .chat-list-unstyled-border .media{
    margin: 0;
    padding: 0;
}
.floating-chat-embed .chat-person{
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    color: #111827;
    font-weight: 700;
    cursor: pointer;
    transition: background .12s ease, transform .12s ease;
}
.floating-chat-embed .chat-person:hover{
    background: rgba(15,23,42,.05);
    transform: translateY(-1px);
}
.floating-chat-embed .chat-person .badge-chat{
    margin-left: auto;
    background: var(--primary-color);
    color: #fff;
    border-radius: 999px;
    padding: 3px 8px;
    font-size: 12px;
    font-weight: 800;
}
.floating-chat-embed .chat-box.chat-theme-light{
    border-radius: 18px;
    overflow: hidden;
}
.floating-chat-embed .chat-content{
    background: #f6f7fb;
}
.floating-chat-embed #chat-box-content{
    padding: 12px;
}
.floating-chat-embed .chat-form{
    background: #fff;
    border-top: 1px solid rgba(15,23,42,.08);
}
.floating-chat-embed .chat-form.p-1{
    padding: 10px 12px !important;
}
.floating-chat-embed .chat-form .form-group{
    margin: 0 !important;
}
.floating-chat-embed .chat-form .input-group{
    gap: 8px;
    align-items: flex-end;
}
.floating-chat-embed #chat-input-textarea{
    resize: none;
}
.floating-chat-embed .chat-form .btn{
    height: 40px;
    min-width: 40px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.floating-chat-embed .go-to-bottom-btn{
    width: 40px;
    height: 40px;
    border-radius: 12px;
}
.floating-chat-embed #chat-input-textarea{
    border-radius: 14px;
    border: 1px solid rgba(15,23,42,.12);
    padding: 10px 12px;
    min-height: 44px;
}
.floating-chat-embed #chat-input-textarea:focus{
    border-color: color-mix(in srgb, var(--primary-color) 55%, rgba(15,23,42,.18));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-color) 18%, transparent);
}
.floating-chat-embed .btn-send-msg{
    border-radius: 12px;
}
.floating-chat-embed .btn-file{
    border-radius: 12px;
}

/* In iframe sizes, make columns behave like a single panel */
.floating-chat-embed .row.h-100{
    --bs-gutter-x: 12px;
}
.floating-chat-embed .floating-chat-users{
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}
.floating-chat-embed #chat_area{
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}

.fixed-icon {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 99999;
}

.progress-wrap {
    position: initial !important;
}

#chat-button {
    transition: all 0.35s ease-in-out;
    /* position: fixed;
    bottom: 32px;
    right: 83px; */
    padding: 8px 14px;
    background: linear-gradient(135deg, #2563eb 0%, #0b4aa2 100%);
    color: #fff;
    font-size: 20px;
    border-radius: 50%;
    border: 1px solid rgba(11, 74, 162, 0.35);
    box-shadow: 0 8px 18px rgba(11, 74, 162, 0.28);
    z-index: 999;
    cursor: pointer;
    /* height: 2.5rem;
    width: 2.5rem; */
    display: flex;
    justify-content: center;
}
#chat-button:hover{
    filter: brightness(1.02);
}

#chat-close-button{
    display: none !important;
    position: fixed;
    right: 24px;
    bottom: calc(min(600px, 100vh - 120px) + 90px);
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: rgba(15,23,42,.9);
    color: #fff;
    z-index: 1001;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 20px rgba(15,23,42,.22);
}
#chat-close-button.is-open{
    display: none !important;
}


.avtar_img {
    height: 45px !important;
}


#floating_chat_view {
    margin: 22px;
}

.seller-profile-card {
    border-radius: 50%;
    width: 150px;
    /* background-color: antiquewhite; */
    height: 150px;

}

.seller-profile-card img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    border-radius: 50%;
}

#pickup_from_store:active {
    border: var(--primary-color) !important;
    /* color: var(--primary-color) !important; */
}

.product-styl>.swiper-style4>.swiper-controls {
    display: none;
}

.btn-xs,
.btn-group-xs>.btn {
    --bs-btn-padding-y: 0.25rem;
    --bs-btn-padding-x: 0.8rem;
    --bs-btn-font-size: 0.6rem;
    --bs-btn-border-radius: 0.4rem;
}

.avatar {
    font-size: 12px !important;
    height: 42px !important;
    width: 42px !important;
}

.default-style {
    position: relative !important;
    top: 0px !important;
    left: 0% !important;
}

/* Home Deals: card style similar to featured swiper product cards */
.deals-feature-card {
    background: #fff;
    border-radius: 12px;
    padding: 8px 8px 10px;
    border: 1px solid rgba(17, 24, 39, 0.06);
    box-shadow: 0 6px 16px rgba(17, 24, 39, 0.10);
    transition: transform .2s ease, box-shadow .2s ease;
}
.deals-feature-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(17, 24, 39, 0.14);
}
.deals-feature-card figure {
    margin-bottom: 4px;
}

/* Professional Deals card polish (home) */
.deals-feature-card {
    border: 1px solid #e9edf5;
    border-radius: 14px;
    padding: 10px 10px 12px;
    box-shadow: 0 8px 20px rgba(16, 24, 40, 0.08);
}
.deals-feature-card .title_wrap {
    min-height: 34px;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 600;
    margin-top: 4px !important;
    margin-bottom: 4px !important;
}

.project.item.default-style .post-title,
.deals-feature-card .post-title,
.project.item.default-style .title_wrap {
    margin-bottom: 4px !important;
}

.project.item.default-style .post-title a,
.deals-feature-card .post-title a,
.brand_image_div h6 {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 575.98px) {
    .category-swiper .swiper-slide,
    .category-swiper .brand_image_div {
        width: 78px !important;
    }
    .category-swiper .brand_image_div h6 {
        font-size: 10px !important;
    }
    .project.item.default-style .post-title a,
    .deals-feature-card .post-title a {
        font-size: 13px;
    }
}

/* Mobile category strip: hard lock single-line labels */
@media (max-width: 991.98px) {
    .category-swiper .brand_image_div h6,
    .category-swiper .brand_image_div h6.fs-14 {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        line-height: 1.15 !important;
        min-height: 13px !important;
        max-height: 13px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
    }
}
.deals-feature-card .deal-discount-pill {
    margin-top: 4px;
    font-size: 11px;
    font-weight: 700;
}
.deals-feature-card .price {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
    color: #1f2937;
}
.deals-feature-card .price sup {
    font-size: 15px;
    font-weight: 500;
    margin-left: 6px;
}
.deals-feature-card .deal-countdown {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    width: 100%;
    box-sizing: border-box;
    padding: 4px 6px;
    margin-top: 6px !important;
    border: 1px solid #ffd5da;
    border-radius: 10px;
    background: #fff5f6;
    font-size: 11px;
    font-weight: 600;
    color: #d6455b !important;
}
.deals-feature-card .deal-countdown .deal-timer {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}
.deals-feature-card .deal-countdown .deal-timer-boxes {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}
.deals-feature-card .deal-countdown .deal-timer-box {
    justify-content: center;
    white-space: nowrap;
}
.deals-feature-card .deal-countdown .deal-timer-sep {
    display: none;
}
.deals-feature-card .item-cart.add_to_cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 34px;
    border: 2px solid var(--primary-color);
    border-radius: 999px;
    color: var(--primary-color);
    font-size: 14px;
    font-weight: 700;
    background: #fff;
    transition: all .2s ease;
}
.deals-feature-card .item-cart.add_to_cart:hover {
    background: rgba(11, 87, 208, 0.06);
}
.deals-section .deals-grid-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-left: 0;
    margin-right: 0;
}
.deals-section .deals-grid-row > .project.item.deals-feature-card {
    width: 100%;
    max-width: 100%;
    margin-bottom: 0 !important;
    height: 100%;
}

/* Subtle card shine effect on hover (desktop-first) */
.project.item.default-style,
.deals-feature-card {
    position: relative;
    overflow: hidden;
}
.project.item.default-style::after,
.deals-feature-card::after {
    content: "";
    position: absolute;
    top: -25%;
    left: -60%;
    width: 38%;
    height: 150%;
    background: linear-gradient(
        100deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.18) 45%,
        rgba(255, 255, 255, 0.4) 50%,
        rgba(255, 255, 255, 0.18) 55%,
        rgba(255, 255, 255, 0) 100%
    );
    transform: translateX(0) skewX(-18deg);
    opacity: 0;
    pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
    .project.item.default-style:hover::after,
    .project.item.default-style:focus-within::after,
    .deals-feature-card:hover::after,
    .deals-feature-card:focus-within::after {
        opacity: 1;
        animation: card-shine-sweep 700ms ease-out 1;
    }
}
@keyframes card-shine-sweep {
    0% {
        left: -60%;
    }
    100% {
        left: 135%;
    }
}
@media (prefers-reduced-motion: reduce) {
    .project.item.default-style::after,
    .deals-feature-card::after {
        animation: none !important;
        opacity: 0 !important;
    }
}

/* Professional hover interactions (desktop-first) */
.project.item.default-style,
.deals-feature-card {
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    border-color: #e9edf5;
}
.project.item.default-style figure,
.deals-feature-card figure {
    overflow: hidden;
}
.project.item.default-style .fig_image,
.deals-feature-card .fig_image {
    transition: transform 0.28s ease;
    transform-origin: center center;
}
.project.item.default-style .post-title a,
.deals-feature-card .post-title a {
    transition: color 0.2s ease;
}
.project.item.default-style .price,
.deals-feature-card .price {
    transition: color 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
    .project.item.default-style:hover,
    .project.item.default-style:focus-within,
    .deals-feature-card:hover,
    .deals-feature-card:focus-within {
        transform: translateY(-3px);
        box-shadow: 0 14px 28px rgba(16, 24, 40, 0.14);
        border-color: rgba(11, 87, 208, 0.22);
    }

    .project.item.default-style:hover .fig_image,
    .project.item.default-style:focus-within .fig_image,
    .deals-feature-card:hover .fig_image,
    .deals-feature-card:focus-within .fig_image {
        transform: scale(1.03);
    }

    .project.item.default-style:hover .post-title a,
    .project.item.default-style:focus-within .post-title a,
    .deals-feature-card:hover .post-title a,
    .deals-feature-card:focus-within .post-title a {
        color: #174ea6 !important;
    }

    .project.item.default-style:hover .price,
    .project.item.default-style:focus-within .price,
    .deals-feature-card:hover .price,
    .deals-feature-card:focus-within .price {
        color: #0f172a !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .project.item.default-style,
    .deals-feature-card,
    .project.item.default-style .fig_image,
    .deals-feature-card .fig_image {
        transition: none !important;
        transform: none !important;
    }
}

.deals-section .deals-feature-card {
    padding: 8px;
    height: 100%;
}
.deals-section .deals-card-body {
    display: grid;
    grid-template-columns: minmax(140px, 40%) minmax(0, 60%);
    align-items: stretch;
    gap: 10px;
    min-height: 160px;
    height: 100%;
}
.deals-section .deals-media {
    margin: 0 !important;
    position: relative;
    height: 100%;
}
.deals-section .deals-media-wrap {
    width: 100%;
    height: 100%;
}
.deals-section .deals-media-wrap > a {
    display: block;
    height: 100%;
}
.deals-section .deals-media .fig_image {
    width: 100%;
    height: 100% !important;
    min-height: 0;
    border-radius: 8px;
    object-fit: cover !important;
    background: #fff;
}
.deals-section .deals-content {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}
.deals-section .deals-content .title_wrap {
    font-size: 13px !important;
    min-height: 0;
    margin-top: 0 !important;
}
.deals-section .deals-content .title_wrap a{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.25;
}
.deals-section .deals-content .price {
    font-size: 16px !important;
    line-height: 1.1;
}
.deals-section .deals-content .price sup{
    font-size: 13px;
    font-weight: 700;
}
.deals-section .deals-content .deal-rating{
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #f59e0b;
    font-size: 12px;
    letter-spacing: .3px;
}
.deals-section .deals-content .deal-rating .deal-rating-num{
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
}
.deals-section .deals-content .deal-countdown {
    margin-top: 4px !important;
    padding: 4px 6px;
    overflow: hidden;
}
.deals-section .deals-content .deal-countdown .deal-timer {
    width: 100%;
    gap: 4px;
}
.deals-section .deals-content .deal-countdown .deal-timer-label {
    font-size: 11px;
    font-weight: 700;
}
.deals-section .deals-content .deal-countdown .deal-timer-boxes {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
}
.deals-section .deals-content .deal-countdown .deal-timer-box {
    min-width: 0;
    padding: 4px 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    border-radius: 8px;
}
.deals-section .deals-content .deal-countdown .deal-timer-num {
    font-size: 12px;
    line-height: 1;
}
.deals-section .deals-content .deal-countdown .deal-timer-unit {
    font-size: 9px;
    line-height: 1;
    white-space: nowrap;
}
.deals-section .deals-content .item-cart.add_to_cart {
    margin-top: auto;
    min-height: 34px;
}
.deals-section .deals-content .item-cart.add_to_cart{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: fit-content;
    padding: 8px 12px;
    font-size: 12px;
    border-radius: 999px;
}

/* Quick view: prevent image area shrink */
#quick-view .gallery-top,
#quick-view .mobile-image-swiper{
    height: 320px;
}
#quick-view .gallery-top .swiper-wrapper,
#quick-view .gallery-top .swiper-slide,
#quick-view .mobile-image-swiper .swiper-wrapper,
#quick-view .mobile-image-swiper .swiper-slide{
    height: 100%;
}
#quick-view .gallery-top img,
#quick-view .mobile-image-swiper img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#quick-view .product-view-image-container{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
}
#quick-view .product-view-image-container img{
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* Override global shrink rule for quick-view main images */
#quick-view .swiper-image img{
    max-height: none !important;
    max-width: 100% !important;
    height: 100% !important;
    width: 100% !important;
    object-fit: contain !important;
}

/* Quick view: show one image area per breakpoint (prevents shrink/blank) */
@media (min-width: 576px){
    #quick-view .product-preview-image-section-sm{ display: none !important; }
    #quick-view .product-preview-image-section-md{ display: block !important; }
}
@media (max-width: 575.98px){
    #quick-view .product-preview-image-section-md{ display: none !important; }
    #quick-view .product-preview-image-section-sm{ display: block !important; }
}
.deals-section .deals-media .deal_tag,
.deals-section .deals-media .sale_tag {
    top: 6px;
    left: 6px;
    width: 32px;
    height: 32px;
    font-size: 9px;
    z-index: 2;
}

@media (max-width: 767.98px) {
    .deals-section .deals-grid-row {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .deals-section .deals-feature-card {
        padding: 7px;
    }
    .deals-section .deals-card-body {
        grid-template-columns: minmax(110px, 40%) minmax(0, 60%);
        min-height: 126px;
        height: 100%;
    }
    .deals-section .deals-media .fig_image {
        height: 100% !important;
    }
    .deals-section .deals-content .title_wrap {
        min-height: 28px;
        font-size: 12px !important;
    }
    .deals-section .deals-content .price {
        font-size: 21px;
    }
    .deals-section .deals-content .deal-countdown .deal-timer-label {
        font-size: 10px;
    }
    .deals-section .deals-content .deal-countdown .deal-timer-box {
        padding: 3px 2px;
        gap: 1px;
    }
    .deals-section .deals-content .deal-countdown .deal-timer-num {
        font-size: 11px;
    }
    .deals-section .deals-content .deal-countdown .deal-timer-unit {
        font-size: 8px;
    }
    .deals-feature-card {
        padding: 6px 6px 8px;
        border-radius: 10px;
    }
    .deals-feature-card figure {
        margin-bottom: 2px;
    }
    .deals-feature-card .fig_image {
        height: 110px !important;
        object-fit: contain !important;
    }
    .deals-feature-card .title_wrap {
        min-height: 28px;
        font-size: 12px;
        line-height: 1.25;
    }
    .deals-feature-card .price {
        font-size: 20px;
    }
    .deals-feature-card .price sup {
        font-size: 12px;
    }
    .deals-feature-card .item-cart.add_to_cart {
        min-height: 30px;
        font-size: 11px;
    }
    .deals-feature-card .deal_tag,
    .deals-feature-card .sale_tag {
        width: 34px;
        height: 34px;
        font-size: 9px;
        top: 6px;
        left: 6px;
    }
    .deal-timer-box {
        padding: 3px 5px;
    }
    .deal-timer-num {
        font-size: 11px;
    }
    .deal-timer-unit {
        font-size: 9px;
    }
}

@media (max-width: 420px) {
    .deals-section .deals-grid-row {
        gap: 6px;
    }
    .deals-section .deals-card-body {
        grid-template-columns: minmax(102px, 40%) minmax(0, 60%);
        height: 100%;
    }
    .deals-section .deals-media .fig_image {
        height: 100% !important;
    }
    .deals-feature-card .title_wrap {
        font-size: 12px;
        min-height: 30px;
    }
    .deals-section .deals-content .price {
        font-size: 19px;
    }
    .deals-section .deals-content .deal-countdown {
        padding: 3px 4px;
    }
    .deals-section .deals-content .deal-countdown .deal-timer-boxes {
        gap: 3px;
    }
    .deals-feature-card .deal-countdown {
        padding: 4px 6px;
        font-size: 10px;
    }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    .deals-section .deals-grid-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) and (min-width: 768px) {
    .deals-section .deals-grid-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (min-width: 1200px) {
    .deals-section .deals-grid-row {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* PDP CTA anti-overflow guardrail (desktop zoom-safe) */
@media (min-width: 992px) {
    .pdp-page #pdp-cta-anchor {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row > * {
        min-width: 0 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in,
    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta {
        flex: 0 0 104px !important;
        width: 104px !important;
        max-width: 104px !important;
        min-width: 96px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row #add_cart,
    .pdp-page #pdp-cta-anchor .product-cta-row #buy_now {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        width: auto !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        white-space: nowrap !important;
    }
}

.fav_button_dif {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(0);
    letter-spacing: -0.01rem;
    position: relative;
    --bs-btn-padding-y: 0.4rem;
    --bs-btn-padding-x: 1rem;
    --bs-btn-font-size: 0.7rem;
    --bs-btn-border-radius: 0.4rem;
    /* --bs-btn-padding-x: 1.2rem;
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-font-size: 0.8rem;
    --bs-btn-border-radius: 0.4rem; */

    --bs-btn-color: #e2626b;
    --bs-btn-border-color: #e2626b;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #e2626b;
    --bs-btn-hover-border-color: #e2626b;
    --bs-btn-focus-shadow-rgb: 226, 98, 107;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #e2626b;
    --bs-btn-active-border-color: #e2626b;
    --bs-btn-active-shadow: 0rem 0.25rem 0.75rem rgba(30, 34, 40, 0.15);
    --bs-btn-disabled-color: #e2626b;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #e2626b;
    --bs-gradient: none;

    --bs-btn-font-family: ;
    --bs-btn-font-weight: 700;
    --bs-btn-line-height: 1.7;
    /* --bs-btn-color: #60697b; */
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 2px;
    /* --bs-btn-border-color: transparent; */
    /* --bs-btn-hover-border-color: transparent; */
    --bs-btn-box-shadow: unset;
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    /* display: inline-block; */
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    /* font-family: var(--bs-btn-font-family); */
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    /* cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; */
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    box-shadow: var(--bs-btn-box-shadow);
    transition: all 0.2s ease-in-out;
}

.fav_button_dif:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}

.product-page-div>.fa-heart:hover {
    color: white !important;
}

.empty-compare {
    height: 300px;
    width: 300px;
}

.empty-compare img {
    max-width: 100%;
    max-height: 100%;
}

.no-promo-code-img {
    height: 250px;
    width: 270px;
}

.no-promo-code-img img {
    max-width: 100%;
    max-height: 100%;
}

.select2-container {
    width: 100% !important;
}

.mobile-search .select2-container {
    border-radius: 10px !important;
}

.mobile-search .select2-selection {
    min-height: 28px !important;
    border-radius: 10px !important;
}

/* Cart count badge: legacy offset for non-header contexts */
#cart-count {
    position: relative;
    left: -8px;
}

.profile_image .avatar {
    height: 110px !important;
    width: 110px !important;
    object-fit: cover;
}

.theme-krajee-svg.rating-xs .krajee-icon,
.theme-krajee-svg.rating-xs .krajee-icon-clear {
    width: 0.8rem !important;
    height: 0.8rem !important;
}

.theme-krajee-svg .filled-stars .krajee-icon-star {
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBoZWlnaHQ9IjMycHgiIHdpZHRoPSIzMnB4IiB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHZpZXdCb3g9IjAgMCA0OC45NCA0Ny45NCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iI2FhYSIgc3Ryb2tlPSIjZmZmZiI+Cgo8ZyBpZD0iU1ZHUmVwb19iZ0NhcnJpZXIiIHN0cm9rZS13aWR0aD0iMCIvPgoKPGcgaWQ9IlNWR1JlcG9fdHJhY2VyQ2FycmllciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2U9IiNDQ0NDQ0MiIHN0cm9rZS13aWR0aD0iMC4zODM1MTk5OTk5OTk5OTk5NyIvPgoKPGcgaWQ9IlNWR1JlcG9faWNvbkNhcnJpZXIiPiA8cGF0aCBzdHlsZT0iZmlsbDogI0ZGQ0IwMDsiIGQ9Ik0yNi4yODUsMi40ODZsNS40MDcsMTAuOTU2YzAuMzc2LDAuNzYyLDEuMTAzLDEuMjksMS45NDQsMS40MTJsMTIuMDkxLDEuNzU3IGMyLjExOCwwLjMwOCwyLjk2MywyLjkxLDEuNDMxLDQuNDAzbC04Ljc0OSw4LjUyOGMtMC42MDgsMC41OTMtMC44ODYsMS40NDgtMC43NDIsMi4yODVsMi4wNjUsMTIuMDQyIGMwLjM2MiwyLjEwOS0xLjg1MiwzLjcxNy0zLjc0NiwyLjcyMmwtMTAuODE0LTUuNjg1Yy0wLjc1Mi0wLjM5NS0xLjY1MS0wLjM5NS0yLjQwMywwbC0xMC44MTQsNS42ODUgYy0xLjg5NCwwLjk5Ni00LjEwOC0wLjYxMy0zLjc0Ni0yLjcyMmwyLjA2NS0xMi4wNDJjMC4xNDQtMC44MzctMC4xMzQtMS42OTItMC43NDItMi4yODVsLTguNzQ5LTguNTI4IGMtMS41MzItMS40OTQtMC42ODctNC4wOTYsMS40MzEtNC40MDNsMTIuMDkxLTEuNzU3YzAuODQxLTAuMTIyLDEuNTY4LTAuNjUsMS45NDQtMS40MTJsNS40MDctMTAuOTU2IEMyMi42MDIsMC41NjcsMjUuMzM4LDAuNTY3LDI2LjI4NSwyLjQ4NnoiLz4gPC9nPgoKPC9zdmc+') !important
}

.theme-krajee-svg .empty-stars .krajee-icon-star {
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBoZWlnaHQ9IjMycHgiIHdpZHRoPSIzMnB4IiB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHZpZXdCb3g9IjAgMCA0OC45NCA0Ny45NCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iI2FhYSIgc3Ryb2tlPSIjZmZmZiI+Cgo8ZyBpZD0iU1ZHUmVwb19iZ0NhcnJpZXIiIHN0cm9rZS13aWR0aD0iMCIvPgoKPGcgaWQ9IlNWR1JlcG9fdHJhY2VyQ2FycmllciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2U9IiNDQ0NDQ0MiIHN0cm9rZS13aWR0aD0iMC4zODM1MTk5OTk5OTk5OTk5NyIvPgoKPGcgaWQ9IlNWR1JlcG9faWNvbkNhcnJpZXIiPiA8cGF0aCBzdHlsZT0iLyohIGZpbGw6ICNlYWJlMTI7ICovIiBkPSJNMjYuMjg1LDIuNDg2bDUuNDA3LDEwLjk1NmMwLjM3NiwwLjc2MiwxLjEwMywxLjI5LDEuOTQ0LDEuNDEybDEyLjA5MSwxLjc1NyBjMi4xMTgsMC4zMDgsMi45NjMsMi45MSwxLjQzMSw0LjQwM2wtOC43NDksOC41MjhjLTAuNjA4LDAuNTkzLTAuODg2LDEuNDQ4LTAuNzQyLDIuMjg1bDIuMDY1LDEyLjA0MiBjMC4zNjIsMi4xMDktMS44NTIsMy43MTctMy43NDYsMi43MjJsLTEwLjgxNC01LjY4NWMtMC43NTItMC4zOTUtMS42NTEtMC4zOTUtMi40MDMsMGwtMTAuODE0LDUuNjg1IGMtMS44OTQsMC45OTYtNC4xMDgtMC42MTMtMy43NDYtMi43MjJsMi4wNjUtMTIuMDQyYzAuMTQ0LTAuODM3LTAuMTM0LTEuNjkyLTAuNzQyLTIuMjg1bC04Ljc0OS04LjUyOCBjLTEuNTMyLTEuNDk0LTAuNjg3LTQuMDk2LDEuNDMxLTQuNDAzbDEyLjA5MS0xLjc1N2MwLjg0MS0wLjEyMiwxLjU2OC0wLjY1LDEuOTQ0LTEuNDEybDUuNDA3LTEwLjk1NiBDMjIuNjAyLDAuNTY3LDI1LjMzOCwwLjU2NywyNi4yODUsMi40ODZ6Ii8+IDwvZz4KCjwvc3ZnPg==') !important
}

.bottom-sheet {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    transform: translateY(100%);
    transition: transform 0.3s ease-out;
    z-index: 1050;
}

.bottom-sheet.show {
    transform: translateY(0);
}

.logo-fit {
    object-fit: contain;
}

.image-fit {
    object-fit: cover;
}

.payment-gateway-images {
    height: 30px;
}

.under_maintenance {
    max-width: 450px;
}

.tab_border {
    border: none;
}

.product_other_images {
    width: 100% !important;
    height: 100% !important;
    max-height: 520px;
    object-fit: contain;
    display: block;
}

.product_main_image {
    width: 114px;
    margin-right: 10px;
}

.overflow-height {
    height: 530px;
}

.slide_image {
    width: 280px;
    margin-right: 30px;
}

/* NOTE: Product card sizing should follow theme defaults.
   Keeping this block disabled prevents "empty card" regressions. */

.gray_slale_cod {
    filter: grayscale(100%);
}

#search_items {
    list-style: none;
    /* Remove bullets */
    margin: 0;
    padding: 0;
    max-height: 300px;
    /* Fixed height for search results */
    overflow-y: scroll;
    /* Adds scrollbar if content exceeds the height */
}

#search_items::-webkit-scrollbar {
    width: 7px;
}

#search_items::-webkit-scrollbar-track {
    border-radius: 7px;
}

#search_items::-webkit-scrollbar-thumb {
    background: rgb(66, 66, 66);
    border: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}

.search-products {
    min-width: 64%;
}

.w-62 {
    width: 62% !important;
}

.item {
    padding: 2px;
    /* border-bottom: 1px solid #eee;  */
}

.item .item-title {
    color: #000;
    /* Text color */
    text-decoration: none;
}

/* .item .item-title:hover {
    text-decoration: underline;
} */

.empty {
    color: #999;
    font-style: italic;
}

.select2-selection__rendered {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* support ticket chat  */

.direct-chat-text {
    border-radius: .3rem;
    background: #d2d6de;
    border: 1px solid #d2d6de;
    color: #444;
    margin: 5px 0 0 50px;
    padding: 5px 10px;
    position: relative;
}

.direct-chat-text {
    width: fit-content;
}

.right .direct-chat-text {
    float: right;
}

.direct-chat-timestamp {
    margin: 0 10px;
}

.direct-chat-text {
    margin: 5px 0 0 10px;
}

.right .direct-chat-text {
    margin-right: 10px;
}

.direct-chat-messages {
    height: 384px;
}

.direct-chat-primary .right>.direct-chat-text {
    background: #007bff;
    border-color: #007bff;
    color: #fff;
}

.direct-chat-name {
    font-weight: 600;
}

.direct-chat-timestamp {
    color: #697582;
}

.return-reason-card {
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 15px;
    transition: 0.3s;
}

.return-reason-card:hover {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.return-reason-card img {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

.cursor-pointer {
    cursor: pointer;
}

/* Style the entire card when radio is checked */
.return-reason-card:has(input[type="radio"]:checked) {
    border: 2px solid #aaaaaa !important
}


.category-swiper .swiper-slide {
    width: 86px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
}


.category-swiper .brand_image_div {
    border: none !important;
    background: transparent !important;
    width: 86px !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    text-decoration: none !important;
    gap: 4px;
}


.category-swiper .brand_image_div img {
    width: 48px !important;
    height: 48px !important;
    object-fit: contain !important;
    margin-bottom: 6px;
    transition: transform 0.3s ease, filter 0.3s ease;
}


.category-swiper .brand_image_div h6 {
    font-size: 11px !important;
    font-weight: 600 !important;   /* Professional semi-bold */
    color: var(--primary-color) !important;
    margin: 0 !important;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    display: block;
    line-height: 1.2;
    transition: color 0.3s ease;
}


.category-swiper .brand_image_div:hover img {
    transform: translateY(-5px); /* Gentle lift */
}

.category-swiper .brand_image_div:hover h6 {
    color: var(--primary-color) !important;
}

/* PDP desktop hard lock (final): prevent content below CTA */
@media (min-width: 992px) {
    .pdp-page .pdp-right-col {
        display: flex !important;
        flex-direction: column !important;
        position: sticky !important;
        top: var(--pdp-fixedsplit-offset) !important;
        overflow: hidden !important;
        height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
        min-height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
        max-height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
        padding-bottom: 0 !important;
    }
    .pdp-page .pdp-right-top {
        flex: 1 1 auto !important;
        overflow-y: auto !important;
        min-height: 0 !important;
        padding-bottom: 0 !important;
        margin: 0 0 30px 0 !important;
    }
    .pdp-page #pdp-cta-anchor {
        position: sticky !important;
        left: auto;
        right: auto;
        bottom: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        background: #fff;
        border: 1px solid #e9edf5;
        border-radius: 12px;
        box-shadow: 0 10px 24px rgba(16, 24, 40, 0.10);
        padding: 8px 10px;
        margin-top: 0 !important;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        margin-bottom: 0 !important;
        background: #fff !important;
        border-top: 1px solid #e9edf5 !important;
        z-index: 60 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row {
        background: #fff !important;
        margin: 0 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row > *,
    .pdp-page #pdp-cta-anchor .product-cta-row .btn,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in span,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input,
    .pdp-page #pdp-cta-anchor .product-cta-row .add-to-fav-btn {
        height: 42px !important;
        min-height: 42px !important;
        line-height: 42px !important;
    }
}

/* Responsive tuning for PDP right pane/CTA spacing */
@media (max-width: 1199.98px) and (min-width: 992px) {
    .pdp-page .pdp-right-top {
        margin: 0 0 26px 0 !important;
    }
}

@media (max-width: 991.98px) {
    .pdp-page .pdp-right-top {
        margin: 0 !important;
        padding-bottom: 0 !important;
    }
}

@media (min-width: 1200px) {
    .pdp-page #pdp-cta-anchor {
        padding: 10px 10px;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row > *,
    .pdp-page #pdp-cta-anchor .product-cta-row .btn,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in span,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input,
    .pdp-page #pdp-cta-anchor .product-cta-row .add-to-fav-btn {
        height: 44px !important;
        min-height: 44px !important;
        line-height: 44px !important;
    }
}

/* Final responsive guardrail for PDP */
@media (min-width: 992px) {
    .pdp-page .product-layout-wrap > .row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: stretch !important;
        margin-top: 8px !important; /* visual breathing room below breadcrumb */
    }
    .pdp-page .product-layout-wrap > .row > .product-gallery-wrap,
    .pdp-page .product-layout-wrap > .row > .pdp-right-col {
        margin: 0 !important;
    }
    .pdp-page .product-gallery-wrap,
    .pdp-page .pdp-right-col {
        height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
        min-height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
        max-height: calc(100dvh - var(--pdp-fixedsplit-offset)) !important;
    }
    .pdp-page .pdp-right-col {
        overflow: hidden !important;
    }
    .pdp-page .pdp-right-top {
        overflow-y: auto !important;
        min-height: 0 !important;
        padding-bottom: 0 !important;
        margin: 0 0 35px 0 !important;
    }
    .pdp-page #pdp-cta-anchor {
        position: sticky !important;
        bottom: 0 !important;
        z-index: 80 !important;
        background: #fff !important;
    }
}

@media (max-width: 991.98px) {
    .pdp-page .product-layout-wrap > .row {
        display: block !important;
    }
    .pdp-page .product-gallery-wrap,
    .pdp-page .pdp-right-col,
    .pdp-page .pdp-right-top {
        position: static !important;
        top: auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
    }
    .pdp-page {
        padding-bottom: 88px !important;
    }
    .pdp-page #pdp-cta-anchor {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        z-index: 1200 !important;
        background: #fff !important;
    }
}

/* Header toolbar: tighter icon spacing + compact cells */
.hero-slider-enhanced {
    margin-top: 0;
    margin-bottom: 2px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.slider.container.hero-slider-enhanced {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.hero-slider-enhanced .swiper-slide-container {
    background: transparent;
    border: 0;
    border-radius: 12px;
    box-shadow: none;
    padding: 0;
    overflow: hidden !important;
    max-width: 100%;
    box-sizing: border-box;
}
.hero-slider-enhanced .swiper,
.hero-slider-enhanced .swiper-wrapper,
.hero-slider-enhanced .swiper-slide {
    max-width: 100%;
}
.hero-slider-enhanced .swiper-wrapper {
    padding: 0 !important;
}
.hero-slider-enhanced .swiper-slide {
    border-radius: 12px;
    overflow: hidden;
    background: transparent;
    box-shadow: none;
}
.hero-slider-enhanced .slide-img {
    border-radius: 12px;
    overflow: hidden;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Keep a consistent banner shape like marketplaces */
    aspect-ratio: 16 / 6;
    height: var(--hero-slider-height-mobile, 190px);
}
.hero-slider-enhanced .slide-img img {
    display: block;
    width: 100%;
    height: 100%;
    /* show full banner without cropping */
    object-fit: contain;
    object-position: center;
    max-height: 100%;
}

/* Replica-style card look (no tray background, just card) */
.hero-slider-enhanced .slide-img{
    background: #fff; /* required so transparent PNGs look clean */
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

/* Pagination placement/spacing like marketplace */
.hero-slider-enhanced .swiper-controls{
    margin-top: 0;
    margin-bottom: 0;
    padding: 0 6px;
    line-height: 1;
    position: relative;
    z-index: 2;
}
.hero-slider-enhanced .slide-swiper-pagination{
    text-align: center;
    margin: 0;
    padding: 0;
    min-height: 10px;
}
.hero-slider-enhanced .swiper-pagination-bullet{
    width: 6px;
    height: 6px;
    margin: 0 3px !important;
    background: rgba(17, 24, 39, 0.35);
}
.hero-slider-enhanced .swiper-pagination-bullet-active{
    width: 18px;
    background: rgba(17, 24, 39, 0.55);
}

@media (min-width: 992px){
    .hero-slider-enhanced{
        margin-bottom: 4px;
    }
    .hero-slider-enhanced .slide-img{
        height: var(--hero-slider-height-desktop, 320px);
    }
    .hero-slider-enhanced .swiper-controls{
        margin-top: 2px;
    }
}
.hero-slider-enhanced .swiper-controls {
    margin-top: 0;
    margin-bottom: 0;
}
.hero-slider-enhanced .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    background: rgba(15,23,42,.25);
    opacity: 1;
    margin: 0 2px !important;
}
.hero-slider-enhanced .swiper-pagination-bullet-active {
    width: 16px;
    border-radius: 999px;
    background: rgba(15,23,42,.45);
}

/* Keep CTA buttons inside cards on narrow screens */
.main-content .add_to_cart.btn {
    white-space: normal;
    line-height: 1.2;
    text-align: center;
}

/* App download buttons should stack/wrap cleanly on small devices */
@media (max-width: 767.98px) {
    .wrapper.bg-soft-grape .col-md-7 > span {
        display: block;
        width: 100%;
    }
    .wrapper.bg-soft-grape .btn.btn-icon {
        width: 100%;
        justify-content: center;
        margin-bottom: 8px;
    }
}

/* Prevent first-load "full width" flash before Swiper sizes slides */
.hero-slider-enhanced .swiper-slide-container{
    opacity: 0;
    transition: opacity .15s ease;
}
.hero-slider-enhanced .swiper-slide-container.is-ready{
    opacity: 1;
}
.hero-slider-enhanced .swiper-navigation .swiper-button {
    display: none !important;
}
@media (min-width: 992px) {
    .hero-slider-enhanced .swiper-slide-container {
        overflow: hidden !important;
    }
}
@media (max-width: 767.98px) {
    .hero-slider-enhanced .swiper-slide-container {
        border-radius: 8px;
        padding: 0;
    }
    .hero-slider-enhanced .slide-img{
        height: var(--hero-slider-height-mobile, 190px);
    }
}

.header-location-widget {
    position: relative;
    display: flex;
    align-items: center;
}
.header-location-trigger {
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 8px;
    border-radius: 8px;
    color: #1e293b;
}
.header-location-trigger:hover {
    background: color-mix(in srgb, var(--primary-color) 10%, transparent);
}
.header-location-icon {
    font-size: 18px;
    color: var(--primary-color);
}
.header-location-text-wrap {
    display: inline-flex;
    flex-direction: column;
    line-height: 1.1;
    text-align: left;
}
.header-location-label {
    font-size: 10px;
    color: #667085;
    font-weight: 600;
}
.header-location-value {
    font-size: 12px;
    font-weight: 700;
    color: #111827;
}
.header-location-caret {
    font-size: 16px;
    color: #475467;
}
.header-location-panel {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1700;
    width: min(420px, 96vw);
    height: 100dvh;
    background: #fff;
    border-left: 1px solid #e5e7eb;
    border-radius: 0;
    box-shadow: -8px 0 24px rgba(16, 24, 40, 0.16);
    padding: 16px 14px;
    transform: translateX(100%);
    transition: transform .18s ease-out;
    overflow-y: auto;
}
.header-location-panel.is-open {
    transform: translateX(0);
}

/* Mobile: use bottom-sheet instead of right drawer */
@media (max-width: 767.98px) {
    .header-location-panel {
        top: auto;
        right: 0;
        left: 0;
        bottom: 0;
        width: 100%;
        height: min(76dvh, 640px);
        border-left: 0;
        border-top: 1px solid #e5e7eb;
        border-radius: 14px 14px 0 0;
        box-shadow: 0 -12px 28px rgba(16, 24, 40, 0.18);
        transform: translateY(110%);
        transition: transform .2s ease-out;
        padding-bottom: 18px;
    }
    .header-location-panel.is-open {
        transform: translateY(0);
    }
}
.header-location-overlay {
    position: fixed;
    inset: 0;
    z-index: 1650;
    background: rgba(0, 0, 0, 0.45);
    opacity: 0;
    transition: opacity .18s ease-out;
    pointer-events: none;
}
.header-location-overlay.is-open {
    opacity: 1;
    pointer-events: auto;
}
.header-location-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.header-location-title {
    font-size: 28px;
    font-weight: 700;
    color: #111827;
}
.header-location-close {
    border: 0;
    background: transparent;
    font-size: 24px;
    color: #374151;
    line-height: 1;
}
.header-location-form {
    display: flex;
    gap: 8px;
    margin-bottom: 10px;
}
.header-location-input {
    flex: 1 1 auto;
    height: 42px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 0 12px;
    font-size: 14px;
}
.header-location-input:focus {
    outline: none;
    border-color: var(--primary-color);
}
.header-location-save-btn {
    border: 0;
    border-radius: 10px;
    height: 42px;
    padding: 0 12px;
    font-size: 12px;
    font-weight: 700;
    background: var(--primary-color);
    color: #fff;
}
.header-location-current {
    width: 100%;
    border: 1px solid color-mix(in srgb, var(--primary-color) 25%, #ffffff);
    border-radius: 10px;
    background: color-mix(in srgb, var(--primary-color) 10%, #ffffff);
    color: var(--primary-color);
    font-size: 14px;
    font-weight: 700;
    padding: 10px 12px;
    text-align: left;
}
.header-location-hint {
    margin-top: 8px;
    font-size: 12px;
    color: #667085;
}
.header-location-saved-wrap {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #eef2f7;
}
.header-location-saved-title {
    font-size: 15px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 8px;
}
.header-saved-address-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 42vh;
    overflow: auto;
}
.header-saved-address-item {
    width: 100%;
    border: 1px solid #e5e7eb;
    background: #fff;
    border-radius: 10px;
    padding: 10px 11px;
    text-align: left;
    cursor: pointer;
}
.header-saved-address-item:hover {
    border-color: #bfd4f5;
    background: #f8fbff;
}
.header-saved-address-name {
    font-size: 13px;
    font-weight: 700;
    color: #111827;
    display: flex;
    align-items: center;
    gap: 6px;
}
.header-saved-default-badge {
    font-size: 10px;
    font-weight: 700;
    color: var(--primary-color);
    background: color-mix(in srgb, var(--primary-color) 12%, #ffffff);
    border-radius: 999px;
    padding: 2px 6px;
}
.header-saved-address-text {
    margin-top: 4px;
    font-size: 12px;
    color: #6b7280;
    line-height: 1.35;
}
.header-saved-address-actions {
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-start;
}
.header-saved-address-edit,
.header-saved-address-delete {
    border: 0;
    background: transparent;
    padding: 0;
    font-size: 12px;
    font-weight: 700;
    color: #0b57d0;
    text-decoration: none;
}
.header-saved-address-delete {
    color: #c62828;
}
.header-location-add-new-wrap {
    margin-top: 10px;
    text-align: right;
}
.header-location-add-new {
    font-size: 14px;
    font-weight: 700;
    color: #0b57d0;
    text-decoration: none;
}
.header-inline-edit-wrap {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #d9e1ee;
}
.header-inline-edit-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.header-inline-edit-form .form-control {
    height: 40px;
    border-radius: 8px;
    font-size: 13px;
}
.header-inline-edit-form .form-label {
    font-size: 12px;
    font-weight: 600;
    color: #344054;
}
.header-inline-edit-type {
    display: flex;
    gap: 12px;
    font-size: 13px;
    color: #374151;
    margin-top: 6px;
}
.header-inline-edit-type label {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.header-inline-edit-type .form-check-input[type="radio"]{
    display: inline-block !important;
    appearance: auto;
    -webkit-appearance: radio;
    margin-top: 0.15rem;
}

/* Quick view modal polish: 2-line title, compact buttons, consistent price */
#quick-view .product-title{
    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
    margin: 10px 0 8px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
#quick-view .price{
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
}
#quick-view .striped-price{
    font-size: 13px;
    font-weight: 700;
}
#quick-view .quickview-actions{
    flex-wrap: wrap;
    gap: 10px !important;
}
#quick-view #modal-add-to-cart-button,
#quick-view #modal-buy-now-button{
    width: auto !important;
    flex: 0 0 auto;
    padding: 10px 14px !important;
    font-size: 13px !important;
}
#quick-view #compare,
#quick-view #add_to_favorite_btn{
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
}
.header-inline-edit-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}
.header-location-guest-note {
    font-size: 13px;
    color: #6b7280;
}
/* Language switch not needed for this store UI */
.language-select {
    display: none !important;
}

@media (max-width: 767.98px) {
    /* Keep pincode selector visible on mobile top-left */
    .header-location-widget {
        display: inline-flex !important;
        align-items: center;
        min-width: 0;
        max-width: 58vw;
    }
    .bg-gradient-reverse-primary .container.d-flex {
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        column-gap: 8px;
    }
    .bg-gradient-reverse-primary .container.d-flex > .d-flex.flex-fill {
        width: auto;
        flex: 0 0 auto;
        min-width: 0;
    }
    .header-location-trigger {
        gap: 6px;
        padding: 2px 4px;
    }
    .header-location-label {
        display: none;
    }
    .header-location-value {
        font-size: 12px;
        max-width: 34vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .header-location-caret {
        font-size: 14px;
    }
}

.navbar-other .navbar-nav.flex-row > .nav-item + .nav-item {
    margin-left: 0.2rem !important;
}
@media (max-width: 575.98px) {
    .navbar-other .navbar-nav.flex-row {
        flex-wrap: wrap;
        justify-content: flex-end;
        row-gap: 4px;
    }
}

/* =========================
   Floating chat polish pass
   (cleaner layout, spacing, typography, mobile)
   ========================= */
.floating-chat-embed {
    color: #0f172a !important;
}
.floating-chat-embed .container.mt-2 {
    margin-top: 0 !important;
}
.floating-chat-embed .floating-chat-topbar {
    padding: 8px 2px 12px !important;
    align-items: center !important;
}
.floating-chat-embed .floating-chat-title {
    letter-spacing: 0.2px !important;
}
.floating-chat-embed .floating-chat-close {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(15, 23, 42, 0.12) !important;
    background: #ffffff !important;
    color: #0f172a !important;
}
.floating-chat-embed .floating-chat-close:hover {
    background: #f8fafc !important;
    border-color: rgba(15, 23, 42, 0.2) !important;
}
.floating-chat-embed #floating_chat_view {
    border-radius: 16px !important;
}
.floating-chat-embed .floating-chat-users .chat-card-body {
    max-height: calc(100vh - 255px) !important;
    overflow: auto !important;
}
.floating-chat-embed .chat-person {
    min-height: 44px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    margin: 4px 8px !important;
    padding: 10px 12px !important;
}
.floating-chat-embed .chat-person.active {
    background: #eaf3ff !important;
    color: #0b63ce !important;
}
.floating-chat-embed .chat-person .badge-chat {
    min-width: 20px !important;
    height: 20px !important;
    line-height: 20px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    margin-left: 8px !important;
}
.floating-chat-embed #chat-avtar-main figure.avatar {
    margin: 0 !important;
}
.floating-chat-embed #chat-avtar-main .avatar-md {
    width: 38px !important;
    height: 38px !important;
}
.floating-chat-embed #chat_title {
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}
.floating-chat-embed #chat_online_status {
    font-size: 12px !important;
}
.floating-chat-embed #chat-box-content {
    scrollbar-width: thin;
}
.floating-chat-embed .chat-box .chat-content .chat-item {
    margin-bottom: 10px !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-text {
    font-size: 14px !important;
    line-height: 1.45 !important;
    word-break: break-word !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item.chat-right .chat-details {
    margin-left: auto !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item.chat-right .chat-details .chat-text {
    box-shadow: 0 1px 0 rgba(0, 132, 255, 0.2) !important;
}
.floating-chat-embed .chat-form .form-group {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}
.floating-chat-embed #chat-input-textarea {
    border-radius: 16px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    resize: none !important;
}
.floating-chat-embed #chat-input-textarea::placeholder {
    color: #94a3b8 !important;
}
.floating-chat-embed .chat-form .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.15s ease !important;
}
.floating-chat-embed .btn-send-msg:hover {
    transform: translateY(-1px) !important;
}
.floating-chat-embed .btn-file:hover {
    background: rgba(15, 23, 42, 0.1) !important;
}
.floating-chat-embed .go-to-bottom-btn {
    width: 36px !important;
    height: 36px !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.2) !important;
}

@media (max-width: 991.98px) {
    .floating-chat-embed .deeplink_wrapper {
        padding: 8px 8px 10px !important;
    }
    .floating-chat-embed #floating_chat_view {
        height: calc(100vh - 58px) !important;
    }
    .floating-chat-embed .card.chat-theme-light {
        border-radius: 14px !important;
    }
    .floating-chat-embed #chat_area .card.chat-box {
        border-radius: 14px !important;
    }
    .floating-chat-embed .chat-box .chat-content {
        padding: 10px !important;
    }
    .floating-chat-embed .chat-box .chat-content .chat-item .chat-details {
        max-width: 86% !important;
    }
}

@media (max-width: 575.98px) {
    .floating-chat-embed .floating-chat-title {
        font-size: 16px !important;
    }
    .floating-chat-embed .floating-chat-close {
        width: 34px !important;
        height: 34px !important;
    }
    .floating-chat-embed #chat-input-textarea {
        min-height: 40px !important;
        padding: 9px 12px !important;
    }
    .floating-chat-embed .btn-send-msg,
    .floating-chat-embed .btn-file {
        width: 36px !important;
        height: 36px !important;
    }
}
@media (min-width: 1200px) {
    .navbar-other .navbar-nav.flex-row > .nav-item + .nav-item {
        margin-left: 0.35rem !important;
    }
}

/* ============================================================
   Single-brand accent enforcement (keep footer background as-is)
   ============================================================ */
.text-primary,
.link-color,
a.text-primary,
.text-blue,
.btn-link.text-primary {
    color: var(--primary-color) !important;
}

.bg-primary,
.badge.bg-primary,
.btn-primary,
.btn-danger,
.btn-yellow,
.buy_now,
.header-location-save-btn {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
}

.btn-outline-primary,
.btn-outline-blue,
.btn-outline-red,
.address-link-primary {
    color: var(--primary-color) !important;
    border-color: color-mix(in srgb, var(--primary-color) 55%, #ffffff) !important;
    background: transparent !important;
}
.btn-outline-primary:hover,
.btn-outline-blue:hover,
.btn-outline-red:hover,
.address-link-primary:hover {
    color: #fff !important;
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.nav-link.active,
.product-tabs-wrap-container .product-nav-tab.active,
.header-saved-default-badge,
.category-swiper .brand_image_div h6,
.category-swiper .brand_image_div:hover h6 {
    color: var(--primary-color) !important;
}

/* Main menu links use brand primary color (no background changes). */
header.wrapper.bg-light > nav.navbar .navbar-nav .nav-link {
    color: var(--primary-color) !important;
}
header.wrapper.bg-light > nav.navbar .navbar-nav .nav-link:hover,
header.wrapper.bg-light > nav.navbar .navbar-nav .nav-link:focus,
header.wrapper.bg-light > nav.navbar .navbar-nav .nav-link.active {
    color: var(--primary-color) !important;
}

.product-tabs-wrap-container .product-nav-tab.active {
    border-bottom-color: var(--primary-color) !important;
}

.swiper-pagination-bullet-active,
.hero-slider-enhanced .swiper-pagination-bullet-active {
    background: var(--primary-color) !important;
}

.navbar-other .navbar-nav.flex-row > .nav-item > a.header-toolbar-icon {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    min-width: 2.35rem;
    min-height: 2.35rem;
    padding: 0 !important;
    flex-shrink: 0;
    box-sizing: border-box;
}

.navbar-other .navbar-nav.flex-row > .nav-item > a.header-toolbar-icon > i {
    font-size: 1.2rem;
    line-height: 1;
    transition: color 0.15s ease;
    transform: none !important;
}

.navbar-other .navbar-nav.flex-row > .nav-item > a.header-toolbar-icon:hover > i,
.navbar-other .navbar-nav.flex-row > .nav-item > a.header-toolbar-icon:focus > i,
.navbar-other li.dropdown.show > a.header-toolbar-icon > i {
    transform: none !important;
}

.navbar-other #customer_notification_badge {
    position: absolute;
    top: 0.2rem;
    right: 0.2rem;
    left: auto;
    margin: 0;
    transform: translate(42%, -42%);
}

/* Undo global #cart-count nudge inside header only (was shifting layout on hover). */
.navbar-other a.header-toolbar-icon #cart-count,
.navbar-other a.header-toolbar-icon #compare_count {
    position: absolute !important;
    left: auto !important;
    bottom: auto !important;
    margin-left: 0 !important;
    top: 0.15rem;
    right: 0.1rem;
    transform: translate(42%, -42%);
}

/* Notification panel: stay inside viewport (avoid flying off the right on hover/open). */
.navbar-other {
    overflow: visible;
}
.navbar-other #customer_notification_dropdown.header-notification-dropdown {
    box-sizing: border-box;
    min-width: min(280px, calc(100vw - 16px));
    max-width: min(360px, calc(100vw - 16px));
    width: min(360px, calc(100vw - 16px));
}
@media (max-width: 420px) {
    .navbar-other #customer_notification_dropdown.header-notification-dropdown {
        min-width: calc(100vw - 12px);
        max-width: calc(100vw - 12px);
        width: calc(100vw - 12px);
    }
}

/* My account: sidebar width + sticky nav (clean column, no horizontal bleed). */
.my-account-section .my-account-tab.nav-pills {
    width: 100%;
    max-width: 100%;
}
.my-account-section .card,
.my-account-section .card-body,
.my-account-section .card-header,
.my-account-section form,
.my-account-section .form-group,
.my-account-section .form-control,
.my-account-section .btn {
    min-width: 0;
}
.my-account-section .form-control,
.my-account-section .table,
.my-account-section [data-toggle="table"],
.my-account-section [data-bs-toggle="table"] {
    max-width: 100%;
}
.my-account-section .btn-sm,
.my-account-section .btn-xs {
    white-space: normal;
}
@media (min-width: 992px) {
    .my-account-section .row.g-4 {
        isolation: isolate;
    }
    .my-account-section .row > .col-lg-3 .my-account-tab {
        position: sticky;
        top: 5.75rem;
        align-self: flex-start;
    }
}
@media (max-width: 991.98px) {
    .my-account-section .orders-section .card-header > .d-flex,
    .my-account-section .orders-section .card-body .media,
    .my-account-section .d-flex.align-items-center.gap-2 {
        gap: 12px;
    }
    .my-account-section .orders-section .media-body h5,
    .my-account-section .orders-section .media-body p,
    .my-account-section .orders-section .media-body .small,
    .my-account-section .orders-section .media-body a {
        overflow-wrap: anywhere;
    }
    .my-account-section #address_list_table,
    .my-account-section .bootstrap-table {
        font-size: 14px;
    }
}
@media (max-width: 767.98px) {
    .my-account-section .card.p-7 {
        padding: 1rem !important;
    }
    .my-account-section .profile_image + .d-flex.justify-content-center.mb-3 .btn,
    .my-account-section .submit_btn,
    .my-account-section #save-address-submit-btn,
    .my-account-section #edit-address-submit-btn {
        width: 100%;
    }
    .my-account-section .d-flex.align-items-center.gap-2 {
        flex-wrap: wrap;
        align-items: stretch !important;
    }
    .my-account-section .d-flex.align-items-center.gap-2 .badge,
    .my-account-section .d-flex.align-items-center.gap-2 .btn,
    .my-account-section .d-flex.align-items-center.gap-2 .form-control {
        width: 100%;
    }
    .my-account-section .orders-section .card-header > .d-flex,
    .my-account-section .orders-section .card-header .flex-col.my-auto.d-flex.gap-2,
    .my-account-section .orders-section .media-body > .d-flex.gap-2 {
        flex-wrap: wrap;
    }
    .my-account-section .orders-section .card-header .flex-col.my-auto.d-flex.gap-2 > .btn {
        width: 100%;
    }
    .my-account-section .orders-section .logo-fit {
        width: 120px !important;
        height: auto !important;
    }
    .my-account-section .form-check.form-check-inline {
        display: inline-flex;
        align-items: center;
        margin-right: 12px;
        margin-bottom: 8px;
    }
    .my-account-section .bootstrap-table .fixed-table-toolbar,
    .my-account-section .bootstrap-table .fixed-table-pagination {
        overflow-x: auto;
    }
    .my-account-section .modal-body.ps-10 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

/* =========================
   Floating chat: Messenger final overrides
   (must be at file end so it wins)
   ========================= */
.floating-chat-embed{
    background: #f0f2f5 !important;
}
.floating-chat-embed .deeplink_wrapper{
    padding: 10px 10px 12px !important;
}
.floating-chat-embed .floating-chat-topbar{
    padding: 4px 2px 10px !important;
}
.floating-chat-embed .floating-chat-title{
    font-size: 18px !important;
    font-weight: 800 !important;
}
.floating-chat-embed #floating_chat_view{
    height: calc(100vh - 64px) !important;
}
.floating-chat-embed #floating_chat_view > .row{
    height: 100% !important;
}
.floating-chat-embed .card.chat-theme-light{
    border: 0 !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 40px rgba(16,24,40,.10) !important;
    background: #fff !important;
    overflow: hidden !important;
}
.floating-chat-embed #chat_area .card.chat-box{
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}
.floating-chat-embed #chat-box-content{
    flex: 1 1 auto !important;
    min-height: 0 !important;
    background: #f0f2f5 !important;
    overflow: auto !important;
}
.floating-chat-embed #mychatbox2 .chat-card-header{
    background: #fff !important;
    border-bottom: 1px solid rgba(15,23,42,.10) !important;
    padding: 10px 12px !important;
}
.floating-chat-embed .chat-box .chat-content{
    padding: 12px !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details{
    max-width: 78% !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-text{
    border-radius: 18px !important;
    padding: 10px 12px !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: 0 1px 0 rgba(16,24,40,.06) !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item.chat-right .chat-details .chat-text{
    background: #0084ff !important;
    color: #fff !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-time{
    color: #65676b !important;
    font-size: 11px !important;
}
.floating-chat-embed #mychatbox2 .chat-form{
    background: #fff !important;
    border-top: 1px solid rgba(15,23,42,.10) !important;
    padding: 10px 10px !important;
}
.floating-chat-embed #chat-form2 .input-group{
    display: flex !important;
    align-items: flex-end !important;
    gap: 8px !important;
}
.floating-chat-embed #chat-input-textarea{
    border-radius: 999px !important;
    background: #f0f2f5 !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    min-height: 42px !important;
    padding: 10px 14px !important;
}
.floating-chat-embed .btn-send-msg{
    width: 40px !important;
    height: 40px !important;
    border-radius: 999px !important;
    background: #0084ff !important;
    border-color: #0084ff !important;
}

/* Professional support-assist UI in modern chat */
.floating-chat-embed #chat-form2{
    display: block;
}
.floating-chat-embed #chat-form2 .chat-quick-replies{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 8px 0 !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .chat-chip{
    appearance: none;
    -webkit-appearance: none;
    border-radius: 999px !important;
    font-size: 12px;
    line-height: 1.1;
    padding: 6px 10px;
    margin: 0 !important;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: normal;
    text-align: left;
    max-width: 100%;
    border: 1px solid rgba(15, 23, 42, .18) !important;
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: none !important;
    cursor: pointer;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .chat-chip:hover{
    border-color: rgba(0, 132, 255, .45) !important;
    background: rgba(0, 132, 255, .06) !important;
    color: #0b4aa2 !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .chat-chip:focus,
.floating-chat-embed #chat-form2 .chat-quick-replies .chat-chip:focus-visible{
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(0, 132, 255, .18) !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .btn{
    border-radius: 999px !important;
    font-size: 12px;
    line-height: 1.1;
    padding: 6px 10px;
    margin: 0 !important;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* allow long text to wrap on small widths */
    white-space: normal;
    text-align: left;
    max-width: 100%;
    border-width: 1px !important;
    border-style: solid !important;
    border-color: rgba(15, 23, 42, .18) !important;
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: none !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .btn:hover{
    border-color: rgba(0, 132, 255, .45) !important;
    background: rgba(0, 132, 255, .06) !important;
    color: #0b4aa2 !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .btn:focus,
.floating-chat-embed #chat-form2 .chat-quick-replies .btn:focus-visible{
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(0, 132, 255, .18) !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies .btn:active{
    transform: translateY(0) !important;
}
.floating-chat-embed #chat-form2 .chat-support-inline-note{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px !important;
    border: 1px solid rgba(2, 132, 199, 0.24);
    background: rgba(2, 132, 199, 0.08);
    color: #0f172a;
    border-radius: 10px;
}
.floating-chat-embed #chat-form2 .chat-support-inline-note .quick-connect-support{
    white-space: nowrap;
    border-radius: 999px !important;
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 600;
}
.floating-chat-embed #chat-form2 .row{
    margin-left: 0;
    margin-right: 0;
}
.floating-chat-embed #chat-form2 .input-group{
    display: flex;
    align-items: center !important;
    gap: 8px;
    flex-wrap: nowrap;
}
.floating-chat-embed #chat-form2 .input-group > .theme-inputs{
    flex: 1 1 auto;
    min-width: 0;
}
.floating-chat-embed #chat-form2 .btn-send-msg,
.floating-chat-embed #chat-form2 .btn-file,
.floating-chat-embed #chat-form2 .go-to-bottom-btn{
    flex: 0 0 auto;
}
@media (max-width: 576px){
    .floating-chat-embed #chat-form2 .chat-support-inline-note{
        flex-direction: column;
        align-items: flex-start;
    }
    .floating-chat-embed #chat-form2 .chat-support-inline-note .quick-connect-support{
        margin-left: 0 !important;
    }
}

/* Floating chat layout refinement:
   - open anchored from bottom without panel overlap
   - desktop split 30/70 (users/chat)
   - mobile keeps single-column behavior */
.chat-iframe {
    bottom: 14px !important;
    right: 14px !important;
    height: min(640px, calc(100vh - 28px)) !important;
}

.floating-chat-embed #floating_chat_view {
    height: calc(100vh - 86px) !important;
}

.floating-chat-embed #floating_chat_view > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    --bs-gutter-x: 0 !important;
}

.floating-chat-embed .floating-chat-users .card.chat-theme-light,
.floating-chat-embed #chat_area .card.chat-box {
    height: 100% !important;
}

.floating-chat-embed .floating-chat-users .chat-card-body,
.floating-chat-embed #chat-box-content {
    overflow-y: auto !important;
}

@media (min-width: 992px) {
    .floating-chat-embed .floating-chat-users {
        flex: 0 0 30% !important;
        max-width: 30% !important;
        width: 30% !important;
    }
    .floating-chat-embed #chat_area,
    .floating-chat-embed #chat_area_wait {
        flex: 0 0 70% !important;
        max-width: 70% !important;
        width: 70% !important;
    }
}

@media (max-width: 991.98px) {
    .floating-chat-embed #floating_chat_view > .row {
        flex-wrap: wrap !important;
        gap: 0 !important;
    }
    .floating-chat-embed .floating-chat-users,
    .floating-chat-embed #chat_area,
    .floating-chat-embed #chat_area_wait {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}
.floating-chat-embed .btn-file{
    width: 40px !important;
    height: 40px !important;
    border-radius: 999px !important;
    background: rgba(15,23,42,.06) !important;
    border-color: rgba(15,23,42,.08) !important;
}

/* Final guardrails: keep floating chat composer/layout stable. */
.floating-chat-embed #mychatbox2 .chat-form{
    position: relative !important;
    padding: 8px 10px !important;
}
.floating-chat-embed #chat-form2{
    /* Layout fix: textarea + action buttons must never overlap */
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    gap: 8px !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages{
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages{
    width: 100% !important;
    margin: 6px 0 8px 0 !important;
    clear: both;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .chat-quick-replies,
.floating-chat-embed #chat-box-content #chat-inline-messages .chat-support-inline-note{
    width: 100% !important;
}

/* Professional bot menu card */
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-card{
    max-width: 360px;
    background: #ffffff !important;
    border: 1px solid rgba(11, 94, 215, .22) !important;
    border-radius: 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .12) !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-title{
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #0b4aa2 !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(180deg, rgba(11,94,215,.12), rgba(11,94,215,.03)) !important;
    border-bottom: 1px solid rgba(11,94,215,.16) !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-list{
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-item{
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    display: block !important;
    text-align: left !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #0b4aa2 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    position: relative !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-item:hover{
    background: rgba(11,94,215,.06) !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-item:focus,
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-item:focus-visible{
    outline: none !important;
    box-shadow: inset 0 0 0 2px rgba(11,94,215,.18) !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-item::after{
    content: "\203A";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(11,94,215,.75);
    font-size: 18px;
    font-weight: 700;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-list .bot-menu-item:last-child{
    border-bottom: 0;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-actions{
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    padding: 10px;
    border-top: 1px solid rgba(15,23,42,.08);
    background: #f8fbff;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-pill{
    appearance: none !important;
    -webkit-appearance: none !important;
    border: none !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #1f56a8 !important;
    color: #fff !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-pill:hover{
    filter: brightness(0.98);
}

/* Same menu styling when inline slot is rendered near input form */
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-card{
    max-width: 360px;
    background: #ffffff !important;
    border: 1px solid rgba(11, 94, 215, .22) !important;
    border-radius: 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .12) !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-title{
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #0b4aa2 !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(180deg, rgba(11,94,215,.12), rgba(11,94,215,.03)) !important;
    border-bottom: 1px solid rgba(11,94,215,.16) !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-list{
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-item{
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    display: block !important;
    text-align: left !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #0b4aa2 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    position: relative !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-item:hover{
    background: rgba(11,94,215,.06) !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-item::after{
    content: "\203A";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(11,94,215,.75);
    font-size: 18px;
    font-weight: 700;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-list .bot-menu-item:last-child{
    border-bottom: 0;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-actions{
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    padding: 10px;
    border-top: 1px solid rgba(15,23,42,.08);
    background: #f8fbff;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .bot-menu-pill{
    appearance: none !important;
    -webkit-appearance: none !important;
    border: none !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #1f56a8 !important;
    color: #fff !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
}
/* Fallback selectors for chat layouts that do not include `.floating-chat-embed` wrapper. */
#chat-inline-messages .bot-menu-card{
    max-width: 360px;
    background: #ffffff !important;
    border: 1px solid rgba(11, 94, 215, .22) !important;
    border-radius: 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .12) !important;
}
#chat-inline-messages .bot-menu-title{
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #0b4aa2 !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(180deg, rgba(11,94,215,.12), rgba(11,94,215,.03)) !important;
    border-bottom: 1px solid rgba(11,94,215,.16) !important;
}
#chat-inline-messages .bot-menu-list{
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}
#chat-inline-messages .bot-menu-item{
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    display: block !important;
    text-align: left !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #0b4aa2 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    position: relative !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}
#chat-inline-messages .bot-menu-item::after{
    content: "\203A";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(11,94,215,.75);
    font-size: 18px;
    font-weight: 700;
}
#chat-inline-messages .bot-menu-list .bot-menu-item:last-child{ border-bottom: 0; }
#chat-inline-messages .bot-menu-actions{
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    padding: 10px;
    border-top: 1px solid rgba(15,23,42,.08);
    background: #f8fbff;
}
#chat-inline-messages .bot-menu-pill{
    appearance: none !important;
    -webkit-appearance: none !important;
    border: none !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #1f56a8 !important;
    color: #fff !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
}

/* Support chat menu (new unique classes to avoid legacy collisions) */
#chat-inline-messages .msw-bot-menu-card{
    max-width: 360px !important;
    background: #ffffff !important;
    border: 1px solid rgba(11, 94, 215, .22) !important;
    border-radius: 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .12) !important;
}
#chat-inline-messages .msw-bot-menu-title{
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #0b4aa2 !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    background: linear-gradient(180deg, rgba(11,94,215,.12), rgba(11,94,215,.03)) !important;
    border-bottom: 1px solid rgba(11,94,215,.16) !important;
}
#chat-inline-messages .msw-bot-menu-list{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
}
#chat-inline-messages .msw-bot-menu-item{
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    display: block !important;
    text-align: left !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #0b4aa2 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    position: relative !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}
#chat-inline-messages .msw-bot-menu-item:hover{
    background: rgba(11,94,215,.06) !important;
}
#chat-inline-messages .msw-bot-menu-item::after{
    content: "\203A" !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: rgba(11,94,215,.75) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}
#chat-inline-messages .msw-bot-menu-list .msw-bot-menu-item:last-child{
    border-bottom: 0 !important;
}
#chat-inline-messages .msw-bot-menu-actions{
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 0 !important;
    padding: 10px !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
    background: #f8fbff !important;
}
#chat-inline-messages .msw-bot-menu-pill{
    appearance: none !important;
    -webkit-appearance: none !important;
    border: none !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: #1f56a8 !important;
    color: #fff !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
}
.floating-chat-embed #chat-form2 .chat-quick-replies,
.floating-chat-embed #chat-form2 .chat-support-inline-note{
    flex: 0 0 100% !important;
}
.floating-chat-embed #chat-form2 > .row{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.floating-chat-embed #chat-form2 > .row > .input-group{
    width: 100% !important;
}
.floating-chat-embed #chat-form2 > div:not(.row):not(.chat-quick-replies):not(.chat-support-inline-note){
    flex: 0 0 auto !important;
}
.floating-chat-embed #chat-form2 .input-group-append{
    display: flex !important;
    align-items: flex-end !important;
    margin: 0 !important;
}
.floating-chat-embed #chat-form2 .input-group-append.mb-n1{
    margin-bottom: 0 !important;
}
.floating-chat-embed #chat-form2 > div:last-child{
    align-self: flex-end !important;
}
.floating-chat-embed #chat-form2 #chat-input-textarea{
    min-height: 40px !important;
    max-height: 120px !important;
    overflow-y: auto !important;
    resize: none !important;
}
.floating-chat-embed #chat-form2 .form-group{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin: 0 !important;
}
.floating-chat-embed #chat-form2 .input-group{
    flex: 1 1 auto !important;
    min-width: 0 !important;
}
.floating-chat-embed #chat-form2 .input-group > .theme-inputs{
    width: 100% !important;
    min-width: 0 !important;
}
.floating-chat-embed #chat-form2 .btn-send-msg,
.floating-chat-embed #chat-form2 .btn-file,
.floating-chat-embed #chat-form2 .go-to-bottom-btn{
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 !important;
}
.floating-chat-embed #chat-box-content{
    padding-bottom: 8px !important;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-time{
    display: block !important;
    width: 100% !important;
    clear: both;
}

/* Final safety: support note/action must not collapse into composer icons. */
.floating-chat-embed #chat-form2 #chat-inline-messages .chat-support-inline-note{
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .chat-support-inline-note{
    display: block !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
}
.floating-chat-embed #chat-form2 #chat-inline-messages .chat-support-inline-note .quick-connect-support{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 8px 0 0 0 !important;
    max-width: 100% !important;
    flex-shrink: 0 !important;
    white-space: normal !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .chat-support-inline-note .quick-connect-support{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 8px 0 0 0 !important;
    max-width: 100% !important;
    flex-shrink: 0 !important;
    white-space: normal !important;
}
@media (max-width: 576px){
    .floating-chat-embed #chat-form2 #chat-inline-messages .chat-support-inline-note .quick-connect-support{
        width: 100% !important;
    }
    .floating-chat-embed #chat-box-content #chat-inline-messages .chat-support-inline-note .quick-connect-support{
        width: 100% !important;
    }
}

/* PDP CTA hard guardrail for very small phones */
@media (max-width: 575.98px) {
    .pdp-page #pdp-cta-anchor {
        padding: 8px 8px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        overflow-x: hidden !important;
        overflow-y: hidden !important;
        gap: 6px !important;
        padding: 0 !important;
        border-bottom: 0 !important;
        white-space: normal !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row > * {
        min-width: 0 !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block {
        flex: 0 0 108px !important;
        width: 108px !important;
        height: 42px !important;
        min-height: 42px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in input,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in .minus,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-in .plus {
        height: 42px !important;
        line-height: 42px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row #add_cart,
    .pdp-page #pdp-cta-anchor .product-cta-row #buy_now {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        width: auto !important;
        white-space: nowrap !important;
        line-height: 1.1 !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 8px 10px !important;
    }
    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta,
    .pdp-page #pdp-cta-anchor .product-cta-row #compare,
    .pdp-page #pdp-cta-anchor .product-cta-row .add-to-fav-btn,
    .pdp-page #pdp-cta-anchor .product-cta-row a.btn-success {
        flex: 0 0 42px !important;
        width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
    }
}

/* Final mobile CTA normalization (below tablet) */
@media (max-width: 991.98px) {
    .pdp-page #pdp-cta-anchor .product-cta-row {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
    }

    .pdp-page #pdp-cta-anchor .product-cta-row .pdp-qty-in-cta,
    .pdp-page #pdp-cta-anchor .product-cta-row .num-block {
        flex: 0 0 108px !important;
        width: 108px !important;
        height: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
    }

    .pdp-page #pdp-cta-anchor #add_cart,
    .pdp-page #pdp-cta-anchor #buy_now {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        height: 42px !important;
        min-height: 42px !important;
        border-radius: 999px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .pdp-page #pdp-cta-anchor #add_cart i,
    .pdp-page #pdp-cta-anchor #buy_now i {
        font-size: 14px !important;
        margin-right: 6px !important;
        line-height: 1 !important;
    }

    /* PDP deliverability controls: prevent overflow on mobile/tablet widths */
    .product-delivery-card .input-group {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        width: 100% !important;
    }
    .product-delivery-card .input-group .form-control {
        flex: 1 1 100% !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    .product-delivery-card .input-group #validate_zipcode,
    .product-delivery-card .input-group #validate_city,
    .product-delivery-card .input-group .use-current-location-zipcode,
    .product-delivery-card .input-group .use-current-location-city {
        flex: 1 1 calc(50% - 4px) !important;
        width: calc(50% - 4px) !important;
        min-width: 0 !important;
        white-space: nowrap !important;
    }

    /* Header row stabilization: keep brand + actions in single line */
    header.wrapper.bg-light > nav.navbar .container.flex-lg-row.flex-nowrap.align-items-center {
        flex-wrap: nowrap !important;
        gap: 8px !important;
    }
    header.wrapper.bg-light > nav.navbar .navbar-brand.logo-img {
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }
    header.wrapper.bg-light > nav.navbar .navbar-brand.logo-img img.brand-logo-link {
        max-width: 160px !important;
        height: auto !important;
    }
    .navbar-other {
        width: auto !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
    }
    .navbar-other .navbar-nav.flex-row {
        flex-wrap: nowrap !important;
        row-gap: 0 !important;
    }
    .navbar-other .navbar-nav.flex-row > .nav-item {
        flex: 0 0 auto !important;
    }
    .navbar-other .navbar-nav.flex-row > .nav-item > a.header-toolbar-icon {
        width: 2.1rem;
        height: 2.1rem;
        min-width: 2.1rem;
        min-height: 2.1rem;
    }
    /* Keep icon count compact on smaller headers */
    .navbar-other .navbar-nav.flex-row > .nav-item > a.desktop-search {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .hero-slider-enhanced {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .hero-slider-enhanced .swiper-controls {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        min-height: 8px;
    }

    /* Product cards on mobile: keep desktop quick-action block visible
       because many card templates render "Add to Cart" inside it. */
    .desktop_quick_view {
        display: block !important;
    }
    .mobile_quick_view {
        display: none !important;
    }
}

/* Mobile/tablet product-card polish: stable action layout + visible add-to-cart */
@media (max-width: 991.98px) {
    .item figure,
    .swiper-slide figure {
        border-radius: 10px;
        overflow: hidden;
    }

    /* Make wishlist / quick-view / compare always visible on touch devices.
       Default theme shows them only on :hover, which does not work reliably on mobile. */
    .main-content .item figure .item-like,
    .main-content .item figure .item-view,
    .main-content .item figure .item-compare,
    .main-content .swiper-slide figure .item-like,
    .main-content .swiper-slide figure .item-view,
    .main-content .swiper-slide figure .item-compare {
        opacity: 1 !important;
        width: 1.2rem !important;
        height: 1.2rem !important;
        line-height: 1.2rem !important;
        font-size: 0.58rem !important;
    }

    .main-content .item figure .item-like,
    .main-content .swiper-slide figure .item-like { right: 0.42rem !important; top: 0.5rem !important; }
    .main-content .item figure .item-view,
    .main-content .swiper-slide figure .item-view { right: 1.75rem !important; top: 0.5rem !important; }
    .main-content .item figure .item-compare,
    .main-content .swiper-slide figure .item-compare { right: 3.08rem !important; top: 0.5rem !important; }

    .item figure .item-cart,
    .swiper-slide figure .item-cart {
        opacity: 1 !important;
        bottom: 0 !important;
        left: 0;
        width: 100%;
        padding: 8px 10px !important;
        min-height: 34px;
        font-size: 12px !important;
        font-weight: 700 !important;
        background: rgba(17, 24, 39, 0.82) !important;
        backdrop-filter: saturate(120%) blur(1px);
    }

    .item figure .item-cart i,
    .swiper-slide figure .item-cart i {
        font-size: 13px;
        margin-right: 5px;
    }

    /* Ensure action buttons stay clickable above image/content overlays. */
    .main-content .item figure .item-like,
    .main-content .item figure .item-view,
    .main-content .item figure .item-compare,
    .main-content .item figure .item-cart,
    .main-content .swiper-slide figure .item-like,
    .main-content .swiper-slide figure .item-view,
    .main-content .swiper-slide figure .item-compare,
    .main-content .swiper-slide figure .item-cart {
        z-index: 3 !important;
    }
}

/* Final hard guardrail: keep compare/eye/heart on single top-right row (non-ads). */
.main-content :not(.auto-product-ads-wrap) .item figure .item-like,
.main-content :not(.auto-product-ads-wrap) .item figure .item-view,
.main-content :not(.auto-product-ads-wrap) .item figure .item-compare,
.main-content :not(.auto-product-ads-wrap) .swiper-slide figure .item-like,
.main-content :not(.auto-product-ads-wrap) .swiper-slide figure .item-view,
.main-content :not(.auto-product-ads-wrap) .swiper-slide figure .item-compare {
    position: absolute !important;
    top: 0.55rem !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 !important;
}

/* Final guardrail: keep sale badge fully visible on product cards */
.main-content .item figure .sale_tag,
.main-content .swiper-slide figure .sale_tag {
    top: 0.4rem !important;
    left: 0.4rem !important;
    right: auto !important;
    margin: 0 !important;
    z-index: 6 !important;
    min-width: 46px !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.05 !important;
    padding: 3px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    overflow: hidden !important;
}
.main-content .item figure .sale_tag > span,
.main-content .swiper-slide figure .sale_tag > span {
    display: block !important;
    line-height: 1.05 !important;
}
@media (max-width: 575.98px) {
    .main-content .item figure .sale_tag,
    .main-content .swiper-slide figure .sale_tag {
        min-width: 42px !important;
        width: 42px !important;
        height: 42px !important;
        font-size: 9px !important;
    }
}

/* Support bot chat UX polish: visible card/chip styles and order detail layout */
.floating-chat-embed #chat-inline-messages .chat-quick-replies{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.floating-chat-embed #chat-inline-messages .chat-chip{
    width:100%;
    border:1px solid #bcd0ff;
    background:#ffffff;
    color:#0b57d0;
    border-radius:12px;
    padding:10px 12px;
    text-align:left;
    font-size:13px;
    font-weight:600;
    line-height:1.35;
}
.floating-chat-embed #chat-inline-messages .chat-chip:hover{
    background:#f2f7ff;
    border-color:#8cb0ff;
}
.floating-chat-embed #chat-inline-messages .chat-chip.chat-order-card{
    color:#1f2937;
    border-color:#dbe7ff;
    background:#f8fbff;
}
.floating-chat-embed #chat-inline-messages .chat-chip.chat-order-card .chat-order-line{
    margin:1px 0;
}
.floating-chat-embed #chat-inline-messages .chat-chip.chat-order-card .chat-order-products{
    margin-top:2px;
}
.floating-chat-embed #chat-inline-messages .chat-chip.chat-order-card .chat-order-product-line{
    color:#374151;
    font-size:12px;
    margin:0;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-text .chat-order-update-lines{
    line-height:1.45;
}
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-text .chat-order-update-lines > div{
    margin-bottom:2px;
}

/* Timestamp: keep it subtle and always below message bubble */
.floating-chat-embed .chat-box .chat-content .chat-item .chat-details .chat-time{
    font-size:11px !important;
    color:#7b8794 !important;
    margin-top:4px !important;
    line-height:1.1 !important;
}

/* Sale badge text layout: keep OFF on second line site-wide */
.main-content .item figure .sale_tag > span,
.main-content .swiper-slide figure .sale_tag > span {
    white-space: pre-line !important;
    display: inline-block !important;
    text-align: center !important;
}

/* Absolute final override: keep discount badge readable and two-line site-wide */
.main-content .sale_tag{
    top: .45rem !important;
    left: .45rem !important;
    right: auto !important;
    transform: none !important;
    margin: 0 !important;
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 5px !important;
    z-index: 7 !important;
    overflow: hidden !important;
}
.main-content .sale_tag > span{
    display: block !important;
    width: 100% !important;
    max-width: 40px !important;
    margin: 0 auto !important;
    white-space: normal !important;
    word-break: keep-all !important;
    line-height: 1.08 !important;
    text-align: center !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}
@media (max-width: 575.98px){
    .main-content .sale_tag{
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        padding: 4px !important;
    }
    .main-content .sale_tag > span{
        max-width: 36px !important;
        font-size: 11px !important;
        line-height: 1.06 !important;
    }
}

/* Final hard override for support chat buttons (prevent plain black browser button style) */
#chat-inline-messages button.quick-chat-msg{
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 1px solid #bcd0ff !important;
    background: #fff !important;
    color: #0b57d0 !important;
    border-radius: 12px !important;
    padding: 9px 12px !important;
    margin: 0 !important;
    box-shadow: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    white-space: normal !important;
}
#chat-inline-messages button.quick-chat-msg:hover{
    background: #f2f7ff !important;
    border-color: #8cb0ff !important;
}

/* Ensure support menu rows render as clean card items (not browser default buttons) */
#chat-inline-messages .msw-bot-menu-card{
    border: 1px solid #d7e3ff !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #fff !important;
}
#chat-inline-messages .msw-bot-menu-item.quick-chat-msg{
    width: 100% !important;
    display: block !important;
    border: 0 !important;
    border-bottom: 1px solid #edf2ff !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #0b57d0 !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    box-shadow: none !important;
}
#chat-inline-messages .msw-bot-menu-item.quick-chat-msg:last-child{
    border-bottom: 0 !important;
}
#chat-inline-messages .msw-bot-menu-item.quick-chat-msg:hover{
    background: #f2f7ff !important;
}

/* Order-id list should be clean chips, not outlined raw buttons */
#chat-inline-messages .chat-quick-replies .chat-chip{
    border: 1px solid #d7e3ff !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #1f2937 !important;
}

/* Queue timeline/wait line: larger, clearer font */
.floating-chat-embed #chat-inline-messages .chat-support-inline-note,
.floating-chat-embed #chat-inline-messages .chat-support-inline-note .chat-support-inline-note-text{
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

/* Final sale badge text centering fix */
.main-content .sale_tag{
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    background: #1f56a8 !important;
    border-color: #1f56a8 !important;
    color: #fff !important;
}
.main-content .sale_tag > span{
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto !important;
    color: #fff !important;
}

/* Ensure legacy bg utility classes cannot force black sale badges */
.main-content .sale_tag.bg-pink,
.main-content .sale_tag.bg-danger,
.main-content .sale_tag.avatar{
    background: #1f56a8 !important;
    border-color: #1f56a8 !important;
    color: #fff !important;
}

/* Global fallback for section/group listing pages that don't inherit .main-content scope */
.sale_tag,
.sale_tag.bg-pink,
.sale_tag.bg-danger,
.sale_tag.avatar{
    background: #1f56a8 !important;
    border-color: #1f56a8 !important;
    color: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}
.sale_tag > span{
    color: #fff !important;
    text-align: center !important;
}

/* Professional brand palette */
:root{
    --primary-color: #1f56a8;
    --secondary-color: #FF9900;
    --tertiary-color: #D8202A;
    --quaternary-color: #F06223;
    --highlight-color: #FFFF33;
}

/* CTA hierarchy */
.btn-primary,
.btn-primary:focus,
.btn-primary:hover,
.floating-chat-embed .btn-send-msg,
.floating-chat-embed .btn-send-msg:hover{
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-warning,
.floating-chat-embed .btn-file,
.floating-chat-embed .btn-file:hover{
    background: var(--secondary-color) !important;
    border-color: var(--secondary-color) !important;
    color: #1f2937 !important;
}

/* Emphasized pricing/discount surfaces */
.sale_tag,
.sale_tag.bg-pink,
.sale_tag.bg-danger,
.sale_tag.avatar{
    background: var(--tertiary-color) !important;
    border-color: var(--tertiary-color) !important;
}

/* Promo highlights */
.badge.bg-warning,
.badge.badge-warning{
    background: var(--highlight-color) !important;
    color: #1f2937 !important;
}

/* Chat cards with warm accent */
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-card{
    border-color: color-mix(in srgb, var(--primary-color) 60%, var(--secondary-color) 40%) !important;
}
.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-title{
    color: var(--primary-color) !important;
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--secondary-color) 35%, #ffffff),
        color-mix(in srgb, var(--primary-color) 6%, #ffffff)
    ) !important;
    border-bottom: 1px solid color-mix(in srgb, var(--primary-color) 35%, var(--secondary-color) 30%) !important;
}

.floating-chat-embed #chat-box-content #chat-inline-messages .bot-menu-pill{
    background: var(--primary-color) !important;
}

.floating-chat-embed #chat-box-content #chat-inline-messages .chat-chip.quick-connect-support{
    background: var(--quaternary-color) !important;
    border-color: var(--quaternary-color) !important;
    color: #fff !important;
}