﻿/* Ecomus product-card replacements for the explicitly assigned Avelle slots. */
:root {
    --avl-product-ink: #000;
    --avl-product-bg: #fff;
    --avl-product-soft: #f7f7f7;
    --avl-product-muted: #545454;
    --avl-product-muted-light: #8a8a8a;
    --avl-product-accent: #DB1215;
    /* Ecomus women "N% Off" sale badge â€” one variable controls the colour.
       Default = Ecomus coral; flip to var(--avl-sale) for the brand-red variant. */
    --avl-sale-badge-bg: #DB1215;
    --avl-sale-badge-fg: #fff;
    /* Ecomus carousel nav â€” disabled arrow wash (rgba, not a solid ink). */
    --avl-product-arrow-disabled-bg: rgba(0, 0, 0, .15);
    /* Ecomus pagination â€” inactive dot wash (active dot = --avl-product-ink). */
    --avl-product-dot: rgba(0, 0, 0, .2);
}

/* Additional Avelle card variants: same data contract, distinct presentation. */
.avelle-product-style--7 {
    --avelle-style7-accent: rgb(255 101 0);
    background: var(--avl-product-bg);
    border: 1px solid var(--avl-product-bg);
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    transition: .3s linear;
}
.avelle-product-style--7 .tp-product-thumb-3,
.avelle-product-style--7 .tp-product-thumb-3 img { border-radius: 10px 10px 0 0; }
.avelle-product-style--7 .tp-product-action-3 .tp-product-action-btn-3:hover,
.avelle-product-style--7 .tp-product-action-3 .tp-product-action-btn-3.active { background: var(--avelle-style7-accent); color: var(--avl-product-bg); }
.avelle-product-style--7 .tp-product-add-cart-btn-large { background: var(--avelle-style7-accent); color: var(--avl-product-bg); }
.avelle-product-style--7 .avelle-product-card__category { color: var(--avl-product-muted-light); font-size: 13px; line-height: 1.3; margin: 12px 0 6px; }
.avelle-product-style--7 .tp-product-content-3 { padding: 15px 15px 10px; }
.avelle-product-style--7 .tp-product-title-3 { font-size: 14px; font-weight: 500; line-height: 18px; margin-bottom: 5px; }
.avelle-product-style--7 .tp-product-price-3 { color: var(--avelle-style7-accent); font-size: 15px; font-weight: 600; }
.avelle-product-style--7 .avelle-recommended-product__discount { background: rgb(218 165 32); border-radius: 9px 0 0 30px; padding: 0 10px 0 12px; right: 0; }
.avelle-product-style--7 .avelle-product-card__ecomus-actions { opacity: 0; transition: opacity .2s ease; }
.avelle-product-style--7:hover .avelle-product-card__ecomus-actions,
.avelle-product-style--7:focus-within .avelle-product-card__ecomus-actions { opacity: 1; }
.avelle-product-style--7 .avelle-product-card__ecomus-actions { bottom: 12px; gap: 8px; justify-content: center; left: 0; right: 0; }
.avelle-product-style--7 .avelle-product-card__ecomus-action { background: var(--avelle-style7-accent); border: 0; border-radius: 50%; color: var(--avl-product-bg); }

.avelle-product-style--8 {
    background: var(--avl-product-bg);
    border: 1px solid rgba(229, 231, 235, 1);
    border-radius: 10px;
    overflow: hidden;
    padding: 0;
    position: relative;
    transition: box-shadow .2s ease, border-color .2s ease;
}
.avelle-product-style--8:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, .08); }
.avelle-product-style--8 .tp-product-thumb-4 { aspect-ratio: 1 / 1.16; background: var(--avl-product-soft); border-radius: 0; overflow: hidden; position: relative; }
.avelle-product-style--8 .tp-product-thumb-4 > a { align-items: center; display: flex; height: 100%; justify-content: center; padding: 18px 14px 0; }
.avelle-product-style--8 .tp-product-thumb-4 > a img { height: 100%; object-fit: contain; width: 100%; }
.avelle-product-style--8 .tp-product-content-4 { min-height: 122px; padding: 14px 14px 12px; }
.avelle-product-style--8 .tp-product-rating { align-items: center; display: flex; margin: 0 0 8px; min-height: 15px; }
.avelle-product-style--8 .tp-product-rating-icon { display: flex; gap: 1px; }
.avelle-product-style--8 .tp-product-rating-icon span,
.avelle-product-style--8 .tp-product-rating-icon i { color: rgba(189, 195, 201, 1); font-size: 12px; }
.avelle-product-style--8 .tp-product-rating-text,
.avelle-product-style--8 .tp-product-rating-text span,
.avelle-product-style--8 .tp-product-rating-text a { color: var(--avl-product-muted); font-size: 12px; font-weight: 400; margin-inline-start: 5px; }
.avelle-product-style--8 .tp-product-title-4 { font-size: 14px; font-weight: 400; line-height: 17px; margin: 0; min-height: 34px; }
.avelle-product-style--8 .tp-product-title-4 a { color: var(--avl-product-ink); }
.avelle-product-style--8 .tp-product-price-wrapper-4 { align-items: baseline; display: flex; gap: 7px; margin-top: 16px; }
.avelle-product-style--8 .tp-product-price-4 { color: var(--avelle-primary, var(--avl-product-accent)); font-size: 15px; font-weight: 600; line-height: 18px; }
.avelle-product-style--8 .tp-product-price-4.old-price { color: var(--avl-product-muted-light); font-size: 13px; font-weight: 400; text-decoration: line-through; }
.avelle-product-style--8 .tp-product-action-3 { inset-inline-end: 8px; top: 8px; }
.avelle-product-style--8 .tp-product-action-3 .tp-product-action-btn-3 { background: rgb(27 19 57); border: 0; border-radius: 6px; height: 28px; opacity: 0; transform: translateY(-4px); transition: opacity .2s ease, transform .2s ease, background .2s ease; width: 28px; }
.avelle-product-style--8:hover .tp-product-action-3 .tp-product-action-btn-3,
.avelle-product-style--8:focus-within .tp-product-action-3 .tp-product-action-btn-3 { opacity: 1; transform: translateY(0); }
.avelle-product-style--8 .tp-product-action-3 .tp-product-action-btn-3:hover,
.avelle-product-style--8 .tp-product-action-3 .tp-product-action-btn-3.active { background: var(--avelle-primary, var(--avl-product-accent)); }
.avelle-product-style--8 .avelle-product-card__ecomus-swatches { display: none; }

html:root body .avelle-product-card--shared.avelle-product-style--4 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin-bottom: 42px !important;
    overflow: visible !important;
    text-align: left !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-thumb-4 {
    aspect-ratio: 3 / 4 !important;
    background: var(--avl-product-soft) !important;
    border: 0 !important;
    border-radius: var(--avl-ui-card-radius, 6px) !important;
    box-shadow: none !important;
    overflow: hidden !important;
    position: relative !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-thumb-4 > a {
    display: block !important;
    height: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-thumb-4 > a > img {
    height: 100% !important;
    inset: 0 !important;
    object-fit: cover !important;
    object-position: center top !important;
    position: absolute !important;
    transform: scale(1) !important;
    transition: opacity .5s ease, transform 2s ease !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-thumb-4 > a > img:first-child {
    opacity: 1 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-thumb-4 > a > .avelle-product-card__hover-image {
    opacity: 0 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4:hover .tp-product-thumb-4 > a > img,
html:root body .avelle-product-card--shared.avelle-product-style--4:focus-within .tp-product-thumb-4 > a > img {
    transform: scale(1.09) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4:hover .tp-product-thumb-4.avelle-product-card__media--has-hover > a > img:first-child,
html:root body .avelle-product-card--shared.avelle-product-style--4:focus-within .tp-product-thumb-4.avelle-product-card__media--has-hover > a > img:first-child {
    opacity: 0 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4:hover .tp-product-thumb-4 > a > .avelle-product-card__hover-image,
html:root body .avelle-product-card--shared.avelle-product-style--4:focus-within .tp-product-thumb-4 > a > .avelle-product-card__hover-image {
    opacity: 1 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-badge,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-badge-2,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-badge-3,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-badge-4,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-badge-5 {
    left: 15px !important;
    top: 15px !important;
    z-index: 6 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-actions {
    align-items: center !important;
    bottom: 48px !important;
    display: flex !important;
    gap: 6px !important;
    left: 15px !important;
    opacity: 1 !important;
    pointer-events: none !important;
    position: absolute !important;
    transform: none !important;
    visibility: visible !important;
    z-index: 7 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action {
    align-items: center !important;
    background: var(--avl-product-bg) !important;
    border: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 18px rgb(0 0 0 / 12%) !important;
    color: var(--avl-product-ink) !important;
    display: inline-flex !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
    min-height: 42px !important;
    opacity: 0 !important;
    padding: 0 !important;
    transform: translateY(20px) !important;
    transition: background-color .25s ease, color .25s ease, opacity .3s ease, transform .3s ease !important;
    width: 42px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:nth-child(1) { transition-delay: 0s, 0s, .1s, .1s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:nth-child(2) { transition-delay: 0s, 0s, .2s, .2s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:nth-child(3) { transition-delay: 0s, 0s, .3s, .3s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:nth-child(4) { transition-delay: 0s, 0s, .4s, .4s !important; }

html:root body .avelle-product-card--shared.avelle-product-style--4:hover .avelle-product-card__ecomus-action,
html:root body .avelle-product-card--shared.avelle-product-style--4:focus-within .avelle-product-card__ecomus-action {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

@media (hover: hover) and (pointer: fine) {
    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:hover,
    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action:focus-visible {
        background: var(--avl-product-ink) !important;
        color: var(--avl-product-bg) !important;
    }
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action .avelle-icon,
html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action svg {
    font-size: 18px !important;
    height: 18px !important;
    width: 18px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__size-strip {
    align-items: center !important;
    background: rgb(0 0 0 / 30%) !important;
    bottom: 0 !important;
    color: var(--avl-product-bg) !important;
    display: flex !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    gap: 16px !important;
    justify-content: center !important;
    left: 0 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-height: 36px !important;
    padding: 10px !important;
    position: absolute !important;
    right: 0 !important;
    text-transform: uppercase !important;
    transform: translateY(100%) !important;
    transition: transform .4s ease !important;
    z-index: 5 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4:hover .avelle-product-card__size-strip,
html:root body .avelle-product-card--shared.avelle-product-style--4:focus-within .avelle-product-card__size-strip {
    transform: translateY(0) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-content-4 {
    align-items: stretch !important;
    background: transparent !important;
    border: 0 !important;
    display: block !important;
    padding: 16px 0 0 !important;
    text-align: left !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-content-4 > * {
    width: auto !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating {
    align-items: center !important;
    display: flex !important;
    justify-content: flex-start !important;
    margin: 0 0 9px !important;
    min-height: 14px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-icon {
    align-items: center !important;
    display: flex !important;
    justify-content: flex-start !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-icon span,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-icon i {
    color: var(--avl-product-ink) !important;
    font-size: 12px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-text,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-text a,
html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-rating-text span {
    color: var(--avl-product-muted) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 14px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-title-4 {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 19.2px !important;
    margin: 0 !important;
    min-height: 38.4px !important;
    text-align: left !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-title-4 a {
    color: var(--avl-product-ink) !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-title-4 a:hover {
    color: var(--avelle-primary, var(--tp-theme-primary, var(--avl-product-accent))) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-price-wrapper-4 {
    align-items: baseline !important;
    display: flex !important;
    gap: 7px !important;
    justify-content: flex-start !important;
    margin: 8px 0 0 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-price-4 {
    color: var(--avl-product-ink) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 19px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-price-4.new-price {
    color: var(--avl-sale) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-price-4.old-price {
    color: var(--avl-product-muted-light) !important;
    font-weight: 400 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-swatches {
    gap: 8px !important;
    justify-content: flex-start !important;
    margin-top: 11px !important;
    min-height: 26px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-swatch-more {
    border-radius: 50% !important;
    height: 26px !important;
    width: 26px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-swatch::after {
    border-radius: 50% !important;
    height: 18px !important;
    width: 18px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-price-add-to-cart,
html:root body .avelle-product-card--shared.avelle-product-style--4 .card-price-meta {
    display: none !important;
}

@media (max-width: 1024px) {
    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-actions {
        bottom: 46px !important;
        left: 10px !important;
        pointer-events: auto !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action {
        flex-basis: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        opacity: 1 !important;
        transform: none !important;
        width: 32px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action .avelle-icon,
    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-action svg {
        font-size: 15px !important;
        height: 15px !important;
        width: 15px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__size-strip {
        transform: none !important;
    }
}

@media (max-width: 575px) {
    html:root body .avelle-product-card--shared.avelle-product-style--4 {
        margin-bottom: 30px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-content-4 {
        padding-top: 12px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .tp-product-title-4 {
        font-size: 14px !important;
        line-height: 18px !important;
        min-height: 36px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--4 .avelle-product-card__ecomus-actions {
        gap: 4px !important;
        left: 8px !important;
    }
}

/* Style 6: faithful Ecomus Women card, isolated from product styles 1-5. */
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    height: 100% !important;
    margin: 0 0 42px !important;
    overflow: visible !important;
    padding: 0 !important;
    text-align: left !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .img-wrapper {
    aspect-ratio: 5 / 7 !important;
    background: var(--avl-product-soft) !important;
    border: 0 !important;
    border-radius: var(--avl-ui-card-radius, 6px) !important;
    box-shadow: none !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .img-wrapper::before {
    display: none !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .img-wrapper > a {
    display: block !important;
    height: 100% !important;
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .img-wrapper > a > img {
    border-radius: var(--avl-ui-card-radius, 6px) !important;
    display: block !important;
    height: 100% !important;
    inset: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    position: absolute !important;
    transform: scale(1) !important;
    transition: opacity .5s ease, transform .6s cubic-bezier(0.23, 1, 0.32, 1) !important;
    width: 100% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 [data-avelle-style6-primary-image] {
    opacity: 1 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 [data-avelle-style6-hover-image] {
    opacity: 0 !important;
}

@media (hover: hover) and (pointer: fine) {
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover .img-wrapper > a > img,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within .img-wrapper > a > img {
        transform: scale(1.09) !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover [data-avelle-style6-primary-image],
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within [data-avelle-style6-primary-image] {
        opacity: 0 !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover [data-avelle-style6-hover-image],
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within [data-avelle-style6-hover-image] {
        opacity: 1 !important;
    }
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-actions {
    align-items: center !important;
    bottom: 48px !important;
    display: flex !important;
    gap: 6px !important;
    justify-content: center !important;
    left: 15px !important;
    position: absolute !important;
    right: 15px !important;
    z-index: 7 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action {
    align-items: center !important;
    background: var(--avl-product-bg) !important;
    border: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 10px rgb(0 0 0 / 10%) !important;
    color: var(--avl-product-ink) !important;
    display: inline-flex !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
    min-height: 42px !important;
    opacity: 0 !important;
    padding: 0 !important;
    transform: translateY(20px) !important;
    transition: background-color .25s ease, color .25s ease, opacity .4s ease, transform .4s ease !important;
    width: 42px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:nth-child(1) { transition-delay: 0s, 0s, .1s, .1s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:nth-child(2) { transition-delay: 0s, 0s, .2s, .2s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:nth-child(3) { transition-delay: 0s, 0s, .3s, .3s !important; }
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:nth-child(4) { transition-delay: 0s, 0s, .4s, .4s !important; }

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action .avelle-icon,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action svg {
    font-size: 16px !important;
    height: 16px !important;
    width: 16px !important;
}

@media (hover: hover) and (pointer: fine) {
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover .avelle-product-card__ecomus-actions,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within .avelle-product-card__ecomus-actions {
        pointer-events: auto !important;
        visibility: visible !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover .avelle-product-card__ecomus-action,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within .avelle-product-card__ecomus-action {
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:hover,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action:focus-visible {
        background: var(--avl-product-ink) !important;
        color: var(--avl-product-bg) !important;
    }
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__size-strip {
    background: rgb(0 0 0 / 30%) !important;
    color: var(--avl-product-bg) !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    gap: 15px !important;
    min-height: 33px !important;
    padding: 8px 10px 6px !important;
    transform: translateY(100%) !important;
    transition: transform .4s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:hover .avelle-product-card__size-strip,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6:focus-within .avelle-product-card__size-strip {
        transform: translateY(0) !important;
    }
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-detail {
    background: transparent !important;
    border: 0 !important;
    display: block !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    margin: 0 !important;
    min-height: 0 !important;
    padding: 22px 0 0 !important;
    text-align: left !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__rating {
    color: var(--avl-product-ink) !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    margin: 0 0 9px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__rating-star {
    height: 14px !important;
    width: 72px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__rating-star::before,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__rating-star::after {
    font-size: 14px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__rating > span:not(.avelle-product-card__rating-star) {
    color: var(--avl-product-ink) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-title {
    color: var(--avl-product-ink) !important;
    display: -webkit-box !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 19.2px !important;
    margin: 0 !important;
    min-height: 19.2px !important;
    overflow: hidden !important;
    text-align: left !important;
    text-transform: none !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-title:hover,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-title:focus-visible {
    color: var(--avelle-primary, var(--tp-theme-primary, var(--avl-product-accent))) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .price {
    align-items: baseline !important;
    color: var(--avl-product-ink) !important;
    display: flex !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    gap: 7px !important;
    line-height: 16.8px !important;
    margin: 11px 0 0 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .price ins {
    color: var(--avl-sale) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .price del {
    color: rgb(0 0 0 / 50%) !important;
    font-weight: 600 !important;
    text-decoration: line-through !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatches {
    gap: 8.5px !important;
    justify-content: flex-start !important;
    margin-top: 11px !important;
    min-height: 26px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch-more {
    border: 1px solid var(--avl-ecomus-line) !important;
    border-radius: 50% !important;
    height: 26px !important;
    min-height: 26px !important;
    padding: 0 !important;
    width: 26px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch::after {
    border-radius: 50% !important;
    height: 18px !important;
    width: 18px !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch:hover,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch:focus-visible,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch.is-selected {
    border-color: var(--avl-product-ink) !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch.is-selected::after {
    height: 12px !important;
    width: 12px !important;
}

html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style] .avelle-product-card__ecomus-swatch::after,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style] .avelle-catalog-product__swatch::after {
    background: var(--avelle-swatch-color) !important;
}

html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style] .avelle-product-card__ecomus-swatch::after,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style] .avelle-catalog-product__swatch::after {
    display: none !important;
}

html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="rectangle"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="image-swatch"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="radio"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="dropdown"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="rectangle"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="image-swatch"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="radio"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="dropdown"] .avelle-catalog-product__swatch {
    border-radius: var(--avl-ui-control-radius, 6px) !important;
}

html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="circle"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="color"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="circle"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product__swatches[data-avelle-card-swatch-style="color"] .avelle-catalog-product__swatch {
    border-radius: 50% !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-recommended-product__badges > span {
    border-radius: 9999px !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    padding: 8px 12px 7px !important;
}

/* Ecomus "N% Off" sale badge: top-right of the image, coral pill (token-driven). */
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-recommended-product__discount {
    background: var(--avl-sale-badge-bg) !important;
    border: 0 !important;
    border-radius: 15px !important;
    bottom: auto !important;
    box-shadow: none !important;
    color: var(--avl-sale-badge-fg) !important;
    flex-direction: row !important;
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    height: auto !important;
    left: auto !important;
    letter-spacing: 0 !important;
    line-height: 12px !important;
    min-height: 0 !important;
    padding: 5px 10px !important;
    right: 15px !important;
    text-transform: uppercase !important;
    top: 15px !important;
    width: auto !important;
    z-index: 6 !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-recommended-product__discount strong {
    font-family: "Albert Sans", Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 12px !important;
    text-transform: uppercase !important;
}

html:root body .avelle-product-card--single-image .avelle-product-card__ecomus-actions,
html:root body .avelle-product-card--single-image .cart-info,
html:root body .avelle-product-card--single-image .avelle-product-card__size-strip {
    display: none !important;
}

@media (hover: hover) and (pointer: fine) {
    html:root body .avelle-product-card--single-image:hover .img-wrapper > a > img,
    html:root body .avelle-product-card--single-image:focus-within .img-wrapper > a > img,
    html:root body .avelle-product-card--single-image:hover .tp-product-thumb-4 > a > img,
    html:root body .avelle-product-card--single-image:focus-within .tp-product-thumb-4 > a > img {
        opacity: 1 !important;
        transform: none !important;
    }
}

@media (min-width: 1200px) {
    /* Keep the shared Bootstrap row-cols contract authoritative so the
       Ecommerce admin setting controls every product-card style. */
    .bb-product-items-wrapper .row:has(> .col > .avelle-product-style--6) {
        --bs-gutter-x: 30px !important;
    }
}

@media (max-width: 1024px) {
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-actions {
        left: 10px !important;
        pointer-events: auto !important;
        visibility: visible !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action {
        flex-basis: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        opacity: 1 !important;
        transform: none !important;
        width: 32px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action .avelle-icon,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action svg {
        font-size: 15px !important;
        height: 15px !important;
        width: 15px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__size-strip {
        transform: none !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-detail {
        padding-top: 17px !important;
    }
}

@media (max-width: 767.98px) {
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 {
        margin-bottom: 30px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-actions {
        gap: 4px !important;
        left: 8px !important;
        right: 8px !important;
    }

    /* Ecomus hides wishlist + compare on mobile â€” only bag + quick-view (eye) remain. */
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action--wishlist,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-action--compare {
        display: none !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .product-detail {
        padding-top: 12px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch,
    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch-more {
        height: 24px !important;
        min-height: 24px !important;
        width: 24px !important;
    }

    html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .avelle-product-card__ecomus-swatch.is-selected::after {
        height: 14px !important;
        width: 14px !important;
    }
}

/* Style 7 — OmniMart reference: white editorial card with a gold discount
 * pill, compact metadata and orange circular hover actions. */
html:root body [data-avelle-product-card-style="7"] {
    background: var(--avl-product-bg) !important;
    border: 1px solid var(--avl-product-bg) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding: 0 !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__media {
    aspect-ratio: 247 / 257 !important;
    background: rgb(244 245 246) !important;
    border-radius: 5px 5px 0 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__media > a,
html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__media img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__badges,
html:root body [data-avelle-product-card-style="7"] .avelle-recommended-product__badges,
html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__content .avelle-product-card__ecomus-swatches {
    display: none !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__discount,
html:root body [data-avelle-product-card-style="7"] .avelle-recommended-product__discount,
html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 .product-sale {
    background: rgb(223 169 21) !important;
    border-radius: 0 0 0 8px !important;
    color: var(--avl-product-bg) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 5px 9px !important;
    right: 0 !important;
    top: 0 !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 .product-sale {
    display: block !important;
    line-height: 24px !important;
    position: absolute !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__ecomus-actions {
    bottom: 10px !important;
    gap: 8px !important;
    left: 14px !important;
    right: auto !important;
}

html:root body [data-avelle-product-card-style="7"]:hover .avelle-product-card__ecomus-actions,
html:root body [data-avelle-product-card-style="7"]:focus-within .avelle-product-card__ecomus-actions {
    opacity: 1 !important;
    pointer-events: auto !important;
    visibility: visible !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__ecomus-action {
    background: var(--avelle-style7-accent) !important;
    border: 0 !important;
    border-radius: 50% !important;
    color: var(--avl-product-bg) !important;
    height: 35px !important;
    width: 35px !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__ecomus-action--quickview,
html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--quickview {
    display: none !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__content {
    padding: 15px 15px 10px !important;
}

html:root body [data-avelle-product-card-style="7"] .product-category > a {
    color: inherit !important;
    text-decoration: none !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-card__category {
    color: var(--avl-product-muted-light) !important;
    font-size: 13px !important;
    margin-bottom: 7px !important;
}

html:root body [data-avelle-product-card-style="7"] .avelle-product-style-7__title {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 18px !important;
    min-height: 37px !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-price-3,
html:root body [data-avelle-product-card-style="7"] .tp-product-price-wrapper-3 .new-price {
    color: var(--avelle-style7-accent) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

/* Style 8 — FleetCart reference: compact framed card, vertical dark action
 * rail on hover and a blue outlined cart control. */
html:root body [data-avelle-product-card-style="8"] {
    background: var(--avl-product-bg) !important;
    border: 1px solid rgb(229 229 229) !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgb(25 25 25 / 6%) !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin-left: 6px !important;
    margin-right: 6px !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media {
    aspect-ratio: auto !important;
    background: var(--avl-product-bg) !important;
    margin: 0 !important;
    padding: 5px 5px 0 !important;
    position: static !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-top {
    position: static !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media > a,
html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media img {
    display: block !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media > a {
    aspect-ratio: auto !important;
    height: 0 !important;
    padding-bottom: 125% !important;
    position: relative !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media img {
    height: 100% !important;
    object-fit: cover !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__size-strip {
    display: none !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-actions {
    align-items: flex-end !important;
    bottom: auto !important;
    flex-direction: column !important;
    gap: 5px !important;
    left: auto !important;
    right: 8px !important;
    top: 8px !important;
    bottom: 8px !important;
    height: auto !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action {
    background: rgb(27 19 57) !important;
    border: 0 !important;
    border-radius: 5px !important;
    color: var(--avl-product-bg) !important;
    height: 28px !important;
    opacity: 0 !important;
    transform: translateX(8px) !important;
    width: 28px !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action:not(.avelle-product-card__ecomus-action--cart) {
    opacity: 0 !important;
}

html:root body [data-avelle-product-card-style="8"]:hover .avelle-product-card__ecomus-action,
html:root body [data-avelle-product-card-style="8"]:focus-within .avelle-product-card__ecomus-action {
    opacity: 1 !important;
    transform: translateX(0) !important;
}

html:root body [data-avelle-product-card-style="8"]:hover .avelle-product-card__ecomus-actions,
html:root body [data-avelle-product-card-style="8"]:focus-within .avelle-product-card__ecomus-actions {
    opacity: 1 !important;
    pointer-events: auto !important;
    visibility: visible !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--cart {
    background: rgb(237 245 255) !important;
    border: 1px solid rgb(168 201 247) !important;
    color: rgb(18 112 213) !important;
    opacity: 1 !important;
    position: absolute !important;
    bottom: 0 !important;
    right: 0 !important;
    top: auto !important;
    transform: none !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__content {
    padding: 10px 12px 18px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-bottom {
    align-items: center !important;
    border-top: 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    margin-top: 0 !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__title {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 16.8px !important;
    min-height: 34px !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__content .tp-product-price-4 {
    color: rgb(0 104 215) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-bottom .tp-product-price-4 {
    color: rgb(0 104 215) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-actions {
    display: contents !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--wishlist,
html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--compare {
    position: absolute !important;
    right: 8px !important;
    top: 8px !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--compare {
    top: 41px !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-card__ecomus-action--cart {
    bottom: 12px !important;
    right: 12px !important;
}

/* Source DOM states: these selectors intentionally target the exact action
 * classes used by OmniMart and FleetCart, while the data attributes above
 * keep the shared Avelle options scoped to the selected presentation. */
@font-face {
    font-family: 'OmniMart Feather';
    src: url('../fonts/omnimart/feather.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

html:root body [data-avelle-product-card-style="7"] .product-button [class*="icon-"] {
    font-family: 'OmniMart Feather' !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    speak: none;
    -webkit-font-smoothing: antialiased;
}

html:root body [data-avelle-product-card-style="7"] .product-button .icon-heart::before { content: "\e977"; }
html:root body [data-avelle-product-card-style="7"] .product-button .icon-repeat::before { content: "\e9ba"; }
html:root body [data-avelle-product-card-style="7"] .product-button .icon-shopping-cart::before { content: "\e9ca"; }

html:root body [data-avelle-product-card-style="7"] {
    border: 1px solid transparent !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    display: block !important;
    line-height: 22.5px !important;
    margin: 0 !important;
}

html:root body [data-avelle-product-card-style="7"]:hover {
    border-color: rgb(255 106 0) !important;
}

html:root body [data-avelle-product-card-style="7"] .product-thumb {
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
}

html:root body [data-avelle-product-card-style="7"] .product-thumb > a,
html:root body [data-avelle-product-card-style="7"] .product-thumb > a > img {
    display: block !important;
    height: 100% !important;
    width: 100% !important;
}

html:root body [data-avelle-product-card-style="7"] .product-thumb > a > img {
    object-fit: cover !important;
}

html:root body [data-avelle-product-card-style="7"] .product-thumb {
    background: rgb(255 255 255) !important;
}

html:root body [data-avelle-product-card-style="7"] .product-category {
    display: block !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    line-height: 19.5px !important;
    margin: 0 0 6px !important;
}

html:root body [data-avelle-product-card-style="7"] .product-category > a {
    display: inline !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 19.5px !important;
}

html:root body [data-avelle-product-card-style="7"] .product-title {
    display: block !important;
    height: 37px !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    margin: 0 0 5px !important;
}

html:root body [data-avelle-product-card-style="7"] .product-title > a {
    display: block !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    height: 37px !important;
    line-height: 20px !important;
}

html:root body [data-avelle-product-card-style="7"] .product-price {
    display: inline-block !important;
    color: rgb(255 106 0) !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 19.5px !important;
    margin: 0 0 10px !important;
}

html:root body [data-avelle-product-card-style="7"] .rating-stars,
html:root body [data-avelle-product-card-style="7"] .rating-stars * {
    font-family: 'Open Sans', Arial, sans-serif !important;
}

html:root body [data-avelle-product-card-style="8"] {
    background: transparent !important;
    border-color: rgb(232 231 235) !important;
    font-family: Poppins, Arial, sans-serif !important;
    line-height: 22.5px !important;
    margin: 0 6px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-top {
    padding: 0 !important;
    overflow: hidden !important;
}

html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media.product-card-top {
    padding: 0 !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-top .product-image {
    width: 100% !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-middle {
    display: flex !important;
    flex-direction: column !important;
    line-height: 22.5px !important;
    padding: 10px 12px 18px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-name {
    display: block !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 22.5px !important;
    padding: 0 0 8px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-name span {
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 22.5px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-rating {
    align-items: center !important;
    display: flex !important;
    height: 12px !important;
    line-height: 12px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-rating > *,
html:root body [data-avelle-product-card-style="8"] .product-rating .tp-product-rating,
html:root body [data-avelle-product-card-style="8"] .product-rating .tp-product-rating-icon,
html:root body [data-avelle-product-card-style="8"] .product-rating .tp-product-rating-text {
    height: 12px !important;
    line-height: 12px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-actions [class*="icon-"],
html:root body [data-avelle-product-card-style="8"] .btn-add-to-cart [class*="icon-"] {
    color: rgb(255 255 255) !important;
    font-family: 'OmniMart Feather' !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    speak: none;
    -webkit-font-smoothing: antialiased;
}

html:root body [data-avelle-product-card-style="8"] .icon-heart::before { content: "\e977"; }
html:root body [data-avelle-product-card-style="8"] .icon-repeat::before { content: "\e9ba"; }
html:root body [data-avelle-product-card-style="8"] .icon-shopping-cart::before { content: "\e9ca"; }
html:root body [data-avelle-product-card-style="8"] .icon-eye::before { content: "\e95d"; }

html:root body [data-avelle-product-card-style="7"] .product-button-group {
    bottom: -15px !important;
    left: 0 !important;
    opacity: 0 !important;
    position: absolute !important;
    text-align: center !important;
    visibility: hidden !important;
    width: 100% !important;
    z-index: 2 !important;
}

html:root body [data-avelle-product-card-style="7"]:hover .product-button-group,
html:root body [data-avelle-product-card-style="7"]:focus-within .product-button-group {
    bottom: 10px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html:root body [data-avelle-product-card-style="7"] .product-button-group .product-button {
    align-items: center !important;
    background: var(--avelle-style7-accent) !important;
    border: 0 !important;
    border-radius: 50% !important;
    color: var(--avl-product-bg) !important;
    display: inline-flex !important;
    height: 35px !important;
    justify-content: center !important;
    line-height: 35px !important;
    margin: 0 4px !important;
    padding: 0 !important;
    text-align: center !important;
    width: 35px !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 {
    display: none !important;
    position: absolute !important;
    right: 0 !important;
    top: 15px !important;
    z-index: 3 !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3:has(> span) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 > span {
    background: rgb(218 165 32) !important;
    border-radius: 9px 0 0 30px !important;
    color: rgb(255 255 255) !important;
    display: block !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 24px !important;
    min-height: 24px !important;
    padding: 0 10px 0 12px !important;
}

html:root body [data-avelle-product-card-style="8"] .tp-product-badge {
    display: none !important;
    left: 8px !important;
    position: absolute !important;
    right: auto !important;
    top: 8px !important;
    z-index: 3 !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge {
    display: none !important;
    left: 8px !important;
    position: absolute !important;
    right: auto !important;
    top: 8px !important;
    z-index: 3 !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge:has(> .badge) {
    display: flex !important;
    flex-direction: column !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge > .badge {
    border: 0 !important;
    border-radius: 5px !important;
    color: rgb(255 255 255) !important;
    display: inline-block !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    margin: 0 auto 5px 0 !important;
    min-width: 0 !important;
    padding: 5px 9px !important;
    text-align: left !important;
    width: auto !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge > .badge-success {
    background: rgb(0 182 102) !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge > .badge-danger {
    background: rgb(255 58 68) !important;
}

html:root body [data-avelle-product-card-style="8"] .product-badge > .badge-info {
    background: rgb(0 104 225) !important;
}

html:root body [data-avelle-product-card-style="8"] .tp-product-badge:has(> span) {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

html:root body [data-avelle-product-card-style="8"] .tp-product-badge > span {
    border-radius: 6px !important;
    color: rgb(255 255 255) !important;
    display: block !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    margin-bottom: 2px !important;
    padding: 5px 8px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-actions {
    align-items: flex-end !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    position: absolute !important;
    right: 7px !important;
    top: 7px !important;
    z-index: 2 !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-actions .btn {
    align-items: center !important;
    background: rgb(27 19 57) !important;
    border: 1px solid rgb(27 19 57) !important;
    border-radius: 6px !important;
    display: flex !important;
    height: 28px !important;
    justify-content: center !important;
    opacity: 0 !important;
    padding: 0 !important;
    transform: scale(0.5) !important;
    visibility: hidden !important;
    width: 28px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-actions .btn svg {
    height: 14px !important;
    width: 14px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-name,
html:root body [data-avelle-product-card-style="8"] .product-name span,
html:root body [data-avelle-product-card-style="8"] .product-name:hover,
html:root body [data-avelle-product-card-style="8"] .product-name:hover span {
    color: rgb(0 0 0) !important;
}

html:root body [data-avelle-product-card-style="8"]:hover .product-card-actions .btn,
html:root body [data-avelle-product-card-style="8"]:focus-within .product-card-actions .btn {
    opacity: 1 !important;
    transform: scale(1) !important;
    visibility: visible !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-bottom .btn-add-to-cart {
    align-items: center !important;
    background: rgb(239 246 255) !important;
    border: 1px solid rgb(182 211 255) !important;
    border-radius: 6px !important;
    bottom: auto !important;
    color: rgb(0 123 255) !important;
    display: flex !important;
    height: 28px !important;
    justify-content: center !important;
    padding: 6px !important;
    position: relative !important;
    right: auto !important;
    width: 28px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-bottom {
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 12px 12px !important;
}

html:root body [data-avelle-product-card-style="8"] .product-card-bottom .btn-add-to-cart [class*="icon-"] {
    color: rgb(0 123 255) !important;
}

/* OmniMart badge contract: the legacy Ecomus sale rule positions the sale
 * span itself; OmniMart positions a compact badge wrapper at the media edge. */
html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 {
    display: none !important;
    height: auto !important;
    left: auto !important;
    position: absolute !important;
    right: 0 !important;
    top: 15px !important;
    width: max-content !important;
    z-index: 3 !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3:has(> span) {
    display: block !important;
}

html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 > span,
html:root body [data-avelle-product-card-style="7"] .tp-product-badge-3 > span.product-sale {
    background: rgb(218 165 32) !important;
    border-radius: 9px 0 0 30px !important;
    color: rgb(255 255 255) !important;
    display: block !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    height: auto !important;
    line-height: 24px !important;
    min-height: 24px !important;
    padding: 0 10px 0 12px !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    width: auto !important;
}

/* Keep the supplied product's upper edge visible across all three card
 * presentations when the image ratio differs from the card ratio. */
html:root body [data-avelle-product-card-style="6"] img,
html:root body [data-avelle-product-card-style="7"] .product-thumb img,
html:root body [data-avelle-product-card-style="8"] .product-image img {
    object-position: center top !important;
}

html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6 .img-wrapper > a > img,
html:root body [data-avelle-product-card-style="8"] .avelle-product-style-8__media img,
html:root body [data-avelle-product-card-style="8"] .product-card-top .product-image img {
    object-position: center top !important;
}

/* ------------------------------------------------------------------ */
/* Recommended products: Ecomus tabbed carousel (replaces the grid).  */
/* Slide widths + 30px gap come from Swiper (slidesPerView 4/3/2);    */
/* only the viewport + round nav arrows are styled here.              */
/* ------------------------------------------------------------------ */
.avelle-fashion6-products__viewport {
    position: relative !important;
}

.avelle-fashion6-products__slider.swiper {
    overflow: hidden !important;
}

.avelle-fashion6-products__slider .swiper-slide {
    height: auto !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow {
    align-items: center !important;
    background: var(--avl-product-bg) !important;
    border: 1px solid var(--avl-product-bg) !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    color: var(--avl-product-ink) !important;
    cursor: pointer !important;
    display: inline-flex !important;
    font-size: 0 !important;
    height: 46px !important;
    justify-content: center !important;
    margin: 0 !important;
    opacity: 1 !important;
    padding: 0 !important;
    position: absolute !important;
    top: var(--avl-recommended-arrow-y, 50%) !important;
    transform: translateY(-50%) !important;
    transition: background .2s ease, color .2s ease, opacity .2s ease !important;
    width: 46px !important;
    z-index: 4 !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow svg {
    display: block !important;
    height: 11px !important;
    width: 7px !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow--prev {
    left: 10px !important;
    right: auto !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow--next {
    left: auto !important;
    right: 10px !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow--next svg {
    transform: scaleX(-1) !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow:hover,
.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow:focus-visible {
    background: var(--avl-product-ink) !important;
    color: var(--avl-product-bg) !important;
    transform: translateY(-50%) !important;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__arrow.swiper-button-disabled {
    background: var(--avl-product-arrow-disabled-bg) !important;
    color: var(--avl-product-ink) !important;
    cursor: default !important;
    opacity: 1 !important;
    pointer-events: none !important;
}

/* Ecomus pagination dots â€” hidden on desktop, shown on tablet + mobile. */
.avelle-fashion6-products__viewport .avelle-fashion6-products__dots {
    display: none;
    line-height: 0;
    margin-top: 30px;
    text-align: center;
    width: 100%;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__dots .swiper-pagination-bullet {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 50%;
    box-sizing: border-box;
    display: inline-flex;
    height: 16px;
    justify-content: center;
    margin: 0 2px;
    opacity: 1;
    position: relative;
    transition: border-color .2s ease;
    width: 16px;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__dots .swiper-pagination-bullet::before {
    background: var(--avl-product-dot);
    border-radius: 50%;
    content: "";
    height: 5px;
    transition: background .2s ease;
    width: 5px;
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__dots .swiper-pagination-bullet-active {
    border-color: var(--avl-product-ink);
}

.avelle-fashion6-products__viewport .avelle-fashion6-products__dots .swiper-pagination-bullet-active::before {
    background: var(--avl-product-ink);
}

/* Tablet + mobile: dots visible, side arrows hidden (Ecomus responsive parity). */
@media (max-width: 1199.98px) {
    .avelle-fashion6-products__viewport .avelle-fashion6-products__arrow {
        display: none !important;
    }

    .avelle-fashion6-products__viewport .avelle-fashion6-products__dots {
        display: block;
    }
}

/* Mobile narrows the pagination offset to match Ecomus (30px -> 15px). */
@media (max-width: 767.98px) {
    .avelle-fashion6-products__viewport .avelle-fashion6-products__dots {
        margin-top: 15px;
    }
}

/* Shared PLP/category contract: attribute shape comes from the dashboard option,
   and products without a second image must not expose a fake hover layer. */
html:root body .avelle-product-card--shared.avelle-product-card--single-image .avelle-product-card__ecomus-actions,
html:root body .avelle-product-card--shared.avelle-product-card--single-image .cart-info,
html:root body .avelle-product-card--shared.avelle-product-card--single-image .avelle-product-card__size-strip,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image .avelle-product-card__ecomus-actions,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image .cart-info,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image .avelle-product-card__size-strip,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image .avelle-product-card__ecomus-actions,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image .cart-info,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image .avelle-product-card__size-strip {
    display: none !important;
}

html:root body .avelle-product-card--shared.avelle-product-card--single-image:hover .img-wrapper > a > img,
html:root body .avelle-product-card--shared.avelle-product-card--single-image:focus-within .img-wrapper > a > img,
html:root body .avelle-product-card--shared.avelle-product-card--single-image:hover .tp-product-thumb-4 > a > img,
html:root body .avelle-product-card--shared.avelle-product-card--single-image:focus-within .tp-product-thumb-4 > a > img,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image:hover .img-wrapper > a > img,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image:focus-within .img-wrapper > a > img,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image:hover .tp-product-thumb-4 > a > img,
html:root body .avelle-product-card--shared.avelle-product-style--6.theme-product-6.avelle-product-card--single-image:focus-within .tp-product-thumb-4 > a > img,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image:hover .img-wrapper > a > img,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image:focus-within .img-wrapper > a > img,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image:hover .tp-product-thumb-4 > a > img,
html:root body [data-avelle-product-card-style].avelle-product-card--single-image:focus-within .tp-product-thumb-4 > a > img {
    opacity: 1 !important;
    transform: none !important;
}

html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="rectangle"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="image-swatch"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="radio"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="dropdown"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="rectangle"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="image-swatch"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="radio"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="dropdown"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="rectangle"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="image-swatch"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="radio"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="dropdown"] .avelle-catalog-product__swatch {
    border-radius: var(--avl-ui-control-radius, 6px) !important;
}

html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="circle"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-product-card--shared .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="color"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="circle"] .avelle-product-card__ecomus-swatch,
html:root body [data-avelle-product-card-style] .avelle-product-card__ecomus-swatches[data-avelle-card-swatch-style="color"] .avelle-product-card__ecomus-swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="circle"] .avelle-catalog-product__swatch,
html:root body .avelle-catalog-product .avelle-catalog-product__swatches[data-avelle-card-swatch-style="color"] .avelle-catalog-product__swatch {
    border-radius: 50% !important;
}
