/*
 * Avelle parent compatibility layer.
 *
 * Child themes provide their own visual identity; this file exists so parent
 * asset registration never produces a missing stylesheet in inherited themes.
 */

.loyalty-member-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, 0.18);
    background: #080808;
    color: #fff;
    box-shadow: 0 28px 90px rgba(17, 17, 17, 0.18);
}

.avelle-demo-blog {
    background: #fff;
    color: #222;
    padding: 0 0 92px;
}

body:has(.avelle-demo-blog) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-blog) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-blog__breadcrumb {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    margin-bottom: 60px;
    min-height: 120px;
    padding: 20px;
    text-align: center;
}

.avelle-demo-blog__breadcrumb h1 {
    color: #222;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.2;
    margin: 0;
}

.avelle-demo-blog__breadcrumb div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.avelle-demo-blog__breadcrumb a,
.avelle-demo-blog__breadcrumb strong {
    color: #222;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

.avelle-demo-blog__breadcrumb a::after {
    color: #aaa;
    content: "/";
    margin-left: 10px;
}

.avelle-demo-blog__breadcrumb strong {
    font-weight: 500;
}

.avelle-demo-blog__layout {
    display: grid;
    gap: 24px;
    grid-template-columns: 326px minmax(0, 1fr);
}

.avelle-demo-blog__layout.is-right-sidebar {
    grid-template-columns: minmax(0, 1fr) 326px;
}

.avelle-demo-blog__layout.is-no-sidebar {
    display: block;
}

.avelle-demo-blog__grid {
    display: grid;
    gap: 34px 28px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-blog__layout:not(.is-no-sidebar) .avelle-demo-blog__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-blog-card {
    min-width: 0;
}

.avelle-demo-blog-card__image {
    background: #f5f3f1;
    display: block;
    overflow: hidden;
}

.avelle-demo-blog-card__image img {
    aspect-ratio: 1.36 / 1;
    display: block;
    height: auto;
    object-fit: cover;
    transition: transform .35s ease;
    width: 100%;
}

.avelle-demo-blog-card:hover .avelle-demo-blog-card__image img {
    transform: scale(1.035);
}

.avelle-demo-blog-card__body {
    padding-top: 18px;
}

.avelle-demo-blog-card__body time,
.avelle-demo-blog-sidebar time {
    color: var(--avelle-accent, #b45345);
    display: block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.avelle-demo-blog-card__body h2 {
    color: #111;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
    margin: 0 0 10px;
}

.avelle-demo-blog-card__body p {
    color: #666;
    font-size: 14px;
    line-height: 1.75;
    margin: 0 0 16px;
}

.avelle-demo-blog-card__link {
    color: #ff7f50;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: capitalize;
}

.avelle-demo-blog-card__link::after {
    content: " ↗";
    font-size: 16px;
    font-weight: 700;
}

.avelle-demo-blog-sidebar {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.avelle-demo-blog-sidebar section {
    border: 1px solid #eee;
    padding: 22px;
}

.avelle-demo-blog-sidebar h3 {
    border-bottom: 1px solid #eee;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 18px;
    padding-bottom: 12px;
    text-transform: uppercase;
}

.avelle-demo-blog-sidebar__recent,
.avelle-demo-blog-sidebar__categories {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-blog-sidebar__recent li {
    display: grid;
    gap: 14px;
    grid-template-columns: 76px minmax(0, 1fr);
}

.avelle-demo-blog-sidebar__recent img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 76px;
}

.avelle-demo-blog-sidebar__recent a {
    color: #222;
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

.avelle-demo-blog-sidebar__categories a {
    align-items: center;
    color: #555;
    display: flex;
    font-size: 14px;
    justify-content: space-between;
}

.avelle-demo-blog-sidebar__categories em {
    color: #999;
    font-style: normal;
}

.avelle-demo-blog-sidebar__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-blog-sidebar__tags a {
    background: #f7f4f2;
    color: #555;
    font-size: 12px;
    font-weight: 700;
    padding: 8px 12px;
    text-transform: uppercase;
}

.avelle-demo-blog-detail {
    margin: 0 auto;
    max-width: 1080px;
}

.avelle-demo-blog-detail > img {
    aspect-ratio: 2.08 / 1;
    display: block;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-blog-detail h1 {
    color: #222;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.35;
    margin: 28px 0 12px;
}

.avelle-demo-blog-detail ul {
    border-bottom: 1px solid #eee;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    list-style: none;
    margin: 0 0 28px;
    padding: 0 0 22px;
}

.avelle-demo-blog-detail li {
    color: #777;
    font-size: 13px;
}

.avelle-demo-blog-detail__content {
    color: #555;
    font-size: 15px;
    line-height: 1.9;
}

.avelle-demo-blog-detail__content p {
    margin: 0 0 18px;
}

.avelle-demo-related {
    background: #fafafa;
    padding: 42px 0 72px;
}

.avelle-demo-related h2 {
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 18px;
}

.avelle-demo-related div div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-related a {
    border: 1px solid #ddd;
    color: #333;
    font-size: 13px;
    font-weight: 700;
    padding: 10px 14px;
}

.avelle-demo-related a.is-active,
.avelle-demo-related a:hover {
    background: #111;
    border-color: #111;
    color: #fff;
}

@media (max-width: 991px) {
    .avelle-demo-blog__layout,
    .avelle-demo-blog__layout.is-right-sidebar {
        grid-template-columns: 1fr;
    }

    .avelle-demo-blog__layout.is-right-sidebar .avelle-demo-blog-sidebar {
        order: initial;
    }

    .avelle-demo-blog__grid,
    .avelle-demo-blog__layout:not(.is-no-sidebar) .avelle-demo-blog__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .avelle-demo-blog {
        padding: 0 0 64px;
    }

    .avelle-demo-blog__breadcrumb {
        gap: 8px;
        margin-bottom: 34px;
        padding: 18px;
    }

    .avelle-demo-blog__grid,
    .avelle-demo-blog__layout:not(.is-no-sidebar) .avelle-demo-blog__grid {
        grid-template-columns: 1fr;
    }

    .avelle-demo-blog-sidebar section {
        padding: 18px;
    }

    .avelle-demo-blog-detail h1 {
        font-size: 25px;
    }

    .avelle-demo-blog-detail > img {
        aspect-ratio: 1.25 / 1;
    }
}

.avelle-demo-feature {
    background: #ffffff;
    color: #1d1d1f;
    padding: 0 0 72px;
}

body:has(.avelle-demo-feature) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-feature) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-feature__breadcrumb {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    min-height: 120px;
    padding: 26px calc((100vw - 1320px) / 2);
}

.avelle-demo-feature__breadcrumb h1 {
    color: #222;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
    text-transform: uppercase;
}

.avelle-demo-feature__breadcrumb div {
    align-items: center;
    color: #777;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    gap: 10px;
}

.avelle-demo-feature__breadcrumb a,
.avelle-demo-feature__breadcrumb strong {
    color: #222;
    font-weight: 700;
}

.avelle-demo-feature__breadcrumb a::after {
    color: #777;
    content: "/";
    font-weight: 400;
    margin-left: 10px;
}

.avelle-demo-feature__header {
    align-items: flex-end;
    display: flex;
    gap: 32px;
    justify-content: space-between;
    margin-bottom: 28px;
}

.avelle-demo-feature__header p {
    color: #9b9b9b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.avelle-demo-feature__header h1 {
    font-size: clamp(34px, 5vw, 72px);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: .95;
    margin: 0 0 12px;
}

.avelle-demo-feature__header span {
    color: #777777;
    display: block;
    font-size: 14px;
}

.avelle-demo-feature__header nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    max-width: 620px;
}

.avelle-demo-feature__header nav a {
    border: 1px solid #e6e0da;
    border-radius: 999px;
    color: #4a4a4a;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    padding: 11px 14px;
    text-decoration: none;
}

.avelle-demo-feature__header nav a.is-active,
.avelle-demo-feature__header nav a:hover {
    background: #1f1f1f;
    border-color: #1f1f1f;
    color: #ffffff;
}

.avelle-demo-feature__frame-wrap {
    background: #f6f4f2;
    border: 1px solid #ebe6e2;
    border-radius: 4px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .08);
    overflow: hidden;
}

.avelle-demo-feature__frame {
    background: #ffffff;
    border: 0;
    display: block;
    width: 100%;
}

.avelle-demo-elements {
    display: grid;
    gap: 40px;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
}

.avelle-demo-elements__lead {
    align-self: center;
}

.avelle-demo-elements__lead p,
.avelle-demo-elements__grid article > span {
    color: #a5453d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.avelle-demo-elements__lead h2 {
    font-family: Georgia, serif;
    font-size: clamp(42px, 6vw, 86px);
    font-weight: 400;
    line-height: .95;
    margin: 0 0 22px;
}

.avelle-demo-elements__lead span {
    color: #5f5f5f;
    display: block;
    font-size: 16px;
    line-height: 1.7;
}

.avelle-demo-elements__grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-elements__grid article,
.avelle-demo-interaction__cards article {
    background: #f7f4ef;
    border: 1px solid #ebe5dc;
    padding: 28px;
}

.avelle-demo-elements__grid h3,
.avelle-demo-interaction__cards strong {
    display: block;
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 18px;
}

.avelle-demo-elements__grid a,
.avelle-demo-elements__grid button,
.avelle-demo-modal-card form button,
.avelle-demo-cookie-card button,
.avelle-demo-cart-toast a {
    align-items: center;
    background: #111111;
    border: 1px solid #111111;
    color: #ffffff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    justify-content: center;
    line-height: 1;
    min-height: 44px;
    padding: 0 22px;
    text-decoration: none;
    text-transform: uppercase;
}

.avelle-demo-elements__grid button {
    background: #ffffff;
    color: #111111;
    margin-left: 10px;
}

.avelle-demo-elements__grid b {
    background: #111111;
    color: #ffffff;
    display: inline-flex;
    font-size: 11px;
    line-height: 1;
    margin-right: 8px;
    padding: 8px 10px;
    text-transform: uppercase;
}

.avelle-demo-elements__grid p,
.avelle-demo-elements__grid details,
.avelle-demo-interaction__cards p {
    color: #666666;
    font-size: 15px;
    line-height: 1.65;
    margin: 0;
}

.avelle-demo-interaction {
    display: grid;
    gap: 30px;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
}

.avelle-demo-interaction__stage {
    align-items: center;
    background: linear-gradient(135deg, #f7f2ee, #ffffff);
    border: 1px solid #ebe5dc;
    display: flex;
    min-height: 540px;
    overflow: hidden;
    padding: 40px;
    position: relative;
}

.avelle-demo-modal-card,
.avelle-demo-search-card,
.avelle-demo-cookie-card {
    background: #ffffff;
    box-shadow: 0 28px 70px rgba(0, 0, 0, .16);
    margin: auto;
    max-width: 520px;
    padding: 42px;
    position: relative;
    width: 100%;
}

.avelle-demo-modal-card > button {
    align-items: center;
    background: #f4f1ed;
    border: 0;
    border-radius: 50%;
    display: inline-flex;
    font-size: 24px;
    height: 38px;
    justify-content: center;
    position: absolute;
    right: 18px;
    top: 18px;
    width: 38px;
}

.avelle-demo-modal-card p,
.avelle-demo-cookie-card p {
    color: #a5453d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    margin: 0 0 10px;
    text-transform: uppercase;
}

.avelle-demo-modal-card h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1;
    margin: 0 0 16px;
}

.avelle-demo-modal-card span,
.avelle-demo-cookie-card span {
    color: #666666;
    display: block;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 24px;
}

.avelle-demo-modal-card form {
    display: flex;
    gap: 10px;
}

.avelle-demo-modal-card input,
.avelle-demo-search-card input {
    border: 1px solid #ded8d2;
    flex: 1;
    height: 48px;
    padding: 0 16px;
}

.avelle-demo-cart-toast {
    align-items: center;
    background: #ffffff;
    bottom: 44px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .16);
    display: grid;
    gap: 18px;
    grid-template-columns: 86px minmax(0, 1fr) auto;
    left: 50%;
    max-width: 680px;
    padding: 18px;
    position: absolute;
    transform: translateX(-50%);
    width: calc(100% - 80px);
}

.avelle-demo-cart-toast.is-top {
    bottom: auto;
    top: 44px;
}

.avelle-demo-cart-toast.is-left {
    bottom: auto;
    left: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 420px;
}

.avelle-demo-cart-toast.is-right {
    bottom: auto;
    left: auto;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 420px;
}

.avelle-demo-cart-toast img {
    aspect-ratio: 1;
    height: 86px;
    object-fit: cover;
    width: 86px;
}

.avelle-demo-cart-toast p,
.avelle-demo-search-card label {
    color: #888888;
    display: block;
    font-size: 13px;
    font-weight: 700;
    margin: 0 0 4px;
}

.avelle-demo-cart-toast strong {
    display: block;
    font-size: 17px;
    margin-bottom: 4px;
}

.avelle-demo-cart-toast span {
    color: #777777;
    font-size: 14px;
}

.avelle-demo-search-card div {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.avelle-demo-search-card a {
    align-items: center;
    background: #f8f6f3;
    color: #1d1d1f;
    display: grid;
    gap: 14px;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    padding: 12px;
    text-decoration: none;
}

.avelle-demo-search-card img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 64px;
}

.avelle-demo-cookie-card div {
    align-items: center;
    display: flex;
    gap: 18px;
}

.avelle-demo-cookie-card a {
    color: #1d1d1f;
    font-weight: 800;
    text-decoration: underline;
}

.avelle-demo-interaction__cards {
    display: grid;
    gap: 16px;
}

.avelle-demo-interaction__cards span {
    color: #a5453d;
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.avelle-demo-product__layout--sticky .avelle-demo-product__details {
    align-self: flex-start;
    position: sticky;
    top: 24px;
}

.avelle-demo-product__layout--outside {
    align-items: flex-start;
}

.avelle-demo-product__layout--three {
    grid-template-columns: .78fr 1.08fr .9fr;
}

.avelle-demo-product__three-summary {
    border: 1px solid #e8e0da;
    margin-bottom: 18px;
    padding: 24px;
}

.avelle-demo-product__three-summary span,
.avelle-demo-product__feature-slider > div:first-child p {
    color: #a5453d;
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.avelle-demo-product__three-summary h2,
.avelle-demo-product__bundle h2,
.avelle-demo-product__feature-slider h2 {
    font-size: 24px;
    font-weight: 800;
    line-height: 1.15;
    margin: 0 0 14px;
    text-transform: capitalize;
}

.avelle-demo-product__three-summary p,
.avelle-demo-product__bundle p {
    color: #666;
    font-size: 14px;
    line-height: 1.65;
    margin: 0 0 16px;
}

.avelle-demo-product__three-summary ul {
    color: #333;
    display: grid;
    font-size: 13px;
    gap: 8px;
    margin: 0;
    padding-left: 18px;
}

.avelle-demo-product__slider {
    align-items: center;
    display: grid;
    gap: 16px;
    grid-template-columns: 52px minmax(0, 1fr) 52px;
}

.avelle-demo-product__slider > button {
    align-items: center;
    background: #fff;
    border: 1px solid #ded8d2;
    border-radius: 50%;
    color: #1d1d1f;
    display: inline-flex;
    font-size: 28px;
    height: 52px;
    justify-content: center;
    width: 52px;
}

.avelle-demo-product__thumbs--outside {
    margin-left: -24px;
    margin-right: -24px;
    padding-inline: 24px;
}

.avelle-demo-product__main-image--video {
    position: relative;
}

.avelle-demo-product__main-image--video span {
    align-items: center;
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .16);
    color: #111111;
    display: inline-flex;
    font-size: 24px;
    height: 72px;
    justify-content: center;
    left: 50%;
    padding-left: 5px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
}

.avelle-demo-product__swatches--large button {
    height: 72px;
    width: 72px;
}

.avelle-demo-product__bundle {
    background: #f7f4ef;
    border: 1px solid #e8e0da;
    margin-top: 24px;
    padding: 24px;
}

.avelle-demo-product__bundle > div {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.avelle-demo-product__bundle figure {
    background: #fff;
    margin: 0;
    width: 82px;
}

.avelle-demo-product__bundle img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-product__bundle > div span {
    font-size: 22px;
    font-weight: 800;
}

.avelle-demo-product__bundle a {
    align-items: center;
    background: #111;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    min-height: 42px;
    padding: 0 20px;
    text-transform: uppercase;
}

.avelle-demo-product__tabs--vertical {
    display: grid;
    gap: 28px;
    grid-template-columns: 220px minmax(0, 1fr);
}

.avelle-demo-product__tabs--vertical nav {
    align-items: stretch;
    border-bottom: 0;
    flex-direction: column;
    gap: 8px;
}

.avelle-demo-product__tabs--vertical nav a {
    border: 1px solid #e8e0da;
    padding: 16px;
}

.avelle-demo-product__feature-slider {
    margin-top: 48px;
}

.avelle-demo-product__feature-slider > div:first-child {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 22px;
}

.avelle-demo-product__feature-slider > div:last-child {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.avelle-demo-product__feature-slider article img {
    aspect-ratio: 3 / 4;
    background: #f6f3ef;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-product__feature-slider article strong,
.avelle-demo-product__feature-slider article span {
    display: block;
    font-size: 14px;
    margin-top: 10px;
}

.avelle-demo-product__feature-slider article span {
    font-weight: 800;
}

.avelle-demo-category--full {
    padding-inline: 28px;
}

.avelle-demo-category__modern-hero {
    align-items: center;
    background: #f8f1ed;
    display: grid;
    gap: 36px;
    grid-template-columns: minmax(0, .9fr) minmax(320px, .55fr);
    margin-bottom: 34px;
    min-height: 320px;
    overflow: hidden;
    padding: 48px;
}

.avelle-demo-category__modern-hero p {
    color: #a5453d;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.avelle-demo-category__modern-hero h2 {
    font-size: clamp(34px, 5vw, 72px);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: .94;
    margin: 0 0 24px;
    max-width: 680px;
}

.avelle-demo-category__modern-hero a,
.avelle-demo-category__popup-trigger,
.avelle-demo-category__load-more button {
    align-items: center;
    background: #111;
    border: 1px solid #111;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    justify-content: center;
    min-height: 44px;
    padding: 0 24px;
    text-transform: uppercase;
}

.avelle-demo-category__modern-hero img {
    aspect-ratio: 4 / 3;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-category__chips {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-bottom: 30px;
}

.avelle-demo-category__chips--slider {
    display: flex;
    overflow-x: auto;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
}

.avelle-demo-category__chips a {
    align-items: center;
    background: #fff;
    border: 1px solid #e8e0da;
    color: #222;
    display: grid;
    gap: 10px;
    justify-items: center;
    min-width: 148px;
    padding: 14px 10px;
    scroll-snap-align: start;
    text-align: center;
}

.avelle-demo-category__chips a.is-active,
.avelle-demo-category__chips a:hover {
    border-color: #111;
}

.avelle-demo-category__chips img {
    aspect-ratio: 1;
    border-radius: 50%;
    object-fit: cover;
    width: 72px;
}

.avelle-demo-category__chips span {
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-category__popup-trigger {
    margin-bottom: 22px;
}

.avelle-demo-category__layout--popup .avelle-demo-category__filters {
    box-shadow: 0 24px 70px rgba(0, 0, 0, .12);
    position: relative;
    z-index: 2;
}

.avelle-demo-category__grid--metro .avelle-demo-category-card:first-child {
    grid-column: span 2;
    grid-row: span 2;
}

.avelle-demo-category__grid--metro .avelle-demo-category-card:first-child .avelle-demo-category-card__media img {
    aspect-ratio: 1;
}

.avelle-demo-category__load-more {
    display: flex;
    justify-content: center;
    margin-top: 34px;
}

.avelle-demo-category__load-more + .avelle-demo-category__pagination {
    display: none;
}

@media (max-width: 991px) {
    .avelle-demo-feature__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .avelle-demo-feature__header nav {
        justify-content: flex-start;
    }

    .avelle-demo-elements,
    .avelle-demo-interaction,
    .avelle-demo-elements__grid,
    .avelle-demo-product__layout--three,
    .avelle-demo-product__tabs--vertical,
    .avelle-demo-product__feature-slider > div:last-child,
    .avelle-demo-category__modern-hero,
    .avelle-demo-category__chips {
        grid-template-columns: 1fr;
    }

    .avelle-demo-cart-toast,
    .avelle-demo-cart-toast.is-left,
    .avelle-demo-cart-toast.is-right {
        bottom: 22px;
        grid-template-columns: 64px minmax(0, 1fr);
        left: 22px;
        right: 22px;
        top: auto;
        transform: none;
        width: auto;
    }

    .avelle-demo-cart-toast a {
        grid-column: 1 / -1;
    }
}

.avelle-demo-static {
    background: #fff;
    padding: 0 0 88px;
}

body:has(.avelle-demo-static) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-static) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-static__breadcrumb {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    min-height: 120px;
    padding: 26px calc((100vw - 1320px) / 2);
}

.avelle-demo-static__breadcrumb h1 {
    color: #222;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
    text-transform: uppercase;
}

.avelle-demo-static__breadcrumb div {
    align-items: center;
    color: #777;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    gap: 10px;
}

.avelle-demo-static__breadcrumb a::after {
    color: #777;
    content: "/";
    font-weight: 400;
    margin-left: 10px;
}

.avelle-demo-static__breadcrumb a,
.avelle-demo-static__breadcrumb strong {
    color: #222;
    font-weight: 700;
}

.avelle-demo-dashboard {
    display: grid;
    gap: 30px;
    grid-template-columns: 300px minmax(0, 1fr);
}

.avelle-demo-dashboard__sidebar {
    border: 1px solid #eee;
    height: max-content;
}

.avelle-demo-dashboard__profile {
    padding: 28px;
    text-align: center;
}

.avelle-demo-dashboard__avatar,
.avelle-demo-dashboard__profile img {
    align-items: center;
    background: #222;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 42px;
    font-weight: 800;
    height: 118px;
    justify-content: center;
    object-fit: cover;
    width: 118px;
}

.avelle-demo-dashboard__profile h3 {
    color: #222;
    font-size: 18px;
    font-weight: 800;
    margin: 16px 0 4px;
}

.avelle-demo-dashboard__profile p,
.avelle-demo-dashboard__intro {
    color: #777;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

.avelle-demo-dashboard__sidebar nav {
    border-top: 1px solid #eee;
    display: grid;
}

.avelle-demo-dashboard__sidebar nav a {
    align-items: center;
    border-bottom: 1px solid #eee;
    color: #555;
    display: flex;
    font-size: 14px;
    font-weight: 700;
    gap: 12px;
    padding: 15px 24px;
    text-transform: capitalize;
}

.avelle-demo-dashboard__sidebar nav a.is-active,
.avelle-demo-dashboard__sidebar nav a:hover {
    background: #222;
    color: #fff;
}

.avelle-demo-dashboard__main {
    min-width: 0;
}

.avelle-demo-dashboard__welcome {
    border: 1px solid #eee;
    margin-bottom: 24px;
    padding: 28px;
}

.avelle-demo-dashboard__welcome h2,
.avelle-demo-account-info h2,
.avelle-demo-profile-form h2,
.avelle-demo-order-success h2 {
    color: #222;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 12px;
    text-transform: uppercase;
}

.avelle-demo-dashboard__welcome p,
.avelle-demo-account-info li,
.avelle-demo-account-info p,
.avelle-demo-order-success p,
.avelle-demo-order-success li {
    color: #777;
    font-size: 14px;
    line-height: 1.7;
}

.avelle-demo-dashboard__counters {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 24px;
}

.avelle-demo-dashboard__counters article {
    align-items: center;
    border: 1px solid #eee;
    display: flex;
    gap: 18px;
    min-height: 112px;
    padding: 22px;
}

.avelle-demo-dashboard__counters img {
    height: 48px;
    object-fit: contain;
    width: 48px;
}

.avelle-demo-dashboard__counters span {
    color: #777;
    display: grid;
    font-size: 14px;
    gap: 4px;
}

.avelle-demo-dashboard__counters strong {
    color: #222;
    font-size: 24px;
    font-weight: 800;
}

.avelle-demo-account-info {
    border: 1px solid #eee;
    display: grid;
    gap: 22px;
    padding: 28px;
}

.avelle-demo-account-info ul {
    display: grid;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-account-info a {
    color: #222;
    font-weight: 800;
    margin-left: 8px;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.avelle-demo-dashboard__cards {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 30px;
}

.avelle-demo-dashboard__cards article {
    align-items: center;
    border: 1px solid #eee;
    display: grid;
    min-height: 120px;
    padding: 24px;
}

.avelle-demo-dashboard__cards span,
.avelle-demo-table h2,
.avelle-demo-about span,
.avelle-demo-vendor-hero span,
.avelle-demo-coming span {
    color: #777;
    font-size: 14px;
    font-weight: 600;
    text-transform: capitalize;
}

.avelle-demo-dashboard__cards strong {
    color: #222;
    font-size: 28px;
    font-weight: 800;
}

.avelle-demo-table {
    border: 1px solid #eee;
    overflow-x: auto;
    padding: 26px;
}

.avelle-demo-table h2 {
    color: #222;
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 18px;
}

.avelle-demo-table table {
    border-collapse: collapse;
    width: 100%;
}

.avelle-demo-table th,
.avelle-demo-table td {
    border-bottom: 1px solid #eee;
    color: #555;
    font-size: 14px;
    padding: 15px 10px;
    text-align: left;
}

.avelle-demo-form {
    border: 1px solid #eee;
    display: grid;
    gap: 16px;
    padding: 28px;
}

.avelle-demo-form input,
.avelle-demo-form select,
.avelle-demo-form textarea,
.avelle-demo-coming input {
    border: 1px solid #ddd;
    color: #222;
    font-size: 14px;
    min-height: 48px;
    padding: 12px 14px;
}

.avelle-demo-profile-form {
    display: grid;
    gap: 30px;
}

.avelle-demo-profile-form .avelle-demo-form__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-form textarea {
    min-height: 120px;
}

.avelle-demo-form button,
.avelle-demo-coming button,
.avelle-demo-success a,
.avelle-demo-error a,
.avelle-demo-vendor-hero a,
.avelle-demo-auth button,
.avelle-demo-cart-table aside a,
.avelle-demo-checkout__summary a,
.avelle-demo-search button {
    align-items: center;
    background: #222;
    border: 0;
    color: #fff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    text-transform: uppercase;
    width: max-content;
}

.avelle-demo-auth,
.avelle-demo-cart-table,
.avelle-demo-checkout,
.avelle-demo-tracking {
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .46fr);
}

.avelle-demo-contact {
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1fr);
}

.avelle-demo-auth__panel,
.avelle-demo-auth__aside,
.avelle-demo-contact > div,
.avelle-demo-contact__cards article,
.avelle-demo-cart-table aside,
.avelle-demo-checkout__box,
.avelle-demo-checkout__summary,
.avelle-demo-tracking__main,
.avelle-demo-tracking__summary,
.avelle-demo-tracking__steps {
    border: 1px solid #eee;
    padding: 34px;
}

.avelle-demo-auth__panel {
    display: grid;
    gap: 16px;
}

.avelle-demo-auth__panel h2,
.avelle-demo-contact h2,
.avelle-demo-cart-table aside h2,
.avelle-demo-checkout h2,
.avelle-demo-tracking h2 {
    color: #222;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.15;
    margin: 0;
    text-transform: uppercase;
}

.avelle-demo-auth__panel p,
.avelle-demo-auth__aside p,
.avelle-demo-contact p,
.avelle-demo-cart-table aside p,
.avelle-demo-checkout p,
.avelle-demo-tracking p {
    color: #777;
    font-size: 14px;
    line-height: 1.75;
    margin: 0;
}

.avelle-demo-field {
    display: grid;
    gap: 8px;
}

.avelle-demo-field label {
    color: #333;
    font-size: 14px;
    font-weight: 700;
}

.avelle-demo-auth input,
.avelle-demo-search input {
    border: 1px solid #ddd;
    color: #222;
    font-size: 14px;
    min-height: 50px;
    padding: 12px 15px;
}

.avelle-demo-auth__aside,
.avelle-demo-cart-table aside {
    align-content: center;
    display: grid;
    gap: 16px;
}

.avelle-demo-auth__aside span,
.avelle-demo-contact span,
.avelle-demo-cart-table aside span {
    color: #777;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.avelle-demo-auth__aside h3 {
    color: #222;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
    text-transform: uppercase;
}

.avelle-demo-auth__aside a {
    align-items: center;
    background: #222;
    color: #fff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    justify-content: center;
    min-height: 46px;
    padding: 0 24px;
    text-transform: uppercase;
    width: max-content;
}

.avelle-demo-contact > div ul {
    display: grid;
    gap: 14px;
    list-style: none;
    margin: 26px 0 0;
    padding: 0;
}

.avelle-demo-contact li {
    border-top: 1px solid #eee;
    display: grid;
    gap: 4px;
    padding-top: 14px;
}

.avelle-demo-contact li strong {
    color: #222;
    font-size: 13px;
    text-transform: uppercase;
}

.avelle-demo-contact li a,
.avelle-demo-contact li span {
    color: #777;
    font-size: 14px;
}

.avelle-demo-form__row {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-contact .avelle-demo-form {
    padding: 34px;
}

.avelle-demo-contact__cards {
    display: grid;
    gap: 22px;
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.avelle-demo-contact__cards article {
    align-items: center;
    display: grid;
    min-height: 118px;
}

.avelle-demo-contact__cards article strong {
    color: #222;
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-contact__cards article span {
    color: #777;
    font-size: 14px;
}

.avelle-demo-cart-table {
    grid-template-columns: minmax(0, 1fr) 360px;
}

.avelle-demo-cart-table table,
.avelle-demo-tracking table {
    min-width: 760px;
}

.avelle-demo-cart-table table {
    border-collapse: collapse;
    border: 1px solid #eee;
    width: 100%;
}

.avelle-demo-cart-table th,
.avelle-demo-cart-table td,
.avelle-demo-tracking th,
.avelle-demo-tracking td {
    border-bottom: 1px solid #eee;
    color: #555;
    font-size: 14px;
    padding: 18px;
    text-align: center;
    vertical-align: middle;
}

.avelle-demo-cart-table th,
.avelle-demo-tracking th {
    color: #222;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-cart-table td:nth-child(2) a,
.avelle-demo-tracking td:nth-child(2) {
    color: #222;
    font-weight: 700;
    text-decoration: none;
}

.avelle-demo-cart-table img,
.avelle-demo-tracking img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 74px;
}

.avelle-demo-qty {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

.avelle-demo-qty button,
.avelle-demo-qty span {
    align-items: center;
    background: #f7f7f7;
    border: 1px solid #eee;
    color: #222;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    height: 34px;
    justify-content: center;
    min-width: 34px;
}

.avelle-demo-stock {
    color: #198754;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-table-action {
    color: #222;
    font-size: 13px;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.avelle-demo-cart-table aside strong {
    color: #222;
    font-size: 34px;
    font-weight: 800;
}

.avelle-demo-checkout__main {
    display: grid;
    gap: 22px;
}

.avelle-demo-checkout__box {
    display: grid;
    gap: 22px;
}

.avelle-demo-checkout__box > div:first-child {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.avelle-demo-checkout__box button {
    background: transparent;
    border: 0;
    color: #222;
    font-size: 13px;
    font-weight: 800;
    padding: 0;
    text-transform: uppercase;
}

.avelle-demo-checkout__options {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-checkout__options label {
    align-items: flex-start;
    border: 1px solid #eee;
    cursor: pointer;
    display: flex;
    gap: 12px;
    padding: 16px;
}

.avelle-demo-checkout__options label.is-selected {
    border-color: #222;
}

.avelle-demo-checkout__options input {
    accent-color: #222;
    margin-top: 3px;
}

.avelle-demo-checkout__options span {
    color: #777;
    display: grid;
    font-size: 13px;
    gap: 4px;
    line-height: 1.45;
}

.avelle-demo-checkout__options strong {
    color: #222;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-checkout__summary {
    align-self: start;
    display: grid;
    gap: 20px;
}

.avelle-demo-checkout__item {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: 68px minmax(0, 1fr) auto;
}

.avelle-demo-checkout__item img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 68px;
}

.avelle-demo-checkout__item span {
    color: #777;
    display: grid;
    font-size: 13px;
    gap: 4px;
}

.avelle-demo-checkout__item strong,
.avelle-demo-checkout__item em {
    color: #222;
    font-style: normal;
    font-weight: 800;
}

.avelle-demo-checkout__summary ul,
.avelle-demo-tracking__summary ul {
    display: grid;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-checkout__summary li,
.avelle-demo-tracking__summary li {
    align-items: center;
    color: #777;
    display: flex;
    font-size: 14px;
    justify-content: space-between;
}

.avelle-demo-checkout__summary li strong,
.avelle-demo-tracking__summary li strong {
    color: #222;
    font-size: 18px;
}

.avelle-demo-tracking {
    align-items: start;
}

.avelle-demo-tracking__main {
    display: grid;
    gap: 22px;
    overflow-x: auto;
}

.avelle-demo-tracking__main table {
    border-collapse: collapse;
    border: 1px solid #eee;
    width: 100%;
}

.avelle-demo-tracking__details {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-tracking__details article {
    background: #f7f7f7;
    display: grid;
    gap: 6px;
    padding: 16px;
}

.avelle-demo-tracking__details strong {
    color: #222;
    font-size: 13px;
    text-transform: uppercase;
}

.avelle-demo-tracking__details span {
    color: #777;
    font-size: 13px;
    line-height: 1.55;
}

.avelle-demo-tracking > div:last-child {
    display: grid;
    gap: 22px;
}

.avelle-demo-tracking__steps {
    align-content: center;
    display: grid;
    gap: 14px;
}

.avelle-demo-tracking__steps article {
    align-items: center;
    background: #f7f7f7;
    display: grid;
    gap: 14px;
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 15px;
}

.avelle-demo-tracking__steps article strong {
    align-items: center;
    background: #ddd;
    border-radius: 50%;
    color: #222;
    display: inline-flex;
    font-size: 15px;
    font-weight: 800;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.avelle-demo-tracking__steps article.is-active strong {
    background: #222;
    color: #fff;
}

.avelle-demo-search form {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 34px;
}

.avelle-demo-search__grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.avelle-demo-search__grid article {
    border: 1px solid #eee;
    padding: 18px;
}

.avelle-demo-search__grid img {
    aspect-ratio: 1 / 1.18;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-search__grid h2 {
    color: #222;
    font-size: 16px;
    font-weight: 800;
    margin: 16px 0 8px;
}

.avelle-demo-search__grid strong {
    color: #222;
    font-size: 15px;
    font-weight: 800;
}

.avelle-demo-success,
.avelle-demo-error,
.avelle-demo-coming {
    border: 1px solid #eee;
    padding: 54px;
    text-align: center;
}

.avelle-demo-success strong {
    align-items: center;
    background: #222;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 34px;
    height: 82px;
    justify-content: center;
    margin-bottom: 24px;
    width: 82px;
}

.avelle-demo-success h2,
.avelle-demo-error h2,
.avelle-demo-coming h2,
.avelle-demo-about h2,
.avelle-demo-vendor-hero h2 {
    color: #222;
    font-size: clamp(30px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.05;
    margin: 0 0 18px;
}

.avelle-demo-success p,
.avelle-demo-error p,
.avelle-demo-coming p,
.avelle-demo-about p,
.avelle-demo-vendor-hero p {
    color: #555;
    font-size: 16px;
    line-height: 1.7;
}

.avelle-demo-order-success {
    display: grid;
    gap: 34px;
}

.avelle-demo-order-success__hero {
    background: #f7f7f7;
    padding: 48px 28px;
    text-align: center;
}

.avelle-demo-order-success__hero strong {
    align-items: center;
    background: #222;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 34px;
    font-weight: 800;
    height: 88px;
    justify-content: center;
    margin-bottom: 22px;
    width: 88px;
}

.avelle-demo-order-success__hero h2 {
    font-size: 38px;
}

.avelle-demo-order-success__hero span {
    color: #222;
    display: block;
    font-size: 14px;
    font-weight: 800;
    margin-top: 8px;
}

.avelle-demo-order-success__grid {
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(0, 1fr) minmax(320px, .92fr);
}

.avelle-demo-order-success table {
    border-collapse: collapse;
    border: 1px solid #eee;
    width: 100%;
}

.avelle-demo-order-success th,
.avelle-demo-order-success td {
    border-bottom: 1px solid #eee;
    color: #555;
    font-size: 14px;
    padding: 16px;
    text-align: left;
}

.avelle-demo-order-success th,
.avelle-demo-order-success tfoot td {
    color: #222;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-order-success img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 64px;
}

.avelle-demo-order-success aside {
    border: 1px solid #eee;
    display: grid;
    gap: 22px;
    padding: 28px;
}

.avelle-demo-order-success aside h3 {
    color: #222;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.avelle-demo-order-success aside p {
    margin: 0;
}

.avelle-demo-order-success aside > div {
    border-top: 1px solid #eee;
    display: grid;
    gap: 12px;
    padding-top: 20px;
}

.avelle-demo-order-success aside strong {
    color: #222;
    font-size: 15px;
    text-transform: uppercase;
}

.avelle-demo-order-success aside strong span {
    color: #a04840;
}

.avelle-demo-order-success aside a {
    background: #222;
    color: #fff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    justify-content: center;
    padding: 14px 22px;
    text-transform: uppercase;
    width: max-content;
}

.avelle-demo-about,
.avelle-demo-vendor-hero {
    align-items: center;
    display: grid;
    gap: 44px;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
}

.avelle-demo-vendor-hero--wide {
    border: 1px solid #eee;
    margin-bottom: 30px;
    padding: 28px;
}

.avelle-demo-vendor-details {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-vendor-details article {
    border: 1px solid #eee;
    padding: 28px;
}

.avelle-demo-vendor-details h2 {
    color: #222;
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 14px;
    text-transform: uppercase;
}

.avelle-demo-vendor-details p {
    color: #777;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

.avelle-demo-about img,
.avelle-demo-vendor-hero img,
.avelle-demo-profile-cover img {
    display: block;
    width: 100%;
}

.avelle-demo-team,
.avelle-demo-reviews,
.avelle-demo-lookbook,
.avelle-demo-sitemap,
.avelle-demo-steps,
.avelle-demo-compare {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 46px;
}

.avelle-demo-team article,
.avelle-demo-reviews article,
.avelle-demo-lookbook article,
.avelle-demo-sitemap article,
.avelle-demo-steps article,
.avelle-demo-compare article {
    border: 1px solid #eee;
    padding: 22px;
}

.avelle-demo-team img,
.avelle-demo-lookbook img,
.avelle-demo-compare img {
    aspect-ratio: 1 / 1.18;
    object-fit: cover;
    width: 100%;
}

.avelle-demo-team h3,
.avelle-demo-lookbook h2,
.avelle-demo-sitemap h2,
.avelle-demo-steps h3,
.avelle-demo-compare h2 {
    color: #222;
    font-size: 18px;
    font-weight: 800;
    margin: 16px 0 6px;
}

.avelle-demo-reviews {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-reviews img {
    border-radius: 50%;
    height: 82px;
    object-fit: cover;
    width: 82px;
}

.avelle-demo-profile-cover {
    align-items: center;
    border: 1px solid #eee;
    display: grid;
    gap: 30px;
    grid-template-columns: 220px minmax(0, 1fr);
    margin-bottom: 30px;
    padding: 28px;
}

.avelle-demo-profile-cover img {
    aspect-ratio: 1;
    object-fit: cover;
}

.avelle-demo-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-steps strong {
    color: #222;
    font-size: 38px;
    font-weight: 800;
}

.avelle-demo-sitemap {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-sitemap ul,
.avelle-demo-compare ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-sitemap li,
.avelle-demo-compare li {
    border-top: 1px solid #eee;
    color: #555;
    font-size: 14px;
    padding: 11px 0;
}

.avelle-demo-error strong {
    color: #222;
    display: block;
    font-size: clamp(82px, 12vw, 180px);
    font-weight: 900;
    line-height: .8;
    margin-bottom: 20px;
}

.avelle-demo-coming form {
    display: flex;
    gap: 0;
    justify-content: center;
    margin-top: 26px;
}

.avelle-demo-coming input {
    min-width: 320px;
}

.avelle-demo-faq {
    display: grid;
    gap: 14px;
}

.avelle-demo-faq details {
    border: 1px solid #eee;
    padding: 20px 24px;
}

.avelle-demo-faq summary {
    color: #222;
    cursor: pointer;
    font-size: 16px;
    font-weight: 800;
}

.avelle-demo-faq p {
    color: #555;
    margin: 12px 0 0;
}

.avelle-demo-static__related {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 42px;
}

.avelle-demo-static__related a {
    border: 1px solid #e8e8e8;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 15px;
    text-transform: uppercase;
}

@media (max-width: 991px) {
    .avelle-demo-dashboard,
    .avelle-demo-about,
    .avelle-demo-vendor-hero,
    .avelle-demo-profile-cover,
    .avelle-demo-auth,
    .avelle-demo-contact,
    .avelle-demo-cart-table,
    .avelle-demo-checkout,
    .avelle-demo-tracking {
        grid-template-columns: 1fr;
    }

    .avelle-demo-dashboard__cards,
    .avelle-demo-team,
    .avelle-demo-reviews,
    .avelle-demo-lookbook,
    .avelle-demo-sitemap,
    .avelle-demo-steps,
    .avelle-demo-compare,
    .avelle-demo-vendor-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .avelle-demo-search__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .avelle-demo-contact__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .avelle-demo-checkout__options,
    .avelle-demo-tracking__details,
    .avelle-demo-order-success__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .avelle-demo-static {
        padding: 0 0 56px;
    }

    .avelle-demo-static__breadcrumb {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 30px;
        min-height: 120px;
        padding: 24px 18px;
    }

    .avelle-demo-dashboard__cards,
    .avelle-demo-team,
    .avelle-demo-reviews,
    .avelle-demo-lookbook,
    .avelle-demo-sitemap,
    .avelle-demo-steps,
    .avelle-demo-compare,
    .avelle-demo-vendor-details {
        grid-template-columns: 1fr;
    }

    .avelle-demo-search form,
    .avelle-demo-search__grid,
    .avelle-demo-form__row,
    .avelle-demo-profile-form .avelle-demo-form__row,
    .avelle-demo-contact__cards {
        grid-template-columns: 1fr;
    }

    .avelle-demo-dashboard__counters {
        grid-template-columns: 1fr;
    }

    .avelle-demo-cart-table,
    .avelle-demo-tracking__main {
        overflow-x: auto;
    }

    .avelle-demo-cart-table table,
    .avelle-demo-tracking table {
        min-width: 620px;
    }

    .avelle-demo-checkout__item {
        grid-template-columns: 54px minmax(0, 1fr);
    }

    .avelle-demo-checkout__item em {
        grid-column: 2;
    }

    .avelle-demo-success,
    .avelle-demo-error,
    .avelle-demo-coming {
        padding: 32px 20px;
    }

    .avelle-demo-coming form {
        display: grid;
    }

    .avelle-demo-coming input {
        min-width: 0;
        width: 100%;
    }
}

.loyalty-member-card__content {
    position: relative;
    display: grid;
    min-height: 318px;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 44px;
    overflow: hidden;
    padding: 42px;
    background:
        linear-gradient(120deg, rgba(255, 255, 255, 0.13), transparent 28%),
        radial-gradient(circle at 86% 13%, rgba(255, 255, 255, 0.18), transparent 24%),
        radial-gradient(circle at 12% 92%, rgba(154, 129, 115, 0.2), transparent 28%),
        linear-gradient(135deg, #050505 0%, #171717 50%, #050505 100%);
}

.loyalty-member-card__content::after {
    position: absolute;
    right: -34px;
    bottom: -96px;
    color: rgba(255, 255, 255, 0.052);
    content: "A";
    font-family: Georgia, "Times New Roman", serif;
    font-size: 350px;
    font-weight: 500;
    line-height: 0.8;
    pointer-events: none;
}

.loyalty-member-card__main {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: space-between;
    gap: 30px;
}

.loyalty-member-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.loyalty-member-card__brand,
.loyalty-member-card__label,
.loyalty-member-card__tier,
.loyalty-member-card__meta dt,
.loyalty-member-card__footer {
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.loyalty-member-card__brand {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1;
    text-transform: none;
}

.loyalty-member-card__label {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
    font-weight: 700;
}

.loyalty-member-card__tier {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    border: 1px solid rgba(217, 214, 208, 0.34);
    padding: 0 16px;
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.92);
    font-size: 12px;
    font-weight: 780;
}

.loyalty-member-card__identity {
    max-width: 100%;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
}

.loyalty-member-card__number,
.loyalty-member-card__value {
    min-width: 0;
    display: grid;
    gap: 9px;
}

.loyalty-member-card__number span,
.loyalty-member-card__value span {
    color: rgba(255, 255, 255, 0.54);
    font-size: 11px;
    font-weight: 760;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
}

.loyalty-member-card__number strong {
    max-width: 100%;
    overflow-wrap: anywhere;
    color: #fff;
    font-family: "Courier New", monospace;
    font-size: clamp(25px, 3.2vw, 42px);
    font-weight: 700;
    letter-spacing: 0.13em;
    line-height: 1.12;
}

.loyalty-member-card__value {
    min-width: 138px;
    border-left: 1px solid rgba(255, 255, 255, 0.16);
    padding-left: 24px;
    text-align: right;
}

.loyalty-member-card__value strong {
    color: #fff;
    font-size: clamp(18px, 1.6vw, 24px);
    font-weight: 780;
    line-height: 1.12;
}

.loyalty-member-card__meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.loyalty-member-card__meta div {
    min-width: 0;
}

.loyalty-member-card__meta dt {
    margin-bottom: 6px;
    color: rgba(255, 255, 255, 0.52);
    font-size: 11px;
    font-weight: 700;
}

.loyalty-member-card__meta dd {
    margin: 0;
    overflow: hidden;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.loyalty-member-card__qr {
    position: relative;
    z-index: 1;
    align-self: center;
    display: grid;
    gap: 12px;
    padding: 17px;
    border: 1px solid rgba(217, 214, 208, 0.56);
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
    line-height: 0;
}

.loyalty-member-card__qr span {
    color: #111;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.loyalty-member-card__qr svg {
    width: 156px;
    height: 156px;
}

.loyalty-member-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 40px;
    border-top: 1px solid rgba(17, 17, 17, 0.08);
    background: #f7f4ef;
    color: #4d4d4d;
    font-size: 11px;
    font-weight: 720;
}

.loyalty-member-card__footer span:last-child {
    color: #111;
}

@media (max-width: 767.98px) {
    .loyalty-member-card__content {
        min-height: 0;
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 24px;
    }

    .loyalty-member-card__header,
    .loyalty-member-card__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .loyalty-member-card__meta {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .loyalty-member-card__identity {
        align-items: stretch;
        flex-direction: column;
        gap: 18px;
    }

    .loyalty-member-card__value {
        min-width: 0;
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.16);
        padding-top: 18px;
        padding-left: 0;
        text-align: left;
    }

    .loyalty-member-card__qr {
        justify-self: start;
    }

    .loyalty-member-card__footer {
        padding: 14px 24px;
    }
}

.loyalty-account__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
    gap: 22px;
}

.loyalty-account__summary,
.loyalty-account__panel {
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #fff;
    box-shadow: 0 16px 45px rgba(17, 17, 17, 0.06);
}

.loyalty-account__summary {
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 12%, rgba(255, 255, 255, 0.14), transparent 26%),
        linear-gradient(135deg, #111 0%, #232323 62%, #050505 100%);
    color: #fff;
}

.loyalty-account__summary-content,
.loyalty-account__panel-body {
    padding: 28px;
}

.loyalty-account__summary-content {
    display: grid;
    min-height: 100%;
    gap: 18px;
}

.loyalty-account__eyebrow,
.loyalty-account__balance span,
.loyalty-account__progress-head,
.loyalty-account__panel h3,
.loyalty-account__redeem-form label,
.loyalty-account__history th {
    font-size: 12px;
    font-weight: 780;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.loyalty-account__eyebrow {
    width: fit-content;
    padding: 7px 10px;
    background: #fff;
    color: #111;
}

.loyalty-account__balance {
    display: flex;
    align-items: flex-end;
    gap: 10px;
}

.loyalty-account__balance strong {
    color: #fff;
    font-size: clamp(42px, 6vw, 72px);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 0.9;
}

.loyalty-account__balance span {
    margin-bottom: 9px;
    color: rgba(255, 255, 255, 0.66);
}

.loyalty-account__summary p,
.loyalty-account__muted {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.55;
}

.loyalty-account__muted {
    color: #636363;
}

.loyalty-account__tier-progress {
    display: grid;
    gap: 8px;
    margin-top: 4px;
}

.loyalty-account__progress-head {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    color: rgba(255, 255, 255, 0.68);
}

.loyalty-account__progress {
    height: 8px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.18);
}

.loyalty-account__progress span {
    display: block;
    height: 100%;
    background: #fff;
}

.loyalty-account__top-tier {
    color: rgba(255, 255, 255, 0.7);
}

.loyalty-account__panel h3 {
    margin: 0 0 18px;
    color: #111;
}

.loyalty-account__tiers {
    display: grid;
    gap: 8px;
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
}

.loyalty-account__tiers li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 12px;
    background: #f3f3f3;
    color: #4d4d4d;
    font-size: 14px;
}

.loyalty-account__tiers li.is-current {
    background: #111;
    color: #fff;
}

.loyalty-account__tiers li strong {
    color: inherit;
    font-size: 13px;
    white-space: nowrap;
}

.loyalty-account__notice {
    margin-bottom: 16px;
    padding: 12px 14px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.loyalty-account__notice strong {
    letter-spacing: 0.12em;
}

.loyalty-account__notice.is-success {
    background: #1a7f4b;
}

.loyalty-account__notice.is-error {
    background: #a83232;
}

.loyalty-account__redeem-form {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 12px;
    margin-top: 16px;
}

.loyalty-account__redeem-form label {
    display: block;
    margin-bottom: 7px;
    color: #595959;
}

.loyalty-account__redeem-form input {
    width: 180px;
    max-width: 100%;
    min-height: 44px;
    border: 1px solid rgba(17, 17, 17, 0.18);
    background: #fff;
    color: #111;
    padding: 0 12px;
}

.loyalty-account__redeem-form input:focus {
    border-color: #111;
    outline: 0;
}

.loyalty-account__redeem-form button {
    min-height: 44px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    padding: 0 18px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: background 0.18s ease, color 0.18s ease;
}

.loyalty-account__redeem-form button:hover {
    background: #fff;
    color: #111;
}

.loyalty-account__history {
    width: 100%;
    border-collapse: collapse;
}

.loyalty-account__history th,
.loyalty-account__history td {
    padding: 14px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
    text-align: left;
}

.loyalty-account__history th:last-child,
.loyalty-account__history td:last-child {
    text-align: right;
}

.loyalty-account__history th {
    color: #777;
}

.loyalty-account__history td {
    color: #2a2a2a;
    font-size: 14px;
}

.loyalty-account__history td:first-child {
    color: #777;
}

.loyalty-account__history .is-positive,
.loyalty-account__history .is-negative {
    font-weight: 800;
}

.loyalty-account__history .is-positive {
    color: #1a7f4b;
}

.loyalty-account__history .is-negative {
    color: #a83232;
}

@media (max-width: 991.98px) {
    .loyalty-account__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .loyalty-account__summary-content,
    .loyalty-account__panel-body {
        padding: 22px;
    }

    .loyalty-account__balance {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }

    .loyalty-account__balance span {
        margin-bottom: 0;
    }

    .loyalty-account__progress-head,
    .loyalty-account__tiers li,
    .loyalty-account__redeem-form {
        align-items: flex-start;
        flex-direction: column;
    }

    .loyalty-account__redeem-form input,
    .loyalty-account__redeem-form button {
        width: 100%;
    }
}

.advanced-reviews-account {
    display: grid;
    gap: 22px;
}

.advanced-reviews-account__header,
.advanced-reviews-account__panel,
.advanced-reviews-account__notice {
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #fff;
}

.advanced-reviews-account__header {
    padding: 28px;
    background:
        radial-gradient(circle at 94% 12%, rgba(17, 17, 17, 0.05), transparent 24%),
        #fff;
}

.advanced-reviews-account__header span,
.advanced-reviews-account__status,
.advanced-reviews-account__answer-marker,
.advanced-reviews-account__video-form label > span,
.product-qa-item__marker,
.product-qa-answer__marker,
.product-qa-answer__badge,
.verified-buyer-badge {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.advanced-reviews-account__header span {
    color: #737373;
}

.advanced-reviews-account__header h2 {
    margin: 6px 0 0;
    color: #111;
    font-size: clamp(28px, 4vw, 46px);
    font-weight: 760;
    letter-spacing: 0;
}

.advanced-reviews-account__header p {
    max-width: 620px;
    margin: 10px 0 0;
    color: #656565;
    font-size: 15px;
    line-height: 1.55;
}

.advanced-reviews-account__panel {
    display: grid;
    overflow: hidden;
}

.advanced-reviews-account__item {
    display: grid;
    gap: 16px;
    padding: 24px 28px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}

.advanced-reviews-account__item:last-child {
    border-bottom: 0;
}

.advanced-reviews-account__item-header,
.advanced-reviews-account__status-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.advanced-reviews-account__status-row {
    align-items: center;
    justify-content: flex-start;
}

.advanced-reviews-account__status-row time {
    color: #777;
    font-size: 13px;
}

.advanced-reviews-account__status {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    border: 1px solid transparent;
    padding: 0 10px;
}

.advanced-reviews-account__status.is-published {
    border-color: #bfe7d1;
    background: #eaf8f0;
    color: #1a7f4b;
}

.advanced-reviews-account__status.is-pending {
    border-color: #ddd6cb;
    background: #f3f3f3;
    color: #595959;
}

.advanced-reviews-account__product {
    color: #111;
    font-size: 15px;
    font-weight: 780;
    text-decoration: none;
}

.advanced-reviews-account__product:hover,
.advanced-reviews-account__product:focus {
    color: #111;
    text-decoration: underline;
}

.advanced-reviews-account__question,
.advanced-reviews-account__review {
    max-width: 820px;
    margin: 0;
    color: #303030;
    font-size: 16px;
    line-height: 1.58;
}

.advanced-reviews-account__answers {
    display: grid;
    gap: 10px;
}

.advanced-reviews-account__answer {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    background: #f3f3f3;
}

.advanced-reviews-account__answer-marker,
.product-qa-item__marker,
.product-qa-answer__marker {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    background: #111;
    color: #fff;
}

.advanced-reviews-account__answer p {
    margin: 0;
    color: #252525;
    line-height: 1.55;
}

.advanced-reviews-account__answer-meta {
    margin-top: 7px;
    color: #777;
    font-size: 13px;
}

.advanced-reviews-account__answer-meta span {
    margin-right: 8px;
    color: #111;
    font-weight: 780;
}

.advanced-reviews-account__rating {
    margin-top: 6px;
    color: #f5a400;
    font-size: 14px;
    letter-spacing: 0.12em;
}

.advanced-reviews-account__video-link,
.review-item__video-link {
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(17, 17, 17, 0.14);
    padding: 10px 12px;
    background: #f3f3f3;
    color: #111;
    font-size: 13px;
    font-weight: 760;
    text-decoration: none;
}

.advanced-reviews-account__video-link span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.advanced-reviews-account__video-form {
    display: flex;
    align-items: flex-end;
    gap: 10px;
}

.advanced-reviews-account__video-form label {
    flex: 1 1 auto;
    margin: 0;
}

.advanced-reviews-account__video-form label > span {
    display: block;
    margin-bottom: 7px;
    color: #595959;
}

.advanced-reviews-account__video-form input {
    width: 100%;
    min-height: 44px;
    border: 1px solid rgba(17, 17, 17, 0.16);
    padding: 0 12px;
    color: #111;
}

.advanced-reviews-account__video-form input:focus {
    border-color: #111;
    outline: 0;
}

.advanced-reviews-account__video-form button {
    min-height: 44px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    padding: 0 18px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.advanced-reviews-account__empty {
    padding: 34px 28px;
    color: #656565;
}

.advanced-reviews-account__empty h3 {
    margin: 0 0 8px;
    color: #111;
    font-size: 20px;
}

.advanced-reviews-account__empty p,
.advanced-reviews-account__notice {
    margin: 0;
    font-size: 14px;
    line-height: 1.55;
}

.advanced-reviews-account__notice {
    padding: 13px 16px;
    color: #fff;
    font-weight: 700;
}

.advanced-reviews-account__notice.is-success {
    background: #1a7f4b;
}

.advanced-reviews-account__notice.is-error {
    background: #a83232;
}

.review-item__videos {
    display: grid;
    gap: 12px;
}

.review-item__video,
.review-item__video-embed {
    width: min(100%, 560px);
    overflow: hidden;
    background: #f3f3f3;
}

.review-item__video-embed {
    aspect-ratio: 16 / 9;
}

.review-item__video-embed iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.verified-buyer-badge {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    background: #f3f3f3;
    color: #111;
}

.product-qa-item,
.product-qa-answer {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 14px;
}

.product-qa-item {
    padding: 18px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1);
}

.product-qa-item:last-child {
    border-bottom: 0;
}

.product-qa-item__question,
.product-qa-answer__text {
    color: #111;
    font-size: 15px;
    font-weight: 720;
    line-height: 1.55;
}

.product-qa-item__meta,
.product-qa-answer__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 6px;
    color: #777;
    font-size: 13px;
}

.product-qa-answer {
    margin-top: 14px;
    padding: 14px;
    background: #f3f3f3;
}

.product-qa-answer__marker {
    background: #fff;
    color: #111;
}

.product-qa-answer__badge {
    color: #111;
}

.product-qa-empty {
    display: grid;
    gap: 4px;
    padding: 20px;
    background: #f3f3f3;
    color: #666;
}

.product-qa-empty strong {
    color: #111;
}

@media (max-width: 575.98px) {
    .advanced-reviews-account__item-header,
    .advanced-reviews-account__status-row,
    .advanced-reviews-account__video-form {
        align-items: flex-start;
        flex-direction: column;
    }

    .advanced-reviews-account__video-form button {
        width: 100%;
    }
}

.avelle-subscriptions {
    display: grid;
    gap: 24px;
    padding-bottom: 88px;
}

.avelle-subscriptions__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    padding: 28px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #fff;
}

.avelle-subscriptions__header span,
.avelle-subscriptions__plan-main span,
.avelle-subscriptions__meta dt,
.avelle-subscriptions__summary span {
    color: #737373;
    font-size: 12px;
    font-weight: 760;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.avelle-subscriptions__header h2 {
    margin: 0;
    color: #111;
    font-size: clamp(26px, 3vw, 38px);
    font-weight: 780;
    letter-spacing: 0;
    line-height: 1.08;
}

.avelle-subscriptions__header p,
.avelle-subscriptions__plan-main p,
.avelle-subscriptions__item p,
.avelle-subscriptions__empty span {
    margin: 0;
    color: #606060;
    font-size: 14px;
    line-height: 1.55;
}

.avelle-subscriptions__summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(96px, 1fr));
    gap: 10px;
    min-width: min(100%, 430px);
}

.avelle-subscriptions__summary article {
    display: grid;
    gap: 8px;
    min-height: 82px;
    align-content: center;
    padding: 14px;
    background: #f7f4ef;
}

.avelle-subscriptions__summary strong {
    color: #111;
    font-size: 18px;
    font-weight: 780;
    letter-spacing: 0;
    line-height: 1.15;
}

.avelle-subscriptions__notice {
    padding: 14px 16px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #f7f7f7;
    color: #111;
    font-size: 14px;
    font-weight: 700;
}

.avelle-subscriptions__notice.is-success {
    border-color: rgba(26, 127, 75, 0.22);
    background: #edf8f1;
    color: #1a7f4b;
}

.avelle-subscriptions__notice.is-error {
    border-color: rgba(190, 18, 60, 0.22);
    background: #fff1f2;
    color: #be123c;
}

.avelle-subscriptions__plans {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.avelle-subscriptions__plan,
.avelle-subscriptions__item,
.avelle-subscriptions__empty {
    display: grid;
    gap: 22px;
    min-width: 0;
    padding: 24px;
    border: 1px solid rgba(17, 17, 17, 0.12);
    background: #fff;
}

.avelle-subscriptions__plan {
    align-content: space-between;
    min-height: 390px;
}

.avelle-subscriptions__plan form {
    margin: 0;
    align-self: end;
}

.avelle-subscriptions__plan-main,
.avelle-subscriptions__list {
    display: grid;
    gap: 12px;
}

.avelle-subscriptions__plan-main h3,
.avelle-subscriptions__item h3 {
    margin: 0;
    color: #111;
    font-size: 22px;
    font-weight: 760;
    letter-spacing: 0;
    line-height: 1.15;
}

.avelle-subscriptions__price {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.avelle-subscriptions__price strong {
    color: #111;
    font-size: 38px;
    font-weight: 780;
    letter-spacing: -0.01em;
    line-height: 1;
}

.avelle-subscriptions__price span {
    color: #737373;
    font-size: 13px;
    font-weight: 760;
}

.avelle-subscriptions__features {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.avelle-subscriptions__features li {
    position: relative;
    padding-left: 18px;
    color: #606060;
    font-size: 13px;
    line-height: 1.45;
}

.avelle-subscriptions__features li::before {
    position: absolute;
    top: 0.55em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #111;
    content: '';
}

.avelle-subscriptions__primary,
.avelle-subscriptions__actions button,
.avelle-subscriptions__empty a {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 12px 18px;
    border: 1px solid #111;
    background: #111;
    color: #fff;
    font-size: 13px;
    font-weight: 780;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.avelle-subscriptions__primary {
    width: 100%;
    min-height: 46px;
}

.avelle-subscriptions__primary:hover,
.avelle-subscriptions__primary:focus,
.avelle-subscriptions__actions button:hover,
.avelle-subscriptions__actions button:focus,
.avelle-subscriptions__empty a:hover,
.avelle-subscriptions__empty a:focus {
    background: #df0024;
    border-color: #df0024;
    color: #fff;
}

.avelle-subscriptions__item {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.avelle-subscriptions__item-main {
    display: grid;
    gap: 10px;
}

.avelle-subscriptions__item-head {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.avelle-subscriptions__badge {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 9px;
    background: #eef1f5;
    color: #687385;
    font-size: 11px;
    font-weight: 780;
    letter-spacing: 0.06em;
    line-height: 1;
    text-transform: uppercase;
}

.avelle-subscriptions__badge.is-active {
    background: #eaf8f0;
    color: #1a7f4b;
}

.avelle-subscriptions__badge.is-paused {
    background: #fff5dd;
    color: #9a5b00;
}

.avelle-subscriptions__meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 6px 0 0;
}

.avelle-subscriptions__meta div {
    display: grid;
    gap: 5px;
    padding: 12px;
    background: #f7f4ef;
}

.avelle-subscriptions__meta dd {
    margin: 0;
    color: #111;
    font-size: 14px;
    font-weight: 760;
}

.avelle-subscriptions__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.avelle-subscriptions__actions form {
    margin: 0;
}

.avelle-subscriptions__actions button {
    min-width: 98px;
    border-color: rgba(17, 17, 17, 0.18);
    background: #fff;
    color: #111;
}

.avelle-subscriptions__actions button.is-danger {
    border-color: rgba(190, 18, 60, 0.22);
    color: #be123c;
}

.avelle-subscriptions__actions button.is-danger:hover,
.avelle-subscriptions__actions button.is-danger:focus {
    border-color: #be123c;
    background: #be123c;
    color: #fff;
}

.avelle-subscriptions__empty {
    justify-items: start;
}

.avelle-subscriptions__empty strong {
    color: #111;
    font-size: 18px;
    font-weight: 760;
}

@media (max-width: 991.98px) {
    .avelle-subscriptions__plans {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .avelle-subscriptions__header {
        align-items: stretch;
        flex-direction: column;
    }

    .avelle-subscriptions__summary,
    .avelle-subscriptions__meta {
        grid-template-columns: 1fr;
    }

    .avelle-subscriptions__header,
    .avelle-subscriptions__plan,
    .avelle-subscriptions__item,
    .avelle-subscriptions__empty {
        padding: 20px;
    }

    .avelle-subscriptions__plans,
    .avelle-subscriptions__item {
        grid-template-columns: 1fr;
    }

    .avelle-subscriptions__actions {
        justify-content: stretch;
    }

    .avelle-subscriptions__actions form,
    .avelle-subscriptions__actions button,
    .avelle-subscriptions__empty a {
        width: 100%;
    }
}

.cartmini__area:not(.cartmini-opened) {
    display: none;
}

.avelle-fashion6-hero {
    background: #f8eeee;
    display: block;
    margin-inline: calc(50% - 50vw);
    overflow: hidden;
    position: relative;
    width: 100vw;
}

.avelle-fashion6-hero__track {
    cursor: grab;
    display: grid;
    height: max(var(--avelle-hero-height-desktop, 680px), clamp(520px, 42vw, 680px));
    min-height: 520px;
    overflow: hidden;
    position: relative;
    touch-action: pan-y;
    user-select: none;
    width: 100%;
}

.avelle-fashion6-hero__track.is-dragging {
    cursor: grabbing;
}

.avelle-fashion6-hero__slide {
    background: var(--avelle-hero-bg, #f8eeee);
    grid-area: 1 / 1;
    height: 100%;
    min-height: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    position: relative;
    transition: opacity .42s ease, visibility .42s ease;
    visibility: hidden;
    width: 100%;
    z-index: 0;
}

.avelle-fashion6-hero__slide.is-active {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    z-index: 2;
}

.avelle-fashion6-hero__media,
.avelle-fashion6-hero__media picture,
.avelle-fashion6-hero__media img,
.avelle-fashion6-hero__media video {
    display: block;
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%;
}

.avelle-fashion6-hero__media img,
.avelle-fashion6-hero__media video {
    background: var(--avelle-hero-bg, #f8eeee);
    object-fit: var(--avelle-hero-media-fit-desktop, cover);
    object-position: var(--avelle-hero-media-position-desktop, center top);
    user-select: none;
    -webkit-user-drag: none;
}

.avelle-fashion6-hero__slide[data-media-effect] .avelle-fashion6-hero__media {
    opacity: 0;
    transform: translate3d(0, 0, 0);
    transition: opacity var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1), transform var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1);
}

.avelle-fashion6-hero__slide[data-media-effect="zoom-soft"] .avelle-fashion6-hero__media,
.avelle-fashion6-hero__slide[data-media-effect="kenburns-soft"] .avelle-fashion6-hero__media {
    transform: scale(1.02);
}

.avelle-fashion6-hero__slide[data-media-effect="pan-left"] .avelle-fashion6-hero__media {
    transform: translate3d(2%, 0, 0) scale(1.02);
}

.avelle-fashion6-hero__slide[data-media-effect="pan-right"] .avelle-fashion6-hero__media {
    transform: translate3d(-2%, 0, 0) scale(1.02);
}

.avelle-fashion6-hero__slide[data-media-effect="none"] .avelle-fashion6-hero__media,
.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__media {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

.avelle-fashion6-hero__slide.is-active[data-media-effect="kenburns-soft"] .avelle-fashion6-hero__media {
    animation: avelleFashion6HeroMedia calc(var(--avelle-hero-animation-duration, 900ms) * 5) cubic-bezier(.22, 1, .36, 1) both;
}

.avelle-fashion6-hero__content {
    align-items: center;
    color: #222;
    display: grid;
    justify-items: var(--avelle-hero-content-justify-items, center);
    left: var(--avelle-hero-content-left, 50%);
    max-width: min(720px, 54vw);
    pointer-events: none;
    position: absolute;
    text-align: var(--avelle-hero-content-text-align, center);
    top: var(--avelle-hero-content-top, 50%);
    transform: translate(var(--avelle-hero-content-translate-x, -50%), var(--avelle-hero-content-translate-y, -50%));
    width: max-content;
    z-index: 5;
}

.avelle-fashion6-hero__eyebrow,
.avelle-fashion6-hero__title,
.avelle-fashion6-hero__subtitle {
    transition: opacity var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1), transform var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1);
    transition-delay: var(--avelle-hero-text-delay, 120ms);
}

.avelle-fashion6-hero__eyebrow {
    background: #ead6d1;
    border-radius: 999px;
    color: #9b463f;
    display: inline-flex;
    font-family: "Kalam", "Comic Sans MS", cursive;
    font-size: clamp(18px, 1.35vw, 27px);
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    margin: 0 0 18px;
    padding: 13px 36px 12px;
    text-transform: none;
}

.avelle-fashion6-hero__title {
    color: var(--avelle-hero-title-color, #222);
    display: block;
    font-size: var(--avelle-hero-title-size, clamp(38px, 3.15vw, 64px));
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.05;
    margin: 0 0 14px;
    text-transform: none;
    white-space: nowrap;
}

.avelle-fashion6-hero__subtitle {
    color: var(--avelle-hero-subtitle-color, #666);
    display: block;
    font-size: var(--avelle-hero-description-size, var(--avelle-hero-subtitle-size, clamp(15px, 1.05vw, 20px)));
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.45;
    margin: 0 auto 30px;
    max-width: 660px;
    text-transform: none;
}

.avelle-fashion6-hero__button {
    align-items: stretch;
    background: #99483f;
    color: #fff !important;
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1;
    min-height: 48px;
    pointer-events: auto;
    text-decoration: none;
    text-transform: uppercase;
    transition: background .18s ease, opacity var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1), transform var(--avelle-hero-animation-duration, 900ms) cubic-bezier(.22, 1, .36, 1);
    transition-delay: var(--avelle-hero-button-delay, 260ms);
}

.avelle-fashion6-hero__button span {
    align-items: center;
    display: inline-flex;
    padding: 0 26px;
}

.avelle-fashion6-hero__button i {
    align-items: center;
    border-left: 1px solid rgba(255, 255, 255, .36);
    display: inline-flex;
    font-style: normal;
    justify-content: center;
    min-width: 48px;
}

.avelle-fashion6-hero__button:hover {
    background: #7e3932;
    color: #fff !important;
}

.avelle-fashion6-hero__slide:not(.is-active) .avelle-fashion6-hero__eyebrow,
.avelle-fashion6-hero__slide:not(.is-active) .avelle-fashion6-hero__title,
.avelle-fashion6-hero__slide:not(.is-active) .avelle-fashion6-hero__subtitle,
.avelle-fashion6-hero__slide:not(.is-active) .avelle-fashion6-hero__button {
    opacity: 0;
}

.avelle-fashion6-hero__slide:not(.is-active)[data-text-effect="fade-up"] .avelle-fashion6-hero__eyebrow,
.avelle-fashion6-hero__slide:not(.is-active)[data-text-effect="fade-up"] .avelle-fashion6-hero__title,
.avelle-fashion6-hero__slide:not(.is-active)[data-text-effect="fade-up"] .avelle-fashion6-hero__subtitle {
    transform: translate3d(0, 24px, 0);
}

.avelle-fashion6-hero__slide:not(.is-active)[data-button-effect="slide-up"] .avelle-fashion6-hero__button,
.avelle-fashion6-hero__slide:not(.is-active)[data-button-effect="fade-up"] .avelle-fashion6-hero__button {
    transform: translate3d(0, 18px, 0);
}

.avelle-fashion6-hero__slide:not(.is-active)[data-button-effect="scale-in"] .avelle-fashion6-hero__button,
.avelle-fashion6-hero__slide:not(.is-active)[data-button-effect="pulse-soft"] .avelle-fashion6-hero__button {
    transform: scale(.92);
}

.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__eyebrow,
.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__title,
.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__subtitle,
.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__button {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__title {
    transform: translate3d(var(--avelle-hero-title-offset-x, 0), var(--avelle-hero-title-offset-y, 0), 0) scale(1);
}

.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__subtitle {
    transform: translate3d(var(--avelle-hero-subtitle-offset-x, 0), var(--avelle-hero-subtitle-offset-y, 0), 0) scale(1);
}

.avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__button {
    transform: translate3d(var(--avelle-hero-button-offset-x, 0), var(--avelle-hero-button-offset-y, 0), 0) scale(1);
}

.avelle-fashion6-hero__slide.is-active[data-button-effect="pulse-soft"] .avelle-fashion6-hero__button {
    animation: avelleFashion6HeroButtonPulse 1.15s cubic-bezier(.22, 1, .36, 1) var(--avelle-hero-button-delay, 260ms) both;
}

.avelle-fashion6-hero__dots {
    align-items: center;
    bottom: 22px;
    display: inline-flex;
    gap: 8px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    z-index: 6;
}

.avelle-fashion6-hero__dots button {
    background: rgba(32, 32, 32, .22);
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: 8px;
    padding: 0;
    width: 8px;
}

.avelle-fashion6-hero__dots button.is-active {
    background: #99483f;
}

@keyframes avelleFashion6HeroMedia {
    from {
        transform: scale(1.02) translate3d(1%, 0, 0);
    }

    to {
        transform: scale(1.055) translate3d(-1%, 0, 0);
    }
}

@keyframes avelleFashion6HeroButtonPulse {
    0% {
        transform: scale(.94);
    }

    65% {
        transform: scale(1.035);
    }

    100% {
        transform: scale(1);
    }
}

@media (max-width: 1199px) {
    .avelle-fashion6-hero__media img,
    .avelle-fashion6-hero__media video {
        object-fit: var(--avelle-hero-media-fit-tablet, var(--avelle-hero-media-fit-desktop, cover));
        object-position: var(--avelle-hero-media-position-tablet, var(--avelle-hero-media-position-desktop, center top));
    }

    .avelle-fashion6-hero__content {
        justify-items: var(--avelle-hero-tablet-content-justify-items, var(--avelle-hero-content-justify-items, center));
        left: var(--avelle-hero-tablet-content-left, var(--avelle-hero-content-left, 50%));
        max-width: min(640px, 62vw);
        text-align: var(--avelle-hero-tablet-content-text-align, var(--avelle-hero-content-text-align, center));
        top: var(--avelle-hero-tablet-content-top, var(--avelle-hero-content-top, 50%));
        transform: translate(var(--avelle-hero-tablet-content-translate-x, var(--avelle-hero-content-translate-x, -50%)), var(--avelle-hero-tablet-content-translate-y, var(--avelle-hero-content-translate-y, -50%)));
    }

    .avelle-fashion6-hero__title {
        font-size: var(--avelle-hero-title-size-tablet, var(--avelle-hero-title-size, clamp(38px, 3.15vw, 64px)));
        white-space: normal;
    }

    .avelle-fashion6-hero__subtitle {
        font-size: var(--avelle-hero-description-size-tablet, var(--avelle-hero-subtitle-size-tablet, var(--avelle-hero-description-size, var(--avelle-hero-subtitle-size, clamp(15px, 1.05vw, 20px)))));
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__title {
        transform: translate3d(var(--avelle-hero-title-offset-x-tablet, var(--avelle-hero-title-offset-x, 0)), var(--avelle-hero-title-offset-y-tablet, var(--avelle-hero-title-offset-y, 0)), 0) scale(1);
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__subtitle {
        transform: translate3d(var(--avelle-hero-subtitle-offset-x-tablet, var(--avelle-hero-subtitle-offset-x, 0)), var(--avelle-hero-subtitle-offset-y-tablet, var(--avelle-hero-subtitle-offset-y, 0)), 0) scale(1);
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__button {
        transform: translate3d(var(--avelle-hero-button-offset-x-tablet, var(--avelle-hero-button-offset-x, 0)), var(--avelle-hero-button-offset-y-tablet, var(--avelle-hero-button-offset-y, 0)), 0) scale(1);
    }
}

@media (max-width: 767px) {
    .avelle-fashion6-hero__track {
        min-height: 640px;
    }

    .avelle-fashion6-hero__media img,
    .avelle-fashion6-hero__media video {
        object-fit: var(--avelle-hero-media-fit-mobile, var(--avelle-hero-media-fit-tablet, var(--avelle-hero-media-fit-desktop, cover)));
        object-position: 68% top !important;
    }

    .avelle-fashion6-hero__media::after {
        background: linear-gradient(90deg, rgba(255, 255, 255, .84) 0%, rgba(255, 255, 255, .58) 48%, rgba(255, 255, 255, .18) 100%);
        content: "";
        inset: 0;
        pointer-events: none;
        position: absolute;
    }

    .avelle-fashion6-hero__content {
        justify-items: start;
        left: 18px;
        max-width: min(190px, calc(100vw - 36px));
        right: auto;
        text-align: left;
        top: 43%;
        transform: translateY(-50%);
        width: min(190px, calc(100vw - 36px));
    }

    .avelle-fashion6-hero__title {
        font-size: 21px;
        line-height: 1.05;
        margin-bottom: 8px;
    }

    .avelle-fashion6-hero__subtitle {
        font-size: 11px;
        line-height: 1.28;
        margin-bottom: 14px;
        max-width: 176px;
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__title {
        transform: translate3d(var(--avelle-hero-title-offset-x-mobile, var(--avelle-hero-title-offset-x-tablet, var(--avelle-hero-title-offset-x, 0))), var(--avelle-hero-title-offset-y-mobile, var(--avelle-hero-title-offset-y-tablet, var(--avelle-hero-title-offset-y, 0))), 0) scale(1);
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__subtitle {
        transform: translate3d(var(--avelle-hero-subtitle-offset-x-mobile, var(--avelle-hero-subtitle-offset-x-tablet, var(--avelle-hero-subtitle-offset-x, 0))), var(--avelle-hero-subtitle-offset-y-mobile, var(--avelle-hero-subtitle-offset-y-tablet, var(--avelle-hero-subtitle-offset-y, 0))), 0) scale(1);
    }

    .avelle-fashion6-hero__slide.is-active .avelle-fashion6-hero__button {
        transform: translate3d(var(--avelle-hero-button-offset-x-mobile, var(--avelle-hero-button-offset-x-tablet, var(--avelle-hero-button-offset-x, 0))), var(--avelle-hero-button-offset-y-mobile, var(--avelle-hero-button-offset-y-tablet, var(--avelle-hero-button-offset-y, 0))), 0) scale(1);
    }
}

.main-menu li:not(:hover) > .avelle-mega-menu,
.avelle-fashion7-menu-content li:not(:hover) > .avelle-mega-menu,
.main-menu li:not(:hover) > .tp-submenu,
.avelle-fashion7-menu-content li:not(:hover) > .tp-submenu {
    display: none !important;
    pointer-events: none;
}

.main-menu li:hover > .avelle-mega-menu,
.avelle-fashion7-menu-content li:hover > .avelle-mega-menu,
.main-menu li:hover > .tp-submenu,
.avelle-fashion7-menu-content li:hover > .tp-submenu {
    display: block !important;
    pointer-events: auto;
}

.main-menu li,
.avelle-fashion7-menu-content li {
    position: relative;
}

.main-menu > ul > li > .tp-submenu,
.avelle-fashion7-menu-content > ul > li > .tp-submenu {
    left: 0;
    right: auto;
    top: 100%;
    z-index: 60;
}

.main-menu .tp-submenu .tp-submenu,
.avelle-fashion7-menu-content .tp-submenu .tp-submenu {
    left: 100%;
    right: auto;
    top: 0;
    z-index: 61;
}

.main-menu .tp-submenu li:hover > .tp-submenu,
.avelle-fashion7-menu-content .tp-submenu li:hover > .tp-submenu {
    display: block !important;
    pointer-events: auto;
}

.main-menu .tp-submenu li:nth-last-child(-n + 3) > .tp-submenu,
.avelle-fashion7-menu-content .tp-submenu li:nth-last-child(-n + 3) > .tp-submenu {
    left: auto;
    right: 100%;
}

.main-menu > ul > li:nth-last-child(-n + 2) .tp-submenu .tp-submenu,
.avelle-fashion7-menu-content > ul > li:nth-last-child(-n + 2) .tp-submenu .tp-submenu {
    left: auto;
    right: 100%;
}

.main-menu li:has(> a[title="Pages"]) .tp-submenu .tp-submenu,
.main-menu li:has(> a[title="Blog"]) .tp-submenu .tp-submenu,
.avelle-fashion7-menu-content li:has(> a[title="Pages"]) .tp-submenu .tp-submenu,
.avelle-fashion7-menu-content li:has(> a[title="Blog"]) .tp-submenu .tp-submenu {
    left: auto !important;
    right: 100% !important;
}

.avelle-fashion6-hero {
    --avelle-hero-height-desktop: 680px;
    --avelle-hero-height-tablet: 620px;
    --avelle-hero-height-mobile: 620px;
}

.avelle-fashion6-hero__track {
    min-height: 520px;
}

.avelle-fashion6-hero--dots-none .avelle-fashion6-hero__dots {
    display: none;
}

.avelle-fashion6-hero--dots-progress .avelle-fashion6-hero__dots {
    bottom: 28px;
    gap: 8px;
}

.avelle-fashion6-hero--dots-progress .avelle-fashion6-hero__dots button {
    background: rgba(32, 32, 32, .2);
    border-radius: 0;
    height: 2px;
    width: 38px;
}

.avelle-fashion6-hero--dots-progress .avelle-fashion6-hero__dots button.is-active {
    background: #111;
}

.avelle-fashion6-hero__arrow {
    align-items: center;
    background: rgba(255, 255, 255, .82);
    border: 1px solid rgba(17, 17, 17, .08);
    border-radius: 999px;
    box-shadow: 0 16px 40px rgba(17, 17, 17, .12);
    color: #111;
    cursor: pointer;
    display: inline-flex;
    font-size: 34px;
    height: 48px;
    justify-content: center;
    line-height: 1;
    padding: 0 0 4px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: background .18s ease, color .18s ease, opacity .18s ease;
    width: 48px;
    z-index: 7;
}

.avelle-fashion6-hero:hover .avelle-fashion6-hero__arrow,
.avelle-fashion6-hero:focus-within .avelle-fashion6-hero__arrow {
    opacity: 1;
}

.avelle-fashion6-hero__arrow:hover {
    background: #111;
    color: #fff;
}

.avelle-fashion6-hero__arrow:disabled {
    cursor: default;
    opacity: .35;
}

.avelle-fashion6-hero__arrow--prev {
    left: clamp(16px, 4vw, 74px);
}

.avelle-fashion6-hero__arrow--next {
    right: clamp(16px, 4vw, 74px);
}

.avelle-fashion6-hero--arrows-boxed .avelle-fashion6-hero__arrow {
    background: #111;
    border-radius: 0;
    color: #fff;
}

.avelle-fashion6-hero--arrows-boxed .avelle-fashion6-hero__arrow:hover {
    background: #99483f;
}

@media (max-width: 1199px) {
    .avelle-fashion6-hero__track {
        height: max(var(--avelle-hero-height-tablet, 560px), 560px);
        min-height: 560px;
    }
}

@media (max-width: 767px) {
    .avelle-fashion6-hero__track {
        aspect-ratio: auto;
        height: var(--avelle-hero-height-mobile, 620px);
        min-height: var(--avelle-hero-height-mobile);
    }

    .avelle-fashion6-hero__arrow {
        height: 42px;
        width: 42px;
    }
}

.verified-buyer-badge {
    align-items: center;
    background: #f4f3f1;
    border: 1px solid #dedede;
    color: #252525;
    display: inline-flex;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1;
    min-height: 24px;
    padding: 6px 9px;
    text-transform: uppercase;
}

.verified-buyer-badge svg {
    color: #1a7f4b;
    height: 14px;
    width: 14px;
}
.avelle-demo-index,
.avelle-demo-page {
    background: #f7f4ef;
    color: #111;
    padding: 96px 0;
}

.avelle-demo-index__header,
.avelle-demo-page__hero {
    margin: 0 auto 48px;
    max-width: 1120px;
}

.avelle-demo-index__header p,
.avelle-demo-page__hero p,
.avelle-demo-page__panel span {
    color: #9a8173;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.avelle-demo-index__header h1,
.avelle-demo-page__hero h1 {
    font-size: clamp(42px, 7vw, 96px);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: .95;
    margin-bottom: 18px;
    text-transform: uppercase;
}

.avelle-demo-index__header span,
.avelle-demo-page__hero span,
.avelle-demo-page__panel p {
    color: #625d58;
    display: block;
    font-size: 16px;
    line-height: 1.7;
    max-width: 720px;
}

.avelle-demo-index__grid {
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-index__section,
.avelle-demo-page__panel,
.avelle-demo-page__related {
    background: #fff;
    border: 1px solid rgba(17, 17, 17, .08);
    border-radius: 0;
    box-shadow: 0 18px 50px rgba(17, 17, 17, .05);
    padding: 28px;
}

.avelle-demo-index__section h2,
.avelle-demo-page__related h2 {
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 22px;
    text-transform: uppercase;
}

.avelle-demo-index__links,
.avelle-demo-page__related > div {
    display: grid;
    gap: 10px;
}

.avelle-demo-index__links a,
.avelle-demo-page__related a {
    align-items: center;
    background: #f7f4ef;
    color: #111;
    display: flex;
    justify-content: space-between;
    min-height: 48px;
    padding: 12px 14px;
}

.avelle-demo-index__links a:hover,
.avelle-demo-page__related a:hover,
.avelle-demo-page__related a.is-active {
    background: #111;
    color: #fff;
}

.avelle-demo-index__links small {
    color: inherit;
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.avelle-demo-page__back {
    color: #111;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: 32px;
    text-transform: uppercase;
}

.avelle-demo-page__hero {
    align-items: flex-end;
    display: flex;
    gap: 32px;
    justify-content: space-between;
}

.avelle-demo-page__cta {
    align-items: center;
    background: #111;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 800;
    height: 52px;
    justify-content: center;
    letter-spacing: .05em;
    padding: 0 28px;
    text-transform: uppercase;
}

.avelle-demo-page__body {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 24px;
}

.avelle-demo-page__panel strong {
    display: block;
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 12px;
}

.avelle-demo-page__related {
    margin-top: 24px;
}

.avelle-demo-product {
    background: #fff;
    color: #222;
    padding: 0 0 92px;
}

body:has(.avelle-demo-product) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-product) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-product .container {
    max-width: 1410px;
}

.avelle-demo-product__crumbs {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    margin-bottom: 20px;
    min-height: 120px;
    padding: 20px;
    text-align: center;
}

.avelle-demo-product__crumbs h1 {
    color: #222;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.2;
    margin: 0;
}

.avelle-demo-product__crumbs div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.avelle-demo-product__crumbs a,
.avelle-demo-product__crumbs span,
.avelle-demo-product__crumbs strong {
    color: #222;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

.avelle-demo-product__crumbs a::after,
.avelle-demo-product__crumbs span::after {
    color: #aaa;
    content: "/";
    margin-left: 10px;
}

.avelle-demo-product__crumbs strong {
    color: #222;
}

.avelle-demo-product__layout {
    display: grid;
    gap: 42px;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 560px);
}

.avelle-demo-product__layout--sidebar {
    grid-template-columns: minmax(0, 320px) minmax(0, 1fr) minmax(400px, 520px);
}

.avelle-demo-product__layout--sidebar .avelle-demo-product__media {
    grid-column: span 2;
}

.avelle-demo-product__main-image,
.avelle-demo-product__image-grid figure,
.avelle-demo-product__thumbs button {
    background: #f7f7f7;
    margin: 0;
    overflow: hidden;
}

.avelle-demo-product__main-image {
    aspect-ratio: 1 / 1.05;
}

.avelle-demo-product__main-image img,
.avelle-demo-product__image-grid img {
    display: block;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    width: 100%;
}

.avelle-demo-product__thumbs {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 18px;
}

.avelle-demo-product__thumbs button,
.avelle-demo-product__swatches button {
    border: 1px solid transparent;
    cursor: pointer;
    padding: 0;
}

.avelle-demo-product__thumbs button.is-active,
.avelle-demo-product__swatches button.is-active {
    border-color: #222;
}

.avelle-demo-product__thumbs img,
.avelle-demo-product__swatches img {
    display: block;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    width: 100%;
}

.avelle-demo-product__image-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-product__image-grid figure {
    aspect-ratio: .82 / 1;
}

.avelle-demo-product__details {
    align-self: flex-start;
    position: sticky;
    top: 24px;
}

.avelle-demo-product__trending {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
}

.avelle-demo-product__trending img {
    height: 28px;
    width: 28px;
}

.avelle-demo-product__trending span {
    color: #777;
    font-size: 15px;
    font-weight: 600;
}

.avelle-demo-product__details h1 {
    color: #222;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 13px;
}

.avelle-demo-product__rating {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-bottom: 18px;
}

.avelle-demo-product__rating span {
    color: #ffc107;
    font-size: 15px;
    letter-spacing: 2px;
}

.avelle-demo-product__rating i {
    background: #ddd;
    display: block;
    height: 18px;
    width: 1px;
}

.avelle-demo-product__rating a,
.avelle-demo-product__quick-links a,
.avelle-demo-product__meta-actions a {
    color: #777;
    font-size: 14px;
    font-weight: 600;
}

.avelle-demo-product__price {
    border-bottom: 1px solid #eee;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.avelle-demo-product__price strong {
    color: #222;
    display: inline-flex;
    font-size: 26px;
    font-weight: 700;
    gap: 6px;
    margin-right: 8px;
}

.avelle-demo-product__price strong span {
    font-weight: 400;
}

.avelle-demo-product__price del {
    color: #9a9a9a;
    font-size: 18px;
    margin-right: 8px;
}

.avelle-demo-product__price em {
    color: #ff4c3b;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
}

.avelle-demo-product__price small {
    color: #777;
    display: block;
    font-size: 14px;
    margin-top: 4px;
}

.avelle-demo-product__description {
    color: #777;
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 22px;
}

.avelle-demo-product__quick-links {
    align-items: center;
    border-bottom: 1px solid #eee;
    display: flex;
    gap: 16px;
    margin-bottom: 22px;
    padding-bottom: 22px;
}

.avelle-demo-product__quick-links span {
    background: #ddd;
    height: 18px;
    width: 1px;
}

.avelle-demo-product__variant {
    margin-bottom: 22px;
}

.avelle-demo-product__variant h2,
.avelle-demo-product__box h2,
.avelle-demo-product__payment h2 {
    color: #222;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 13px;
    text-transform: capitalize;
}

.avelle-demo-product__sizes,
.avelle-demo-product__swatches {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-product__sizes button {
    align-items: center;
    background: #f7f7f7;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #222;
    cursor: pointer;
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    height: 38px;
    justify-content: center;
    min-width: 38px;
}

.avelle-demo-product__sizes button.is-active {
    background: #222;
    color: #fff;
}

.avelle-demo-product__swatches button {
    height: 58px;
    width: 58px;
}

.avelle-demo-product__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 20px;
}

.avelle-demo-product__qty {
    align-items: center;
    border: 1px solid #ddd;
    display: inline-flex;
    height: 50px;
}

.avelle-demo-product__qty button,
.avelle-demo-product__qty input {
    background: #fff;
    border: 0;
    color: #222;
    height: 48px;
    text-align: center;
}

.avelle-demo-product__qty button {
    cursor: pointer;
    font-size: 28px;
    line-height: 1;
    width: 42px;
}

.avelle-demo-product__qty input {
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    font-size: 15px;
    font-weight: 700;
    width: 54px;
}

.avelle-demo-product__cart,
.avelle-demo-product__buy {
    align-items: center;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    height: 50px;
    justify-content: center;
    letter-spacing: .02em;
    padding: 0 24px;
    text-transform: uppercase;
}

.avelle-demo-product__cart {
    background: #ff4c3b;
    color: #fff;
}

.avelle-demo-product__buy {
    background: #222;
    color: #fff;
}

.avelle-demo-product__meta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 20px;
}

.avelle-demo-product__box,
.avelle-demo-product__payment {
    border: 1px solid #eee;
    margin-top: 14px;
    padding: 18px;
}

.avelle-demo-product__box ul {
    display: grid;
    gap: 9px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-product__box li,
.avelle-demo-product__box p {
    color: #777;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

.avelle-demo-product__box li span {
    color: #222;
    font-weight: 700;
}

.avelle-demo-product__payment {
    border-style: dashed;
}

.avelle-demo-product__payment img {
    display: block;
    max-width: 300px;
    width: 100%;
}

.avelle-demo-product__tabs,
.avelle-demo-product__accordion,
.avelle-demo-product__related {
    margin-top: 56px;
}

.avelle-demo-product__tabs nav {
    border-bottom: 1px solid #e5e5e5;
    display: flex;
    gap: 34px;
    justify-content: center;
}

.avelle-demo-product__tabs nav a {
    color: #777;
    font-size: 15px;
    font-weight: 800;
    padding: 0 0 18px;
    text-transform: uppercase;
}

.avelle-demo-product__tabs nav a.is-active {
    border-bottom: 2px solid #ff4c3b;
    color: #222;
}

.avelle-demo-product__tab-panel {
    margin: 30px auto 0;
    max-width: 980px;
}

.avelle-demo-product__tab-panel h2 {
    color: #222;
    font-size: 16px;
    font-weight: 800;
    margin: 18px 0 8px;
    text-transform: capitalize;
}

.avelle-demo-product__tab-panel p,
.avelle-demo-product__accordion p {
    color: #777;
    font-size: 15px;
    line-height: 1.8;
}

.avelle-demo-product__accordion {
    border-top: 1px solid #eee;
}

.avelle-demo-product__accordion details {
    border-bottom: 1px solid #eee;
    padding: 22px 0;
}

.avelle-demo-product__accordion summary {
    color: #222;
    cursor: pointer;
    font-size: 16px;
    font-weight: 800;
    text-transform: uppercase;
}

.avelle-demo-product__related h2 {
    color: #222;
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 18px;
    text-transform: uppercase;
}

.avelle-demo-product__related > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-product__related a {
    background: #f7f7f7;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 14px;
}

.avelle-demo-product__related a:hover {
    background: #222;
    color: #fff;
}

.avelle-demo-category {
    background: #fff;
    color: #222;
    padding: 0 0 92px;
}

body:has(.avelle-demo-category) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-category) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-category .container {
    max-width: 1410px;
}

.avelle-demo-category__crumbs {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    margin-bottom: 60px;
    min-height: 120px;
    padding: 20px;
    text-align: center;
}

.avelle-demo-category__crumbs h1 {
    color: #222;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.2;
    margin: 0;
}

.avelle-demo-category__crumbs div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-category__crumbs a,
.avelle-demo-category__crumbs span,
.avelle-demo-category__crumbs strong {
    color: #222;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

.avelle-demo-category__crumbs a::after,
.avelle-demo-category__crumbs span::after {
    color: #aaa;
    content: "/";
    margin-left: 10px;
}

.avelle-demo-category__crumbs strong {
    color: #222;
}

.avelle-demo-category__layout {
    display: grid;
    gap: 28px;
    grid-template-columns: 280px minmax(0, 1fr);
}

.avelle-demo-category__layout--right {
    grid-template-columns: minmax(0, 1fr) 280px;
}

.avelle-demo-category__layout--right .avelle-demo-category__filters {
    order: 2;
}

.avelle-demo-category__layout--no-sidebar {
    grid-template-columns: 1fr;
}

.avelle-demo-category__banner {
    align-items: center;
    background: #f1f1f1;
    color: #050505;
    display: flex;
    font-size: clamp(58px, 8vw, 104px);
    font-weight: 300;
    justify-content: center;
    letter-spacing: .02em;
    line-height: 1;
    margin-bottom: 24px;
    min-height: 267px;
    overflow: hidden;
    text-align: center;
}

.avelle-demo-category__layout--no-sidebar .avelle-demo-category__banner {
    min-height: 355px;
}

.avelle-demo-category__filters {
    align-self: flex-start;
    border: 1px solid #eee;
    padding: 24px;
    position: sticky;
    top: 24px;
}

.avelle-demo-category__back {
    background: #f8f8f8;
    border: 0;
    color: #777;
    display: none;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 18px;
    padding: 10px 12px;
    text-transform: uppercase;
}

.avelle-demo-category__filters details {
    border-bottom: 1px solid #eee;
    padding: 18px 0;
}

.avelle-demo-category__filters details:first-of-type {
    padding-top: 0;
}

.avelle-demo-category__filters details:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.avelle-demo-category__filters summary {
    color: #222;
    cursor: pointer;
    font-size: 15px;
    font-weight: 800;
    list-style: none;
    text-transform: uppercase;
}

.avelle-demo-category__filters summary::-webkit-details-marker {
    display: none;
}

.avelle-demo-category__filters ul {
    display: grid;
    gap: 10px;
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
}

.avelle-demo-category__filters label {
    align-items: center;
    color: #777;
    display: flex;
    font-size: 14px;
    gap: 9px;
}

.avelle-demo-category__filters input {
    accent-color: #222;
    height: 15px;
    width: 15px;
}

.avelle-demo-category__top-filter {
    border: 1px solid #eee;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 28px;
    padding: 18px;
}

.avelle-demo-category__top-filter button {
    background: #f8f8f8;
    border: 0;
    color: #222;
    font-size: 14px;
    font-weight: 800;
    min-height: 46px;
    text-transform: uppercase;
}

.avelle-demo-category__toolbar {
    align-items: center;
    border: 1px solid #eee;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 26px;
    padding: 16px;
}

.avelle-demo-category__toolbar > div {
    display: flex;
    gap: 12px;
}

.avelle-demo-category__toolbar select {
    background: #fff;
    border: 1px solid #ddd;
    color: #555;
    font-size: 14px;
    height: 42px;
    min-width: 170px;
    padding: 0 12px;
}

.avelle-demo-category__toolbar ul {
    align-items: center;
    display: flex;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-category__toolbar li {
    align-items: center;
    background: #f8f8f8;
    color: #777;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    height: 32px;
    justify-content: center;
    min-width: 32px;
    padding: 0 8px;
}

.avelle-demo-category__toolbar li.is-active {
    background: #222;
    color: #fff;
}

.avelle-demo-category__grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(var(--avelle-category-columns), minmax(0, 1fr));
}

.avelle-demo-category__grid--list {
    grid-template-columns: 1fr;
}

.avelle-demo-category-card {
    display: grid;
    gap: 14px;
}

.avelle-demo-category__grid--list .avelle-demo-category-card {
    align-items: start;
    grid-template-columns: 270px minmax(0, 1fr);
}

.avelle-demo-category-card__media {
    background: #f7f7f7;
    display: block;
    overflow: hidden;
    position: relative;
}

.avelle-demo-category-card__media img {
    aspect-ratio: .82 / 1;
    display: block;
    height: auto;
    object-fit: cover;
    object-position: center top;
    width: 100%;
}

.avelle-demo-category__grid--list .avelle-demo-category-card__media img {
    aspect-ratio: .9 / 1;
}

.avelle-demo-category-card__media span {
    align-items: center;
    background: #fff;
    color: #222;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 4px;
    left: 12px;
    min-height: 28px;
    padding: 0 9px;
    position: absolute;
    top: 12px;
}

.avelle-demo-category-card__media span::before {
    color: #ffc107;
    content: "★";
}

.avelle-demo-category-card__body {
    display: grid;
    gap: 8px;
}

.avelle-demo-category-card__brand {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.avelle-demo-category-card__brand a {
    color: #777;
    font-size: 13px;
    font-weight: 700;
}

.avelle-demo-category-card__brand ul {
    align-items: center;
    display: flex;
    gap: 5px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.avelle-demo-category-card__brand li {
    border-radius: 50%;
    height: 12px;
    width: 12px;
}

.avelle-demo-category-card h2 {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
}

.avelle-demo-category-card h2 a {
    color: #222;
}

.avelle-demo-category-card p {
    color: #777;
    display: none;
    font-size: 14px;
    line-height: 1.65;
    margin: 0;
}

.avelle-demo-category__grid--list .avelle-demo-category-card p {
    display: block;
}

.avelle-demo-category-card strong {
    color: #222;
    font-size: 16px;
    font-weight: 800;
}

.avelle-demo-category-card del {
    color: #aaa;
    font-size: 13px;
    font-weight: 600;
    margin-left: 5px;
}

.avelle-demo-category-card em {
    color: #ff4c3b;
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
    margin-left: 5px;
}

.avelle-demo-category-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.avelle-demo-category-card__actions button {
    background: #f8f8f8;
    border: 0;
    color: #555;
    font-size: 12px;
    font-weight: 700;
    min-height: 34px;
    padding: 0 11px;
}

.avelle-demo-category-card__actions button:hover {
    background: #222;
    color: #fff;
}

.avelle-demo-category__pagination {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 42px;
}

.avelle-demo-category__pagination a {
    align-items: center;
    border: 1px solid #eee;
    color: #555;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    height: 38px;
    justify-content: center;
    min-width: 38px;
}

.avelle-demo-category__pagination a.is-active,
.avelle-demo-category__pagination a:hover {
    background: #222;
    border-color: #222;
    color: #fff;
}

.avelle-demo-category__related {
    margin-top: 56px;
}

.avelle-demo-category__related h2 {
    color: #222;
    font-size: 22px;
    font-weight: 800;
    margin-bottom: 18px;
    text-transform: uppercase;
}

.avelle-demo-category__related > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avelle-demo-category__related a {
    background: #f7f7f7;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 14px;
}

.avelle-demo-category__related a:hover {
    background: #222;
    color: #fff;
}

@media (max-width: 991px) {
    .avelle-demo-index__grid,
    .avelle-demo-page__body {
        grid-template-columns: 1fr;
    }

    .avelle-demo-page__hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .avelle-demo-product {
        padding-top: 48px;
    }

    .avelle-demo-product__layout,
    .avelle-demo-product__layout--sidebar {
        grid-template-columns: 1fr;
    }

    .avelle-demo-product__layout--sidebar .avelle-demo-product__media {
        grid-column: auto;
    }

    .avelle-demo-product__details {
        position: static;
    }

    .avelle-demo-category__layout,
    .avelle-demo-category__layout--right {
        grid-template-columns: 1fr;
    }

    .avelle-demo-category__filters {
        position: static;
    }

    .avelle-demo-category__layout--right .avelle-demo-category__filters {
        order: initial;
    }

    .avelle-demo-category__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .avelle-demo-index,
    .avelle-demo-page {
        padding: 64px 0;
    }

    .avelle-demo-index__section,
    .avelle-demo-page__panel,
    .avelle-demo-page__related {
        padding: 22px;
    }

    .avelle-demo-product__crumbs {
        margin-bottom: 32px;
        padding: 16px;
    }

    .avelle-demo-product__image-grid {
        grid-template-columns: 1fr;
    }

    .avelle-demo-product__tabs nav {
        gap: 18px;
        justify-content: flex-start;
        overflow-x: auto;
    }

    .avelle-demo-product__actions,
    .avelle-demo-product__cart,
    .avelle-demo-product__buy {
        width: 100%;
    }

    .avelle-demo-category {
        padding-top: 44px;
    }

    .avelle-demo-category__crumbs {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 18px;
    }

    .avelle-demo-category__top-filter,
    .avelle-demo-category__grid,
    .avelle-demo-category__grid--list,
    .avelle-demo-category__grid--list .avelle-demo-category-card {
        grid-template-columns: 1fr;
    }

    .avelle-demo-category__toolbar,
    .avelle-demo-category__toolbar > div {
        align-items: stretch;
        flex-direction: column;
    }

    .avelle-demo-category__toolbar select {
        min-width: 0;
        width: 100%;
    }
}

.avelle-demo-portfolio {
    background: #fff;
    padding: 0 0 86px;
}

body:has(.avelle-demo-portfolio) .tp-page-area {
    padding-top: 0 !important;
}

body:has(.avelle-demo-portfolio) .tp-page-area > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-portfolio__container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.avelle-demo-portfolio__breadcrumb {
    align-items: center;
    background: #f8f8f8;
    display: flex;
    justify-content: space-between;
    margin-bottom: 76px;
    min-height: 120px;
    padding: 26px calc((100vw - 1320px) / 2);
}

.avelle-demo-portfolio__breadcrumb h1 {
    color: #222;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
    text-transform: uppercase;
}

.avelle-demo-portfolio__breadcrumb div {
    align-items: center;
    color: #777;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    gap: 10px;
}

.avelle-demo-portfolio__breadcrumb a::after {
    color: #777;
    content: "/";
    font-weight: 400;
    margin-left: 10px;
}

.avelle-demo-portfolio__breadcrumb a,
.avelle-demo-portfolio__breadcrumb strong {
    color: #222;
    font-weight: 700;
}

.avelle-demo-portfolio__filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin-bottom: 42px;
}

.avelle-demo-portfolio__filters button {
    background: transparent;
    border: 0;
    color: #222;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    padding: 12px 18px;
    text-transform: uppercase;
}

.avelle-demo-portfolio__filters button.is-active,
.avelle-demo-portfolio__filters button:hover {
    background: #222;
    color: #fff;
}

.avelle-demo-portfolio__grid {
    display: grid;
    gap: 30px;
}

.avelle-demo-portfolio__grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-demo-portfolio__grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.avelle-demo-portfolio__grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.avelle-demo-portfolio__grid--masonry {
    align-items: start;
}

.avelle-demo-portfolio-card {
    display: block;
    overflow: hidden;
    position: relative;
}

.avelle-demo-portfolio-card[hidden] {
    display: none;
}

.avelle-demo-portfolio-card__media {
    background: #f7f7f7;
    display: block;
    position: relative;
}

.avelle-demo-portfolio-card__media img {
    display: block;
    height: auto;
    width: 100%;
}

.avelle-demo-portfolio:not(.avelle-demo-portfolio--masonry) .avelle-demo-portfolio-card__media {
    aspect-ratio: 1 / 1.24;
}

.avelle-demo-portfolio:not(.avelle-demo-portfolio--masonry) .avelle-demo-portfolio-card__media img {
    height: 100%;
    object-fit: cover;
}

.avelle-demo-portfolio-card__overlay {
    align-items: center;
    background: rgba(255, 255, 255, .86);
    display: flex;
    inset: 0;
    justify-content: center;
    opacity: 0;
    position: absolute;
    transition: opacity .25s ease;
}

.avelle-demo-portfolio-card:hover .avelle-demo-portfolio-card__overlay {
    opacity: 1;
}

.avelle-demo-portfolio-card__overlay span {
    height: 54px;
    position: relative;
    width: 54px;
}

.avelle-demo-portfolio-card__overlay span::before,
.avelle-demo-portfolio-card__overlay span::after {
    background: #222;
    content: "";
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

.avelle-demo-portfolio-card__overlay span::before {
    height: 2px;
    width: 54px;
}

.avelle-demo-portfolio-card__overlay span::after {
    height: 54px;
    width: 2px;
}

.avelle-demo-portfolio__related {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 50px;
}

.avelle-demo-portfolio__related a {
    border: 1px solid #e8e8e8;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 15px;
    text-transform: uppercase;
}

.avelle-demo-portfolio__related a.is-active,
.avelle-demo-portfolio__related a:hover {
    background: #222;
    border-color: #222;
    color: #fff;
}

@media (max-width: 991px) {
    .avelle-demo-portfolio__grid--3,
    .avelle-demo-portfolio__grid--4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .avelle-demo-feature {
        padding: 0 0 56px;
    }

    .avelle-demo-feature__breadcrumb {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 32px;
        min-height: 120px;
        padding: 24px 18px;
    }

    .avelle-demo-portfolio {
        padding: 0 0 56px;
    }

    .avelle-demo-portfolio__container-fluid {
        padding-left: 15px;
        padding-right: 15px;
    }

    .avelle-demo-portfolio__breadcrumb {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 32px;
        min-height: 120px;
        padding: 24px 18px;
    }

    .avelle-demo-portfolio__filters {
        justify-content: flex-start;
        margin-bottom: 28px;
    }

    .avelle-demo-portfolio__grid,
    .avelle-demo-portfolio__grid--2,
    .avelle-demo-portfolio__grid--3,
    .avelle-demo-portfolio__grid--4 {
        grid-template-columns: 1fr;
    }
}

/* Final PDP purchase controls override. Loaded after all Avelle component CSS. */
body.single-product .avelle-pdp-mode .avelle-quantity,
body.single-product .avelle-pdp-mode .avelle-quantity .input-group {
    background: #fff !important;
    border: 1px solid #eee !important;
    border-radius: 0 !important;
    height: 52px !important;
    width: 150px !important;
}

body.single-product .avelle-pdp-mode .avelle-quantity__control {
    align-items: center !important;
    background: #f8f8f8 !important;
    border: 0 !important;
    color: #222 !important;
    display: inline-flex !important;
    font-size: 20px !important;
    height: 50px !important;
    justify-content: center !important;
    min-width: 48px !important;
    width: 48px !important;
}

body.single-product .avelle-pdp-mode .avelle-quantity__input {
    background: #fff !important;
    border-left: 1px solid #eee !important;
    border-right: 1px solid #eee !important;
    color: #222 !important;
    flex: 0 0 54px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    height: 50px !important;
    line-height: 50px !important;
    padding: 0 !important;
    text-align: center !important;
    width: 54px !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row .avelle-product-detail__button {
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    height: 52px !important;
    letter-spacing: .02em !important;
    text-transform: uppercase !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row button.avelle-product-detail__button {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row button.avelle-product-detail__button:hover,
body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row button.avelle-product-detail__button:focus {
    background: #fff !important;
    color: #111 !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp {
    background: #fff !important;
    border-color: #111 !important;
    color: #111 !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp:hover,
body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp:focus {
    background: #111 !important;
    color: #fff !important;
}

@media (max-width: 575.98px) {
    body.single-product .avelle-pdp-mode .avelle-product-detail__purchase-row {
        grid-template-columns: 1fr !important;
    }
}

.avelle-withdrawal-page {
    margin: 0 auto;
    max-width: 920px;
    padding: 18px 0 72px;
}

.avelle-withdrawal-page__intro {
    margin-bottom: 28px;
}

.avelle-withdrawal-page__eyebrow {
    color: #777;
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.avelle-withdrawal-page__intro h2 {
    color: #111;
    font-size: clamp(30px, 4vw, 52px);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.04;
    margin: 0 0 14px;
}

.avelle-withdrawal-page__intro p,
.avelle-withdrawal-page__legal p {
    color: #666;
    font-size: 15px;
    line-height: 1.75;
    margin: 0;
}

.avelle-withdrawal-page__card {
    background: #fff;
    border: 1px solid #ece8e2;
    padding: clamp(24px, 4vw, 42px);
}

.avelle-withdrawal-page__summary {
    border-bottom: 1px solid #ece8e2;
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 28px;
    padding-bottom: 24px;
}

.avelle-withdrawal-page__summary span {
    color: #777;
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.avelle-withdrawal-page__summary strong {
    color: #111;
    display: block;
    font-size: 17px;
    font-weight: 700;
}

.avelle-withdrawal-page__notice {
    border: 1px solid #ece8e2;
    padding: 20px 22px;
}

.avelle-withdrawal-page__notice strong {
    color: #111;
    display: block;
    font-size: 16px;
    margin-bottom: 6px;
}

.avelle-withdrawal-page__notice p {
    color: #666;
    font-size: 14px;
    line-height: 1.65;
    margin: 0;
}

.avelle-withdrawal-page__notice--warning {
    background: #fbf6ef;
}

.avelle-withdrawal-page__notice--info {
    background: #f7f4ef;
}

.avelle-withdrawal-page__form {
    display: grid;
    gap: 20px;
    margin-top: 26px;
}

.avelle-withdrawal-page__fields {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.avelle-withdrawal-page__field {
    display: grid;
    gap: 8px;
}

.avelle-withdrawal-page__field span {
    color: #111;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.avelle-withdrawal-page__field .form-control {
    border: 1px solid #ded8d0;
    border-radius: 0;
    color: #111;
    font-size: 14px;
    min-height: 48px;
    padding: 11px 14px;
}

.avelle-withdrawal-page__field textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

.avelle-withdrawal-page__field .form-control:focus {
    border-color: #111;
    box-shadow: none;
}

.avelle-withdrawal-page__confirm {
    align-items: flex-start;
    color: #555;
    display: flex;
    font-size: 14px;
    gap: 12px;
    line-height: 1.6;
}

.avelle-withdrawal-page__confirm input {
    accent-color: #111;
    flex: 0 0 auto;
    height: 18px;
    margin-top: 2px;
    width: 18px;
}

.avelle-withdrawal-page__submit {
    align-items: center;
    background: #111;
    border: 1px solid #111;
    color: #fff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    justify-content: center;
    min-height: 50px;
    padding: 0 28px;
    text-transform: uppercase;
    width: fit-content;
}

.avelle-withdrawal-page__submit:hover {
    background: #2b2b2b;
    color: #fff;
}

@media (max-width: 575px) {
    .avelle-withdrawal-page__summary,
    .avelle-withdrawal-page__fields {
        grid-template-columns: 1fr;
    }

    .avelle-withdrawal-page__submit {
        width: 100%;
    }
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row button.avelle-product-detail__button,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row .avelle-product-detail__button:not(.avelle-product-detail__button--whatsapp) {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp {
    background: #fff !important;
    border-color: #111 !important;
    color: #111 !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row button.avelle-product-detail__button:hover,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row button.avelle-product-detail__button:focus,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row .avelle-product-detail__button:not(.avelle-product-detail__button--whatsapp):hover,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row .avelle-product-detail__button:not(.avelle-product-detail__button--whatsapp):focus {
    background: #fff !important;
    border-color: #111 !important;
    color: #111 !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp:hover,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-detail__purchase-row a.avelle-product-detail__button--whatsapp:focus {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

/* Multikart PDP final alignment pass: breadcrumb, gallery, quantity, tabs. */
body.single-product .avelle-product-breadcrumb.breadcrumb-section {
    background: #f8f8f8 !important;
    margin: 0 0 70px !important;
    padding: 30px 0 28px !important;
    text-align: center !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .container {
    align-items: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section h2 {
    color: #333 !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
    text-transform: capitalize !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .theme-breadcrumb {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb {
    align-items: center !important;
    background: transparent !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb-item,
body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb-item a {
    color: #777 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: .02em !important;
    line-height: 1.4 !important;
    text-transform: uppercase !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb-item + .breadcrumb-item {
    padding-left: 9px !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb-item + .breadcrumb-item::before {
    color: #999 !important;
    content: "/" !important;
    float: none !important;
    padding-right: 9px !important;
}

body.single-product .avelle-product-breadcrumb.breadcrumb-section .breadcrumb-item.active {
    color: #777 !important;
}

body.single-product .tab-product .nav-material.nav-tabs {
    background: #f8f8f8 !important;
    border: 1px solid #eee !important;
    border-bottom: 0 !important;
    gap: 0 !important;
    padding: 12px 14px 0 !important;
}

body.single-product .tab-product .nav-material.nav-tabs .nav-link {
    background: #fff !important;
    border: 1px solid #eee !important;
    border-bottom: 0 !important;
    color: #333 !important;
    font-size: 15px !important;
    height: 48px !important;
    min-width: 112px !important;
}

body.single-product .tab-product .nav-material.nav-tabs .nav-link.active,
body.single-product .tab-product .nav-material.nav-tabs .nav-link:hover,
body.single-product .tab-product .nav-material.nav-tabs .nav-link:focus {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

body.single-product .tab-product .tab-content.nav-material {
    border: 1px solid #eee !important;
    padding: 34px 28px !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-page > .container,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .collection-wrapper.product-page > .container {
    max-width: var(--avl-container, 1320px) !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-images .slick-list,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-slick .slick-list,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-images .slick-slide > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-slick .slick-slide > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-images .slick-slide > div > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-slick .slick-slide > div > div {
    background: #f8f8f8 !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-images img.img-fluid,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-slick img.img-fluid {
    display: block !important;
    height: clamp(500px, 46vw, 640px) !important;
    max-height: 640px !important;
    object-fit: contain !important;
    object-position: center top !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-thumbnails .product-gallery__item,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .slider-nav .product-gallery__item,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-thumbnails .slick-slide > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .slider-nav .slick-slide > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery__thumb {
    align-items: stretch !important;
    background: #f8f8f8 !important;
    border: 1px solid transparent !important;
    display: flex !important;
    height: 96px !important;
    justify-content: center !important;
    overflow: hidden !important;
    width: 78px !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-thumbnails .slick-current .product-gallery__item,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .slider-nav .slick-current .product-gallery__item,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-thumbnails .slick-current > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .slider-nav .slick-current > div,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery__thumb.is-active {
    border-color: #111 !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-thumbnails img,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .slider-nav img,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery__thumb img {
    height: 100% !important;
    object-fit: contain !important;
    object-position: center top !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .avelle-product-gallery-thumbnails img,
body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .slider-nav img,
body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .avelle-product-gallery__thumb img {
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .avelle-product-gallery .avelle-product-gallery-thumbnails img.img-fluid,
body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .avelle-product-gallery .bb-product-gallery-thumbnails img.img-fluid,
body.single-product .avelle-pdp-mode .avelle-product-detail__gallery .slider-nav img.img-fluid {
    object-fit: contain !important;
    object-position: center center !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .slider-nav img.img-fluid,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .bb-product-gallery-thumbnails img.img-fluid,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .avelle-product-gallery-thumbnails img.img-fluid {
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .avelle-product-gallery .slider-nav img.img-fluid,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .avelle-product-gallery .avelle-product-gallery-thumbnails img.img-fluid,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-detail__gallery .avelle-product-gallery .bb-product-gallery-thumbnails img.img-fluid {
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box {
    align-items: center !important;
    border: 1px solid #eee !important;
    padding: 28px 34px 24px !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-form-box .avelle-product-form-box__qty {
    margin: 4px 0 0 !important;
    width: 100% !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .qty-box .input-group,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-quantity .input-group {
    align-items: center !important;
    border: 1px solid #eee !important;
    border-radius: 0 !important;
    display: inline-flex !important;
    height: 48px !important;
    justify-content: center !important;
    margin: 0 auto !important;
    max-width: 150px !important;
    overflow: hidden !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .qty-box .btn,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-quantity__control {
    background: #f8f8f8 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #333 !important;
    height: 48px !important;
    min-width: 48px !important;
    width: 48px !important;
}

body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .qty-box .form-control,
body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-quantity__input {
    background: #fff !important;
    border: 0 !important;
    height: 48px !important;
    line-height: 48px !important;
    max-width: 54px !important;
    min-width: 54px !important;
    text-align: center !important;
}

@media (max-width: 991px) {
    body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .avelle-product-gallery-images img.img-fluid,
    body.single-product .avelle-pdp-mode[data-avelle-pdp-layout="accordion"] .product-slick img.img-fluid {
        height: auto !important;
        max-height: none !important;
    }
}
/* Avelle Fashion 6 mega-menu hover guard. */
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-dropdown {
    position: relative !important;
}

body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-mega-menu {
    position: static !important;
}

body:has(.avelle-fashion6-header) .avelle-fashion7-main-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-right,
body:has(.avelle-fashion6-header) .avelle-fashion7-nav,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content {
    position: relative !important;
}

body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-mega-menu:hover > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-mega-menu:focus-within > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-dropdown:hover > .tp-submenu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content li.has-dropdown:focus-within > .tp-submenu {
    display: block !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    visibility: visible !important;
}

body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > ul > li.has-mega-menu > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > div > ul > li.has-mega-menu > .avelle-mega-menu {
    left: 50% !important;
    position: absolute !important;
    top: calc(100% + 24px) !important;
    transform: translate(-50%, 10px) !important;
    z-index: 1200 !important;
}

body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > ul > li.has-mega-menu:hover > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > ul > li.has-mega-menu:focus-within > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > div > ul > li.has-mega-menu:hover > .avelle-mega-menu,
body:has(.avelle-fashion6-header) .avelle-fashion7-menu-content > div > ul > li.has-mega-menu:focus-within > .avelle-mega-menu {
    transform: translate(-50%, 0) !important;
}
