/* Keon Labels - product.css  (generated from the "Simple Custom CSS and JS" snippets; unused and overridden rules removed) */

/* ===== QUICK VIEW POPUP - COMPLETE STYLESHEET (v4.6, quick view only) ===== */
.mfp-wrap:has(.qv-card) {
    --qv-w: 540px;
    --qv-hmax: 740px;
}
@media (min-width: 700px) {
    .mfp-wrap:has(.qv-card) { --qv-w: 800px; }
}
@media (min-width: 1200px) {
    .mfp-wrap:has(.qv-card) { --qv-w: 840px; }
}
@media (min-width: 1600px) {
    .mfp-wrap:has(.qv-card) { --qv-w: 880px; }
}
body:has(.qv-card) .mfp-bg {
    background: rgba(38, 10, 52, .78);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.mfp-wrap:has(.qv-card) .mfp-container {
    padding-left: max(8px, env(safe-area-inset-left, 0px));
    padding-right: max(8px, env(safe-area-inset-right, 0px));
}
.mfp-content:has(.qv-card) {
    position: relative;
    width: calc(100% - 20px);
    width: min(calc(100% - 20px), var(--qv-w, 540px));
    max-width: none;
}
.mfp-content *:has(.qv-card) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.mfp-wrap:has(.qv-card) .mfp-close {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 30;
    display: block !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 0 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px;
    opacity: 1 !important;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(38, 10, 52, .35) !important;
    transition: transform .4s cubic-bezier(.34, 1.56, .64, 1), background-color .2s ease, box-shadow .2s ease !important;
}
.mfp-wrap:has(.qv-card) .mfp-close > * {
    display: none !important;
}
.mfp-wrap:has(.qv-card) .mfp-close::before,
.mfp-wrap:has(.qv-card) .mfp-close::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 16px !important;
    height: 2px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: #821ba0 !important;
    text-indent: 0;
    transition: background-color .2s ease !important;
}
.mfp-wrap:has(.qv-card) .mfp-close::before {
    transform: translate(-50%, -50%) rotate(45deg) !important;
}
.mfp-wrap:has(.qv-card) .mfp-close::after {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
}
.qv-card {
    container: qv / inline-size;
    --qv-css: v4-6;
    position: relative;
    max-height: calc(100vh - 40px);
    max-height: min(calc(100dvh - 40px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)), var(--qv-hmax, 740px));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #d9b8e6 transparent;
    text-align: left;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(38, 10, 52, .38);
    animation: qv-pop .42s cubic-bezier(.22, 1, .36, 1) both;
}
.qv-card > .row {
    display: block;
    margin: 0;
}
.qv-card .row::before,
.qv-card .row::after {
    content: none;
}
.qv-card .product-content {
    padding: 0 !important;
}
.qv-card .product-content > .row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0;
}
.qv-card .product-images,
.qv-card .product-information {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    min-width: 0;
}
.qv-card .product-images {
    position: static;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 16px 16px 4px !important;
    background: #f6eef9;
}
.qv-card .product-images > * {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
}
.qv-card .product-images img {
    display: block;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(65, 16, 79, .14);
}
.qv-card .product-images.type-image img {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: min(210px, 28vh);
    max-height: min(210px, 28dvh);
    margin: 0 auto;
    object-fit: contain;
}
.qv-card .product-images.type-slider img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}
.qv-card .product-images .onsale {
    top: 14px;
    left: 14px;
    right: auto;
    min-width: 0;
    min-height: 0;
    padding: 5px 12px;
    line-height: 1.4;
    border-radius: 999px;
    background: linear-gradient(100deg, #821ba0, #b33bc8);
    color: #fff;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: 0 6px 14px rgba(116, 33, 143, .3);
}
.qv-card .product-images .owl-prev,
.qv-card .product-images .owl-next {
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(38, 10, 52, .2);
    transition: background .2s ease, transform .3s cubic-bezier(.34, 1.56, .64, 1);
}
.qv-card .product-images a[href*=".pdf"],
.qv-card .product-images a.button,
.qv-card .product-images .btn,
.qv-card .single_add_to_cart_button {
    position: relative;
    overflow: hidden;
    border: 0 !important;
    border-radius: 999px !important;
    background:
        linear-gradient(105deg, transparent 38%, rgba(255, 255, 255, .42) 50%, transparent 62%) -160% 0 / 60% 100% no-repeat,
        linear-gradient(100deg, #821ba0, #b33bc8 50%, #821ba0) 0 0 / 200% 100% no-repeat !important;
    color: #fff !important;
    text-decoration: none !important;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(116, 33, 143, .28) !important;
    transition:
        background-position .9s cubic-bezier(.22, 1, .36, 1),
        transform .35s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow .3s ease !important;
    -webkit-tap-highlight-color: transparent;
}
.qv-card .product-images a[href*=".pdf"],
.qv-card .product-images a.button,
.qv-card .product-images .btn {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100% !important;
    margin: 0 !important;
    text-align: center;
    font-weight: 800;
    letter-spacing: .03em;
}
.qv-card .product-images a[href*=".pdf"] > i,
.qv-card .product-images a[href*=".pdf"] > svg,
.qv-card .product-images a[href*=".pdf"] > img,
.qv-card .product-images a[href*=".pdf"]::before {
    display: inline-block;
}
.qv-card .single_add_to_cart_button {
    flex: 1 1 170px;
    height: auto;
    min-height: 46px;
    padding: 12px 22px;
    font-size: 13.5px;
    font-weight: 800;
    letter-spacing: .04em;
    line-height: 1.2;
    text-transform: none;
}
.qv-card .single_add_to_cart_button.disabled,
.qv-card .single_add_to_cart_button.wc-variation-selection-needed,
.qv-card .single_add_to_cart_button.wc-variation-is-unavailable,
.qv-card .single_add_to_cart_button:disabled {
    background: #eadcf0 !important;
    color: #8b6d98 !important;
    box-shadow: none !important;
    cursor: not-allowed;
    opacity: 1;
    transform: none !important;
}
.qv-card .product-images a[href*=".pdf"]:active,
.qv-card .product-images a.button:active,
.qv-card .product-images .btn:active,
.qv-card .single_add_to_cart_button:not(.disabled):not(:disabled):active {
    transform: scale(.96) !important;
    box-shadow: 0 3px 8px rgba(116, 33, 143, .3) !important;
    transition-duration: .1s !important;
}
.qv-card .product-information {
    container: qvi / inline-size;
    display: flex;
    flex-direction: column;
    padding: 18px 16px 20px !important;
    background: linear-gradient(180deg, #fbf8fc, #ffffff 45%);
}
.qv-card .product-information > * {
    animation: qv-up .5s cubic-bezier(.22, 1, .36, 1) both;
}
.qv-card .product-information > *:nth-child(1) { animation-delay: .06s; }
.qv-card .product-information > *:nth-child(2) { animation-delay: .11s; }
.qv-card .product-information > *:nth-child(3) { animation-delay: .16s; }
.qv-card .product-information > *:nth-child(4) { animation-delay: .21s; }
.qv-card .product-information > *:nth-child(5) { animation-delay: .26s; }
.qv-card .product-information > *:nth-child(6) { animation-delay: .31s; }
.qv-card .product-information > *:nth-child(7) { animation-delay: .36s; }
.qv-card .product-information > *:nth-child(8) { animation-delay: .41s; }
.qv-card .product-name,
.qv-card .price,
.qv-card p,
.qv-card label,
.qv-card select,
.qv-card input,
.qv-card table,
.qv-card .qv-cats a,
.qv-card .qv-trust,
.qv-card .single_add_to_cart_button,
.qv-card .show-full-details {
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
}
.qv-card .product-navigation {
    display: none !important;
}
.qv-card .qv-cats {
    margin: 0 0 8px;
    padding-right: 44px;
}
.qv-card .qv-cats a {
    display: inline-flex;
    align-items: center;
    margin: 0 6px 6px 0;
    padding: 5px 12px;
    border-radius: 999px;
    background: #f8ecfa;
    border: 1px solid rgba(130, 27, 160, .14);
    color: #821ba0;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.qv-card .product-name {
    margin: 0 0 8px;
    color: #21192a;
    font-size: clamp(19px, 5.4cqi, 24px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.qv-card .star-rating {
    margin: 0 0 8px;
}
.qv-card .price del {
    margin-right: 6px;
    color: #9a90a0;
    font-size: .68em;
    font-weight: 600;
    opacity: .8;
}
.qv-card .price ins {
    text-decoration: none;
}
.qv-card .product-information p {
    margin: 0 0 6px;
    color: #716a76;
    font-size: 14px;
    line-height: 1.6;
}
.qv-card form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 12px;
    margin: 10px 0 0;
}
.qv-card .woocommerce-variation-add-to-cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 12px;
    width: 100%;
}
.qv-card form.cart > *,
.qv-card .woocommerce-variation-add-to-cart > * {
    min-width: 0;
}
.qv-card form.cart > *:not(.quantity):not(.single_add_to_cart_button):not(input),
.qv-card .woocommerce-variation-add-to-cart > *:not(.quantity):not(.single_add_to_cart_button):not(input) {
    flex: 0 0 100%;
    width: 100%;
}
.qv-card .single_variation_wrap,
.qv-card .woocommerce-variation {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}
.qv-card .single_variation:not(:has(*)),
.qv-card .woocommerce-variation:not(:has(*)) {
    display: none !important;
}
.qv-card .reset_variations[style*="hidden"] {
    display: none !important;
}
.qv-card .variations_form,
.qv-card form.cart,
.qv-card table.variations,
.qv-card .woocommerce-variation-add-to-cart {
    border: 0 !important;
    box-shadow: none !important;
}
.qv-card .variations_form {
    margin-bottom: 0 !important;
}
.qv-card .product-information hr {
    display: none;
}
.qv-card .product-information *:has(> table:not(.variations)) {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
}
.qv-card table.variations {
    display: block;
    width: 100%;
    margin: 0 0 2px !important;
}
.qv-card table.variations tbody {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}
.qv-card table.variations tr {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}
.qv-card table.variations th,
.qv-card table.variations td {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
}
.qv-card table.variations label {
    margin: 0;
    color: #21192a;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.qv-card select {
    width: 100%;
    height: 44px;
    padding: 0 34px 0 14px;
    border: 1.5px solid #e6d3ec;
    border-radius: 12px;
    background-color: #faf7fb;
    color: #21192a;
    font-size: 14px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    box-shadow: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.qv-card select:focus {
    outline: none;
    border-color: #821ba0;
    box-shadow: 0 0 0 4px rgba(179, 59, 200, .18);
}
.qv-card .product-information table:not(.variations) {
    display: table !important;
    width: 100% !important;
    max-width: 100%;
    margin: 0 !important;
    border: 1px solid #ead8f0 !important;
    border-radius: 14px;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    background: #fff !important;
    table-layout: auto;
}
.qv-card .product-information table:not(.variations) thead { display: table-header-group !important; }
.qv-card .product-information table:not(.variations) tbody { display: table-row-group !important; }
.qv-card .product-information table:not(.variations) tr    { display: table-row !important; }
.qv-card .product-information table:not(.variations) th,
.qv-card .product-information table:not(.variations) td {
    display: table-cell !important;
    float: none !important;
    position: static !important;
    width: auto !important;
    padding: 10px 14px !important;
    border: 0 !important;
    border-top: 1px dashed #efe1f3 !important;
    background: transparent;
    color: #21192a;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
    vertical-align: middle;
    overflow-wrap: anywhere;
}
.qv-card .product-information table:not(.variations) th::before,
.qv-card .product-information table:not(.variations) td::before {
    content: none !important;
}
.qv-card .product-information table:not(.variations) thead th,
.qv-card .product-information table:not(.variations) tr:first-child th {
    border-top: 0 !important;
    background: #f3e3f7 !important;
    color: #6a1483 !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.qv-card .product-information table:not(.variations) td:last-child,
.qv-card .product-information table:not(.variations) th:last-child {
    text-align: right !important;
}
.qv-card .product-information table:not(.variations) tbody tr:nth-child(even) td {
    background: #fcf9fd;
}
.qv-card .product-information table:not(.variations) tr[class*="active"] td,
.qv-card .product-information table:not(.variations) tr[class*="selected"] td,
.qv-card .product-information table:not(.variations) tr[class*="current"] td,
.qv-card .product-information table:not(.variations) tr[class*="highlight"] td,
.qv-card .product-information table:not(.variations) td[class*="active"],
.qv-card .product-information table:not(.variations) td[class*="selected"] {
    background: linear-gradient(100deg, #821ba0, #b33bc8) !important;
    color: #fff !important;
    font-weight: 800;
    border-top-color: transparent !important;
}
.qv-card .quantity {
    overflow: hidden;
    border: 1.5px solid #e6d3ec;
    border-radius: 999px;
    background: #faf7fb;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.qv-card .quantity:focus-within {
    border-color: #821ba0;
    box-shadow: 0 0 0 4px rgba(179, 59, 200, .18);
}
.qv-card .quantity input.qty {
    outline: none;
    -moz-appearance: textfield;
}
.qv-card .quantity input.qty::-webkit-outer-spin-button,
.qv-card .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.qv-card .qv-qty-btn {
    position: relative;
    flex: 0 0 42px;
    width: 42px;
    height: 100%;
    padding: 0;
    margin: 0;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #821ba0 !important;
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    transition: background-color .2s ease, transform .15s cubic-bezier(.34, 1.56, .64, 1), opacity .2s ease;
}
.qv-card .qv-qty-btn::before,
.qv-card .qv-qty-btn.plus::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 2px;
    background: currentColor;
    transform: translate(-50%, -50%);
}
.qv-card .qv-qty-btn::before {
    width: 12px;
    height: 2px;
}
.qv-card .qv-qty-btn.plus::after {
    width: 2px;
    height: 12px;
}
.qv-card .qv-qty-btn:active {
    background: #ead0f2 !important;
    transform: scale(.86);
}
.qv-card .qv-qty-btn.is-disabled {
    opacity: .3;
    cursor: not-allowed;
}
.qv-card .show-full-details {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    margin-top: 10px;
    padding-bottom: 2px;
    background: linear-gradient(currentColor, currentColor) no-repeat 0 78% / 0 2px;
    color: #821ba0 !important;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
    transition: background-size .35s cubic-bezier(.22, 1, .36, 1);
}
.qv-card .show-full-details::after {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23821ba0' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M14 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: transform .3s cubic-bezier(.34, 1.56, .64, 1);
}
.qv-card .qv-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #f0e6f2;
    color: #6b5a72;
    font-size: 12px;
    font-weight: 700;
}
.qv-card .qv-trust span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.qv-card .qv-trust span::before {
    content: '';
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23821ba0' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.qv-card a:focus-visible,
.qv-card button:focus-visible,
.qv-card input:focus-visible,
.mfp-wrap:has(.qv-card) .mfp-close:focus-visible {
    outline: 3px solid #b33bc8;
    outline-offset: 2px;
}
@container qv (min-width: 640px) {
    .qv-card .product-content:has(.product-images) {
        background: linear-gradient(90deg, #f6eef9 0 42%, #fbf8fc 42% 100%);
    }
    .qv-card .product-content > .row {
        align-items: stretch;
    }
    .qv-card .product-images {
        flex: 0 0 42% !important;
        width: 42% !important;
        max-width: 42% !important;
        position: static;
        align-self: flex-start;
        justify-content: flex-start;
        padding: clamp(18px, 3.4cqi, 28px) !important;
        background: transparent;
    }
    .qv-card .product-images.type-image img {
        width: 100% !important;
        max-height: none;
    }
    .qv-card .product-information {
        flex: 0 0 58% !important;
        width: 58% !important;
        max-width: 58% !important;
        padding: clamp(22px, 4cqi, 32px) clamp(18px, 3.8cqi, 30px) clamp(20px, 3.4cqi, 26px) !important;
        background: transparent;
    }
    .qv-card .product-information:only-child {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        background: linear-gradient(180deg, #fbf8fc, #ffffff 45%);
    }
    .qv-card .qv-cats {
        padding-right: 0;
    }
    .qv-card .show-full-details {
        margin-top: 14px;
    }
}
@container qvi (min-width: 400px) {
    .qv-card table.variations tbody {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@container qvi (max-width: 419px) {
    .qv-card .quantity {
        justify-content: space-between;
    }
    .qv-card .qv-qty-btn {
        flex-basis: 56px;
        width: 56px;
    }
    .qv-card .single_add_to_cart_button {
        flex: 1 1 100%;
    }
}
@container qvi (max-width: 359px) {
    .qv-card .product-information table:not(.variations) th,
    .qv-card .product-information table:not(.variations) td {
        padding: 9px 12px !important;
        font-size: 12.5px;
    }
}
@media (min-width: 768px) {
    .qv-card {
        border-radius: 20px;
    }
    .mfp-wrap:has(.qv-card) .mfp-close {
        top: 12px !important;
        right: 12px !important;
    }
}
@media (min-width: 700px) {
    .mfp-content:has(.qv-card) {
        width: calc(100% - 48px);
        width: min(calc(100% - 48px), var(--qv-w, 800px));
    }
}
@media (orientation: landscape) and (max-height: 520px) {
    .qv-card {
        max-height: calc(100vh - 16px);
        max-height: calc(100dvh - 16px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    }
    .qv-card .product-content:has(.product-images) {
        background: linear-gradient(90deg, #f6eef9 0 38%, #fbf8fc 38% 100%);
    }
    .qv-card .product-content > .row {
        align-items: stretch;
    }
    .qv-card .product-images {
        flex: 0 0 38% !important;
        width: 38% !important;
        max-width: 38% !important;
        align-self: flex-start;
        justify-content: flex-start;
        padding: 14px !important;
        background: transparent;
    }
    .qv-card .product-images.type-image img {
        width: auto !important;
        max-height: calc(100vh - 120px);
        max-height: calc(100dvh - 120px);
    }
    .qv-card .product-information {
        flex: 0 0 62% !important;
        width: 62% !important;
        max-width: 62% !important;
        padding: 16px 18px 18px !important;
        background: transparent;
    }
    .qv-card .product-information:only-child {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .qv-card .product-name {
        font-size: 19px;
    }
    .qv-card .qv-cats {
        padding-right: 0;
    }
    .qv-card .qv-trust {
        display: none;
    }
    .mfp-wrap:has(.qv-card) .mfp-close {
        top: 8px !important;
        right: 8px !important;
    }
}
@media (pointer: coarse) {
    .qv-card select,
    .qv-card input,
    .qv-card .quantity input.qty {
        font-size: 16px;
    }
    .qv-card select {
        height: 48px;
    }
    .qv-card .qv-qty-btn {
        flex-basis: 48px;
        width: 48px;
    }
    .qv-card .qv-cats a {
        padding: 7px 14px;
    }
    .mfp-wrap:has(.qv-card) .mfp-close {
        width: 44px !important;
        height: 44px !important;
    }
}
@media (hover: hover) {
    .mfp-wrap:has(.qv-card) .mfp-close:hover {
        background: #821ba0 !important;
        transform: rotate(90deg) scale(1.08);
        box-shadow: 0 6px 18px rgba(116, 33, 143, .45) !important;
    }
    .mfp-wrap:has(.qv-card) .mfp-close:hover::before,
    .mfp-wrap:has(.qv-card) .mfp-close:hover::after {
        background: #fff !important;
    }
    .mfp-wrap:has(.qv-card) .mfp-close:active {
        transform: rotate(90deg) scale(.92);
    }
    .qv-card .product-images a[href*=".pdf"]:hover,
    .qv-card .product-images a.button:hover,
    .qv-card .product-images .btn:hover,
    .qv-card .single_add_to_cart_button:not(.disabled):not(:disabled):hover {
        background-position: 260% 0, 100% 0 !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 12px 26px rgba(116, 33, 143, .4) !important;
        color: #fff !important;
    }
    .qv-card .product-images a[href*=".pdf"]:hover,
    .qv-card .product-images a.button:hover,
    .qv-card .product-images .btn:hover {
        width: 100% !important;
        height: auto !important;
        min-height: 44px !important;
        padding: 10px 22px !important;
        font-size: 14px !important;
        letter-spacing: .03em !important;
    }
    .qv-card .product-images a[href*=".pdf"]:hover > i,
    .qv-card .product-images a[href*=".pdf"]:hover > svg,
    .qv-card .product-images a[href*=".pdf"]:hover > img,
    .qv-card .product-images a[href*=".pdf"]:hover::before {
        animation: qv-bob .8s ease-in-out infinite;
    }
    .qv-card .qv-qty-btn:not(.is-disabled):hover {
        background: #f3e3f7 !important;
    }
    .qv-card .qv-cats a:hover {
        background: #821ba0;
        border-color: #821ba0;
        color: #fff;
    }
    .qv-card .product-images .owl-prev:hover,
    .qv-card .product-images .owl-next:hover {
        background: #f8ecfa;
        transform: scale(1.08);
    }
    .qv-card .product-information table:not(.variations) tbody tr:hover td:not([class*="active"]):not([class*="selected"]) {
        background: #f8f0fa;
    }
    .qv-card .show-full-details:hover {
        background-size: 100% 2px;
    }
    .qv-card .show-full-details:hover::after {
        transform: translateX(4px);
    }
}
@keyframes qv-pop {
    from { opacity: 0; transform: translateY(18px) scale(.97); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes qv-up {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes qv-bob {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(3px); }
}
@keyframes qv-price-flash {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .qv-card,
    .qv-card .product-information > *,
    .qv-card .product-images a,
    .qv-card .single_add_to_cart_button,
    .qv-card .qv-qty-btn,
    .qv-card .show-full-details,
    .qv-card .show-full-details::after,
    .qv-card .product-images a > *,
    .qv-card .qv-price-box.is-updating .qv-price-value,
    .qv-card .reset_variations,
    .qv-card .reset_variations::before,
    .mfp-wrap:has(.qv-card) .mfp-close {
        animation: none !important;
        transition: none !important;
    }
}
.qv-card .product-images a[href*=".pdf"] img,
.qv-card .product-images a.button img,
.qv-card .product-images .btn img {
    width: 18px !important;
    height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    flex-shrink: 0;
}
.qv-card .product-images a[href*=".pdf"] svg,
.qv-card .product-images a[href*=".pdf"] i {
    width: 18px;
    height: 18px;
    font-size: 16px;
    flex-shrink: 0;
}
.qv-card .product-images a[href*=".pdf"],
.qv-card .product-images a.button,
.qv-card .product-images .btn {
    box-sizing: border-box !important;
    height: auto !important;
    min-height: 44px !important;
    padding: 10px 22px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    scale: none !important;
    zoom: 1 !important;
}
.qv-card .quantity:not(:has(.qv-qty-btn)) input.qty {
    -moz-appearance: number-input;
    appearance: auto;
    width: 72px;
    padding: 0 6px;
}
.qv-card .quantity:not(:has(.qv-qty-btn)) input.qty::-webkit-inner-spin-button,
.qv-card .quantity:not(:has(.qv-qty-btn)) input.qty::-webkit-outer-spin-button {
    -webkit-appearance: inner-spin-button;
    opacity: 1;
    margin: 0;
    height: 30px;
}
.qv-card .reset_variations {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 7px;
    box-sizing: border-box;
    width: auto !important;
    min-width: 0 !important;
    height: 30px;
    margin: 8px 0 0 !important;
    padding: 0 14px 0 11px !important;
    border: 1.5px solid rgba(130, 27, 160, .28) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: nowrap;
    transform: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}
.qv-card .reset_variations > * {
    display: none !important;
}
.qv-card .reset_variations::before {
    content: '';
    display: inline-block;
    flex-shrink: 0;
    width: 9px;
    height: 9px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23821ba0' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 5l14 14M19 5L5 19'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: transform .35s cubic-bezier(.34, 1.56, .64, 1);
}
.qv-card .reset_variations::after {
    content: 'Clear';
    color: #821ba0;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .03em;
    line-height: 1;
    transition: color .25s ease;
}
.qv-card .reset_variations:active {
    transform: scale(.96);
}
@media (hover: hover) {
    .qv-card .reset_variations:hover {
        background: #821ba0 !important;
        border-color: #821ba0 !important;
        box-shadow: 0 6px 14px rgba(116, 33, 143, .3);
        transform: none;
    }
    .qv-card .reset_variations:hover::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 5l14 14M19 5L5 19'/%3E%3C/svg%3E");
        transform: rotate(90deg);
    }
    .qv-card .reset_variations:hover::after {
        color: #fff;
    }
}
.qv-card .qv-price-box {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px 14px;
    min-height: 64px;
    margin: 4px 0 14px;
    padding: 12px 16px 12px 22px;
    overflow: hidden;
    border: 1px solid #ead8f0;
    border-radius: 16px;
    background: linear-gradient(135deg, #ffffff 0%, #f8ecfa 100%);
    box-shadow: 0 8px 22px rgba(116, 33, 143, .08);
}
.qv-card .qv-price-box::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 5px;
    background: linear-gradient(180deg, #821ba0, #b33bc8);
}
.qv-card .qv-price-label {
    color: #6b5a72;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.qv-card .qv-price-value {
    min-width: 0;
    margin-left: auto;
    text-align: right;
}
.qv-card .qv-price-value .price {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 2px 8px;
    margin: 0 !important;
    color: #821ba0;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: clamp(22px, 6cqi, 28px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.1;
}
.qv-card .qv-price-value .woocommerce-Price-amount {
    white-space: nowrap;
}
.qv-card .qv-price-value .woocommerce-price-suffix,
.qv-card .qv-price-value .price small {
    display: inline-flex !important;
    align-items: center;
    padding: 3px 9px;
    border-radius: 999px;
    background: #f3e3f7;
    color: #6a1483 !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .05em;
    line-height: 1.3;
    text-transform: uppercase;
}
.qv-card .qv-price-value .price del {
    order: -1;
    margin-right: 2px;
    color: #9a90a0;
    font-size: .55em;
    font-weight: 600;
    opacity: .8;
}
.qv-card .qv-price-value .price ins {
    text-decoration: none;
}
.qv-card .qv-price-box.is-updating .qv-price-value {
    animation: qv-price-flash .45s ease both;
}
.qv-card:has(.qv-price-box.is-live) .woocommerce-variation-price {
    display: none !important;
}
.qv-card .quantity {
    display: inline-flex !important;
    flex: 0 0 152px !important;
    flex-wrap: nowrap !important;
    align-items: center;
    box-sizing: border-box;
    width: 152px !important;
    min-width: 152px !important;
    max-width: none !important;
    height: 46px !important;
    margin: 0 !important;
}
.qv-card .quantity .qv-qty-btn {
    display: block !important;
    visibility: visible !important;
    opacity: 1;
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 100% !important;
    font-size: 0;
    line-height: 0;
}
.qv-card .quantity .qv-qty-btn.is-disabled {
    opacity: .3;
}
.qv-card .quantity input.qty {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #21192a !important;
    -webkit-text-fill-color: #21192a;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-align: center !important;
    -moz-appearance: textfield;
    appearance: textfield;
}
.qv-card .quantity .qv-qty-btn.minus { order: 0; }
.qv-card .quantity input.qty         { order: 1; }
.qv-card .quantity .qv-qty-btn.plus  { order: 2; }
@media (pointer: coarse) {
    .qv-card .quantity input.qty {
        font-size: 16px !important;
    }
    .qv-card .quantity {
        flex: 0 0 164px !important;
        width: 164px !important;
        min-width: 164px !important;
    }
    .qv-card .quantity .qv-qty-btn {
        flex: 0 0 48px !important;
        width: 48px !important;
        min-width: 48px !important;
    }
    .qv-card .reset_variations {
        height: 40px;
        padding: 0 16px 0 13px !important;
    }
    .qv-card .show-full-details {
        min-height: 44px;
    }
}
@container qvi (max-width: 419px) {
    .qv-card .quantity {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 0 !important;
    }
}
.qv-card:has(form.variations_form) .qv-price-value:empty::before {
    content: 'Select options';
    color: #8b6d98;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
}
.qv-card .quantity > :is(.minus, .plus, button, a, input[type="button"]):not(.qv-qty-btn) {
    display: none !important;
}
.qv-card .quantity::before,
.qv-card .quantity::after {
    content: none !important;
    display: none !important;
}
.qv-card .quantity .qv-qty-btn {
    position: relative !important;
    overflow: hidden;
    padding: 0 !important;
    box-shadow: none !important;
    text-indent: -9999px;
    color: #821ba0 !important;
}
.qv-card .quantity .qv-qty-btn > * {
    display: none !important;
}
.qv-card .quantity .qv-qty-btn.minus::after {
    content: none !important;
    display: none !important;
}
.qv-card .quantity .qv-qty-btn::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 12px !important;
    height: 2px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: currentColor !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: translate(-50%, -50%) !important;
}
.qv-card .quantity .qv-qty-btn.plus::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 2px !important;
    height: 12px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: currentColor !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: translate(-50%, -50%) !important;
}

/* ===== Cabinetry / Joinery Labels page — v1.3 ===== */
@media (min-width:700px){
    .content-page .kk-card > .content-product{
        width:100%!important;max-width:430px!important;height:100%!important;
        margin:0 auto!important;flex:1 1 auto!important;
        container-type:inline-size;container-name:pcard;
    }
}
@media (max-width:699.98px){
    .content-page .kk-card > .content-product{max-width:480px!important}
}

/* ===== A4 LASER LABEL SHEETS — LABEL INFO & MAIN (postid-22855 & page-id-23375) ===== */
body.page-id-23375 .products-loop.products-grid {
	padding-left: 0 !important;
	padding-right: 0 !important;
	column-gap: clamp(10px, 2vw, 20px);
	row-gap: 24px !important;
}
body.page-id-23375 .products-loop.products-grid > * { min-width: 0; }
body.page-id-23375 .products-loop.products-grid img { max-width: 100%; height: auto; }
@media (max-width: 699.98px) {
	body.page-id-23375 .mfp-wrap:has(.qv-card),
	body.postid-22855 .mfp-wrap:has(.qv-card) { --qv-w: 92vw; --qv-hmax: 82dvh; }
	body.page-id-23375 .mfp-content:has(.qv-card),
	body.postid-22855 .mfp-content:has(.qv-card) { width: var(--qv-w, 92vw); }
	.qv-card { border-radius: 14px; }
	.qv-card .product-images { padding: 12px 12px 4px !important; gap: 8px; }
	.qv-card .product-images.type-image img {
		max-height: 120px;
		max-height: min(120px, 18dvh);
	}
	.qv-card .product-images a[href*=".pdf"],
	.qv-card .product-images a.button,
	.qv-card .product-images .btn { min-height: 40px !important; font-size: 13px !important; }
	.qv-card .product-information { padding: 12px 14px 14px !important; }
	.qv-card .product-name { font-size: 17px !important; margin-bottom: 6px; }
	.qv-card .product-information p { font-size: 13px; }
	.qv-card .qv-price-box { min-height: 0; padding: 9px 12px 9px 16px; margin: 2px 0 10px; }
	.qv-card .qv-price-value .price { font-size: 20px; }
	.qv-card .product-information table:not(.variations) th,
	.qv-card .product-information table:not(.variations) td {
		padding: 7px 10px !important;
		font-size: 12px !important;
	}
	.qv-card form.cart { gap: 10px; margin-top: 6px; }
	.qv-card select { height: 40px; font-size: 13.5px; }
	.qv-card .single_add_to_cart_button { min-height: 42px; flex: 1 1 100%; }
	.qv-card .qv-trust { display: none; }
}

/* ===== KEON BASKET / CART PAGE — v39 FULL CSS ===== */
html:has(body.page-id-16727) { overflow-x: clip; }
html body.page-id-16727 .woocommerce > .row > [class*="col-"] {
	display: block !important;
	box-sizing: border-box;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	min-width: 0;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
body.page-id-16727 .woocommerce > .row > .col-md-6 > .row > [class*="col-"] { padding-left: 0; padding-right: 0; }
@media (max-width: 991.98px) {
	html body.page-id-16727 table.shop_table.cart td.product-name .cart-item-details > :not(.variation) {
		display: block;
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* ===== Contact page ===== */
body.page-id-16632 .kc-card--info .wpb_widgetised_column,
body.page-id-16632 .kc-card--info .zoom-social-icons-widget,
body.page-id-16632 .kc-card--info [id^="zoom-social-icons-widget"] {
	display: none !important;
}

/* ===== KEON — LASER/INKJET LABELS PAGE ACCORDION + CONTENT FIXES ===== */
.kk-shape-scrim {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(33, 25, 42, .22);
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s ease;
}
.kk-shape-scrim.is-open {
    opacity: 1;
    pointer-events: auto;
}
.kk-size-go__arrow {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
    transition: transform .3s cubic-bezier(.22, 1, .36, 1), opacity .2s ease;
}
.kk-size-go__label {
    transition: opacity .2s ease, transform .2s ease;
}
.kk-size-go:not([aria-disabled="true"]):hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(118, 34, 142, .36);
}
.kk-size-go:not([aria-disabled="true"]):hover .kk-size-go__arrow {
    transform: translateX(4px);
}
.kk-size-go:not([aria-disabled="true"]):active {
    transform: scale(.97);
}
.kk-size-go:focus-visible {
    outline: 3px solid rgba(118, 34, 142, .35);
    outline-offset: 2px;
}
.kk-size-go[aria-disabled="true"] {
    background: #ece3ee;
    color: #a58bb0;
    box-shadow: none;
    cursor: not-allowed;
}
.kk-size-go[aria-disabled="true"] .kk-size-go__arrow { opacity: .45; }
.kk-size-go.is-ready {
    animation: kk-ready .5s cubic-bezier(.34, 1.56, .64, 1);
}
@keyframes kk-ready {
    0%   { transform: scale(.95); }
    60%  { transform: scale(1.03); }
    100% { transform: scale(1); }
}
.kk-size-go.is-denied {
    animation: kk-shake .45s cubic-bezier(.36, .07, .19, .97);
}
.keon-custom-select.kk-nudge .keon-custom-select__trigger {
    animation: kk-shake .45s cubic-bezier(.36, .07, .19, .97);
    box-shadow: 0 0 0 3px rgba(118, 34, 142, .25);
}
@keyframes kk-shake {
    10%, 90% { transform: translateX(-1px); }
    20%, 80% { transform: translateX(3px); }
    30%, 50%, 70% { transform: translateX(-5px); }
    40%, 60% { transform: translateX(5px); }
}
.kk-size-go.is-loading { pointer-events: none; }
.kk-size-go.is-loading .kk-size-go__label,
.kk-size-go.is-loading .kk-size-go__arrow {
    opacity: 0;
    transform: translateY(-6px);
}
.kk-size-go.is-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border: 3px solid rgba(255, 255, 255, .35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: kk-spin .7s linear infinite;
}
@keyframes kk-spin {
    to { transform: rotate(360deg); }
}
.kk-shape-tab-btn {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    white-space: nowrap;
    padding: 20px 11px;
    border: 0;
    border-radius: 12px 0 0 12px;
    background: linear-gradient(100deg, #821ba0, #b33bc8);
    color: #fff;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: -6px 6px 18px rgba(65, 16, 79, .25);
    transition: transform .42s cubic-bezier(.5, 0, .75, 0), box-shadow .3s ease;
    z-index: 95;
}
.kk-shape-tab-btn svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    transform: rotate(90deg);
    transition: transform .5s cubic-bezier(.16, 1, .3, 1);
}
@media (prefers-reduced-motion: reduce) {
    .content-page .sidebar-widget:has(.printer-label-container) *,
    .kk-shape-scrim,
    .kk-size-go,
    .kk-size-go::after {
        animation-duration: .01ms !important;
        animation-delay: 0s !important;
        transition-duration: .01ms !important;
        transition-delay: 0s !important;
    }
}

/* ===== TESTIMONIALS PAGE — REVISION 31 ===== */
@media (min-width: 768px) {
  body.page-id-49680 .page-heading.bc-type-5 .parallax-bg,
  body.page-id-49680 .page-heading.bc-type-5 .bg-parallax,
  body.page-id-49680 .page-heading.bc-type-5 [class*="parallax"] {
    transform: none !important;
    top: 0 !important;
    background-attachment: scroll !important;
  }
}

/* ===== CATEGORY / CONTENT PAGE — v3 REFINEMENT ===== */
.content-page .sidebar-widget .searchform .dgwt-wcas-suggestions-wrapp,
.content-page .sidebar-widget .searchform .ui-autocomplete,
.content-page .sidebar-widget .searchform .search-suggestions,
.content-page .sidebar-widget .searchform .autocomplete-suggestions,
.content-page .sidebar-widget .searchform [class*="suggest"],
.content-page .sidebar-widget .searchform [class*="autocomplete"] {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  border-radius: 14px !important;
}
.content-page .sidebar-widget .searchform [class*="suggest"]::before,
.content-page .sidebar-widget .searchform [class*="suggest"]::after,
.content-page .sidebar-widget .searchform [class*="autocomplete"]::before,
.content-page .sidebar-widget .searchform [class*="autocomplete"]::after {
  display: none !important;
}
.page-heading.bc-type-5 .col-md-12 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* ===== PRODUCT PAGE — RESPONSIVE REVISION (full file) ===== */
body.single-product{
    --keon-purple:#71248d;--keon-purple-2:#9b2fb8;--keon-ink:#2f2558;--keon-line:#e6dff0;
    --keon-gutter:clamp(16px,4vw,48px);
    --keon-sticky-top:100px;
    font-family:'Plus Jakarta Sans',Arial,sans-serif;
    -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
body.single-product #product>.row>.product-content>.row{display:flex;align-items:flex-start;width:100%;max-width:none;margin:70px auto 42px}
body.single-product .product-images{display:flex!important;flex-direction:column!important;contain:layout;height:clamp(520px,56vw,720px)!important}
body.single-product .product-images>.images{flex:1 1 auto!important;min-height:0!important;height:100%!important}
body.single-product .product-images .product-image-wrapper,body.single-product .product-images .woocommerce-product-gallery__wrapper{border:1px solid var(--keon-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;flex:1 1 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;max-height:100%!important;min-width:0!important;overflow:hidden!important;margin-top:60px}
body.single-product .product-images img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:827px!important;min-width:0!important;min-height:0!important;object-fit:contain!important}
body.single-product .product_title.entry-title{
    margin:0 0 6px;
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:8px;
    color:var(--keon-purple);
    font-size:clamp(28px,3vw,38px);
    font-weight:800;
    line-height:1.08;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
}
body.single-product .product_title.entry-title:before{
    content:'RECTANGLE · SELF ADHESIVE';
    display:inline-block;
    order:-1;
    color:#8a7d99;
    font-size:11px;
    font-weight:800;
    letter-spacing:.04em;
    white-space:nowrap;
}
body.single-product p.price{margin:0 0 12px;color:var(--keon-purple);font-size:26px;font-weight:800;line-height:1.2}
body.single-product p.price .woocommerce-price-suffix{display:block;margin-top:8px;color:#79728e;font-size:13px;font-weight:500}
body.single-product .product-information .cart{display:flex;flex-wrap:wrap;gap:0;width:100%;margin:0;padding:0;border:0;float:none}
body.single-product .product-information .cart>table.variations,body.single-product .product-information .cart>.single_variation_wrap{flex:0 0 100%;width:100%}
body.single-product .single_variation_wrap{width:100%;margin:0;padding:0;float:none}
body.single-product table.variations,body.single-product table.variations tbody,body.single-product table.variations tr,body.single-product table.variations th,body.single-product table.variations td{display:block;width:100%;border:0}
body.single-product table.variations{margin:0}
body.single-product table.variations tr{margin:0 0 18px}
body.single-product table.variations th.label{padding:0 0 6px;text-align:left}
body.single-product table.variations th.label label{margin:0;color:var(--keon-ink);font-size:12px;font-weight:700}
body.single-product table.variations td.value{padding:0}
body.single-product .reset_variations{
    visibility:visible!important;
    opacity:1!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-height:36px!important;
    margin:8px 0 0!important;
    padding:9px 18px!important;
    border:1.5px solid var(--keon-purple)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:var(--keon-purple)!important;
    font-size:11.5px!important;
    font-weight:800!important;
    letter-spacing:.05em!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    line-height:1!important;
    box-shadow:0 2px 6px rgba(113,36,141,.08)!important;
    transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
body.single-product .reset_variations:hover{
    background:var(--keon-purple)!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(113,36,141,.22)!important;
    transform:translateY(-1px)!important;
}
body.single-product .reset_variations:active{transform:translateY(0) scale(.97)!important}
body.single-product .tabs{max-width:1180px;margin:0 auto 36px}
body.single-product .tabs-nav{display:none}
body.single-product .tab-content{display:block!important}
body.single-product .tab-content-inner{padding:26px;border:1px solid var(--keon-line);border-radius:10px}
body.single-product .page-heading.bc-type-5{display:none!important}
body.single-product #product.container{width:min(1220px,calc(100% - (var(--keon-gutter) * 2)))!important;margin:0 auto!important;padding:0!important}
body.single-product #product.container>.page-content{padding-top:150px!important}
body.single-product #product.container .product-content{width:100%!important;padding:0!important}
body.single-product #product.container .product-images,body.single-product #product.container .product-information{float:none!important;max-width:none!important;box-sizing:border-box!important;min-width:0!important}
body.single-product .keon-pdf-container{display:none!important}
body.single-product .email-link,body.single-product .product_meta{display:none}
body.single-product .tabs{display:none!important}
body.single-product .keon-select,
body.single-product .keon-select *,
body.single-product .cs-wrap,
body.single-product .cs-wrap *{box-sizing:border-box!important}
body.single-product .keon-select{position:relative;width:100%}
body.single-product .keon-select__native{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);overflow:hidden}
body.single-product .keon-select__trigger{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    width:100%!important;height:46px!important;padding:0 16px!important;
    border:1.5px solid var(--keon-line)!important;border-radius:12px!important;
    background:#fff!important;color:var(--keon-ink)!important;
    font:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer;
    box-shadow:0 1px 2px rgba(65,16,79,.04)!important;
    transition:border-color .18s ease,border-radius .18s ease,box-shadow .18s ease!important;
    opacity:1!important;visibility:visible!important;-webkit-text-fill-color:currentColor!important;
}
body.single-product .keon-select__text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.single-product .keon-select__trigger:hover{border-color:#c9b3d6!important}
body.single-product .keon-select__trigger:focus-visible{outline:none!important;border-color:var(--keon-purple)!important;box-shadow:0 0 0 3px rgba(113,36,141,.12)!important}
body.single-product .keon-select__trigger:after{
    content:'';flex:0 0 auto;display:inline-block;box-sizing:border-box;
    width:8px;height:8px;margin-left:10px;
    border-right:2px solid var(--keon-purple);border-bottom:2px solid var(--keon-purple);
    border-radius:0 0 1px 0;background:none;
    transform:rotate(45deg);transform-origin:center;
    transition:transform .2s ease;
}
body.single-product .keon-select__trigger.is-placeholder,
body.single-product .keon-select__trigger.is-placeholder *{color:#77718b!important;-webkit-text-fill-color:#77718b!important}
body.single-product .keon-select__trigger.is-placeholder:after{border-color:#9b93ac}
body.single-product .keon-select__options{
    position:absolute;z-index:50;top:calc(100% + 6px);right:0;left:0;
    width:100%!important;display:none;max-height:250px;max-height:min(250px,45vh);margin:0;padding:6px;
    overflow-y:auto;overscroll-behavior:contain;list-style:none;border:1.5px solid var(--keon-purple);border-radius:14px;
    background:#fff;box-shadow:0 16px 32px rgba(68,20,85,.18)
}
body.single-product .keon-select.is-open .keon-select__trigger{border-color:var(--keon-purple)!important;box-shadow:0 0 0 3px rgba(113,36,141,.08)!important}
body.single-product .keon-select.is-open .keon-select__trigger:after{transform:rotate(225deg)}
body.single-product .keon-select.is-open .keon-select__options{display:block;animation:keon-dropdown-in .16s cubic-bezier(.22,1,.36,1) both}
@keyframes keon-dropdown-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
body.single-product .keon-select__options li{min-height:40px;padding:9px 12px;border-radius:9px;color:var(--keon-ink);cursor:pointer;font-size:13px;overflow-wrap:anywhere;transition:background-color .15s ease,color .15s ease}
body.single-product .keon-select__options li:hover,body.single-product .keon-select__options .is-selected{background:#f6eff9;color:var(--keon-purple)}
body.single-product .keon-select__options .is-disabled{color:#c5c0ca;cursor:not-allowed}
body.single-product .keon-select.is-locked .keon-select__trigger{
    background:#f6f3fa!important;border-color:var(--keon-line)!important;opacity:.55!important;
    pointer-events:none!important;cursor:not-allowed!important;
}
body.single-product .keon-select.is-locked .keon-select__trigger:after{border-color:#9b93ac!important}
body.single-product .keon-select__options li.is-disabled{color:#b6adc2;cursor:default;pointer-events:none}
body.single-product .cs-trigger{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;height:48px!important;padding:0 17px!important;border:1px solid #ded3e7!important;border-radius:12px!important;background:#fff!important;color:#38235d!important;font-family:'Plus Jakarta Sans',Arial,sans-serif!important;font-size:13px!important;font-weight:600!important;text-align:left!important;box-shadow:0 2px 5px rgba(65,16,79,.03)!important;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important}
.cs-trigger:hover,.cs-wrap.cs-open .cs-trigger{border-color:#79288c!important;box-shadow:0 0 0 4px rgba(121,40,140,.1)!important}
.cs-trigger.cs-placeholder{color:#80768d!important}
.cs-arrow{width:9px!important;height:9px!important;border-right:2px solid #79288c!important;border-bottom:2px solid #79288c!important;background:none!important;transform:rotate(45deg)!important;transition:transform .2s ease!important}
.cs-wrap.cs-open .cs-arrow{transform:rotate(225deg)!important}
.cs-options{width:100%!important;z-index:100!important;top:calc(100% + 6px)!important;margin:0!important;padding:7px!important;border:1px solid #79288c!important;border-radius:14px!important;background:#fff!important;box-shadow:0 18px 32px rgba(65,16,79,.16)!important;max-height:230px!important;overflow-y:auto!important}
.cs-options li{padding:10px 12px!important;border-radius:10px!important;color:#38235d!important;font-size:13px!important;font-weight:600!important;transition:background .16s ease,color .16s ease!important}
.cs-options li:hover,.cs-options li.cs-selected{background:#f6eef9!important;color:#79288c!important}
.cs-options li.cs-disabled{color:#c9c1cf!important}
body.single-product .wpcpq-wrap{
    order:-1!important;flex:0 0 100%!important;width:100%!important;margin:0 0 16px!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
    display:block!important;visibility:visible!important;opacity:1!important;
    height:auto!important;max-height:none!important;overflow:visible!important;
    container-type:inline-size;container-name:keontier;
}
body.single-product .wpcpq-table{
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;
    width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none;
    overflow:visible!important;visibility:visible!important;opacity:1!important;height:auto!important;
}
body.single-product .wpcpq-row.wpcpq-head,body.single-product .wpcpq-row.wpcpq-foot{display:none}
body.single-product .wpcpq-row.wpcpq-item{
    display:flex!important;flex-direction:column;align-items:center;justify-content:center;
    height:auto!important;min-height:66px!important;min-width:0!important;padding:10px 6px!important;gap:4px!important;
    border:1px solid transparent;border-radius:14px!important;
    background:#f6f3fa;color:var(--keon-ink);font-size:10px;font-weight:600;line-height:1.15;
    white-space:normal;text-align:center;cursor:pointer;
    transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
    visibility:visible!important;opacity:1!important;
}
body.single-product .wpcpq-row.wpcpq-item:hover{border-color:#c995d7;background:#f6eef9;color:var(--keon-purple);transform:translateY(-2px);box-shadow:0 7px 13px rgba(65,16,79,.12)}
body.single-product .wpcpq-row.wpcpq-item.wpcpq-item-active,
body.single-product .wpcpq-table:not(:has(.wpcpq-item-active)) .wpcpq-row.wpcpq-item-default{
    background:linear-gradient(120deg,var(--keon-purple),var(--keon-purple-2));border-color:transparent;
    box-shadow:0 6px 14px rgba(113,36,141,.28);transform:none;
}
body.single-product .wpcpq-item-qty{
    display:block!important;width:100%!important;overflow:visible!important;text-overflow:clip!important;
    white-space:nowrap!important;text-align:center!important;
    font-size:10.5px!important;font-weight:700!important;letter-spacing:.02em!important;
    text-transform:uppercase!important;opacity:.85!important;
}
body.single-product .wpcpq-item-price{
    display:block!important;width:100%!important;overflow:visible!important;text-overflow:clip!important;
    white-space:nowrap!important;text-align:center!important;
    margin-top:4px!important;font-size:13px!important;font-weight:800!important;
}
body.single-product .wpcpq-item-price-val{display:inline-block!important;text-align:center!important}
html body.single-product .wpcpq-row.wpcpq-item,
html body.single-product .wpcpq-row.wpcpq-item *{color:var(--keon-ink)!important;opacity:1!important;visibility:visible!important;-webkit-text-fill-color:currentColor!important}
html body.single-product .wpcpq-row.wpcpq-item.wpcpq-item-active,
html body.single-product .wpcpq-row.wpcpq-item.wpcpq-item-active *,
html body.single-product .wpcpq-table:not(:has(.wpcpq-item-active)) .wpcpq-row.wpcpq-item-default,
html body.single-product .wpcpq-table:not(:has(.wpcpq-item-active)) .wpcpq-row.wpcpq-item-default *{
    color:#fff!important;-webkit-text-fill-color:#fff!important;
}
body.single-product .wpcpq-id{display:none!important;width:0!important;height:0!important}
@container keontier (max-width:340px){
    body.single-product .wpcpq-table{gap:4px!important}
    body.single-product .wpcpq-row.wpcpq-item{padding:8px 3px!important;min-height:60px!important;border-radius:12px!important}
    body.single-product .wpcpq-item-qty{font-size:9.5px!important;letter-spacing:0!important}
    body.single-product .wpcpq-item-price{font-size:12px!important;margin-top:2px!important}
}
@container keontier (max-width:290px){
    body.single-product .wpcpq-table{gap:3px!important}
    body.single-product .wpcpq-row.wpcpq-item{padding:7px 2px!important}
    body.single-product .wpcpq-item-qty{font-size:9px!important}
    body.single-product .wpcpq-item-price{font-size:11.5px!important}
}
@container keontier (max-width:250px){
    body.single-product .wpcpq-table{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
    body.single-product .wpcpq-row.wpcpq-item{padding:8px 4px!important}
    body.single-product .wpcpq-item-qty{font-size:10px!important}
    body.single-product .wpcpq-item-price{font-size:12.5px!important}
}
body.single-product .single_variation_wrap .woocommerce-variation.single_variation{
    display:block;margin:0;padding:0;border:0;background:transparent;box-shadow:none;
}
body.single-product .single_variation_wrap .woocommerce-variation.single_variation:not(.keon-variation-empty){margin:10px 0 12px}
body.single-product .single_variation_wrap .woocommerce-variation.single_variation.keon-variation-empty{display:none!important}
body.single-product .single_variation_wrap .woocommerce-variation-description:empty,
body.single-product .single_variation_wrap .woocommerce-variation-availability:empty{display:none!important}
body.single-product .single_variation_wrap .woocommerce-variation-price{display:block;margin:0}
body.single-product .single_variation_wrap .woocommerce-variation-price .price{display:block;margin:0;color:var(--keon-purple);font-size:22px;font-weight:800;line-height:1.2}
body.single-product .single_variation_wrap .woocommerce-variation-price .woocommerce-price-suffix{display:block;margin-top:4px;color:#79728e;font-size:12px;font-weight:500}
body.single-product .woocommerce-variation-add-to-cart.variations_button{
    display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;gap:12px!important;
    width:100%!important;max-width:100%!important;margin:14px 0 0!important;box-sizing:border-box!important;
}
body.single-product .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled{
    display:flex!important;visibility:visible!important;opacity:1!important;min-height:48px!important;
}
body.single-product .quantity{
    order:1!important;flex:0 0 auto!important;width:auto!important;max-width:none!important;min-width:0!important;
    margin:0!important;visibility:visible!important;opacity:1!important;box-sizing:border-box!important;
}
body.single-product .keon-quantity{
    display:flex!important;align-items:stretch!important;height:48px!important;
    border:1.5px solid var(--keon-line)!important;border-radius:12px!important;background:#fff!important;
    overflow:hidden!important;box-sizing:border-box!important;
    transition:border-color .18s ease,box-shadow .18s ease!important;
}
body.single-product .keon-quantity:focus-within{border-color:var(--keon-purple)!important;box-shadow:0 0 0 3px rgba(113,36,141,.12)!important}
body.single-product .keon-quantity__button{
    flex:0 0 34px!important;width:34px!important;height:100%!important;border:0!important;background:transparent!important;
    color:var(--keon-purple)!important;font-size:15px!important;font-weight:700!important;line-height:1!important;
    cursor:pointer!important;transition:background .15s ease!important;
}
body.single-product .keon-quantity__button:hover{background:#f6eef9!important}
body.single-product .keon-quantity__button:active{background:#efe1f5!important}
body.single-product .keon-quantity input.qty{
    flex:0 0 42px!important;width:42px!important;height:100%!important;min-width:0!important;padding:0!important;
    border:0!important;border-left:1px solid var(--keon-line)!important;border-right:1px solid var(--keon-line)!important;
    background:transparent!important;color:var(--keon-ink)!important;font-weight:800!important;font-size:13px!important;
    text-align:center!important;-moz-appearance:textfield!important;visibility:visible!important;opacity:1!important;
    box-sizing:border-box!important;
}
body.single-product .keon-quantity input.qty::-webkit-inner-spin-button,
body.single-product .keon-quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
body.single-product .quantity input.qty{display:inline-block!important;visibility:visible!important;opacity:1!important}
body.single-product .single_add_to_cart_button{
    order:2!important;display:flex!important;align-items:center!important;
    justify-content:center!important;gap:8px!important;min-height:48px!important;
    margin:0!important;padding:0 12px!important;border:0!important;border-radius:12px!important;
    background:linear-gradient(120deg,#6c1f89,#9b2fb8)!important;background-size:180% 100%!important;background-position:0% 0%!important;
    color:#fff!important;font-size:12px!important;font-weight:800!important;letter-spacing:.04em!important;
    text-transform:uppercase!important;line-height:1.25!important;text-align:center!important;
    box-shadow:0 10px 20px rgba(108,31,137,.28)!important;box-sizing:border-box!important;
    transition:background-position .45s ease,transform .16s ease,box-shadow .16s ease!important;
    visibility:visible!important;opacity:1!important;
}
body.single-product .single_add_to_cart_button:before{content:'🛒';font-size:13px}
body.single-product .single_add_to_cart_button:hover{background-position:100% 0%!important;transform:translateY(-2px)!important;box-shadow:0 14px 26px rgba(108,31,137,.36)!important}
body.single-product .single_add_to_cart_button:active{transform:translateY(0) scale(.98)!important}
body.single-product .single_add_to_cart_button:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(113,36,141,.25)!important}
body.single-product .keon-calc{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    width:100%;min-height:46px;margin:14px 0 0;padding:13px 16px;box-sizing:border-box;
    border:1px solid var(--keon-line);border-radius:12px;background:#faf7ff;
    transition:background-color .25s ease,border-color .25s ease;
}
body.single-product .keon-calc.is-computed{background:#f6eef9;border-color:#e2c7ec}
body.single-product .keon-calc__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--keon-ink);font-size:12.5px;font-weight:600}
body.single-product .keon-calc__value{flex:0 0 auto;color:var(--keon-purple);font-size:15px;font-weight:800;white-space:nowrap}
body.single-product .keon-calc:not(.is-computed) .keon-calc__label{display:none}
body.single-product .keon-calc:not(.is-computed) .keon-calc__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:center;color:#9a8fae;font-size:12.5px;font-style:italic;font-weight:700}
body.single-product .product-information,
body.single-product .product-information-inner,
body.single-product .fixed-content,
body.single-product form.cart{max-width:100%!important;min-width:0!important;box-sizing:border-box!important;contain:layout}
body.single-product .product-information-inner,
body.single-product .fixed-content,
body.single-product form.cart{overflow:visible!important}
body.single-product form.cart{margin:23px 0 0 0}
body.single-product .product-information{overflow:visible!important}
@supports (overflow:clip){
    body.single-product .product-information{overflow-x:clip!important;overflow-y:visible!important}
}
body.single-product #product.container .product-information-inner{
    width:100%!important;
    padding:clamp(20px,3vw,28px) clamp(16px,2.6vw,24px)!important;
    border:1px solid #e7ddec!important;border-radius:18px!important;background:#fff!important;
    box-shadow:0 14px 32px rgba(65,16,79,.08)!important;box-sizing:border-box!important;
}
body.single-product #product.container .product-information .fixed-content{width:100%!important;max-width:none!important}
body.single-product #product.container .product-images .images{width:min(100%,900px);margin-left:auto;margin-right:auto}
@media(min-width:1200px){
body.single-product #product.container .product-information{align-self:flex-start!important}
body.single-product .product_title.entry-title{font-size:clamp(20px,1.6vw,24px)!important}
body.single-product p.price{font-size:19px!important}
}
@media(min-width:1200px) and (min-height:720px){
body.single-product #product.container .product-information{position:sticky!important;top:var(--keon-sticky-top)!important}
}
@media(max-width:1199.98px){
body.single-product #product.container>.page-content{padding-top:130px!important}
body.single-product #product>.row>.product-content>.row{display:block;margin:40px auto 32px}
body.single-product #product.container .product-images,body.single-product #product.container .product-information{width:100%!important;flex-basis:100%!important;padding:0!important;border-left:0!important}
body.single-product #product.container .product-information{margin-top:clamp(20px,4vw,28px)!important;position:static!important}
body.single-product .product-images{height:clamp(380px,70vw,560px)!important;min-height:0!important}
body.single-product .product-images .product-image-wrapper,body.single-product .product-images .woocommerce-product-gallery__wrapper{margin-top:0}
body.single-product .product_title.entry-title{font-size:clamp(24px,5vw,32px)}
body.single-product p.price{font-size:22px}
}
@media(max-width:699.98px){
body.single-product #product>.row>.product-content>.row{margin:20px auto 32px}
body.single-product #product.container>.page-content{padding-top:28px!important}
body.single-product .product-images{height:clamp(260px,calc(100vw - (var(--keon-gutter) * 2)),480px)!important}
body.single-product .quantity{flex-basis:auto;width:auto}
body.single-product .single_add_to_cart_button{flex-basis:auto}
}
@media(max-width:400px){
body.single-product #product.container .product-information-inner{padding:18px 14px!important;border-radius:16px!important}
body.single-product .woocommerce-variation-add-to-cart.variations_button{gap:10px!important}
}
@media(max-width:1199.98px) and (max-height:520px){
body.single-product .product-images{height:min(360px,82vh)!important}
body.single-product #product.container>.page-content{padding-top:20px!important}
}
@media(pointer:coarse){
body.single-product .keon-select__trigger{height:48px!important}
body.single-product .keon-select__options li{padding:12px 12px}
body.single-product .keon-quantity__button{flex:0 0 40px!important;width:40px!important}
body.single-product .keon-quantity input.qty{flex:0 0 46px!important;width:46px!important;font-size:16px!important}
body.single-product .reset_variations{min-height:44px!important}
}
@media(hover:none){
body.single-product .wpcpq-row.wpcpq-item:hover{transform:none;box-shadow:none}
body.single-product .single_add_to_cart_button:hover,
body.single-product .reset_variations:hover,
body.single-product .keon-pdf-promo:hover{transform:none!important}
}
body.single-product .keon-pdf-promo{
    position:relative;display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;gap:10px!important;overflow:hidden!important;margin:20px 0 0!important;padding:15px 22px!important;
    min-height:48px!important;
    border:1.5px solid var(--keon-purple)!important;border-radius:14px!important;background:#fff!important;
    color:var(--keon-purple)!important;font-size:13px!important;font-weight:800!important;letter-spacing:.04em!important;
    text-transform:uppercase!important;text-decoration:none!important;text-align:center!important;box-shadow:0 2px 6px rgba(113,36,141,.06)!important;box-sizing:border-box!important;
    transition:background .22s cubic-bezier(.4,0,.2,1),color .22s cubic-bezier(.4,0,.2,1),box-shadow .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1)!important;
}
body.single-product .keon-pdf-promo__icon{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    flex:0 0 26px!important;width:26px!important;height:26px!important;border-radius:8px!important;
    background:linear-gradient(135deg,var(--keon-purple),var(--keon-purple-2))!important;color:#fff!important;
    font-size:12px!important;line-height:1!important;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .22s ease!important;
}
body.single-product .keon-pdf-promo:hover{
    background:linear-gradient(135deg,var(--keon-purple),var(--keon-purple-2))!important;color:#fff!important;
    box-shadow:0 14px 28px rgba(113,36,141,.28)!important;transform:translateY(-2px)!important;
}
body.single-product .keon-pdf-promo:hover .keon-pdf-promo__icon{background:rgba(255,255,255,.22)!important;transform:translateY(2px) scale(1.06)!important}
body.single-product .keon-pdf-promo:active{transform:translateY(0) scale(.98)!important}
body.single-product .keon-pdf-promo:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(113,36,141,.18)!important}
@media(max-width:400px){
body.single-product .keon-pdf-promo{padding:13px 16px!important;font-size:12px!important}
}
body.single-product .carousel-area{width:min(1220px,calc(100% - (var(--keon-gutter) * 2)))!important;max-width:100%!important;margin:0 auto!important;padding:32px 0 56px!important;box-sizing:border-box!important}
body.single-product .carousel-area .product-slide .content-product{display:flex!important;flex-direction:column!important;min-height:400px!important;padding-bottom:18px!important}
body.single-product .carousel-area .product-slide .product-image-wrapper{flex:0 0 auto!important}
body.single-product .carousel-area .product-slide .product-details{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:6px!important;padding:6px 16px 4px!important}
body.single-product .carousel-area .product-slide .product-details>*:first-child{margin-top:0!important}
body.single-product .carousel-area .product-slide .product-title{margin:0!important}
body.single-product .carousel-area .product-slide .product-title a{font-size:15px!important;font-weight:800!important;line-height:1.35!important}
body.single-product .carousel-area .product-slide .product-excerpt:empty{display:none!important}
body.single-product .carousel-area .product-slide a.btn.border-grey{margin-top:auto!important;margin-bottom:4px!important;align-self:center!important}
@media(max-width:699.98px){
body.single-product .carousel-area{padding:24px 0 40px!important}
}
@media(prefers-reduced-motion:reduce){
body.single-product *,body.single-product *::before,body.single-product *::after{animation:none!important;transition:none!important}
}
@media (max-width: 699.98px) {
  body.single-product .carousel-area > h1::after,
  body.single-product .carousel-area > h2::after,
  body.single-product .carousel-area > h3::after,
  body.single-product .carousel-area > .title::after,
  body.single-product .carousel-area > .widget-title::after,
  body.single-product .carousel-area > .carousel-heading::after {
    content: 'Swipe to see more  →';
    display: block;
    margin: 8px 0 0;
    color: #8a7d99;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.3;
    text-transform: uppercase;
    text-align: inherit;
    animation: keon-swipe-hint 1.8s ease-in-out infinite;
  }
}
@keyframes keon-swipe-hint {
  0%, 100% { transform: translateX(0); opacity: .75; }
  50%      { transform: translateX(6px); opacity: 1; }
}
body.single-product .single_add_to_cart_button {
  flex: 1 1 150px !important;
  min-width: 150px !important;
  white-space: nowrap !important;
}
body.single-product .quantity:has(.keon-quantity) button:not(.keon-quantity__button),
body.single-product .quantity:has(.keon-quantity) .minus:not(.keon-quantity__button),
body.single-product .quantity:has(.keon-quantity) .plus:not(.keon-quantity__button) {
  display: none !important;
}
html body.single-product .reset_variations,
html body.single-product .reset_variations:hover,
html body.single-product .reset_variations:focus,
html body.single-product .reset_variations:focus-visible,
html body.single-product .reset_variations:active {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    width: auto !important;
    margin: 8px 0 0 !important;
    padding: 0 18px !important;
    border: 1.5px solid var(--keon-purple) !important;
    border-radius: 10px !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    letter-spacing: .05em !important;
    overflow: hidden !important;
    transform: none !important;
    scale: none !important;
    translate: none !important;
    zoom: 1 !important;
    animation: none !important;
    transition: background-color .2s ease, color .2s ease !important;
}
html body.single-product .reset_variations:hover,
html body.single-product .reset_variations:focus-visible {
    background: var(--keon-purple) !important;
    color: #fff !important;
}
html body.single-product .reset_variations::before,
html body.single-product .reset_variations::after {
    content: none !important;
    display: none !important;
}
body.single-product{overflow-x:hidden}
@supports (overflow:clip){body.single-product{overflow-x:clip}}
body.single-product img,body.single-product video,body.single-product iframe{max-width:100%}
@media(min-width:1200px){
body.single-product #product>.row>.product-content>.row{
    display:flex!important;align-items:stretch!important;
    gap:clamp(20px,3vw,40px)!important;
}
body.single-product #product.container .product-images{
    flex:3 1 0%!important;width:auto!important;min-width:0!important;
    height:auto!important;min-height:clamp(520px,56vw,720px)!important;
    padding:0!important;align-self:stretch!important;
    display:flex!important;flex-direction:column!important;
}
body.single-product #product.container .product-images .images{
    flex:1 1 auto!important;width:100%!important;height:auto!important;min-height:0!important;
    margin:0!important;display:flex!important;flex-direction:column!important;
}
body.single-product #product.container .product-images .images>.woocommerce-product-gallery{
    flex:1 1 auto!important;min-height:0!important;height:auto!important;
    display:flex!important;flex-direction:column!important;
}
body.single-product .product-images .product-image-wrapper,
body.single-product .product-images .woocommerce-product-gallery__wrapper{
    margin-top:0!important;flex:1 1 auto!important;height:auto!important;max-height:none!important;
}
body.single-product #product.container .product-information{
    flex:2 1 0%!important;width:auto!important;min-width:0!important;
    align-self:stretch!important;position:static!important;top:auto!important;
    border-left:0!important;padding:0!important;
    display:flex!important;flex-direction:column!important;
}
body.single-product #product.container .product-information .product-information-inner{
    flex:1 1 auto!important;display:flex!important;flex-direction:column!important;
}
body.single-product #product.container .product-information-inner>*{flex-shrink:0!important}
body.single-product #product.container .product-information-inner>.keon-pdf-promo{margin-top:auto!important}
body.single-product #product.container .product-information-inner>.fixed-content{margin-bottom:20px!important}
}
@media(max-width:1199.98px){
body.single-product #product.container .product-information{display:block!important}
body.single-product #product.container .product-information .product-information-inner{display:block!important}
body.single-product #product.container .product-information-inner>.keon-pdf-promo{margin-top:20px!important}
body.single-product #product.container .product-images .images{margin-left:auto;margin-right:auto}
}
@media(min-width:700px) and (max-width:1199.98px){
body.single-product .product-images{display:block!important}
body.single-product #product.container .product-images .images{width:100%!important;max-width:none!important;margin:0!important;float:none!important}
body.single-product .product-images .woocommerce-product-gallery{width:100%!important;max-width:none!important;float:none!important;margin:0!important}
body.single-product .product-images .product-image-wrapper,
body.single-product .product-images .woocommerce-product-gallery__wrapper{
    display:block!important;width:100%!important;max-width:760px!important;max-height:none!important;
    margin:0 auto!important;padding:0!important;
}
body.single-product .product-images .woocommerce-product-gallery__image,
body.single-product .product-images .woocommerce-product-gallery__image>a{
    display:block!important;width:100%!important;max-width:none!important;
    height:auto!important;float:none!important;margin:0!important;
}
body.single-product .product-images img{
    display:block!important;width:100%!important;height:auto!important;
    max-width:100%!important;max-height:none!important;margin:0 auto!important;
}
body.single-product .product-images,
body.single-product #product.container .product-images .images,
body.single-product .product-images .woocommerce-product-gallery,
body.single-product .product-images .flex-viewport,
body.single-product .product-images .woocommerce-product-gallery__wrapper,
body.single-product .product-images .product-image-wrapper,
body.single-product .product-images .woocommerce-product-gallery__image{
    margin-bottom:0!important;padding-bottom:0!important;min-height:0!important;height:auto!important;
}
body.single-product .product-images .flex-control-nav,
body.single-product .product-images .flex-control-thumbs{display:none!important}
body.single-product .product-images::after,
body.single-product .product-images .images::after,
body.single-product .product-images .woocommerce-product-gallery::after{content:none!important;display:none!important}
body.single-product #product>.row>.product-content>.row{margin-bottom:0!important}
body.single-product #product.container .product-information{margin-top:12px!important}
body.single-product .carousel-area{padding:12px 0 32px!important}
body.single-product .carousel-area .product-slide .content-product{min-height:340px!important;padding-bottom:20px!important}
body.single-product .carousel-area .product-slide .product-details{padding:10px 16px 6px!important;gap:10px!important}
body.single-product .carousel-area .product-slide .product-title a{font-size:15px!important;line-height:1.35!important}
body.single-product .carousel-area .product-slide a.btn.border-grey{
    margin-top:auto!important;margin-bottom:6px!important;
    min-height:42px!important;padding:11px 22px!important;
    font-size:11.5px!important;letter-spacing:.04em!important;line-height:1.2!important;
    white-space:nowrap!important;max-width:100%!important;
}
}
@media(max-width:340px){
body.single-product .single_add_to_cart_button{flex:1 1 100%!important;min-width:0!important}
body.single-product .keon-calc{flex-wrap:wrap}
body.single-product .keon-calc__label{white-space:normal}
}
@media(max-width:699.98px){
body.single-product .product_title.entry-title{justify-content:center;text-align:center}
body.single-product p.price,
body.single-product p.price .woocommerce-price-suffix{text-align:center!important}
}
body.single-product .emodal {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 20302 !important;
    box-sizing: border-box !important;
    width: min(460px, calc(100vw - 32px)) !important;
    min-width: 0 !important;
    max-width: 460px !important;
    height: auto !important;
    max-height: calc(100vh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    overflow: auto !important;
    padding: 34px 28px 28px !important;
    border: 1px solid #eadff0 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 24px 70px rgba(43, 16, 54, 0.28) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translate(-50%, -46%) scale(.96) !important;
    transition:
        visibility 0s linear .22s,
        opacity .22s ease,
        transform .28s cubic-bezier(.2, .8, .2, 1) !important;
}
body.single-product .emodal::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #76228e 0%, #9b2fb8 72%, #96cf32 100%);
}
body.single-product .emodal.shown {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(-50%, -50%) scale(1) !important;
    transition:
        visibility 0s,
        opacity .22s ease,
        transform .28s cubic-bezier(.2, .8, .2, 1) !important;
}
body.single-product .emodal-overlay {
    background: rgba(32, 18, 38, .68) !important;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
}
body.single-product .emodal img {
    display: none !important;
}
body.single-product .emodal .emodal-title {
    margin: 0 0 10px !important;
    padding: 0 32px !important;
    color: #2f2558 !important;
    font-family: "Plus Jakarta Sans", Arial, sans-serif !important;
    font-size: clamp(17px, 4vw, 20px) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: center !important;
    overflow-wrap: anywhere;
}
body.single-product .emodal .emodal-text {
    display: flex !important;
    float: none !important;
    flex-flow: row wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    text-align: center !important;
}
body.single-product .emodal .emodal-text > p {
    flex: 0 0 100% !important;
    width: 100% !important;
    margin: 0 0 8px !important;
    color: #716a76 !important;
    font-family: "Plus Jakarta Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}
body.single-product .emodal .emodal-text > p::before {
    content: "✓";
    display: inline-grid;
    place-items: center;
    width: 21px;
    height: 21px;
    margin-right: 7px;
    border-radius: 50%;
    background: #eff8e5;
    color: #548315;
    font-size: 13px;
    font-weight: 800;
    vertical-align: -2px;
}
body.single-product .emodal .emodal-text .btn {
    display: inline-flex !important;
    float: none !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 20px !important;
    border: 1px solid #76228e !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #76228e !important;
    font-family: "Plus Jakarta Sans", Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .035em;
    line-height: 1.25 !important;
    text-align: center !important;
    text-transform: uppercase;
    text-decoration: none !important;
    box-shadow: 0 3px 9px rgba(66, 25, 79, .08);
    transition:
        background-color .18s ease,
        color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease !important;
}
body.single-product .emodal .emodal-text .btn:hover {
    transform: translateY(-1px);
    border-color: #96cf32 !important;
    background: #f8fbed !important;
    box-shadow: 0 7px 16px rgba(66, 25, 79, .13);
}
body.single-product .emodal .emodal-text .btn.active {
    border-color: #76228e !important;
    background: linear-gradient(135deg, #76228e, #922eaa) !important;
    color: #fff !important;
    box-shadow: 0 5px 13px rgba(118, 34, 142, .22);
}
body.single-product .emodal .emodal-text .btn.active:hover {
    border-color: #96cf32 !important;
    background: linear-gradient(135deg, #66207a, #842999) !important;
    box-shadow: 0 8px 18px rgba(118, 34, 142, .3);
}
body.single-product .emodal .emodal-text .btn:focus-visible,
body.single-product .emodal .close-modal:focus-visible {
    outline: 3px solid rgba(150, 207, 50, .7) !important;
    outline-offset: 3px !important;
}
body.single-product .emodal .close-modal {
    top: 10px !important;
    right: 10px !important;
    z-index: 2 !important;
    width: 30px !important;
    height: 30px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background-color: #f6f1f8 !important;
    background-position: center !important;
    background-size: 12px 12px !important;
}
@media (max-width: 600px) {
    body.single-product .emodal {
        width: calc(100vw - 24px) !important;
        max-width: 420px !important;
        max-height: calc(100vh - 24px) !important;
        max-height: calc(100dvh - 24px) !important;
        padding: 32px 18px 20px !important;
        border-radius: 16px !important;
    }
    body.single-product .emodal .emodal-text {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
    }
    body.single-product .emodal .emodal-text > p {
        flex: none !important;
        margin-bottom: 4px !important;
    }
    body.single-product .emodal .emodal-text .btn {
        width: 100% !important;
        max-width: 280px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.single-product .emodal,
    body.single-product .emodal.shown,
    body.single-product .emodal .emodal-text .btn {
        transition: none !important;
    }
}

/* ===== SHOP PAGE + GLOBAL PRODUCT CARD - COMPLETE STYLESHEET (v3.5) ===== */
.shop-full-width,
.shop-full-width .product-title,
.shop-full-width .products-page-cats,
.shop-full-width .btn,
.content-product,
.content-product .product-title,
.content-product .products-page-cats,
.content-product .btn {
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
}
.products-loop.products-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    column-gap: 6px;
    row-gap: 50px;
    padding-left: 100px;
    padding-right: 76px;
}
.products-loop.products-grid::before,
.products-loop.products-grid::after {
    content: none !important;
    display: none !important;
}
.products-loop.products-grid > .product {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    flex: 1 1 auto !important;
    clear: none !important;
}
.products-loop.products-grid > .product.first,
.products-loop.products-grid > .product:first-child {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    clear: none !important;
}
.products-loop.products-grid > .product > .content-product {
    width: 100% !important;
    max-width: 430px !important;
    height: 100% !important;
    margin: 0 auto !important;
    flex: 1 1 auto !important;
    container-type: inline-size;
    container-name: pcard;
}
@media (max-width: 1100px) {
    .products-loop.products-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
    .products-loop.products-grid { grid-template-columns: repeat(1, 1fr) !important; }
}
.content-product {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    border: 1px solid #eee;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(65,16,79,.05);
    transition: box-shadow .3s ease, border-color .3s ease !important;
}
.content-product:hover {
    box-shadow: 0 8px 16px rgba(65,16,79,.09);
    border-color: #e6d3ec;
}
.content-product:active {
    box-shadow: 0 5px 12px rgba(65,16,79,.09);
    transition: box-shadow .15s ease !important;
}
.product-image-wrapper {
    position: relative !important;
    overflow: hidden !important;
    background: #faf7fb;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 0px;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    box-shadow: inset 0 0 0 1px rgba(130,27,160,.05);
    isolation: isolate;
}
.product-image-wrapper::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 50% 45%, rgba(130,27,160,.06), transparent 62%);
    pointer-events: none;
    z-index: 0;
}
.product-image-wrapper img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    position: relative;
    z-index: 1;
    transition: transform .55s cubic-bezier(.22,1,.36,1);
}
.content-product:hover .product-image-wrapper img {
    transform: scale(1.03);
}
.product-image-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    left: -60%;
    width: 45%;
    height: 100%;
    background: linear-gradient(75deg, transparent, rgba(255,255,255,.4), transparent);
    transform: skewX(-18deg);
    transition: left 1s cubic-bezier(.22,1,.36,1);
    pointer-events: none;
    z-index: 2;
}
.content-product:hover .product-image-wrapper::after {
    left: 130%;
}
.product-image-wrapper .product-content-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    position: relative;
    z-index: 1;
}
.content-product .product-image-wrapper .footer-product,
.content-product .footer-product {
    position: absolute !important;
    inset: auto 0 0 0 !important;
    top: auto !important;
    right: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: none !important;
    padding: 0 !important;
    pointer-events: none;
    z-index: 3;
}
.content-product .footer-product::before {
    content: none !important;
    background: none !important;
}
.content-product:hover .product-image-wrapper {
    background-color: #f3ecf4;
}
.content-product .show-quickly {
    position: relative;
    display: flex !important;
    width: 100% !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 16px !important;
    border-radius: 0 !important;
    border-top: 1px solid #f0e6f2;
    background: #fff !important;
    backdrop-filter: none;
    color: #21192a;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-align: center;
    opacity: 0;
    transform: translateY(40%);
    transition: opacity .25s cubic-bezier(.4,0,.2,1), transform .25s cubic-bezier(.4,0,.2,1), background-color .2s ease, color .2s ease;
    cursor: pointer;
    pointer-events: auto;
}
.content-product .show-quickly::before {
    content: '';
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2321192a' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: background-image .2s ease;
}
.content-product .show-quickly::after {
    content: none !important;
}
.content-product:hover .show-quickly,
li.product:hover .show-quickly,
.product:hover .show-quickly,
.content-product:focus-within .show-quickly,
.content-product .show-quickly:focus-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}
.content-product .show-quickly:hover,
.content-product .show-quickly:focus-visible {
    background: #821ba0 !important;
    color: #fff !important;
}
.content-product .show-quickly:hover::before,
.content-product .show-quickly:focus-visible::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
}
.product-details {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    column-gap: 10px;
    row-gap: 6px;
    text-align: left;
    padding: 18px 20px 20px;
    border-top: 0;
    background: linear-gradient(180deg, #fbf8fc, #ffffff 40%);
}
.products-page-cats {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin-bottom: 0 !important;
    max-width: 100%;
}
.products-page-cats a {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    background: #f8ecfa;
    border: 1px solid rgba(130,27,160,.14);
    color: #821ba0;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none !important;
    white-space: nowrap;
    max-width: 100%;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.products-page-cats a:hover {
    background: #821ba0;
    border-color: #821ba0;
    color: #fff;
}
.product-title {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    min-width: 0;
    line-height: 1.3;
    text-align: left;
    overflow-wrap: anywhere;
}
.product-title a {
    position: relative;
    display: inline-block;
    color: #21192a !important;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -.01em;
    text-decoration: none !important;
    transition: color .25s ease;
}
.content-product:hover .product-title a {
    color: #821ba0 !important;
}
.product-details .product-excerpt {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    margin: 0;
    text-align: left;
    color: var(--muted, #716a76);
    font-size: 12.5px;
    line-height: 1.55;
}
.product-details::before {
    content: '';
    grid-column: 1 / -1;
    grid-row: 3;
    display: block;
    height: 1px;
    margin: 8px 0 4px;
    background: linear-gradient(90deg, transparent, #ece0f0 15%, #ece0f0 85%, transparent);
}
.product-details a.btn.border-grey {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    position: relative;
    align-self: stretch;
    overflow: hidden;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 40px;
    margin-top: 4px !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    border: 1.5px solid #821ba0 !important;
    color: #821ba0 !important;
    background: #f8f0fa !important;
    box-shadow: none;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: .03em;
    text-decoration: none !important;
    transition: box-shadow .3s ease, transform .35s cubic-bezier(.34,1.56,.64,1), background .25s ease, color .25s ease, border-color .25s ease;
}
.product-details a.btn.border-grey::before {
    content: '';
    flex-shrink: 0;
    width: 11px;
    height: 11px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23821ba0' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    transition: background-image .2s ease;
}
.product-details a.btn.border-grey::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(circle, rgba(255,255,255,.4), transparent 60%);
    opacity: 0;
    transform: scale(.3);
    transition: opacity .5s ease, transform .5s ease;
    pointer-events: none;
}
.product-details a.btn.border-grey:hover {
    background: linear-gradient(100deg, #821ba0, #b33bc8) !important;
    border-color: transparent !important;
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(116,33,143,.32);
    transform: translateY(-2px);
}
.product-details a.btn.border-grey:hover::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
    animation: arrow-wiggle 1s ease-in-out infinite;
}
.product-details a.btn.border-grey:active {
    transform: scale(.92);
    box-shadow: 0 2px 6px rgba(116,33,143,.3);
    transition: transform .1s cubic-bezier(.4,0,.6,1), box-shadow .1s ease;
}
.product-details a.btn.border-grey:active::after {
    opacity: 1;
    transform: scale(1.4);
    transition: opacity .05s ease, transform .05s ease;
}
.product-details a.btn.border-grey .ico-smallpacket {
    font-size: 13px;
}
@keyframes arrow-wiggle {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(2.5px); }
    75% { transform: translateX(-1px); }
}
@media (max-width: 640px) {
    .products-page-cats a {
        padding: 4px 10px;
        font-size: 10px;
    }
    .product-details {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .products-page-cats,
    .product-title {
        grid-column: 1 !important;
    }
    .product-title {
        grid-row: 1 !important;
        text-align: left;
        margin-top: 0 !important;
    }
    .products-page-cats {
        grid-row: 2 !important;
        margin-top: 6px !important;
    }
    .product-details .product-excerpt { grid-row: 3 !important; }
    .product-details::before { grid-row: 4; }
    .product-details a.btn.border-grey { grid-row: 5 !important; }
}
@container pcard (max-width: 330px) {
    .product-details {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .products-page-cats,
    .product-title {
        grid-column: 1 !important;
    }
    .product-title {
        grid-row: 1 !important;
    }
    .products-page-cats {
        grid-row: 2 !important;
        margin-top: 4px !important;
    }
    .product-details .product-excerpt { grid-row: 3 !important; }
    .product-details::before { grid-row: 4; }
    .product-details a.btn.border-grey { grid-row: 5 !important; }
}
.filter-wrap .woocommerce-pagination {
    display: none;
}
.page-heading.bc-type-5 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-image:
        radial-gradient(ellipse 48% 78% at 50% 48%, rgba(45,8,60,.42), transparent 72%),
        linear-gradient(120deg, rgba(130,27,160,.40) 0%, rgba(179,59,200,.26) 55%, rgba(130,27,160,.40) 100%),
        url('https://staging.keonlabels.com.au/wp-content/uploads/2022/03/book-and-swatch-1-rotated.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: clamp(52px, 6vw, 88px) clamp(24px, 6vw, 110px);
    text-align: center;
    border-radius: 0;
    border-bottom: 0;
    margin-bottom: 34px;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
}
.page-heading.bc-type-5::before {
    content: '';
    position: absolute;
    inset: -24px;
    z-index: -1;
    pointer-events: none;
    background-image:
        radial-gradient(circle at 10% 28%, rgba(255,255,255,.30) 0, transparent 20%),
        radial-gradient(circle at 92% 72%, rgba(232,160,245,.42) 0, transparent 24%),
        radial-gradient(circle at 78% 14%, rgba(255,255,255,.16) 0, transparent 14%),
        radial-gradient(rgba(255,255,255,.34) 1.3px, transparent 1.8px);
    background-size: auto, auto, auto, 24px 24px;
    -webkit-mask-image: radial-gradient(ellipse 60% 85% at 50% 50%, transparent 30%, #000 92%);
    mask-image: radial-gradient(ellipse 60% 85% at 50% 50%, transparent 30%, #000 92%);
    animation: banner-drift 16s ease-in-out infinite alternate;
}
.page-heading.bc-type-5::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(90deg, #821ba0, #d98be8, #ffffff, #d98be8, #821ba0);
    background-size: 200% 100%;
    animation: banner-line 7s linear infinite;
}
@keyframes banner-drift {
    from { transform: translate3d(-10px, -6px, 0) scale(1); }
    to   { transform: translate3d(12px, 8px, 0) scale(1.04); }
}
@keyframes banner-line {
    from { background-position: 0% 0; }
    to   { background-position: 200% 0; }
}
.page-heading.bc-type-5 .container,
.page-heading.bc-type-5 .row,
.page-heading.bc-type-5 .col-md-12 {
    position: static !important;
}
.page-heading.bc-type-5 .title {
    display: inline-block;
    position: relative;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-weight: 800;
    font-size: clamp(2rem, 4.2vw, 3rem);
    line-height: 1.12;
    letter-spacing: -.03em;
    color: #ffffff !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.45), 0 12px 32px rgba(0,0,0,.4) !important;
    padding-bottom: 18px;
    margin: 6px 0 0;
    animation: shop-title-in .6s cubic-bezier(.22,1,.36,1) both;
}
.page-heading.bc-type-5 .title::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 64px;
    height: 3px;
    border-radius: 2px;
    background: linear-gradient(90deg, #d98be8, #ffffff, #d98be8);
    transform: translateX(-50%);
}
.page-heading.bc-type-5 .woocommerce-breadcrumb {
    position: static !important;
    float: none !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center !important;
    width: auto !important;
    margin: 14px auto 0 !important;
    padding: 6px 18px;
    border-radius: 999px;
    background: rgba(45,8,60,.32);
    border: 1px solid rgba(255,255,255,.38);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
.page-heading.bc-type-5 .woocommerce-breadcrumb a {
    color: rgba(255,255,255,.95) !important;
    font-size: 13px;
    font-weight: 600;
    transition: color .2s ease;
}
.page-heading.bc-type-5 .woocommerce-breadcrumb a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}
.page-heading.bc-type-5 .woocommerce-breadcrumb,
.page-heading.bc-type-5 .woocommerce-breadcrumb *:not(a) {
    color: rgba(255,255,255,.85) !important;
    font-size: 13px;
}
.page-heading .delimeter {
    color: rgba(255,255,255,.7);
    padding: 0 5px;
    font-size: 1rem;
}
.page-heading.bc-type-5 .back-history {
    position: absolute !important;
    top: 50% !important;
    right: 40px !important;
    left: auto !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: auto;
    margin: 0;
    padding: 9px 20px 9px 16px;
    overflow: hidden;
    border-radius: 999px;
    background:
        linear-gradient(100deg, #821ba0, #c04ad6) no-repeat 0 0 / 0% 100%,
        rgba(45,8,60,.32);
    border: 1px solid rgba(255,255,255,.38);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    color: rgba(255,255,255,.95) !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .01em;
    text-decoration: none !important;
    cursor: pointer;
    animation: back-in .7s cubic-bezier(.22,1,.36,1) .25s backwards;
    transition:
        background-size .45s cubic-bezier(.22,1,.36,1),
        transform .35s cubic-bezier(.34,1.56,.64,1),
        box-shadow .35s ease,
        border-color .25s ease,
        color .2s ease;
}
.page-heading.bc-type-5 .back-history > i,
.page-heading.bc-type-5 .back-history > svg,
.page-heading.bc-type-5 .back-history > span:first-child {
    display: inline-block;
    transition: transform .35s cubic-bezier(.34,1.56,.64,1);
    animation: back-nudge 3.2s ease-in-out 1.6s infinite;
}
.page-heading.bc-type-5 .back-history:hover,
.page-heading.bc-type-5 .back-history:focus-visible {
    background-size: 100% 100%, auto;
    border-color: rgba(255,255,255,.75);
    color: #ffffff !important;
    transform: translateY(calc(-50% - 2px)) !important;
    box-shadow: 0 10px 24px rgba(60,10,80,.38), 0 0 0 4px rgba(217,139,232,.28);
    outline: none;
}
.page-heading.bc-type-5 .back-history:hover > i,
.page-heading.bc-type-5 .back-history:hover > svg,
.page-heading.bc-type-5 .back-history:hover > span:first-child,
.page-heading.bc-type-5 .back-history:focus-visible > i,
.page-heading.bc-type-5 .back-history:focus-visible > svg,
.page-heading.bc-type-5 .back-history:focus-visible > span:first-child {
    animation: none;
    transform: translateX(-4px);
}
.page-heading.bc-type-5 .back-history:active {
    transform: translateY(-50%) scale(.95) !important;
    box-shadow: 0 3px 8px rgba(60,10,80,.35);
    transition-duration: .12s;
}
@keyframes back-in {
    from { opacity: 0; transform: translateY(-50%) translateX(28px); }
    to   { opacity: 1; transform: translateY(-50%) translateX(0); }
}
@keyframes back-nudge {
    0%, 70%, 100% { transform: translateX(0); }
    80%           { transform: translateX(-3px); }
    90%           { transform: translateX(0); }
}
.page-heading.bc-type-5 .back-history > i,
.page-heading.bc-type-5 .back-history > svg,
.page-heading.bc-type-5 .back-history > img,
.page-heading.bc-type-5 .back-history > span:first-child:empty,
.page-heading.bc-type-5 .back-history > span:first-child:has(> i, > svg, > img) {
    display: none !important;
}
.page-heading.bc-type-5 .back-history::before {
    content: '' !important;
    display: inline-block !important;
    position: static !important;
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    margin: 0 !important;
    border: 0 !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E") center / contain no-repeat !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none;
    transition: transform .35s cubic-bezier(.34,1.56,.64,1);
    animation: back-nudge 3.2s ease-in-out 1.6s infinite;
}
.page-heading.bc-type-5 .back-history:hover::before,
.page-heading.bc-type-5 .back-history:focus-visible::before,
.page-heading.bc-type-5 .back-history:active::before {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(-4px) !important;
    animation: none;
}
.page-heading.bc-type-5 .back-history::after {
    content: none !important;
    display: none !important;
}
@media (prefers-reduced-motion: reduce) {
    .page-heading.bc-type-5 .back-history::before {
        animation: none !important;
        transition: none !important;
    }
}
.page-heading.bc-type-5 .container::after {
    content: 'Australian Made  ·  45+ Years  ·  Fast Shipping';
    display: inline-block;
    margin-top: 22px;
    padding: 9px 22px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e3c6ee;
    box-shadow: 0 6px 18px rgba(20,0,30,.25);
    color: #76228e;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    animation: shop-title-in .6s cubic-bezier(.22,1,.36,1) .12s both;
}
@keyframes shop-title-in {
    from { opacity: 0; transform: translateY(14px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 700px) {
    .page-heading.bc-type-5 { padding: 48px 20px; }
    .page-heading.bc-type-5 .container::after {
        font-size: 10px;
        padding: 8px 14px;
        letter-spacing: .04em;
    }
}
@media (prefers-reduced-motion: reduce) {
    .page-heading.bc-type-5::before,
    .page-heading.bc-type-5::after,
    .page-heading.bc-type-5 .back-history,
    .page-heading.bc-type-5 .back-history > i,
    .page-heading.bc-type-5 .back-history > svg,
    .page-heading.bc-type-5 .back-history > span:first-child {
        animation: none !important;
        transition: none !important;
    }
}
.woocommerce-result-count,
.woocommerce-ordering,
.view-switcher {
    margin-bottom: 20px;
}
.woocommerce-result-count,
.woocommerce-ordering {
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    color: var(--muted, #716a76);
    font-size: 14px;
}
.woocommerce-ordering select.orderby {
    border-radius: 999px;
    border: 1px solid #e6d3ec;
    padding: 5px 16px;
    background: #f8f0fa;
    transition: border-color .2s ease;
}
.woocommerce-ordering select.orderby:hover {
    border-color: #821ba0;
}
.view-switcher .switchToGrid,
.view-switcher .switchToList {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid #e6d3ec;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease;
}
.view-switcher .switchToGrid:hover,
.view-switcher .switchToList:hover {
    background: #f8f0fa;
    border-color: #821ba0;
}
nav.woocommerce-pagination.pagination-cubic {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    margin-bottom: 56px;
    margin-right: 70px;
    animation: pager-fade-in .5s cubic-bezier(.22,1,.36,1) both;
}
nav.woocommerce-pagination.pagination-cubic ul {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 6px;
    gap: 2px;
    background: #fbf7fc;
    border: 1px solid #f0e2f4;
    border-radius: 999px;
    box-shadow: 0 2px 10px rgba(65,16,79,.04);
}
nav.woocommerce-pagination.pagination-cubic li {
    list-style: none;
}
nav.woocommerce-pagination.pagination-cubic li.firstItem {
    padding-left: 10px;
}
nav.woocommerce-pagination.pagination-cubic a,
nav.woocommerce-pagination.pagination-cubic span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 999px;
    color: #6b5a72;
    font-weight: 600;
    font-size: 13px;
    text-decoration: none !important;
    transition: background .25s cubic-bezier(.34,1.56,.64,1), color .2s ease, transform .25s cubic-bezier(.34,1.56,.64,1);
}
nav.woocommerce-pagination.pagination-cubic span.woocommerce-pagination-ellipsis,
nav.woocommerce-pagination.pagination-cubic li > span:not([aria-current]):not(.page-numbers) {
    width: auto;
    min-width: 20px;
    color: #b8a6c0;
    cursor: default;
}
nav.woocommerce-pagination.pagination-cubic a:hover {
    background: #fff;
    color: #41104f;
    box-shadow: 0 3px 10px rgba(65,16,79,.1);
    transform: translateY(-1px) scale(1.06);
}
nav.woocommerce-pagination.pagination-cubic a:active {
    transform: translateY(0) scale(.94);
    transition: transform .1s ease;
}
nav.woocommerce-pagination.pagination-cubic .current,
nav.woocommerce-pagination.pagination-cubic [aria-current="page"] {
    background: linear-gradient(100deg, #821ba0, #b33bc8) !important;
    color: #fff !important;
    font-weight: 800;
    box-shadow: 0 4px 12px rgba(130,27,160,.28);
    animation: pager-current-pop .4s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes pager-fade-in {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes pager-current-pop {
    0%   { transform: scale(.6); }
    70%  { transform: scale(1.08); }
    100% { transform: scale(1); }
}
:where(body) :has(> .woocommerce-ordering):has(~ nav.woocommerce-pagination.pagination-cubic),
*:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding-bottom: 15px;
}
*:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .woocommerce-ordering {
    order: 1;
    margin-bottom: 13px;
    padding-left: 95px;
}
*:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .view-switcher {
    order: 2;
    margin-bottom: 0;
	margin-left: 75px;
}
*:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
    order: 3;
    margin: 0 77px 0 auto;
    animation: pager-fade-in .5s cubic-bezier(.22,1,.36,1) both;
}
@media (prefers-reduced-motion: reduce) {
    .product-image-wrapper img,
    .content-product:hover .product-image-wrapper img,
    .product-image-wrapper::after,
    .content-product:hover .product-image-wrapper::after,
    .product-details a.btn.border-grey,
    .product-details a.btn.border-grey::before,
    .product-title a,
    .content-product,
    .page-heading.bc-type-5 .title,
    .page-heading.bc-type-5 .woocommerce-breadcrumb,
    .page-heading.bc-type-5 .container::after {
        animation: none !important;
        transition: none !important;
    }
}
.products-loop {
    --shop-top: 44px;
    margin-top: var(--shop-top) !important;
}
.products-loop.products-list {
    --pl-css: v4;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 22px;
    box-sizing: border-box !important;
    position: relative !important;
    float: none !important;
    width: min(1080px, 100%) !important;
    max-width: 1080px !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
    margin-bottom: 40px !important;
    padding: 0 16px !important;
}
.products-loop.products-list::before,
.products-loop.products-list::after {
    content: none !important;
    display: none !important;
}
.products-loop.products-list.products-list > .product.product {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    animation: pl-rise .5s cubic-bezier(.22, 1, .36, 1) both;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product {
    display: grid !important;
    grid-template-columns: minmax(200px, 38%) minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 240px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    overflow: hidden !important;
    border: 1px solid #ead8f0 !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(65, 16, 79, .08) !important;
    transition: transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease, border-color .35s ease !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product::before,
.products-loop.products-list.products-list > .product.product > .content-product.content-product::after {
    content: none !important;
    display: none !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 24px !important;
    overflow: hidden !important;
    border: 0 !important;
    background: #f6eef9 !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper::before,
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper::after {
    content: none !important;
    display: none !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper .product-content-image,
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper .product-content-image > a {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: auto !important;
    line-height: 0;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper .product-content-image img {
    position: static !important;
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 300px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    border-radius: 14px;
    background: #fff;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: 0 12px 30px rgba(65, 16, 79, .14);
    transition: transform .5s cubic-bezier(.22, 1, .36, 1);
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0;
    box-sizing: border-box !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 32px clamp(24px, 4vw, 56px) !important;
    overflow: visible !important;
    text-align: center !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: linear-gradient(180deg, #fbf8fc, #ffffff 65%) !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details::before,
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details::after {
    content: none !important;
    display: none !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > * {
    align-self: center !important;
    float: none !important;
    max-width: 100%;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .products-page-cats {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    order: -1 !important;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    transform: none !important;
    text-align: center !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .products-page-cats a {
    position: static !important;
    float: none !important;
    display: inline-flex;
    align-items: center;
    margin: 0 3px 4px !important;
    padding: 5px 13px;
    border: 1px solid rgba(130, 27, 160, .14);
    border-radius: 999px;
    background: #f8ecfa;
    box-shadow: none;
    color: #821ba0 !important;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: background-color .2s ease, color .2s ease;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-title {
    order: 0;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    text-align: center !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-title a {
    color: #21192a !important;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: clamp(22px, 2.6vw, 34px);
    font-weight: 800;
    letter-spacing: -.01em;
    line-height: 1.15;
    overflow-wrap: anywhere;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: color .2s ease;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-excerpt {
    order: 0;
    text-align: center !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-excerpt p {
    max-width: 520px;
    margin: -6px auto 18px;
    color: #716a76;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 14px;
    line-height: 1.65;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn,
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > a.button {
    order: 1;
    position: relative !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    align-self: center !important;
    flex: 0 0 auto !important;
    gap: 8px;
    box-sizing: border-box;
    float: none !important;
    width: auto !important;
    min-width: min(100%, 280px);
    height: 48px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;
    overflow: hidden;
    border: 1.5px solid #821ba0 !important;
    border-radius: 999px !important;
    background: linear-gradient(100deg, #821ba0, #b33bc8) left bottom / 100% 0 no-repeat, #fff !important;
    color: #821ba0 !important;
    font-family: 'Plus Jakarta Sans', Arial, sans-serif;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    letter-spacing: .08em;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: uppercase;
    opacity: 1 !important;
    visibility: visible !important;
    cursor: pointer;
    transition: background-size .4s cubic-bezier(.22, 1, .36, 1), color .3s ease, box-shadow .3s ease, transform .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    -webkit-tap-highlight-color: transparent;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn i {
    font-size: 16px;
    line-height: 1;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn:active {
    transform: scale(.97) !important;
}
.products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .added_to_cart {
    order: 2;
    margin-top: 10px;
    color: #821ba0;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}
@media (hover: hover) {
    .products-loop.products-list.products-list > .product.product > .content-product.content-product:hover {
        transform: translateY(-3px);
        border-color: #d9b8e6 !important;
        box-shadow: 0 18px 42px rgba(116, 33, 143, .16) !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product:hover .product-content-image img {
        transform: scale(1.03);
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .products-page-cats a:hover {
        background: #821ba0;
        color: #fff !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-title a:hover {
        color: #821ba0 !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn:hover {
        background-size: 100% 100% !important;
        color: #fff !important;
        box-shadow: 0 10px 22px rgba(116, 33, 143, .32);
    }
}
@keyframes pl-rise {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}
@media (max-width: 1024px) {
    .products-loop.products-list {
        gap: 18px;
        padding: 0 14px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product {
        grid-template-columns: minmax(180px, 40%) minmax(0, 1fr) !important;
        min-height: 220px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details {
        padding: 26px clamp(18px, 3vw, 36px) !important;
    }
}
@media (max-width: 760px) {
    .products-loop { --shop-top: 24px; }
    .products-loop.products-list {
        gap: 16px;
        padding: 0 12px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product {
        grid-template-columns: minmax(0, 1fr) !important;
        min-height: 0 !important;
        border-radius: 18px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper {
        grid-column: 1 !important;
        grid-row: 1 !important;
        padding: 20px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper .product-content-image img {
        max-height: 240px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details {
        grid-column: 1 !important;
        grid-row: 2 !important;
        padding: 24px 20px 28px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .products-page-cats {
        margin-bottom: 10px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-title {
        margin-bottom: 16px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn,
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > a.button {
        width: 100% !important;
        max-width: 420px;
        min-width: 0;
    }
}
@media (max-width: 480px) {
    .products-loop.products-list {
        gap: 14px;
        padding: 0 10px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper {
        padding: 16px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-image-wrapper.product-image-wrapper .product-content-image img {
        max-height: 200px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details {
        padding: 20px 16px 24px !important;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .product-title a {
        font-size: 20px;
    }
    .products-loop.products-list.products-list > .product.product > .content-product.content-product > .product-details.product-details > .btn {
        height: 46px !important;
        padding: 0 18px !important;
        font-size: 12px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .products-loop.products-list.products-list > .product.product,
    .products-loop.products-list.products-list > .product.product > .content-product.content-product,
    .products-loop.products-list.products-list > .product.product > .content-product.content-product * {
        animation: none !important;
        transition: none !important;
    }
}
html { -webkit-text-size-adjust: 100%; }
@media (hover: none) {
    .content-product .show-quickly {
        opacity: 1 !important;
        transform: none !important;
    }
    .content-product:hover {
        box-shadow: 0 4px 14px rgba(65,16,79,.05);
        border-color: #eee;
    }
    .content-product:hover .product-image-wrapper {
        background-color: #faf7fb;
    }
    .content-product:hover .product-image-wrapper img {
        transform: none;
    }
    .content-product:hover .product-image-wrapper::after {
        left: -60%;
    }
    .content-product:hover .product-title a {
        color: #21192a !important;
    }
    .product-details a.btn.border-grey:hover {
        background: #f8f0fa !important;
        border-color: #821ba0 !important;
        color: #821ba0 !important;
        box-shadow: none;
        transform: none;
    }
    .product-details a.btn.border-grey:hover::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23821ba0' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
        animation: none;
    }
    .content-product .show-quickly:hover {
        background: #fff !important;
        color: #21192a !important;
    }
    .content-product .show-quickly:hover::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2321192a' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
    }
    .products-page-cats a:hover {
        background: #f8ecfa;
        border-color: rgba(130,27,160,.14);
        color: #821ba0;
    }
}
@media (pointer: coarse) {
    .woocommerce-ordering select.orderby { font-size: 16px; }
    .view-switcher .switchToGrid,
    .view-switcher .switchToList {
        width: 40px;
        height: 40px;
    }
}
.page-heading.bc-type-5 .title {
    max-width: 100%;
    overflow-wrap: anywhere;
}
.page-heading.bc-type-5 .woocommerce-breadcrumb {
    flex-wrap: wrap;
    max-width: 100%;
    row-gap: 2px;
    text-align: center;
}
@media (min-width: 901px) {
    .page-heading.bc-type-5:has(.back-history) {
        padding-left: clamp(24px, 18vw, 210px);
        padding-right: clamp(24px, 18vw, 210px);
    }
    .page-heading.bc-type-5:has(.back-history) .container {
        width: auto !important;
        max-width: 100% !important;
        padding-left: 0;
        padding-right: 0;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (max-width: 900px) {
    .page-heading.bc-type-5 .title {
        display: block !important;
        width: fit-content;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .page-heading.bc-type-5 .woocommerce-breadcrumb {
        display: flex !important;
        width: fit-content !important;
        max-width: 100%;
        float: none !important;
        margin: 14px auto 0 !important;
    }
    .page-heading.bc-type-5 .back-history {
        position: static !important;
        right: auto !important;
        transform: none !important;
        width: fit-content !important;
        max-width: 100%;
    }
    .page-heading.bc-type-5 .back-history:hover,
    .page-heading.bc-type-5 .back-history:focus-visible,
    .page-heading.bc-type-5 .back-history:active {
        transform: none !important;
    }
    .page-heading.bc-type-5 .container::after {
        display: block;
        width: fit-content;
        max-width: 100%;
        margin: 18px auto 0;
    }
}
@media (max-width: 480px) {
    .page-heading.bc-type-5 .title {
        font-size: 1.75rem;
    }
    .page-heading.bc-type-5 .woocommerce-breadcrumb {
        padding: 6px 14px;
        border-radius: 18px;
    }
    .page-heading.bc-type-5 .woocommerce-breadcrumb,
    .page-heading.bc-type-5 .woocommerce-breadcrumb *:not(a),
    .page-heading.bc-type-5 .woocommerce-breadcrumb a {
        font-size: 12px;
    }
    .page-heading.bc-type-5 .container::after {
        max-width: 100%;
        white-space: normal;
        line-height: 1.4;
    }
}
@media (orientation: landscape) and (max-height: 480px) {
    .page-heading.bc-type-5 {
        padding-top: 28px;
        padding-bottom: 28px;
        margin-bottom: 20px;
    }
}
@media (max-width: 1200px) {
    .products-loop.products-grid {
        padding-left: 40px;
        padding-right: 40px;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .woocommerce-ordering {
        padding-left: 40px;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
        margin-right: 40px;
    }
}
@media (max-width: 900px) {
    .products-loop.products-grid {
        padding-left: 24px;
        padding-right: 24px;
        column-gap: 14px;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .woocommerce-ordering {
        padding-left: 24px;
        margin-bottom: 0;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
        order: 3;
        flex: 1 1 100%;
        justify-content: center;
        margin: 12px 24px 0;
    }
    nav.woocommerce-pagination.pagination-cubic {
        margin-right: 0;
    }
}
@media (max-width: 640px) {
    .products-loop.products-grid {
        padding-left: 16px;
        padding-right: 16px;
        row-gap: 28px;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .woocommerce-ordering {
        padding-left: 16px;
    }
    *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
        margin: 12px 16px 0;
    }
    .woocommerce-ordering select.orderby {
        max-width: 100%;
    }
    nav.woocommerce-pagination.pagination-cubic {
        margin-top: 28px;
        margin-bottom: 40px;
        padding: 0 12px;
    }
    nav.woocommerce-pagination.pagination-cubic ul {
        flex-wrap: wrap;
        justify-content: center;
        max-width: 100%;
        padding: 4px;
        gap: 2px;
        border-radius: 999px;
    }
    nav.woocommerce-pagination.pagination-cubic li {
        flex: 0 0 auto;
    }
    nav.woocommerce-pagination.pagination-cubic li.firstItem {
        padding-left: 4px;
    }
    nav.woocommerce-pagination.pagination-cubic a,
    nav.woocommerce-pagination.pagination-cubic span {
        width: 38px;
        height: 38px;
    }
}
@supports selector(:has(a)) {
    @media (max-width: 640px) {
        nav.woocommerce-pagination.pagination-cubic ul {
            flex-wrap: nowrap;
        }
        nav.woocommerce-pagination.pagination-cubic ul li:not(:nth-child(-n+2)):not(:nth-last-child(-n+2)):not(:has(.current, [aria-current="page"])):not(:has(+ li .current, + li [aria-current="page"])):not(li:has(.current, [aria-current="page"]) + li):not(:has(.dots, .woocommerce-pagination-ellipsis)) {
            display: none;
        }
    }
}
@media (max-width: 400px) {
    nav.woocommerce-pagination.pagination-cubic a,
    nav.woocommerce-pagination.pagination-cubic span {
        width: 34px;
        height: 34px;
        font-size: 12px;
    }
}
@media (max-width: 360px) {
    nav.woocommerce-pagination.pagination-cubic {
        padding: 0 6px;
    }
    nav.woocommerce-pagination.pagination-cubic ul {
        gap: 1px;
    }
    nav.woocommerce-pagination.pagination-cubic a,
    nav.woocommerce-pagination.pagination-cubic span {
        width: 30px;
        height: 30px;
        font-size: 12px;
    }
    nav.woocommerce-pagination.pagination-cubic span.woocommerce-pagination-ellipsis,
    nav.woocommerce-pagination.pagination-cubic li > span:not([aria-current]):not(.page-numbers) {
        min-width: 14px;
    }
}
@media (max-width: 640px) {
    .products-loop.products-grid .product-details {
        justify-items: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .product-title {
        justify-self: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .products-page-cats {
        justify-self: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .product-excerpt {
        text-align: center;
    }
}
@container pcard (max-width: 330px) {
    .products-loop.products-grid .product-details {
        justify-items: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .product-title {
        justify-self: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .products-page-cats {
        justify-self: center;
        text-align: center;
    }
    .products-loop.products-grid .product-details .product-excerpt {
        text-align: center;
    }
}
.woocommerce-ordering {
    display: none !important;
}
@media (max-width: 900px) {
    .page-heading.bc-type-5 [class*="breadcrumb"]:not(li):not(a):not(span):not(i) {
        position: static !important;
        float: none !important;
        clear: both !important;
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center !important;
        gap: 4px 6px;
        width: 100% !important;
        max-width: 100%;
        margin: 14px auto 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: none !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
        text-align: center !important;
    }
    .page-heading.bc-type-5 [class*="breadcrumb"]:not(li):not(a):not(span):not(i)::after {
        content: '' !important;
        display: block !important;
        flex: 0 0 100% !important;
        order: 98;
        height: 0;
        width: 100%;
    }
    .page-heading.bc-type-5 .back-history {
        clear: both !important;
        float: none !important;
        display: flex !important;
        flex: 0 0 auto;
        order: 99;
        width: fit-content !important;
        margin: 14px auto 0 !important;
    }
    .page-heading.bc-type-5 .container::after {
        clear: both;
    }
}
:root {
	--shop-pad-l: 100px;
	--shop-pad-r: 76px;
	--shop-col-gap: 24px;
	--shop-row-gap: 50px;
	--shop-list-pad: 16px;
}
@media (max-width: 1199.98px) {
	:root { --shop-pad-l: 40px; --shop-pad-r: 40px; --shop-col-gap: 20px; }
}
@media (max-width: 1024px) {
	:root { --shop-list-pad: 14px; }
}
@media (max-width: 900px) {
	:root { --shop-pad-l: 24px; --shop-pad-r: 24px; --shop-col-gap: 14px; --shop-row-gap: 36px; }
}
@media (max-width: 760px) {
	:root { --shop-list-pad: 12px; }
}
@media (max-width: 640px) {
	:root { --shop-pad-l: 16px; --shop-pad-r: 16px; --shop-row-gap: 28px; }
}
@media (max-width: 480px) {
	:root { --shop-list-pad: 10px; }
}
body:has(.products-loop.products-list) {
	--shop-pad-l: max(var(--shop-list-pad), calc((100% - 1080px) / 2 + var(--shop-list-pad)));
	--shop-pad-r: max(var(--shop-list-pad), calc((100% - 1080px) / 2 + var(--shop-list-pad)));
}
html body .products-loop.products-grid {
	padding-left: var(--shop-pad-l) !important;
	padding-right: var(--shop-pad-r) !important;
	column-gap: var(--shop-col-gap) !important;
	row-gap: var(--shop-row-gap) !important;
}
html body .products-loop.products-grid .product-details {
	flex: 1 1 auto;
	grid-template-rows: auto 1fr auto auto;
}
html body .products-loop.products-grid .product-details .product-excerpt {
	align-self: start;
}
@media (max-width: 640px) {
	html body .products-loop.products-grid .product-details {
		grid-template-rows: auto auto 1fr auto auto;
	}
}
@container pcard (max-width: 330px) {
	html body .products-loop.products-grid .product-details {
		grid-template-rows: auto auto 1fr auto auto;
	}
}
html body *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px 8px !important;
}
html body *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .view-switcher {
	order: 1 !important;
	flex: 0 0 auto !important;
	margin: 0 0 0 var(--shop-pad-l) !important;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}
html body *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
	order: 2 !important;
	flex: 0 1 auto !important;
	justify-content: flex-end;
	margin: 0 var(--shop-pad-r) 0 auto !important;
	padding: 0 !important;
}
@media (max-width: 699.98px) {
	html body *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > nav.woocommerce-pagination.pagination-cubic {
		order: 3 !important;
		flex: 1 1 100% !important;
		justify-content: center;
		margin: 4px var(--shop-pad-r) 0 var(--shop-pad-l) !important;
	}
}
html body nav.woocommerce-pagination.pagination-cubic {
	margin-left: var(--shop-pad-l);
	margin-right: var(--shop-pad-r);
}
@media (min-width: 700px) and (max-width: 1199.98px) {
	html body .page-heading.bc-type-5 {
		--tb-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 400' preserveAspectRatio='xMidYMid slice'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff' stop-opacity='.26'/%3E%3Cstop offset='1' stop-color='%23ffffff' stop-opacity='.04'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23e296f0' stop-opacity='.6'/%3E%3Cstop offset='1' stop-color='%23b33bc8' stop-opacity='.12'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='%23ffffff'%3E%3Ccircle cx='250' cy='46' r='22' fill-opacity='.06'/%3E%3Ccircle cx='555' cy='352' r='28' fill-opacity='.05'/%3E%3Ccircle cx='210' cy='190' r='9' fill-opacity='.09'/%3E%3Ccircle cx='600' cy='30' r='12' fill-opacity='.08'/%3E%3Ccircle cx='330' cy='372' r='14' fill-opacity='.06'/%3E%3C/g%3E%3Cg transform='rotate(-9 90 120)' stroke='%23f5edf7' stroke-opacity='.45' stroke-width='1.5'%3E%3Crect x='-70' y='20' width='290' height='210' rx='26' fill='url(%23a)'/%3E%3Ccircle cx='30' cy='95' r='40' fill='url(%23b)'/%3E%3Crect x='92' y='62' width='100' height='64' rx='20' fill='url(%23b)'/%3E%3Crect x='-10' y='152' width='170' height='38' rx='19' fill='url(%23a)'/%3E%3Cpath d='M184 20 L220 20 L220 56 Q196 54 184 20 Z' fill='%23ffffff' fill-opacity='.4' stroke='none'/%3E%3C/g%3E%3Cg transform='rotate(6 80 290)' stroke='%23f5edf7' stroke-opacity='.32' stroke-width='1.3'%3E%3Crect x='-50' y='238' width='250' height='150' rx='24' fill='url(%23a)'/%3E%3Ccircle cx='40' cy='312' r='30' fill='url(%23b)'/%3E%3Crect x='86' y='288' width='84' height='48' rx='16' fill='url(%23a)'/%3E%3C/g%3E%3Cg transform='rotate(8 710 110)' stroke='%23f5edf7' stroke-opacity='.45' stroke-width='1.5'%3E%3Crect x='560' y='14' width='300' height='200' rx='26' fill='url(%23a)'/%3E%3Cellipse cx='650' cy='100' rx='66' ry='40' fill='url(%23b)'/%3E%3Ccircle cx='765' cy='84' r='32' fill='url(%23b)'/%3E%3Crect x='600' y='150' width='170' height='38' rx='19' fill='url(%23a)'/%3E%3C/g%3E%3Cg transform='rotate(-6 720 310)' stroke='%23f5edf7' stroke-opacity='.32' stroke-width='1.3'%3E%3Crect x='590' y='238' width='260' height='150' rx='24' fill='url(%23a)'/%3E%3Ccircle cx='680' cy='312' r='34' fill='url(%23b)'/%3E%3Crect x='730' y='292' width='90' height='44' rx='16' fill='url(%23a)'/%3E%3C/g%3E%3Cg stroke='%23f5edf7' stroke-opacity='.42' stroke-width='1.3'%3E%3Ccircle cx='196' cy='338' r='38' fill='url(%23b)'/%3E%3Ccircle cx='196' cy='338' r='28' fill='none' stroke-dasharray='3 5'/%3E%3Ccircle cx='592' cy='368' r='34' fill='url(%23a)'/%3E%3Ccircle cx='592' cy='368' r='25' fill='none' stroke-dasharray='3 5'/%3E%3Ccircle cx='774' cy='330' r='14' fill='url(%23b)'/%3E%3Ccircle cx='30' cy='214' r='12' fill='url(%23b)'/%3E%3C/g%3E%3Ccircle cx='560' cy='300' r='8' fill='%2396cf32' fill-opacity='.8'/%3E%3Ccircle cx='236' cy='270' r='5' fill='%2396cf32' fill-opacity='.6'/%3E%3Ccircle cx='772' cy='214' r='6' fill='%2396cf32' fill-opacity='.7'/%3E%3Cg stroke='%23f5edf7' stroke-opacity='.4' stroke-width='1.2' fill='none'%3E%3Ccircle cx='16' cy='384' r='6'/%3E%3Cpath d='M4 384h24M16 372v24'/%3E%3Ccircle cx='784' cy='16' r='6'/%3E%3Cpath d='M772 16h24M784 4v24'/%3E%3C/g%3E%3C/svg%3E");
		--tb-bg: #7e249c;
		--tb-sweep: linear-gradient(100deg, transparent 20%, rgba(255,255,255,.14) 48%, rgba(255,255,255,0) 66%);
		--tb-sheen: linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 42%);
		--tb-center: radial-gradient(ellipse 80% 95% at 50% 50%, rgba(230,165,245,.48) 0%, rgba(189,76,210,.25) 50%, transparent 85%);
		--tb-glows:
			radial-gradient(circle at 92% 4%, rgba(226,150,240,.52) 0%, rgba(226,150,240,0) 40%),
			radial-gradient(circle at 4% 0%, rgba(245,237,247,.20) 0%, rgba(245,237,247,0) 30%),
			radial-gradient(circle at 4% 100%, rgba(179,59,200,.48) 0%, rgba(179,59,200,0) 44%),
			radial-gradient(circle at 98% 100%, rgba(150,207,50,.20) 0%, rgba(150,207,50,0) 24%);
		--tb-base: linear-gradient(115deg, #621c7a 0%, #8c2aae 35%, #9731bb 65%, #6a1f84 100%);
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: clamp(270px, 36vw, 320px) !important;
		padding: clamp(26px, 3.6vw, 34px) clamp(24px, 5vw, 56px) !important;
		margin-bottom: 24px !important;
		background-color: var(--tb-bg) !important;
		background-image: var(--tb-art), var(--tb-sweep), var(--tb-sheen), var(--tb-center), var(--tb-glows), var(--tb-base) !important;
		background-size: cover !important;
		background-position: center !important;
		background-repeat: no-repeat !important;
		background-attachment: scroll !important;
	}
	html body .page-heading.bc-type-5 .container {
		width: 100% !important;
		max-width: 100% !important;
	}
	html body .page-heading.bc-type-5 .title {
		font-size: clamp(1.9rem, 4.6vw, 2.4rem) !important;
		padding-bottom: 12px !important;
	}
	html body .page-heading.bc-type-5 .woocommerce-breadcrumb {
		margin-top: 10px !important;
	}
	html body .page-heading.bc-type-5 .back-history {
		margin-top: 10px !important;
		padding: 7px 16px 7px 12px !important;
	}
	html body .page-heading.bc-type-5 .container::after {
		margin-top: 14px !important;
		padding: 7px 18px !important;
	}
}
@media (max-width: 699.98px) {
	html body .content-product .product-image-wrapper .footer-product,
	html body .content-product .footer-product {
		display: flex !important;
		position: absolute !important;
		top: auto !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		clip: auto !important;
		clip-path: none !important;
		pointer-events: none !important;
		z-index: 5 !important;
	}
	html body .content-product .footer-product .show-quickly,
	html body .content-product .show-quickly,
	html body .content-product:hover .show-quickly,
	html body .products-loop .product .show-quickly {
		display: flex !important;
		position: relative !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		height: auto !important;
		max-height: none !important;
		pointer-events: auto !important;
		padding: 11px 14px !important;
		font-size: 11px;
		transition: background-color .2s ease, color .2s ease !important;
	}
}
@media (max-width: 699.98px) {
	html body *:has(> .woocommerce-ordering):has(> nav.woocommerce-pagination.pagination-cubic) > .view-switcher,
	html body .view-switcher {
		display: none !important;
	}
}

/* ===== Global tokens + Homepage ===== */
:root{
	--p:#76228e;
	--pd:#43104f;
	--l:#96cf32;
	--ink:#21192a;
	--muted:#716a76;
	--lilac:#f5edf7;
	--white:#fff;
}
html, body {
	width: 100%;
	max-width: 100%;
	overflow-x: clip;
	margin: 0;
	padding: 0;
}
*{
	box-sizing:border-box}
.keon-link-char{
	display:inline-block;
}
.keon-native-select-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.keon-custom-select {
	position: relative !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.keon-custom-select__trigger {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	height: 48px !important;
	padding: 0 18px !important;
	border: 1px solid #d5c2dc !important;
	border-radius: 26px !important;
	background: #fff !important;
	font-family: inherit !important;
	font-size: 14px !important;
	color: var(--ink) !important;
	text-align: left !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
}
.keon-custom-select__trigger::after {
	content: "" !important;
	flex-shrink: 0 !important;
	width: 10px !important;
	height: 6px !important;
	margin-left: 12px !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2376228e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center !important;
	background-size: 10px 6px !important;
	transition: transform .2s ease;
}
.keon-custom-select.is-open .keon-custom-select__trigger::after {
	transform: rotate(180deg);
}
.keon-custom-select__panel {
	display: none;
	position: fixed !important;
	z-index: 9999 !important;
	max-height: 220px !important;
	overflow-y: auto !important;
	padding: 8px !important;
	border: 1px solid #eaddee !important;
	border-radius: 18px !important;
	background: #fff !important;
	box-shadow: 0 16px 32px rgba(65, 16, 79, .18) !important;
	box-sizing: border-box !important;
}
.keon-custom-select__panel.is-open {
	display: block !important;
}
.keon-custom-select__option {
	padding: 10px 12px !important;
	border-radius: 12px !important;
	font-size: 13px !important;
	color: var(--ink) !important;
	cursor: pointer !important;
}
.keon-custom-select__option:hover {
	background: #f6ebf9 !important;
}
@media (min-width: 1024px) {
	html:has(body.page-id-95129) {
		scroll-snap-type: y mandatory;
		scroll-padding-top: calc(var(--keon-adminbar-h, 0px) + var(--keon-nav-h-current, 85px));
	}
}
html body .kh-footer .kh-footer__expertise-box img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
	transform: none !important;
}
@media (max-width: 640px) {
	html body .kh-footer .kh-footer__top > .kh-footer__shop-column.kh-shop-is-open .kh-footer__links {
		border-top: 0 !important;
		background-image: linear-gradient(to right, transparent calc(50% - .5px), rgba(255,255,255,.24) 50%, transparent calc(50% + .5px)) !important;
		background-repeat: no-repeat !important;
		background-size: 100% 100% !important;
	}
}
@media (min-width: 1024px) and (max-height: 900px) {
	html:has(body.page-id-95129) {
		--keon-nav-h-current: 68px;
	}
}
@media (min-width: 1024px) and (max-height: 900px) {
  html:has(body.page-id-95129) {
    scroll-snap-type: y mandatory;
    scroll-padding-top: calc(var(--keon-adminbar-h, 0px) + var(--keon-nav-h-current, 68px));
  }
}
@media (min-width: 1200px) and (min-height: 901px) {
  html:has(body.page-id-95129) {
    scroll-snap-type: y mandatory;
    scroll-padding-top: calc(var(--keon-adminbar-h, 0px) + var(--keon-nav-h-current, 114px));
  }
}
@media (min-width: 1200px) and (min-height: 901px) {
  html:has(body.page-id-95129) {
    --keon-nav-h-current: calc(114px - var(--keon-adminbar-h, 0px));
  }
}
@media (min-width: 1200px) and (max-height: 900px) {
  html:has(body.page-id-95129) {
    --keon-nav-h-current: calc(107px - var(--keon-adminbar-h, 0px));
  }
}
@media (min-width:1200px){
  html:has(body.page-id-95129){
    scroll-snap-type:y mandatory;
  }
}
@media (min-width:1200px){
  html:has(body.page-id-95129){
    --kv-navh:76px;
    scroll-padding-top:calc(var(--keon-adminbar-h,0px) + var(--kv-navh));
  }
}
@media (min-width:1200px) and (max-height:900px){
  html:has(body.page-id-95129){
    --kv-navh:76px;
    scroll-padding-top:calc(var(--keon-adminbar-h,0px) + var(--kv-navh));
  }
}
@media (min-width:1200px) and (max-height:900px){
  html body.page-id-95129 .keon-finder-viewport .keon-finder-row .keon-subscribe form > :has(> input):not(.keon-subscribe__names):not([hidden]):not([style*="display"]):not([aria-hidden="true"]){
    display:flex !important;
    flex-direction:column !important;
    gap:6px !important;
  }
}
@media (min-width:700px) and (max-width:1199px){
  html:has(body.page-id-95129){
    scroll-padding-top:0;
  }
}
@media (min-width:700px) and (max-width:1199px){
  html:has(body.page-id-95129),
  html body.page-id-95129{
    overflow-x:clip !important;
    overflow-y:visible !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding-bottom:0 !important;
    margin-bottom:0 !important;
    scroll-snap-type:none !important;
  }
}

/* ===== WOOCOMMERCE NOTICES ("added to your basket", returning customer, coupon, errors)
   product page, basket and checkout - same purple card look as the basket page ===== */
body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) {
	--kn-p: #76228e;
	--kn-ink: #21192a;
	--kn-lilac: #f5edf7;
	--kn-line: #eadcef;
}
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-info,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 16px;
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 16px !important;
	padding: 16px 20px 16px 56px !important;
	border: 1px solid var(--kn-line) !important;
	border-radius: 16px !important;
	background: var(--kn-lilac) !important;
	box-shadow: none !important;
	color: var(--kn-ink) !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	list-style: none;
}
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error {
	border-color: #f1c7cf !important;
	background: #fff5f6 !important;
}
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error li { margin: 0; padding: 0; }
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message::before,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-info::before,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error::before {
	position: absolute !important;
	top: 50% !important;
	left: 16px !important;
	display: grid !important;
	place-items: center;
	width: 28px !important;
	height: 28px !important;
	margin: 0 !important;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 3px 8px rgba(118, 34, 142, .15);
	color: var(--kn-p) !important;
	font-size: 14px !important;
	line-height: 28px !important;
	text-align: center;
	transform: translateY(-50%);
}
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error::before { color: #b3261e !important; }
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-info a,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message a:not(.button) {
	color: var(--kn-p) !important;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}
/* "View basket" button inside the added-to-basket notice */
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message .button.wc-forward {
	order: 2;
	float: none !important;
	margin: 0 0 0 auto !important;
	padding: 9px 18px !important;
	border: 1px solid var(--kn-p) !important;
	border-radius: 999px !important;
	background: #fff !important;
	color: var(--kn-p) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	white-space: nowrap;
}


/* WooCommerce focuses the notice for screen readers; it is not interactive, so no focus ring */
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message:focus,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-info:focus,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error:focus,
html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) .woocommerce-notices-wrapper:focus { outline: 0 !important; }

@media (max-width: 599.98px) {
	html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message,
	html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-info,
	html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-error { padding: 14px 16px 14px 52px !important; font-size: 13px !important; }
	html body:is(.woocommerce-checkout, .woocommerce-cart, .single-product) :is(.woocommerce, .woocommerce-notices-wrapper) .woocommerce-message .button.wc-forward { margin: 0 !important; }
}

/* product page: the notice sits straight under the header, give it the same breathing room as the basket */
html body.single-product .woocommerce-notices-wrapper:not(:empty) { padding-top: 16px; }
