.mss-menu,
.mss-menu * {
    box-sizing: border-box;
}

.mss-menu {
    background: rgba(255, 255, 255, 0) !important;
    --mss-card: #fffaf2;
    --mss-card-strong: #fff6e8;
    --mss-text: #173d2c;
    --mss-muted: rgba(23, 61, 44, 0.68);
    --mss-soft: rgba(23, 61, 44, 0.09);
    --mss-border: rgba(23, 61, 44, 0.12);
    --mss-card-border-custom: rgba(23, 61, 44, 0.12);
    --mss-card-border-hover-custom: rgba(23, 61, 44, 0.24);
    --mss-card-border-width-custom: 1px;
    --mss-card-border-rule: var(--mss-card-border-width-custom) solid var(--mss-card-border-custom);
    --mss-card-radius-custom: var(--mss-radius);
    --mss-card-shadow-custom: 0 14px 42px rgba(35, 24, 10, 0.08);
    --mss-card-shadow-hover-custom: 0 18px 44px rgba(35, 24, 10, 0.12);
    --mss-card-gap-custom: 24px;
    --mss-card-body-padding-custom: 12px;
    --mss-card-image-aspect-custom: 4/3;
    --mss-card-title-line-height-custom: 1.14;
    --mss-card-image-contrast-custom: 100%;
    --mss-card-image-saturate-custom: 100%;
    --mss-mobile-card-title-size-custom: calc(var(--mss-card-title-size, 18px) * 0.9);
    --mss-mobile-card-title-line-height-custom: 22px;
    --mss-mobile-card-text-size-custom: var(--mss-card-text-size, 13px);
    --mss-mobile-card-text-line-height-custom: 1.38;
    --mss-mobile-card-price-size-custom: var(--mss-card-price-size, 15px);
    --mss-mobile-card-button-size-custom: var(--mss-card-button-size, 12px);
    --mss-mobile-card-gap-custom: var(--mss-card-gap-custom, 24px);
    --mss-mobile-card-body-padding-custom: var(--mss-card-body-padding-custom, 12px);
    --mss-mobile-card-title-margin-custom: 0 0 4px 0;
    --mss-mobile-card-title-padding-custom: var(--mss-card-title-padding-custom, 0);
    --mss-mobile-card-description-margin-custom: 4px 0 0;
    --mss-mobile-card-bottom-gap-custom: var(--mss-card-title-button-gap-custom, 10px);
    --mss-mobile-card-image-aspect-custom: var(--mss-card-image-aspect-custom, 4/3);
    --mss-cart-width-custom: min(760px, calc(100vw - 28px));
    --mss-cart-radius-custom: 28px;
    --mss-cart-shadow-custom: 0 18px 55px rgba(0,0,0,.18);
    --mss-cart-bottom-custom: 18px;
    --mss-light-image-shadow-custom: 0 12px 34px rgba(35, 24, 10, 0.10);
    --mss-light-image-shadow-hover-custom: none;
    --mss-light-image-radius-custom: 22px;
    --mss-z-index-max: 2147483640;
    --mss-accent: #0b4a34;
    --mss-accent-2: #f0d9bb;
    --mss-shadow: 0 20px 50px rgba(35, 24, 10, 0.12);
    --mss-radius: 24px;
    --mss-columns: 4;
    --mss-tablet-columns-custom: 3;
    position: relative;
    z-index: 1;
    max-width: 1600px;
    margin: 0 auto;
    padding: 22px 16px 96px;
    color: var(--mss-text);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
}

.mss-menu.mss-cart-layer-active {
    z-index: var(--mss-z-index-max, 2147483640) !important;
}

.mss-header {
    max-width: 760px;
    margin: 0 auto 24px;
    text-align: center;
}

.mss-header h2 {
    margin: 0;
    font-size: clamp(32px, 5vw, 58px);
    line-height: 0.96;
    letter-spacing: -0.055em;
    color: var(--mss-text);
}

.mss-header p {
    margin: 12px auto 0;
    max-width: 560px;
    color: var(--mss-muted);
    font-size: 16px;
    line-height: 1.5;
}


.mss-category-track {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 5px 2px 9px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.mss-category-track::-webkit-scrollbar {
    display: none;
}

.mss-category-pill {
    appearance: none;
    border: 1px solid var(--mss-border);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.76);
    color: var(--mss-text);
    padding: 10px 16px;
    font: inherit;
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(35, 24, 10, 0.06);
    transition: transform 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease;
}

.mss-category-pill:hover {
    transform: translateY(-1px);
    border-color: rgba(11, 74, 52, 0.28);
}

.mss-category-pill.is-active {
    background: var(--mss-accent);
    color: #fff;
    border-color: var(--mss-accent);
}

.mss-sections {
    display: grid;
    gap: 34px;
}

.mss-category-section {
    scroll-margin-top: 92px;
}

.mss-category-title {
    margin: 0 0 16px;
    color: var(--mss-text);
    font-size: clamp(24px, 3vw, 38px);
    line-height: 1;
    letter-spacing: -0.04em;
}

.mss-product-grid {
    display: grid;
    grid-template-columns: repeat(var(--mss-columns), minmax(0, 1fr));
    gap: 18px;
}

.mss-product-card {
    overflow: hidden;
    min-width: 0;
    border: var(--mss-card-border-rule);
    border-radius: var(--mss-card-radius-custom);
    background: var(--mss-card);
    box-shadow: var(--mss-card-shadow-custom);
    cursor: pointer;
    outline: none;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, opacity 180ms ease;
}

.mss-product-card:hover,
.mss-product-card:focus-visible {
    transform: translateY(-3px);
    border-color: var(--mss-card-border-hover-custom);
    box-shadow: var(--mss-card-shadow-hover-custom);
}

.mss-product-card.is-updating {
    opacity: 0.72;
}

.mss-card-image-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    margin: 0;
    padding: 0;
    background: var(--mss-card-strong);
    line-height: 0;
    overflow: hidden;
}

.mss-menu .mss-card-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0;
    object-fit: cover;
    vertical-align: top;
    transform: scale(1.01);
    transition: transform 260ms ease;
}

.mss-product-card:hover .mss-card-image {
    transform: scale(1.045);
}


/* v1.0.114: optional gallery image on product photo hover */
.mss-hover-gallery-image-enabled .mss-card-image-wrap.has-hover-image {
    isolation: isolate;
}

.mss-hover-gallery-image-enabled .mss-card-image-wrap.has-hover-image .mss-card-image-primary {
    position: relative !important;
    z-index: 1;
    opacity: 1;
    transition: opacity 260ms ease !important;
}

.mss-hover-gallery-image-enabled .mss-card-image-wrap.has-hover-image .mss-card-hover-image {
    position: absolute !important;
    inset: 0;
    z-index: 2;
    opacity: 0;
    pointer-events: none;
    transition: opacity 260ms ease !important;
}

.mss-hover-gallery-image-enabled .mss-card-image-wrap.has-hover-image:hover .mss-card-hover-image,
.mss-hover-gallery-image-enabled .mss-card-image-wrap.has-hover-image:focus-within .mss-card-hover-image {
    opacity: 1;
}

.mss-card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 198px;
    padding: 15px;
}

.mss-card-category {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin-bottom: 7px;
    color: var(--mss-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.mss-card-title {
    margin: 0;
    color: var(--mss-text);
    font-size: 18px;
    line-height: var(--mss-card-title-line-height-custom, 1.14);
    letter-spacing: -0.025em;
}

.mss-card-description {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 54px;
    margin: 8px 0 0;
    color: var(--mss-muted);
    font-size: 13px;
    line-height: 1.38;
}


.mss-card-price,
.mss-modal-price {
    color: var(--mss-text);
    font-size: 17px;
    font-weight: 850;
    letter-spacing: -0.02em;
}

.mss-card-price {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mss-card-price .woocommerce-Price-amount,
.mss-card-price del,
.mss-card-price ins {
    white-space: nowrap;
}

.mss-card-price del,
.mss-modal-price del {
    color: var(--mss-muted);
    font-weight: 650;
}

.mss-card-price del {
    font-size: 0.85em;
    line-height: 0;
    white-space: nowrap;
}

.mss-card-price ins,
.mss-modal-price ins {
    color: var(--mss-accent);
    text-decoration: none;
}

.mss-product-actions {
    display: grid;
    width: 100%;
}

.mss-add-button, .mss-link-button, .mss-disabled-button, .mss-qty-button{
    appearance: none;
    border: 0;
    font-family: inherit;
    text-decoration: none !important;
}

.mss-add-button,
.mss-link-button,
.mss-disabled-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    border-radius: 999px;
    padding: 12px 16px;
    font-size: 14px;
    font-weight: 850;
    line-height: 1;
    cursor: pointer;
    transition: transform 160ms ease, opacity 160ms ease, background 160ms ease;
}

.mss-add-button {
    background: var(--mss-accent);
    color: #fff;
    box-shadow: 0 10px 24px rgba(11, 74, 52, 0.18);
}

.mss-add-button:hover,
.mss-link-button:hover {
    transform: translateY(-1px);
}

.mss-add-button:active,
.mss-link-button:active,
.mss-qty-button:active {
    transform: scale(0.98);
}

.mss-link-button {
    background: var(--mss-soft);
    color: var(--mss-accent);
}

.mss-disabled-button {
    background: rgba(0, 0, 0, 0.06);
    color: var(--mss-muted);
    cursor: not-allowed;
}

.mss-add-button:disabled,
.mss-qty-button:disabled,
.mss-link-button:disabled {
    opacity: 0.55;
    cursor: wait;
}

.mss-qty-control {
    display: grid;
    grid-template-columns: 44px 1fr 44px;
    align-items: center;
    min-height: 44px;
    border: 1px solid rgba(11, 74, 52, 0.16);
    border-radius: 999px;
    background: rgba(11, 74, 52, 0.08);
    overflow: hidden;
}

.mss-qty-control[hidden], .mss-add-button[hidden], .mss-link-button[hidden], .mss-disabled-button[hidden]{
    display: none !important;
}

.mss-qty-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    width: 44px;
    background: transparent;
    color: var(--mss-accent);
    font-size: 24px;
    font-weight: 760;
    cursor: pointer;
}

.mss-qty-value {
    text-align: center;
    color: var(--mss-text);
    font-size: 15px;
    font-weight: 850;
    line-height: 1;
}

.mss-empty,
.mss-admin-warning {
    border: 1px solid var(--mss-border);
    border-radius: 18px;
    background: #fff;
    padding: 18px;
    color: var(--mss-text);
}

body.mss-modal-open {
    overflow: hidden;
}

.mss-modal {
    position: fixed;
    inset: 0;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 220ms ease;
}

.mss-modal[aria-hidden="false"] {
    pointer-events: auto;
    opacity: 1;
}

.mss-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(13, 18, 16, 0.45);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.mss-modal-dialog {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    align-items: start;
    width: min(1080px, 100%);
    max-height: min(760px, calc(100vh - 44px));
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 32px;
    background: #f5e7d4;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.32);
    transform: translateY(18px) scale(0.985);
    transition: transform 260ms ease;
}

.mss-modal[aria-hidden="false"] .mss-modal-dialog {
    transform: translateY(0) scale(1);
}

.mss-modal-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.74);
    color: var(--mss-text);
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

.mss-modal-image-wrap {
    position: relative;
    min-height: 520px;
    align-self: stretch;
    background: #ead7bf;
    overflow: hidden;
}

.mss-modal-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    opacity: 1;
    transition: opacity 180ms ease;
}

.mss-modal-image.is-switching {
    opacity: 0.28;
}

.mss-modal-gallery-thumbs {
    position: absolute;
    right: 14px;
    bottom: 14px;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    max-width: min(calc(100% - 28px), 340px);
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    overflow-x: auto;
    overflow-y: visible;
    pointer-events: auto;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
}

.mss-modal-gallery-thumbs::-webkit-scrollbar {
    display: none;
}

.mss-modal-gallery-thumbs[hidden] {
    display: none !important;
}

.mss-modal-gallery-thumb {
    appearance: none;
    -webkit-appearance: none;
    flex: 0 0 auto;
    width: 80px;
    height: 80px;
    min-width: 80px;
    min-height: 80px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.18);
    box-shadow: none;
    overflow: hidden;
    cursor: pointer;
    opacity: 0.96;
    transform: translateY(0) scale(1);
    transition: opacity 180ms ease, transform 220ms cubic-bezier(.22, 1, .36, 1), border-color 180ms ease, background-color 180ms ease;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.mss-modal-gallery-thumb:hover,
.mss-modal-gallery-thumb:focus-visible {
    opacity: 1;
    transform: translateY(-1px) scale(1.03);
    border-color: rgba(255, 255, 255, 0.96);
    background: rgba(255, 255, 255, 0.26);
    outline: none;
}

.mss-modal-gallery-thumb.is-active {
    opacity: 1;
    transform: translateY(-1px) scale(1.04);
    border-color: rgba(255, 255, 255, 0.98);
    background: rgba(255, 255, 255, 0.30);
    outline: none;
}

.mss-modal-gallery-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
}

.mss-modal-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 46px 34px 34px;
    color: var(--mss-text);
}

.mss-modal-category {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 10px;
    border-radius: 999px;
    background: rgba(11, 74, 52, 0.1);
    color: var(--mss-accent);
    padding: 7px 10px;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.mss-modal-title {
    margin: 0;
    color: var(--mss-text);
    font-size: clamp(30px, 4vw, 52px);
    line-height: 0.96;
    letter-spacing: -0.06em;
}

.mss-modal-description {
    margin: 16px 0 0;
    color: var(--mss-muted);
    font-size: 16px;
    line-height: 1.52;
}

.mss-modal-bottom {
    display: grid;
    gap: 22px;
    margin-top: 26px;
}

.mss-modal-actions {
    max-width: 360px;
}


@media (max-width: 1120px) {
    .mss-product-grid {
        grid-template-columns: repeat(min(var(--mss-columns), 3), minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .mss-menu {
        padding-left: 12px;
        padding-right: 12px;
    }

    

    .mss-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .mss-card-body {
        min-height: 188px;
        padding: 13px;
    }

    .mss-card-title {
        font-size: 16px;
    }

    .mss-card-description {
        font-size: 12.5px;
        min-height: 50px;
    }

    .mss-modal {
        align-items: flex-end;
        padding: 0;
    }

    .mss-modal-dialog {
        grid-template-columns: 1fr;
        width: 100%;
        max-height: 92vh;
        border-radius: 30px 30px 0 0;
        transform: translateY(100%);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .mss-modal[aria-hidden="false"] .mss-modal-dialog {
        transform: translateY(0);
    }

    .mss-modal-image-wrap {
        min-height: 0;
        aspect-ratio: 4 / 3;
    }

    .mss-modal-image {
        min-height: 0;
        height: 100%;
    }

    .mss-modal-content {
        padding: 24px 18px 28px;
    }

    .mss-modal-actions {
        max-width: none;
    }
}

@media (max-width: 620px) {
    .mss-menu {
        padding-bottom: 112px;
    }

    .mss-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .mss-card-image-wrap {
        aspect-ratio: 1 / 0.86;
    }

    .mss-card-body {
        min-height: 174px;
        padding: 11px;
    }

    .mss-card-category {
        display: none;
    }

    .mss-card-title {
        font-size: 15px;
        line-height: 1.12;
    }

    .mss-card-description {
        -webkit-line-clamp: 2;
        min-height: 34px;
        margin-top: 6px;
        font-size: 12px;
    }

    .mss-card-price {
        font-size: 15px;
    }

    .mss-add-button,
    .mss-link-button,
    .mss-disabled-button {
        min-height: 40px;
        padding: 10px 12px;
        font-size: 12.5px;
    }

    .mss-qty-control {
        grid-template-columns: 40px 1fr 40px;
        min-height: 40px;
    }

    .mss-qty-button {
        width: 40px;
        height: 40px;
    }

    

    

    
}

@media (max-width: 390px) {
    .mss-product-grid {
        grid-template-columns: 1fr;
    }

    .mss-card-body {
        min-height: 0;
    }
}

/* v1.0.1 refinements */
.mss-menu {
    padding-bottom: 132px;
}


.mss-category-track {
    padding: 4px 2px;
}

.mss-category-pill {
    transition: background 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.mss-category-pill:hover {
    transform: none;
    border-color: rgba(11, 74, 52, 0.24);
    box-shadow: 0 9px 24px rgba(35, 24, 10, 0.09);
}

.mss-product-card {
    transition: box-shadow 180ms ease, border-color 180ms ease, opacity 180ms ease;
}

.mss-product-card:hover,
.mss-product-card:focus-visible {
    transform: none;
    border-color: var(--mss-card-border-hover-custom);
    box-shadow: var(--mss-card-shadow-hover-custom);
}

.mss-card-image {
    transform: none;
    transition: none;
}

.mss-product-card:hover .mss-card-image {
    transform: none;
}

.mss-card-body {
    display: block;
    min-height: 0;
    padding: 14px;
}

.mss-card-category {
    display: none !important;
}

.mss-card-description {
    min-height: 0;
    margin: 7px 0 0;
}


.mss-product-actions {
    display: grid;
    justify-items: start;
    width: 100%;
}

.mss-add-button,
.mss-link-button,
.mss-disabled-button {
    width: auto;
    min-height: 34px;
    padding: 9px 13px;
    font-size: 12.5px;
    box-shadow: none;
    transition: opacity 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.mss-add-button:hover,
.mss-link-button:hover {
    transform: none;
    box-shadow: 0 8px 20px rgba(11, 74, 52, 0.14);
}

.mss-add-button:active,
.mss-link-button:active,
.mss-qty-button:active {
    transform: none;
}

.mss-qty-control {
    grid-template-columns: 34px 40px 34px;
    width: auto;
    min-height: 34px;
}

.mss-qty-button {
    width: 34px;
    height: 34px;
    font-size: 20px;
}

.mss-qty-value {
    font-size: 14px;
}

.mss-modal-actions {
    justify-items: stretch;
    max-width: 360px;
}

.mss-modal-actions .mss-add-button,
.mss-modal-actions .mss-link-button,
.mss-modal-actions .mss-disabled-button {
    width: 100%;
    min-height: 42px;
    font-size: 14px;
}

.mss-modal-actions .mss-qty-control {
    width: 100%;
    grid-template-columns: 44px 1fr 44px;
    min-height: 42px;
}

.mss-modal-actions .mss-qty-button {
    width: 44px;
    height: 42px;
}


.mss-cart-toggle-text {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    border-radius: 999px;
    background: #fff;
    color: var(--mss-accent);
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 850;
    line-height: 1;
}


@media (max-width: 860px) {
    

    .mss-card-body {
        min-height: 0;
        padding: 12px;
    }
}

@media (max-width: 620px) {
    .mss-menu {
        padding-bottom: 136px;
    }

    .mss-card-body {
        min-height: 0;
        padding: 11px;
    }

    .mss-card-description {
        min-height: 0;
    }

    .mss-add-button,
    .mss-link-button,
    .mss-disabled-button {
        min-height: 32px;
        padding: 8px 11px;
        font-size: 12px;
    }

    

    

    .mss-cart-toggle-text {
        padding-left: 10px;
        padding-right: 10px;
        font-size: 11.5px;
    }

    

    
}

/* v1.0.2 refinements: quieter card add button, stable card layout, smoother modal, better Safari category scroll, removable mini-cart items */


.mss-category-track {
    overscroll-behavior-x: contain;
    scroll-behavior: auto;
    will-change: scroll-position;
}

.mss-category-pill {
    transform: none !important;
    -webkit-tap-highlight-color: transparent;
}

.mss-product-grid {
    align-items: stretch;
}

.mss-product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    transform: none !important;
}

.mss-product-card:hover,
.mss-product-card:focus-visible {
    transform: none !important;
    box-shadow: var(--mss-card-shadow-hover-custom);
}

.mss-card-image,
.mss-product-card:hover .mss-card-image {
    transform: none !important;
}

.mss-card-body {
    display: flex !important;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 0;
}

.mss-card-content {
    min-height: 0;
}

.mss-card-content--has-description {
    min-height: 60px;
}

.mss-card-content--no-description {
    min-height: 2.28em;
}

.mss-card-title {
    margin-top: 8px !important;
    margin-bottom: -16px !important;
}

.mss-card-description {
    -webkit-line-clamp: 2;
    min-height: 32px !important;
    margin-top: 4px !important;
}


.mss-card-price {
    min-width: 0;
    font-size: 16px;
}

.mss-card-actions {
    display: flex !important;
    flex: 0 0 auto;
    justify-content: flex-end;
    justify-items: end;
    width: auto !important;
}

.mss-card-add-button,
.mss-card-link-button,
.mss-card-disabled-button {
    width: 30px !important;
    min-width: 30px;
    height: 30px;
    min-height: 30px !important;
    border: 1px solid rgba(23, 61, 44, 0.11);
    border-radius: 999px;
    background: rgba(23, 61, 44, 0.055) !important;
    color: rgba(23, 61, 44, 0.78) !important;
    padding: 0 !important;
    font-size: 20px !important;
    font-weight: 650;
    line-height: 1;
    box-shadow: none !important;
}

.mss-card-add-button:hover,
.mss-card-link-button:hover {
    background: rgba(23, 61, 44, 0.09) !important;
    color: var(--mss-text) !important;
    box-shadow: none !important;
}

.mss-card-add-button span {
    display: block;
    transform: translateY(-1px);
}

.mss-card-qty-control {
    grid-template-columns: 28px 30px 28px !important;
    min-height: 30px !important;
    width: auto !important;
    background: rgba(23, 61, 44, 0.055) !important;
    border-color: rgba(23, 61, 44, 0.11) !important;
}

.mss-card-qty-control .mss-qty-button {
    width: 28px !important;
    height: 30px !important;
    color: rgba(23, 61, 44, 0.82);
    font-size: 18px;
}

.mss-card-qty-control .mss-qty-value {
    font-size: 13px;
}

.mss-modal {
    transition: opacity 420ms ease;
}

.mss-modal-backdrop {
    opacity: 0;
    background: rgba(17, 16, 14, 0.34);
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    transition: opacity 420ms ease, backdrop-filter 420ms ease, -webkit-backdrop-filter 420ms ease;
}

.mss-modal[aria-hidden="false"] .mss-modal-backdrop {
    opacity: 1;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.mss-modal-dialog {
    border: 0 !important;
    opacity: 0;
    transform: translateY(14px) scale(0.985);
    transition: opacity 420ms ease, transform 420ms cubic-bezier(.22, 1, .36, 1);
}

.mss-modal[aria-hidden="false"] .mss-modal-dialog {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.mss-modal-actions {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    justify-items: start !important;
    width: auto !important;
    max-width: none !important;
}

.mss-modal-actions .mss-add-button,
.mss-modal-actions .mss-link-button,
.mss-modal-actions .mss-disabled-button {
    width: auto !important;
    min-width: 132px;
    min-height: 40px !important;
    padding: 10px 16px !important;
}

.mss-modal-actions .mss-qty-control,
.mss-modal-inline-qty-control {
    grid-template-columns: 40px 54px 40px !important;
    width: auto !important;
    min-height: 40px !important;
}

.mss-modal-actions .mss-qty-button,
.mss-modal-inline-qty-control .mss-qty-button {
    width: 40px !important;
    height: 40px !important;
}


.mss-cart-remove {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.9);
    font-family: inherit;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.mss-cart-remove:hover {
    background: rgba(255, 255, 255, 0.2);
}

.mss-cart-remove:disabled {
    opacity: 0.55;
    cursor: wait;
}

@media (max-width: 620px) {
    .mss-card-content {
        min-height: 0;
    }

    .mss-card-content--has-description {
        min-height: 60px;
    }

    .mss-card-content--no-description {
        min-height: 2.2em;
    }

    .mss-card-title {
}

    .mss-card-description {
        -webkit-line-clamp: 2;
        min-height: 32px !important;
        margin-top: 4px !important;
    }

    .mss-card-add-button,
    .mss-card-link-button,
    .mss-card-disabled-button {
        width: 28px !important;
        min-width: 28px;
        height: 28px;
        min-height: 28px !important;
        font-size: 19px !important;
    }

    .mss-card-qty-control {
        grid-template-columns: 26px 28px 26px !important;
        min-height: 28px !important;
    }

    .mss-card-qty-control .mss-qty-button {
        width: 26px !important;
        height: 28px !important;
    }

    .mss-modal-actions .mss-qty-control,
    .mss-modal-inline-qty-control {
        grid-template-columns: 38px 50px 38px !important;
        min-height: 38px !important;
    }

    .mss-modal-actions .mss-qty-button,
    .mss-modal-inline-qty-control .mss-qty-button {
        width: 38px !important;
        height: 38px !important;
    }

    

    

    .mss-cart-remove {
        grid-column: 3;
        grid-row: 1;
    }
}

@media (max-width: 760px) {
    .mss-modal-dialog {
        transform: translateY(100%);
    }

    .mss-modal[aria-hidden="false"] .mss-modal-dialog {
        transform: translateY(0);
    }
}

/* v1.0.3 refinements: mobile 2 columns, iOS-like swipe modal, calmer blur, compact cart panel */


.mss-category-track {
    scroll-behavior: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    will-change: auto !important;
}

.mss-modal {
    display: none !important;
    opacity: 1 !important;
    pointer-events: none;
    transition: none !important;
}

.mss-modal.is-visible {
    display: flex !important;
}

.mss-modal.is-open {
    pointer-events: auto;
}

.mss-modal-backdrop {
    opacity: 0;
    background: rgba(17, 16, 14, 0.34);
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
    transition: opacity 420ms ease, backdrop-filter 420ms ease, -webkit-backdrop-filter 420ms ease;
}

.mss-modal.is-visible:not(.is-open) .mss-modal-backdrop {
    opacity: 0;
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
}

.mss-modal.is-open .mss-modal-backdrop {
    opacity: 1;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.mss-modal-dialog {
    touch-action: pan-y;
    transform-origin: center bottom;
    will-change: transform, opacity, border-radius;
    opacity: 0;
    transform: translateY(14px) scale(0.985);
    transition: opacity 420ms ease, transform 420ms cubic-bezier(.22, 1, .36, 1);
}

.mss-modal.is-visible:not(.is-open) .mss-modal-dialog {
    opacity: 0;
    transform: translateY(14px) scale(0.985);
}

.mss-modal.is-open .mss-modal-dialog {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.mss-modal-dialog.is-dragging {
    cursor: grabbing;
    transition: none !important;
    user-select: none;
}


.mss-cart-toggle-text {
    min-height: 28px;
    padding: 7px 10px;
    font-size: 11.5px;
}


.mss-cart-remove {
    display: none !important;
}


@media (max-width: 760px) {
    .mss-modal {
        align-items: flex-end !important;
        padding: 10px !important;
    }

    .mss-modal-dialog {
        width: 100% !important;
        max-height: min(88vh, 760px) !important;
        border-radius: 28px 28px 22px 22px !important;
        transform: translateY(100%) scale(1);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .mss-modal.is-visible:not(.is-open) .mss-modal-dialog {
        opacity: 1;
        transform: translateY(100%) scale(1);
    }

    .mss-modal.is-open .mss-modal-dialog {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

    .mss-modal-dialog::before {
        content: "";
        position: sticky;
        top: 8px;
        z-index: 12;
        display: block;
        width: 42px;
        height: 5px;
        margin: 10px auto -15px;
        border-radius: 999px;
        background: rgba(12, 75, 52, 0.24);
        pointer-events: none;
    }

    .mss-modal-dialog.is-dragging {
        transition: none !important;
    }

    .mss-modal-image-wrap {
        aspect-ratio: 4 / 3 !important;
    }
}

@media (max-width: 620px) {
    .mss-menu {
        padding-left: 10px;
        padding-right: 10px;
        padding-bottom: 104px !important;
    }

    .mss-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .mss-card-image-wrap {
        aspect-ratio: 1 / 0.82 !important;
    }

    .mss-card-body {
        padding: 10px !important;
    }

    .mss-card-content {
        min-height: 0 !important;
    }

    .mss-card-content--has-description {
        min-height: 60px !important;
    }

    .mss-card-content--no-description {
        min-height: 2.2em !important;
    }

    .mss-card-title {
margin-bottom: -8px !important;
        font-size: 14px !important;
        line-height: 1.12 !important;
    }

    .mss-card-description {
        -webkit-line-clamp: 2;
        min-height: 32px !important;
        margin-top: 4px !important;
        font-size: 11.5px !important;
        line-height: 1.32 !important;
    }

    .mss-card-price {
        font-size: 14px !important;
        line-height: 1.2em;
    }

    

    

    

    .mss-cart-toggle-text {
        padding: 7px 9px;
        font-size: 11px;
    }

    

    

    

    

    
}

@media (max-width: 390px) {
    .mss-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .mss-card-body {
        min-height: 0 !important;
    }
}

.mss-modal.is-visible:not(.is-open) {
    pointer-events: none !important;
}

.mss-modal.is-open {
    pointer-events: auto !important;
}

/* v1.0.4 visual color controls from WordPress Customizer */
.mss-menu {
    background: rgba(255, 255, 255, 0) !important;
    color: var(--mss-text) !important;
}

.mss-header h2,
.mss-category-title,
.mss-card-title,
.mss-card-price,
.mss-modal-title,
.mss-modal-price,
.mss-qty-value {
    color: var(--mss-text) !important;
}

.mss-header p,
.mss-card-description,
.mss-modal-description,
.mss-card-price del,
.mss-modal-price del {
    color: var(--mss-muted) !important;
}

.mss-card-price ins,
.mss-modal-price ins {
    color: var(--mss-accent) !important;
}


.mss-category-pill {
    background: var(--mss-nav-pill-bg) !important;
    color: var(--mss-text) !important;
}

.mss-category-pill.is-active {
    background: var(--mss-accent) !important;
    border-color: var(--mss-accent) !important;
    color: var(--mss-accent-text) !important;
}

.mss-product-card {
    background: var(--mss-card-bg) !important;
}

.mss-card-image-wrap {
    background: var(--mss-card-media-bg) !important;
}

.mss-card-add-button,
.mss-card-link-button,
.mss-card-disabled-button,
.mss-card-qty-control {
    border-color: color-mix(in srgb, var(--mss-accent) 18%, transparent) !important;
    background: color-mix(in srgb, var(--mss-accent) 8%, transparent) !important;
    color: var(--mss-accent) !important;
}

.mss-card-add-button:hover,
.mss-card-link-button:hover,
.mss-card-qty-control:hover {
    background: color-mix(in srgb, var(--mss-accent) 13%, transparent) !important;
    color: var(--mss-accent) !important;
}

.mss-qty-control {
    border-color: color-mix(in srgb, var(--mss-accent) 18%, transparent) !important;
    background: color-mix(in srgb, var(--mss-accent) 9%, transparent) !important;
}

.mss-qty-button {
    color: var(--mss-accent) !important;
}

.mss-modal-dialog {
    background: var(--mss-modal-bg) !important;
}

.mss-modal-image-wrap {
    background: var(--mss-modal-media-bg) !important;
}

.mss-modal-category {
    background: color-mix(in srgb, var(--mss-accent) 10%, transparent) !important;
    color: var(--mss-accent) !important;
}

.mss-modal-actions .mss-add-button,
.mss-modal-actions .mss-link-button,
.mss-modal-add-button,
.mss-modal-link-button {
    background: var(--mss-accent) !important;
    color: var(--mss-accent-text) !important;
}

.mss-modal-actions .mss-qty-control,
.mss-modal-inline-qty-control {
    border-color: color-mix(in srgb, var(--mss-accent) 18%, transparent) !important;
    background: color-mix(in srgb, var(--mss-accent) 9%, transparent) !important;
}

.mss-modal-dialog::before {
    background: color-mix(in srgb, var(--mss-accent) 24%, transparent) !important;
}


.mss-cart-toggle-text{
    background: var(--mss-checkout-bg) !important;
    color: var(--mss-accent) !important;
}

/* v1.0.5 refinements: uploaded heading font support, Lisa card button, cleaner compact cart sheet */
.mss-card-add-button,
.mss-card-link-button,
.mss-card-disabled-button {
    width: auto !important;
    min-width: 42px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11.5px !important;
    font-weight: 820 !important;
    letter-spacing: 0.01em !important;
    line-height: 1 !important;
}

.mss-card-add-button:hover,
.mss-card-link-button:hover {
    transform: none !important;
}


.mss-cart-toggle-text {
    min-height: 26px !important;
    padding: 6px 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
}


@media (max-width: 620px) {
    .mss-card-add-button,
    .mss-card-link-button,
    .mss-card-disabled-button {
        min-width: 38px !important;
        height: 26px !important;
        min-height: 26px !important;
        padding: 0 8px !important;
        font-size: 10.8px !important;
    }

    

    

    

    

    

    

    

    

    .mss-cart-toggle-text {
        min-height: 25px !important;
        padding: 6px 8px !important;
        font-size: 10.5px !important;
    }
}


/* v1.0.6: keep card Lisa button and quantity control exactly aligned */
.mss-card-actions {
    width: 86px !important;
    min-width: 86px !important;
    flex: 0 0 86px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    justify-items: end !important;
}

.mss-card-actions .mss-card-add-button,
.mss-card-actions .mss-card-link-button,
.mss-card-actions .mss-card-disabled-button,
.mss-card-actions .mss-card-qty-control {
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    box-sizing: border-box !important;
}

.mss-card-actions .mss-card-add-button,
.mss-card-actions .mss-card-link-button,
.mss-card-actions .mss-card-disabled-button {
    padding: 0 10px !important;
    font-size: 12.5px !important;
    font-weight: 820 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    white-space: nowrap !important;
}

.mss-card-actions .mss-card-qty-control {
    grid-template-columns: 28px minmax(28px, 1fr) 28px !important;
    align-items: center !important;
    overflow: hidden !important;
}

.mss-card-actions .mss-card-qty-control .mss-qty-button {
    width: 28px !important;
    height: 30px !important;
    min-height: 30px !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

.mss-card-actions .mss-card-qty-control .mss-qty-value {
    min-width: 28px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
}

@media (max-width: 620px) {
    .mss-card-actions {
        width: 80px !important;
        min-width: 80px !important;
        flex-basis: 80px !important;
    }

    .mss-card-actions .mss-card-add-button,
    .mss-card-actions .mss-card-link-button,
    .mss-card-actions .mss-card-disabled-button,
    .mss-card-actions .mss-card-qty-control {
        width: 80px !important;
        min-width: 80px !important;
        max-width: 80px !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
    }

    .mss-card-actions .mss-card-add-button,
    .mss-card-actions .mss-card-link-button,
    .mss-card-actions .mss-card-disabled-button {
        padding: 0 8px !important;
        font-size: 11.8px !important;
    }

    .mss-card-actions .mss-card-qty-control {
        grid-template-columns: 26px minmax(26px, 1fr) 26px !important;
    }

    .mss-card-actions .mss-card-qty-control .mss-qty-button {
        width: 26px !important;
        height: 28px !important;
        min-height: 28px !important;
        font-size: 17px !important;
    }

    .mss-card-actions .mss-card-qty-control .mss-qty-value {
        min-width: 26px !important;
        font-size: 12px !important;
    }
}

/* v1.0.7: make the floating cart panel and all inner controls about 10% larger */


.mss-cart-toggle-text {
    min-height: 29px !important;
    padding: 7px 10px !important;
    font-size: 12.2px !important;
}


@media (max-width: 620px) {
    

    

    

    

    

    

    .mss-cart-toggle-text {
        min-height: 28px !important;
        padding: 7px 9px !important;
        font-size: 11.6px !important;
    }

    

    

    

    

    

    

    

    

    
}

/* v1.0.9: typography sliders and alternative light product layout */
.mss-header h2 {
    font-size: clamp(24px, 5vw, var(--mss-menu-title-size, 46px)) !important;
}

.mss-category-title {
    font-size: var(--mss-category-section-title-size, 32px) !important;
}

.mss-category-pill {
    padding-top: var(--mss-category-nav-padding-y, 10px) !important;
    padding-bottom: var(--mss-category-nav-padding-y, 10px) !important;
    font-size: var(--mss-category-nav-font-size, 14px) !important;
}

.mss-card-title {
    font-size: var(--mss-card-title-size, 18px) !important;
}

.mss-card-description {
    font-size: var(--mss-card-text-size, 13px) !important;
}

.mss-card-price {
    font-size: var(--mss-card-price-size, 15px) !important;
}

.mss-card-add-button,
.mss-card-link-button,
.mss-card-disabled-button {
    font-size: var(--mss-card-button-size, 12px) !important;
}

.mss-modal-title {
    font-size: var(--mss-modal-title-size, 34px) !important;
}

.mss-modal-description {
    font-size: var(--mss-modal-text-size, 15px) !important;
}

.mss-modal-price {
    font-size: var(--mss-modal-price-size, 22px) !important;
}

.mss-modal-add-button,
.mss-modal-link-button,
.mss-modal-disabled-button {
    font-size: var(--mss-modal-button-size, 14px) !important;
}

.mss-options,
.mss-option-item,
.mss-option-title,
.mss-option-meta,
.mss-option-qty-input {
    font-size: var(--mss-modal-options-size, 14px) !important;
}

.mss-layout-light .mss-product-card {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.mss-layout-light .mss-product-card:hover,
.mss-layout-light .mss-product-card:focus-visible {
    transform: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.mss-layout-light .mss-card-image-wrap {
    border-radius: var(--mss-light-image-radius-custom, 22px) !important;
    box-shadow: var(--mss-light-image-shadow-custom, 0 12px 34px rgba(35, 24, 10, 0.10)) !important;
}

.mss-layout-light .mss-card-image {
    transform: none !important;
}

.mss-layout-light .mss-product-card:hover .mss-card-image {
    transform: none !important;
}

.mss-layout-light .mss-card-body {
    min-height: auto !important;
    padding: 11px 2px 0 !important;
    background: transparent !important;
}

.mss-layout-light .mss-card-content {
    min-height: 0 !important;
}

.mss-layout-light .mss-card-content--has-description {
    min-height: 60px !important;
}

.mss-layout-light .mss-card-content--no-description {
    min-height: 2.28em !important;
}

.mss-layout-light .mss-card-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.mss-layout-light .mss-card-description {
    min-height: 38px !important;
    margin-top: 5px !important;
    -webkit-line-clamp: 2 !important;
}


@media (max-width: 620px) {
    .mss-layout-light .mss-card-image-wrap {
        border-radius: 17px !important;
    }

    .mss-layout-light .mss-card-body {
        padding-top: 9px !important;
    }

    .mss-layout-light .mss-card-content {
        min-height: 0 !important;
    }

    .mss-layout-light .mss-card-content--has-description {
        min-height: 60px !important;
    }

    .mss-layout-light .mss-card-content--no-description {
        min-height: 2.2em !important;
    }
}


/* v1.0.10: native category centering and bottom-flush mobile sheet */


.mss-category-track {
    scroll-padding-left: 50% !important;
    scroll-padding-right: 50% !important;
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
}

.mss-category-pill {
    flex: 0 0 auto;
}

.mss-modal-backdrop {
    background: rgba(17, 16, 14, 0.30) !important;
    transition: opacity 420ms ease, backdrop-filter 420ms ease, -webkit-backdrop-filter 420ms ease !important;
}

.mss-modal.is-open .mss-modal-backdrop {
    opacity: 1 !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
}

@media (max-width: 760px) {
    .mss-modal {
        align-items: flex-end !important;
        justify-content: center !important;
        padding: 0 !important;
    }

    .mss-modal-dialog {
        width: 100% !important;
        max-width: none !important;
        max-height: 90vh !important;
        margin: 0 !important;
        border-radius: 28px 28px 0 0 !important;
        transform: translate3d(0, 100%, 0) scale(1);
        box-shadow: 0 -18px 60px rgba(0, 0, 0, 0.26) !important;
    }

    .mss-modal.is-visible:not(.is-open) .mss-modal-dialog {
        opacity: 1 !important;
        transform: translate3d(0, 100%, 0) scale(1);
    }

  .mss-modal.is-open .mss-modal-dialog {
    opacity: 1 !important;
    transform: translate3d(0,0,0) scale(1);
    max-width: 560px !important;
  }

    .mss-modal-dialog.is-dragging {
        transform: translate3d(0, var(--mss-sheet-drag-y, 0px), 0) scale(1) !important;
    }

    .mss-modal-content {
        padding-bottom: max(22px, env(safe-area-inset-bottom)) !important;
    }
}


/* v1.0.12: performance pass and cleaner floating cart */
.mss-menu, .mss-product-card, .mss-card-image, .mss-card-image-wrap, .mss-category-track, .mss-modal-dialog{
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.mss-product-card,
.mss-card-image {
    will-change: auto !important;
}

.mss-modal-backdrop {
    background: rgba(17, 16, 14, 0.34) !important;
    opacity: 0 !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    transition: opacity 280ms ease !important;
}

.mss-modal.is-open .mss-modal-backdrop {
    opacity: 1 !important;
}

.mss-modal.is-visible:not(.is-open) .mss-modal-backdrop {
    opacity: 0 !important;
}

.mss-modal-dialog {
    will-change: transform, opacity !important;
    transition: opacity 300ms ease, transform 340ms cubic-bezier(.22, 1, .36, 1) !important;
}

.mss-modal-dialog.is-dragging {
    will-change: transform, opacity !important;
}

.mss-category-track {
    contain: layout paint;
    scroll-snap-type: x proximity;
}

.mss-category-pill {
    scroll-snap-align: center;
}


.mss-cart-toggle-text {
    border: 0 !important;
    box-shadow: none !important;
    white-space: nowrap;
}


@media (max-width: 620px) {
    

    

    

    

    

    .mss-cart-toggle-text {
        min-width: 104px;
        text-align: center;
    }

    

    

    

    

    

    

    

    
}

@media (prefers-reduced-motion: reduce) {
    .mss-modal-backdrop, .mss-modal-dialog{
        transition: none !important;
    }
}


/* v1.0.13: cleaner category nav, section-title spacing, smoother mobile category centering, popup spacing, refined cart */
.mss-category-track {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    scroll-snap-type: none !important;
    scroll-behavior: smooth;
    contain: paint;
}


.mss-category-pill {
    scroll-snap-align: none !important;
}

.mss-category-title {
    margin-top: var(--mss-category-nav-padding-y, 10px) !important;
    margin-bottom: var(--mss-category-nav-padding-y, 10px) !important;
}

.mss-category-pill {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.mss-modal-content {
    justify-content: center !important;
    gap: 0 !important;
}

.mss-modal-category {
    margin-bottom: 12px !important;
}

.mss-modal-title {
    margin: 0 !important;
    font-size: var(--mss-modal-title-size, 34px) !important;
    line-height: 1.02 !important;
}

.mss-modal-description {
    margin: 14px 0 0 !important;
    font-size: var(--mss-modal-text-size, 15px) !important;
    line-height: 1.48 !important;
}

.mss-modal-bottom {
    margin-top: 20px !important;
    gap: 22px !important;
}


.mss-cart-toggle-text {
    justify-self: end !important;
    min-height: 32px !important;
    min-width: 112px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--mss-cart-text) 98%, transparent) !important;
    color: var(--mss-cart-bg) !important;
    padding: 9px 13px !important;
    transform: translateZ(0) !important;
    transition: transform 180ms cubic-bezier(.22, 1, .36, 1), opacity 180ms ease, background 180ms ease !important;
}


@media (max-width: 860px) {
    .mss-category-track {
        scroll-behavior: smooth;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    .mss-modal-content {
        padding-top: 22px !important;
    }

    .mss-modal-category {
        margin-bottom: 9px !important;
    }

    .mss-modal-description {
        margin-top: 12px !important;
    }

    .mss-modal-bottom {
        margin-top: 17px !important;
    }
}

@media (max-width: 620px) {
    

    

    .mss-cart-toggle-text {
        min-width: 104px !important;
        padding: 8px 11px !important;
        font-size: 11.5px !important;
    }

    

    

    
}

/* v1.0.73: desktop modal content balanced vertically as one column */
@media (min-width: 861px) {
    .mss-modal-content {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-self: stretch !important;
        height: 100% !important;
        min-height: 520px !important;
        padding: 46px 38px !important;
        box-sizing: border-box !important;
    }

    .mss-modal-category {
        transform: none !important;
        margin-top: -60px !important;
        margin-bottom: 45px !important;
    }

    .mss-modal-title {
        margin-top: 0 !important;
    }

    .mss-modal .mss-modal-description {
        margin-top: 12px !important;
    }

    .mss-modal-bottom {
        margin-top: 18px !important;
        margin-bottom: 0 !important;
    }
}


.mss-cart-toggle-text {
    min-width: 104px !important;
    min-height: 30px !important;
    padding: 7px 12px !important;
    font-size: 12px !important;
    line-height: 1 !important;
}


@media (max-width: 860px) {
    .mss-modal-content {
        padding-top: 0 !important;
    }

    .mss-modal-category {
        transform: translateY(-20px) !important;
        margin-bottom: -6px !important;
    }
}

@media (max-width: 620px) {
    

    

    

    .mss-cart-toggle-text {
        min-width: 98px !important;
        min-height: 29px !important;
        padding: 7px 10px !important;
        font-size: 11.5px !important;
    }

    

    

    

    

    
}


/* v1.0.15: cart CSS cleanup and restored blurred category navigation */


.mss-category-track {
    -webkit-mask-image: none !important;
    mask-image: none !important;
}


/* v1.0.16: mobile modal category badge and expanding compact cart */
@media (max-width: 760px) {
    .mss-modal-dialog {
        position: relative !important;
        padding-bottom: 0 !important;
    }

    .mss-modal-image-wrap {
        position: relative !important;
    }

    .mss-modal-category {
        position: absolute !important;
        top: 16px !important;
        left: 16px !important;
        z-index: 16 !important;
        transform: none !important;
        margin: 0 !important;
        padding: 8px 11px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, 0.74) !important;
        color: var(--mss-text, #173d2c) !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12) !important;
        backdrop-filter: blur(14px) saturate(145%) !important;
        -webkit-backdrop-filter: blur(14px) saturate(145%) !important;
        max-width: calc(100% - 84px) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .mss-modal-content {
        padding-top: 22px !important;
    }
}


/* v1.0.40: real cart backdrop - behind cart panel, never over it */


/* v1.0.36: unified cart sizing and checkout button geometry */


/* v1.0.20: title letter spacing and mobile modal bottom breathing room */
.mss-title,
.mss-category-title,
.mss-card-title,
.mss-modal-title,
.mss-section-title,
.mss-nav-button,
.mss-admin-title {
    letter-spacing: 0 !important;
}

@media (max-width: 760px) {
    .mss-modal-content {
        padding-bottom: max(42px, calc(env(safe-area-inset-bottom) + 30px)) !important;
    }

    .mss-modal-bottom {
        margin-bottom: 4px !important;
    }
}


/* v1.0.24: popup-only description spacing */
.mss-modal .mss-modal-description {
    margin-top: 2px !important;
}


/* v1.0.27: mobile title scaling from desktop customizer values */
@media (max-width: 760px) {
    .mss-modal .mss-modal-title {
        font-size: calc(var(--mss-modal-title-size, 34px) * 0.7) !important;
    }

    .mss-product-card .mss-card-title {
        font-size: calc(var(--mss-card-title-size, 18px) * 0.9) !important;
        line-height: 22px !important;
    }
}


/* v1.0.31: cart close uses the same smooth timing as open; outside clicks are swallowed in JS */

/* v1.0.41: optimized single-source styles for category nav, card bottom and floating cart */
.mss-category-nav,
.mss-has-sticky-nav .mss-category-nav {
    position: sticky !important;
    top: clamp(10px, 1.2vw, 22px) !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    margin: 0px -16px 24px;
    padding: 2px 5px;
    border-radius: 44px !important;
    background: rgba(247, 242, 234, 0.78) !important;
    background: color-mix(in srgb, var(--mss-nav-bg, #f7f2ea) 78%, transparent) !important;
    border: 1px solid color-mix(in srgb, var(--mss-text, #173d2c) 10%, transparent) !important;
    box-shadow: 0 10px 30px rgba(35, 24, 10, 0.07) !important;
    backdrop-filter: blur(18px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(150%) !important;
    overflow: hidden !important;
}

.mss-has-sticky-nav .mss-category-nav {
    position: sticky !important;
    top: clamp(10px, 1.2vw, 22px) !important;
}

.mss-category-track {
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

@media (max-width: 860px) {
    .mss-category-nav,
    .mss-has-sticky-nav .mss-category-nav {
        margin-left: 0;
        margin-right: 0;
        padding: 2px 5px;
        border-radius: 44px !important;
    }
}

.mss-card-bottom {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px !important;
}



/* v1.0.76: sticky category nav stability inside Divi/code modules */
.mss-menu,
.mss-menu .mss-header,
.mss-menu .mss-category-group {
    overflow: visible !important;
}

/* v1.0.51: Divi Code Module compatibility - keep cart/backdrop above surrounding Divi blocks without moving markup to body */
.et_pb_section:has(.mss-menu),
.et_pb_row:has(.mss-menu),
.et_pb_column:has(.mss-menu),
.et_pb_module:has(.mss-menu),
.et_pb_code:has(.mss-menu),
.et_pb_code_inner:has(.mss-menu) {
    overflow: visible !important;
}

.et_pb_section:has(.mss-menu),
.et_pb_row:has(.mss-menu),
.et_pb_column:has(.mss-menu),
.et_pb_module:has(.mss-menu),
.et_pb_code:has(.mss-menu) {
    position: relative !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
}

.mss-menu {
    isolation: isolate;
    overflow: visible !important;
}

.mss-menu.mss-cart-layer-active {
    z-index: var(--mss-z-index-max, 2147483640) !important;
}


/* v1.0.62: Divi 5.3 layer hardening without moving markup out of Code Module */
.mss-divi-layer-host {
    position: relative !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    overflow: visible !important;
    transform: none !important;
    perspective: none !important;
    filter: none !important;
    contain: none !important;
}

body.mss-cart-active #main-footer,
body.mss-cart-active .et-l--footer,
body.mss-cart-active footer.et-l--footer,
body.mss-cart-active footer.et-l,
body.mss-modal-open #main-footer,
body.mss-modal-open .et-l--footer,
body.mss-modal-open footer.et-l--footer,
body.mss-modal-open footer.et-l {
    position: relative !important;
    z-index: auto !important;
}

@media (max-width: 760px) {
    body.mss-modal-open .mss-cart-backdrop,
    body.mss-modal-open .mss-cart-panel {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translate3d(-50%, 120%, 0) !important;
    }
}

.mss-cart-backdrop {
    position: fixed;
    inset: 0;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    background: rgba(0, 0, 0, 0.20);
    opacity: 0;
    pointer-events: none;
    transition: opacity 320ms ease;
}

.mss-cart-backdrop.is-visible {
    display: block;
}

.mss-cart-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
}

.mss-cart-backdrop[hidden] {
    display: none !important;
}

.mss-cart-panel[hidden],
.mss-cart-drawer[hidden] {
    display: none !important;
}

.mss-cart-panel {
    --mss-cart-motion: 1250ms;
    --mss-cart-ease: cubic-bezier(.22, 1, .36, 1);
    position: fixed;
    left: 50%;
    bottom: max(7px, env(safe-area-inset-bottom)) !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    width: min(560px, calc(100vw - 14px)) !important;
    max-width: min(560px, calc(100vw - 14px)) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 30px !important;
    background: var(--mss-cart-bg) !important;
    color: var(--mss-cart-text) !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.20);
    transform: translate3d(-50%, 0, 0) !important;
    opacity: 1 !important;
    overflow: hidden !important;
    transition:
        width var(--mss-cart-motion) var(--mss-cart-ease),
        max-width var(--mss-cart-motion) var(--mss-cart-ease),
        transform var(--mss-cart-motion) var(--mss-cart-ease),
        bottom var(--mss-cart-motion) var(--mss-cart-ease),
        border-radius 420ms ease !important;
    will-change: transform, width, max-width;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    contain: layout paint;
}

.mss-cart-panel:not(.is-expanded),
.mss-cart-panel.is-closing {
    width: min(365px, calc(100vw - 76px)) !important;
    max-width: min(365px, calc(100vw - 76px)) !important;
    transform: translate3d(-50%, -5px, 0) !important;
    box-shadow: none !important;
    filter: none !important;
}

.mss-cart-panel.is-expanded {
    width: min(448px, calc(100vw - 14px)) !important;
    max-width: min(448px, calc(100vw - 14px)) !important;
    transform: translate3d(-50%, -10px, 0) !important;
}

.mss-cart-summary {
    appearance: none;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 12px;
    width: 100% !important;
    max-width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    border: 0;
    border-radius: 22px !important;
    background: var(--mss-cart-bg) !important;
    color: var(--mss-cart-text) !important;
    padding: 0 11px 0 14px !important;
    font: inherit;
    cursor: pointer;
    text-align: left;
    box-sizing: border-box !important;
    opacity: 1 !important;
    transition: border-radius 420ms ease, box-shadow 420ms ease !important;
}

.mss-cart-panel:not(.is-expanded) .mss-cart-summary,
.mss-cart-panel.is-closing .mss-cart-summary {
    max-width: 100% !important;
    padding: 0 11px 0 14px !important;
    border-radius: 21px !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
}

.mss-cart-panel.is-expanded .mss-cart-summary {
    height: auto !important;
    max-height: none !important;
    padding: 13px 16px 0px 17px !important;
    border-radius: 21px 21px 14px 14px !important;
    box-shadow: none !important;
}

.mss-cart-bar-info {
    display: flex;
    align-items: center;
    gap: 7px !important;
    min-width: 0;
}

.mss-cart-bar-title {
    color: var(--mss-cart-text) !important;
    font-size: 13px;
    font-weight: 850;
    opacity: 0.9;
}

.mss-cart-bar-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 26px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-cart-text) 16%, transparent);
    color: var(--mss-cart-text) !important;
    padding: 0 8px;
    font-size: 13px;
    font-weight: 900;
}

.mss-cart-bar-total {
    color: var(--mss-cart-text) !important;
    font-size: 15px;
    white-space: nowrap;
}

.mss-cart-bar-total .woocommerce-Price-amount,
.mss-cart-item-meta .woocommerce-Price-amount,
.mss-cart-item-title,
.mss-cart-item-meta strong,
.mss-cart-qty-control .mss-qty-button,
.mss-cart-qty-control .mss-qty-value {
    color: var(--mss-cart-text) !important;
}

.mss-cart-toggle-text {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 102px;
    height: 29px;
    min-height: 29px;
    max-height: 29px;
    border-radius: 999px;
    background: var(--mss-cart-text);
    color: var(--mss-cart-bg) !important;
    padding: 0 11px;
    font-size: 12px;
    font-weight: 850;
    line-height: 1;
    transition: background-color 180ms ease, color 180ms ease;
}

.mss-cart-drawer,
.mss-cart-panel.is-closing .mss-cart-drawer,
.mss-cart-panel:not(.is-expanded) .mss-cart-drawer {
    display: block !important;
    max-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    opacity: 1 !important;
    transform: translate3d(0, 34px, 0) !important;
    transform-origin: bottom center !important;
    pointer-events: none !important;
    overflow: hidden !important;
    animation: none !important;
    transition:
        max-height var(--mss-cart-motion) var(--mss-cart-ease),
        transform var(--mss-cart-motion) var(--mss-cart-ease),
        margin-top var(--mss-cart-motion) var(--mss-cart-ease),
        padding-top var(--mss-cart-motion) var(--mss-cart-ease),
        padding-bottom var(--mss-cart-motion) var(--mss-cart-ease) !important;
    will-change: transform, max-height;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.mss-cart-panel.is-expanded .mss-cart-drawer {
    max-height: min(62vh, 520px) !important;
    margin-top: 8px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto !important;
    overflow: hidden !important;
}

.mss-cart-items {
    min-width: 0;
}

.mss-cart-item-list {
    display: grid;
    gap: 8px;
    max-height: min(46vh, 390px) !important;
    overflow-y: auto;
    padding: 0 2px 8px;
    scrollbar-width: thin;
}

.mss-cart-item {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border-radius: 16px;
    background: color-mix(in srgb, var(--mss-cart-text) 10%, transparent);
    padding: 8px;
}

.mss-cart-item.is-updating {
    opacity: 0.66;
}

.mss-cart-item-image {
    display: block;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    object-fit: cover;
    background: color-mix(in srgb, var(--mss-cart-text) 16%, transparent);
}

.mss-cart-item-main {
    min-width: 0;
}

.mss-cart-item-title {
    overflow: hidden;
    font-size: 13px;
    font-weight: 820;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mss-cart-item-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
    color: color-mix(in srgb, var(--mss-cart-text) 78%, transparent);
    font-size: 12px;
}

.mss-cart-item-meta strong {
    font-weight: 850;
}

.mss-cart-qty-control {
    grid-template-columns: 30px 34px 30px;
    min-height: 30px;
    border-color: color-mix(in srgb, var(--mss-cart-text) 16%, transparent);
    background: color-mix(in srgb, var(--mss-cart-text) 10%, transparent);
}

.mss-cart-qty-control .mss-qty-button {
    width: 30px;
    height: 30px;
    font-size: 18px;
}

.mss-cart-qty-control .mss-qty-value {
    font-size: 13px;
}

.mss-cart-qty-control .mss-cart-qty-input {
    width: 28px;
    min-width: 28px;
    max-width: 28px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--mss-cart-text) !important;
    text-align: center;
    font-family: inherit;
    -moz-appearance: textfield;
    appearance: textfield;
}

.mss-cart-qty-control .mss-cart-qty-input:focus {
    background: color-mix(in srgb, var(--mss-cart-text) 14%, transparent) !important;
    border-radius: 9px;
}

.mss-cart-qty-control .mss-cart-qty-input::-webkit-outer-spin-button,
.mss-cart-qty-control .mss-cart-qty-input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.mss-cart-empty {
    border-radius: 16px;
    background: color-mix(in srgb, var(--mss-cart-text) 10%, transparent);
    padding: 14px;
    color: color-mix(in srgb, var(--mss-cart-text) 82%, transparent);
    font-size: 13px;
}

.mss-cart-panel .mss-checkout-link {
    appearance: none;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    flex: 0 0 48px !important;
    flex-basis: 48px !important;
    box-sizing: border-box !important;
    padding: 0 12px !important;
    margin-top: 7px !important;
    border: 0 !important;
    border-radius: 50px !important;
    background: var(--mss-checkout-bg) !important;
    color: var(--mss-accent) !important;
    font-size: 14px;
    font-weight: 900;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: translate3d(0, 0, 0) !important;
    transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease !important;
}

@media (max-width: 620px) {
    .mss-cart-panel,
    .mss-cart-panel:not(.is-expanded),
    .mss-cart-panel.is-expanded,
    .mss-cart-panel.is-closing {
        --mss-cart-motion: 1250ms;
        bottom: max(7px, env(safe-area-inset-bottom)) !important;
        border-radius: 30px !important;
        opacity: 1 !important;
        transition:
            width var(--mss-cart-motion) var(--mss-cart-ease),
            max-width var(--mss-cart-motion) var(--mss-cart-ease),
            transform var(--mss-cart-motion) var(--mss-cart-ease),
            bottom var(--mss-cart-motion) var(--mss-cart-ease),
            border-radius 420ms ease !important;
    }

    .mss-cart-panel:not(.is-expanded),
    .mss-cart-panel.is-closing {
        width: min(292px, calc(100vw - 76px)) !important;
        max-width: min(292px, calc(100vw - 76px)) !important;
        transform: translate3d(-50%, 0, 0) !important;
        box-shadow: none !important;
        filter: none !important;
    }

    .mss-cart-panel.is-expanded {
        width: 92% !important;
        max-width: 92% !important;
        transform: translate3d(-50%, -12px, 0) !important;
    }

    .mss-cart-summary,
    .mss-cart-panel:not(.is-expanded) .mss-cart-summary,
    .mss-cart-panel.is-closing .mss-cart-summary {
        height: 42px !important;
        min-height: 42px !important;
        max-height: 42px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mss-cart-panel:not(.is-expanded) .mss-cart-summary,
    .mss-cart-panel.is-closing .mss-cart-summary {
        max-width: min(282px, calc(100vw - 88px)) !important;
        padding: 0 6px 0 6px !important;
        border-radius: 21px !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18) !important;
    }

    .mss-cart-panel.is-expanded .mss-cart-summary {
        max-width: 100% !important;
        padding: 13px 16px 0px 17px !important;
        border-radius: 21px 21px 14px 14px !important;
    }

    .mss-cart-panel:not(.is-expanded) .mss-cart-toggle-text,
    .mss-cart-panel.is-closing .mss-cart-toggle-text {
        min-width: 72px !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
        padding: 0 9px !important;
        font-size: 10.8px !important;
    }

    .mss-cart-panel.is-expanded .mss-cart-toggle-text {
        min-width: 102px !important;
        height: 29px !important;
        min-height: 29px !important;
        max-height: 29px !important;
    }

    .mss-cart-drawer,
    .mss-cart-panel.is-closing .mss-cart-drawer,
    .mss-cart-panel:not(.is-expanded) .mss-cart-drawer {
        transform: translate3d(0, 38px, 0) !important;
    }

    .mss-cart-panel.is-expanded .mss-cart-drawer {
        max-height: min(58vh, 460px) !important;
        margin-top: 7px !important;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
        transform: translate3d(0, 0, 0) !important;
    }

    .mss-cart-panel .mss-checkout-link {
        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;
        flex-basis: 48px !important;
        padding: 0 12px !important;
        margin-top: 7px !important;
        border-radius: 50px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mss-cart-panel,
    .mss-cart-summary,
    .mss-cart-drawer,
    .mss-cart-backdrop {
        transition: none !important;
    }
}


/* v1.0.60: single WooCommerce product page shortcode */
.mss-single-product-page {
    padding-bottom: 110px;
}

.mss-product-page-back-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0 0 22px;
}

.mss-product-page-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 0 16px 0 12px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-card-bg, #fffaf2) 90%, transparent);
    border: 1px solid color-mix(in srgb, var(--mss-text, #173d2c) 9%, transparent);
    color: var(--mss-text, #173d2c);
    font-size: 13px;
    font-weight: 750;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(35, 24, 10, .06);
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    transition: transform 220ms ease, box-shadow 220ms ease, background 220ms ease;
}

.mss-product-page-back:hover,
.mss-product-page-back:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(35, 24, 10, .08);
}

.mss-product-page-back-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-text, #173d2c) 7%, transparent);
    font-size: 20px;
    line-height: 1;
    transform: translateY(-1px);
}

.mss-product-page-panel {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, 45%) minmax(0, 1fr);
    gap: clamp(26px, 4vw, 52px);
    align-items: stretch;
    width: 100%;
    margin: 0 auto;
    padding: clamp(18px, 2.5vw, 34px);
    border-radius: 32px;
    background: var(--mss-modal-bg, #f5e7d4);
    color: var(--mss-text, #173d2c);
    box-shadow: 0 24px 74px rgba(35, 24, 10, .11);
    overflow: hidden;
}

.mss-product-page-image-wrap {
    position: relative;
    overflow: hidden;
    min-height: 360px;
    border-radius: 24px;
    background: var(--mss-modal-media-bg, #ead7bf);
}

.mss-product-page-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
}

.mss-product-page-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: clamp(8px, 1.4vw, 18px) 0;
}

.mss-product-page-category {
    align-self: flex-start;
    transform: translateY(0) !important;
    margin-bottom: 45px !important;
}

.mss-product-page-title {
    margin: 0 !important;
    letter-spacing: 0 !important;
}

.mss-product-page-description {
    margin-top: 12px !important;
    max-width: 720px;
}

.mss-product-page-description p {
    margin: 0 0 10px;
}

.mss-product-page-description p:last-child {
    margin-bottom: 0;
}

.mss-product-page-bottom {
    margin-top: 22px !important;
}

.mss-product-page-panel .mss-product-actions-modal {
    width: auto;
}

.mss-product-recommendations {
    margin-top: clamp(38px, 5vw, 64px);
}

.mss-product-recommendations-title {
    margin-bottom: 18px !important;
}

.mss-product-recommendation-grid {
    --mss-columns: 4;
    --mss-tablet-columns-custom: 3;
}

@media (max-width: 900px) {
    .mss-product-page-panel {
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 14px;
        border-radius: 28px;
    }

    .mss-product-page-image-wrap,
    .mss-product-page-image {
        min-height: 0;
        aspect-ratio: 3 / 2;
    }

    .mss-product-page-content {
        padding: 4px 4px 8px;
    }

    .mss-product-page-category {
        position: absolute;
        top: 30px;
        left: 30px;
        z-index: 3;
        margin-bottom: 0 !important;
        background: rgba(255, 255, 255, .72) !important;
        border: 1px solid rgba(255, 255, 255, .48) !important;
        backdrop-filter: blur(16px) saturate(145%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(145%) !important;
        box-shadow: 0 8px 22px rgba(35, 24, 10, .08) !important;
    }

    .mss-product-page-title {
        font-size: calc(var(--mss-modal-title-size, 34px) * .7) !important;
    }

    .mss-product-page-description {
        margin-top: 10px !important;
    }

    .mss-product-page-bottom {
        margin-top: 16px !important;
        padding-bottom: max(24px, env(safe-area-inset-bottom));
    }

    .mss-product-page-panel .mss-modal-inline-qty-control,
    .mss-product-page-panel .mss-modal-add-button,
    .mss-product-page-panel .mss-modal-link-button,
    .mss-product-page-panel .mss-modal-disabled-button {
        max-width: min(260px, 100%);
    }

    .mss-product-recommendation-grid {
        --mss-columns: 2 !important;
    }
}

@media (max-width: 520px) {
    .mss-product-page-back-wrap {
        margin-bottom: 18px;
        padding-left: 2px;
    }

    .mss-product-page-back {
        min-height: 38px;
        padding: 0 14px 0 10px;
        font-size: 12.5px;
    }

    .mss-product-page-panel {
        margin-left: -4px;
        margin-right: -4px;
    }

    .mss-product-page-category {
        top: 20px;
        left: 20px;
        max-width: calc(100% - 40px);
    }
}

/* v1.0.77: reliable category nav fallback for Divi Code Module */
.mss-category-nav-placeholder {
    display: block !important;
    height: 0;
    margin: 0;
    padding: 0;
    pointer-events: none;
}

.mss-category-nav.is-mss-fixed {
    position: fixed !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    max-width: none !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
    transform: translateZ(0);
    backface-visibility: hidden;
    will-change: left, top, width;
}

/* v1.0.82: menu anchor and product-page bottom menu CTA */
.mss-menu-anchor {
    display: block;
    width: 1px;
    height: 1px;
    margin-bottom: -1px;
    scroll-margin-top: clamp(18px, 3vw, 48px);
    pointer-events: none;
}

.mss-product-page-menu-cta-wrap {
    display: flex;
    justify-content: center;
    margin-top: clamp(24px, 4vw, 42px);
}

.mss-product-page-menu-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    min-width: min(320px, 100%);
    padding: 12px 24px;
    border: 0;
    border-radius: 999px;
    background: var(--mss-accent) !important;
    color: var(--mss-accent-text, #ffffff) !important;
    font-size: 14px;
    font-weight: 850;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--mss-accent) 24%, transparent);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.mss-product-page-menu-cta:hover,
.mss-product-page-menu-cta:focus-visible {
    color: var(--mss-accent-text, #ffffff) !important;
    transform: translateY(-1px);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--mss-accent) 30%, transparent);
}

@media (max-width: 620px) {
    .mss-product-page-menu-cta-wrap {
        margin-top: 24px;
    }

    .mss-product-page-menu-cta {
        width: 100%;
        min-width: 0;
    }
}



/* v1.0.83: category archive shortcode and optional category links */
.mss-category-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: var(--mss-category-nav-padding-y, 10px);
    margin-bottom: var(--mss-category-nav-padding-y, 10px);
}

.mss-category-heading .mss-category-title {
    min-width: 0;
    margin: 0 !important;
}

.mss-category-open-link {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border: 1px solid color-mix(in srgb, var(--mss-accent, #0b4a34) 18%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-accent, #0b4a34) 8%, transparent);
    color: var(--mss-accent, #0b4a34);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    transition: background-color 180ms ease, border-color 180ms ease;
}

.mss-category-open-link:hover,
.mss-category-open-link:focus-visible {
    background: color-mix(in srgb, var(--mss-accent, #0b4a34) 14%, transparent);
    border-color: color-mix(in srgb, var(--mss-accent, #0b4a34) 28%, transparent);
    color: var(--mss-accent, #0b4a34);
}

.mss-category-page-header {
    margin-bottom: 26px;
}

.mss-category-page-description {
    max-width: 760px;
    margin-top: 10px;
    color: var(--mss-muted, #68746e);
    font-size: 15px;
    line-height: 1.55;
}

.mss-category-page-description > :first-child { margin-top: 0; }
.mss-category-page-description > :last-child { margin-bottom: 0; }

@media (max-width: 620px) {
    .mss-category-heading {
        gap: 10px;
    }
    .mss-category-open-link {
        min-height: 32px;
        padding: 0 11px;
        font-size: 11px;
    }
}

/* v1.0.86: Multilingual Product Manager options integration */
.mss-modal-options[hidden],
.mss-product-options[hidden] {
    display: none !important;
}

.mss-modal-options {
    width: 100%;
    max-height: min(300px, 34vh);
    margin-top: 18px;
    padding-right: 4px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.mss-product-page-options {
    width: 100%;
    margin-top: 20px;
}

.mss-product-options {
    display: grid;
    gap: 12px;
    width: 100%;
}

.mss-option-group {
    min-width: 0;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent);
    border-radius: 16px;
    background: color-mix(in srgb, var(--mss-card-bg, #fffaf2) 88%, transparent);
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.mss-option-group.has-error {
    border-color: rgba(180, 35, 24, 0.55);
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.08);
}

.mss-option-group-title {
    max-width: calc(100% - 8px);
    padding: 0 6px;
    color: var(--mss-text, #173d2c);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
}

.mss-option-required {
    color: #b42318;
}

.mss-option-items {
    display: grid;
}

.mss-option-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    padding: 0 9px;
    border-bottom: 1px solid color-mix(in srgb, var(--mss-text, #173d2c) 8%, transparent);
}

.mss-option-item:last-child {
    border-bottom: 0;
}

.mss-option-item-label {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 7px;
    min-width: 0;
    color: var(--mss-text, #173d2c);
    font-size: 13px;
    font-weight: 650;
    line-height: 1.3;
}

.mss-option-item-label small {
    color: var(--mss-muted, #6b766f);
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.mss-option-qty {
    display: inline-grid;
    grid-template-columns: 30px 34px 30px;
    align-items: center;
    flex: 0 0 auto;
    height: 32px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.62);
    overflow: hidden;
}

.mss-option-qty-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--mss-accent, #0b4a34);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.mss-option-qty-input {
    width: 68px !important;
    max-width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--mss-text, #173d2c) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 30px !important;
    text-align: center !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.mss-option-qty-input::-webkit-outer-spin-button,
.mss-option-qty-input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.mss-option-error {
    margin: 7px 0 0;
    color: #b42318;
    font-size: 11.5px;
    font-weight: 650;
    line-height: 1.3;
}

.mss-cart-item-options {
    display: grid;
    gap: 2px;
    margin-top: 3px;
    color: var(--mss-cart-text, #fff);
    font-size: 10.5px;
    line-height: 1.25;
    opacity: 0.72;
}

@media (max-width: 760px) {
    .mss-modal-options {
        max-height: min(310px, 36vh);
        margin-top: 14px;
        padding-right: 1px;
    }

    .mss-option-group {
        padding: 11px 12px;
        border-radius: 14px;
    }

    .mss-option-item {
        gap: 8px;
        padding: 0 9px;
    }

    .mss-option-item-label {
        font-size: 12px;
    }

    .mss-option-qty {
        grid-template-columns: 29px 31px 29px;
        height: 31px;
    }

    .mss-option-qty-button {
        width: 29px;
        height: 29px;
    }

    .mss-option-qty-input {
        width: 31px !important;
        max-width: 31px !important;
        height: 29px !important;
        min-height: 29px !important;
        line-height: 29px !important;
    }
}


/* v1.0.88: card image and description display options */
.mss-menu.mss-card-images-square .mss-card-image-wrap,
.mss-menu.mss-card-images-square.mss-layout-light .mss-card-image-wrap {
    aspect-ratio: 1 / 1 !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-content,
.mss-menu.mss-hide-card-descriptions .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions .mss-card-content--no-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--no-description {
    min-height: 2.28em !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-description {
    display: none !important;
}

@media (max-width: 620px) {
    .mss-menu.mss-hide-card-descriptions .mss-card-content,
    .mss-menu.mss-hide-card-descriptions .mss-card-content--has-description,
    .mss-menu.mss-hide-card-descriptions .mss-card-content--no-description,
    .mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content,
    .mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--has-description,
    .mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--no-description {
        min-height: 2.2em !important;
    }
}

/* v1.0.89: Mark Style Shop frontend settings panel and compact CSS-like controls */
.mss-menu .mss-card-title {
    text-align: var(--mss-card-title-align, left) !important;
}

.mss-menu .mss-category-title {
    text-align: var(--mss-category-title-align, left) !important;
}

.mss-category-heading .mss-category-title {
    flex: 1 1 auto;
}

.mss-front-customizer,
.mss-front-customizer * {
    box-sizing: border-box;
}

.mss-front-customizer {
    position: fixed;
    top: 96px;
    right: 0;
    z-index: 2147483640;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
    color: #172033;
}

.mss-front-customizer-toggle {
    position: fixed;
    top: 160px;
    right: 0;
    z-index: 2;
    min-height: 42px;
    padding: 0 14px;
    border: 0;
    border-radius: 16px 0 0 16px;
    background: #111827;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 12px 30px rgba(0,0,0,.2);
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.mss-front-customizer-panel {
    position: fixed;
    top: 86px;
    right: 0;
    width: min(390px, calc(100vw - 18px));
    max-height: calc(100vh - 108px);
    overflow: auto;
    padding: 16px;
    border: 1px solid rgba(17,24,39,.12);
    border-right: 0;
    border-radius: 24px 0 0 24px;
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: -18px 20px 60px rgba(0,0,0,.18);
    transform: translateX(110%);
    transition: transform 260ms ease;
}

.mss-front-customizer.is-open .mss-front-customizer-panel {
    transform: translateX(0);
}

.mss-front-customizer.is-open .mss-front-customizer-toggle {
    opacity: 0;
    pointer-events: none;
}

.mss-front-customizer-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding: 4px 0 14px;
    border-bottom: 1px solid rgba(17,24,39,.1);
    margin-bottom: 14px;
}

.mss-front-customizer-head strong {
    display: block;
    font-size: 18px;
    line-height: 1.15;
}

.mss-front-customizer-head span {
    display: block;
    margin-top: 3px;
    color: rgba(23,32,51,.62);
    font-size: 12px;
}

.mss-front-customizer-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(17,24,39,.08);
    color: #172033;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.mss-front-customizer-section {
    margin: 0 0 12px;
    padding: 13px;
    border: 1px solid rgba(17,24,39,.1);
    border-radius: 18px;
    background: rgba(248,250,252,.9);
}

.mss-front-customizer-section h4 {
    margin: 0 0 10px;
    color: #172033;
    font-size: 13px;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.mss-front-customizer-section label {
    display: grid;
    gap: 6px;
    margin: 10px 0;
    color: rgba(23,32,51,.76);
    font-size: 12px;
    font-weight: 700;
}

.mss-front-customizer-section input[type="text"],
.mss-front-customizer-section select {
    width: 100%;
    min-height: 36px;
    padding: 0 10px;
    border: 1px solid rgba(17,24,39,.16);
    border-radius: 11px;
    background: #fff;
    color: #172033;
    font: 500 12px/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.mss-front-customizer-check {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
    gap: 9px !important;
    margin: 9px 0 !important;
}

.mss-front-customizer-check input {
    width: 16px;
    height: 16px;
    margin: 0;
}

.mss-front-customizer-colors {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.mss-front-customizer-colors label {
    margin: 0;
    padding: 9px;
    border-radius: 12px;
    background: #fff;
}

.mss-front-customizer-colors span {
    min-height: 26px;
    font-size: 10.5px;
    line-height: 1.2;
}

.mss-front-customizer-colors input[type="color"] {
    width: 100%;
    height: 30px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
}

.mss-front-customizer-actions {
    position: sticky;
    bottom: -16px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 14px -16px -16px;
    padding: 12px 16px 16px;
    background: rgba(255,255,255,.96);
    border-top: 1px solid rgba(17,24,39,.1);
}

.mss-front-customizer-actions button {
    min-height: 40px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.mss-front-customizer-actions span {
    color: rgba(23,32,51,.7);
    font-size: 12px;
    font-weight: 700;
}

.mss-front-customizer-note {
    margin: 10px 2px 0;
    color: rgba(23,32,51,.52);
    font-size: 11px;
    line-height: 1.35;
}

@media (max-width: 620px) {
    .mss-front-customizer-panel {
        top: 12px;
        right: 8px;
        left: 8px;
        width: auto;
        max-height: calc(100vh - 24px);
        border-right: 1px solid rgba(17,24,39,.12);
        border-radius: 24px;
    }

    .mss-front-customizer-toggle {
        top: auto;
        bottom: 92px;
    }
}


/* v1.0.103 mobile pop-up controls */
@media (max-width: 760px) {
    .mss-modal-image-wrap {
        width: var(--mss-mobile-modal-image-width-custom, 100%) !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: 0 !important;
        align-self: center !important;
    }
}

/* v1.0.90 Mark Style Shop frontend settings panel additions */
.mss-product-grid {
    gap: var(--mss-card-gap-custom) !important;
}

.mss-card-body {
    padding: var(--mss-card-body-padding-custom) !important;
}

.mss-card-image-wrap {
    aspect-ratio: var(--mss-card-image-aspect-custom) !important;
}

.mss-square-card-images .mss-card-image-wrap {
    aspect-ratio: 1 / 1 !important;
}

.mss-modal-dialog {
    width: var(--mss-modal-width-custom) !important;
    border-radius: var(--mss-modal-radius-custom) !important;
    box-shadow: var(--mss-modal-shadow-custom) !important;
    padding: var(--mss-modal-padding-custom) !important;
}

.mss-modal-image-wrap {
    aspect-ratio: var(--mss-modal-image-aspect-custom) !important;
}

.mss-modal-content,
.mss-modal-title,
.mss-modal-description,
.mss-modal-price {
    text-align: var(--mss-modal-text-align) !important;
}

.mss-cart-panel {
    width: var(--mss-cart-width-custom) !important;
    border-radius: var(--mss-cart-radius-custom) !important;
    box-shadow: var(--mss-cart-shadow-custom) !important;
    bottom: var(--mss-cart-bottom-custom) !important;
}

.mss-front-customizer-section summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    list-style: none;
    margin: 0;
    color: #172033;
    font-size: 13px;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 900;
}

.mss-front-customizer-section summary::-webkit-details-marker {
    display: none;
}

.mss-front-customizer-section summary::after {
    content: '+';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: rgba(17,24,39,.08);
    color: #172033;
    font-size: 14px;
    font-weight: 900;
}

.mss-front-customizer-section[open] summary::after {
    content: '−';
}

.mss-front-customizer-section h4 {
    display: none;
}

.mss-front-customizer-section textarea,
.mss-front-customizer-section input[type="number"] {
    width: 100%;
    min-height: 36px;
    padding: 9px 10px;
    border: 1px solid rgba(17,24,39,.16);
    border-radius: 11px;
    background: #fff;
    color: #172033;
    font: 500 12px/1.35 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    resize: vertical;
}


/* v1.0.91: fixed live frontend customizer - left panel and instant preview */
.mss-front-customizer {
    top: 96px !important;
    left: 0 !important;
    right: auto !important;
    z-index: 2147483640 !important;
}

.mss-front-customizer-toggle {
    position: fixed !important;
    top: 150px !important;
    left: 10px !important;
    right: auto !important;
    z-index: 2147483002 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 104px !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #111827 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.2) !important;
    writing-mode: horizontal-tb !important;
    transform: none !important;
    white-space: nowrap !important;
}

.mss-front-customizer-panel {
    position: fixed !important;
    top: 86px !important;
    left: 0 !important;
    right: auto !important;
    width: min(410px, calc(100vw - 18px)) !important;
    max-height: calc(100vh - 108px) !important;
    overflow: auto !important;
    padding: 16px !important;
    border: 1px solid rgba(17,24,39,.12) !important;
    border-left: 0 !important;
    border-right: 1px solid rgba(17,24,39,.12) !important;
    border-radius: 0 24px 24px 0 !important;
    background: rgba(255,255,255,.97) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: 18px 20px 60px rgba(0,0,0,.18) !important;
    transform: translateX(-110%) !important;
    transition: transform 260ms ease !important;
}

.mss-front-customizer.is-open .mss-front-customizer-panel {
    transform: translateX(0) !important;
}

.mss-front-customizer.is-open .mss-front-customizer-toggle {
    opacity: 0 !important;
    pointer-events: none !important;
}

.mss-front-customizer-head {
    position: sticky;
    top: -16px;
    z-index: 2;
    background: rgba(255,255,255,.97);
    padding-top: 16px !important;
    margin-top: -16px !important;
}

.mss-front-customizer-section input[type="text"],
.mss-front-customizer-section select,
.mss-front-customizer-section textarea,
.mss-front-customizer-section input[type="number"] {
    box-shadow: none !important;
    outline: none !important;
}

.mss-front-customizer-section input[type="text"]:focus,
.mss-front-customizer-section select:focus,
.mss-front-customizer-section textarea:focus,
.mss-front-customizer-section input[type="number"]:focus {
    border-color: rgba(17,24,39,.42) !important;
}

.mss-menu.mss-card-images-square .mss-card-image-wrap,
.mss-menu.mss-square-card-images .mss-card-image-wrap,
.mss-menu.mss-card-images-square.mss-layout-light .mss-card-image-wrap,
.mss-menu.mss-square-card-images.mss-layout-light .mss-card-image-wrap {
    aspect-ratio: 1 / 1 !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-description {
    display: none !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-content,
.mss-menu.mss-hide-card-descriptions .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions .mss-card-content--no-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--no-description {
    min-height: 2.28em !important;
}

@media (max-width: 620px) {
    .mss-front-customizer-panel {
        top: 10px !important;
        left: 8px !important;
        right: 8px !important;
        width: auto !important;
        max-height: calc(100vh - 20px) !important;
        border: 1px solid rgba(17,24,39,.12) !important;
        border-radius: 24px !important;
    }

    .mss-front-customizer-toggle {
        top: auto !important;
        left: 10px !important;
        right: auto !important;
        bottom: 92px !important;
    }
}

/* v1.0.92: light layout image shadow is now controllable from Mark Style Shop panel */
.mss-menu.mss-layout-light .mss-card-image-wrap {
    border-radius: var(--mss-light-image-radius-custom, 22px) !important;
    box-shadow: var(--mss-light-image-shadow-custom, 0 12px 34px rgba(35, 24, 10, 0.10)) !important;
}

.mss-menu.mss-layout-light .mss-product-card:hover .mss-card-image-wrap,
.mss-menu.mss-layout-light .mss-product-card:focus-visible .mss-card-image-wrap {
    box-shadow: var(--mss-light-image-shadow-hover-custom, var(--mss-light-image-shadow-custom, none)) !important;
}


/* v1.0.93: keep Mark Style Shop frontend customizer above every site layer */
.mss-front-customizer,
.mss-front-customizer-panel,
.mss-front-customizer-toggle {
    z-index: 2147483647 !important;
}

.mss-front-customizer.is-open {
    z-index: 2147483647 !important;
}

.mss-front-customizer-close,
.mss-front-customizer-head,
.mss-front-customizer-actions {
    z-index: 2147483647 !important;
}


/* v1.0.95: switchable card add button modes - same visual style as the original small Lisa button */
.mss-menu.mss-card-button-mode-price .mss-card-bottom,
.mss-menu.mss-card-button-mode-add_price .mss-card-bottom {
    justify-content: center !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-price,
.mss-menu.mss-card-button-mode-add_price .mss-card-price {
    display: none !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-disabled-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button {
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 0 10px !important;
    border: 1px solid rgba(23, 61, 44, 0.11) !important;
    border-radius: 999px !important;
    background: rgba(23, 61, 44, 0.055) !important;
    color: rgba(23, 61, 44, 0.78) !important;
    font-size: 12.5px !important;
    font-weight: 820 !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-disabled-button {
    width: 86px !important;
    min-width: 86px !important;
    max-width: 86px !important;
}

.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button {
    width: auto !important;
    min-width: max-content !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button:hover,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button:hover,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button:hover,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button:hover {
    background: rgba(23, 61, 44, 0.09) !important;
    color: var(--mss-text, #173d2c) !important;
    box-shadow: none !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-button-add-text {
    display: none !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-button-price-text,
.mss-menu.mss-card-button-mode-add_price .mss-card-button-price-text,
.mss-menu.mss-card-button-mode-add_price .mss-card-button-add-text {
    display: inline-flex !important;
    align-items: center !important;
    transform: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

@media (max-width: 620px) {
    .mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button,
    .mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button,
    .mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-disabled-button {
        width: 80px !important;
        min-width: 80px !important;
        max-width: 80px !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
        padding: 0 9px !important;
        font-size: 12px !important;
    }

    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button {
        width: auto !important;
        min-width: max-content !important;
        max-width: 100% !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 12px !important;
    }
}


/* v1.0.96: popup description expansion and compact complex prices */
.mss-modal-description-wrap {
    display: block;
    margin: 0px 0 0;
}

.mss-modal-description-wrap .mss-modal-description {
    margin: 0 !important;
}

.mss-modal-description-wrap.is-collapsible:not(.is-expanded) .mss-modal-description {
    display: -webkit-box !important;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
}

.mss-modal-description-more {
    appearance: none;
    border: 0;
    background: transparent;
    color: currentColor;
    padding: 0;
    margin: 0;
    font-size: var(--mss-modal-text-size, 15px);
    font-weight: 500;
    line-height: inherit;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    opacity: .78;
}

.mss-modal-description-more:hover,
.mss-modal-description-more:focus-visible {
    color: var(--mss-accent, #0b4a34);
    opacity: 1;
    outline: none;
}

.mss-card-bottom {
    min-width: 0;
}

.mss-card-bottom .mss-card-price {
    flex: 1 1 auto;
    min-width: 0;
    max-width: calc(100% - 76px);
}

.mss-card-price del,
.mss-card-price ins,
.mss-card-price .amount,
.mss-card-price .woocommerce-Price-amount {
    display: inline-flex;
    align-items: baseline;
    max-width: 100%;
    line-height: 1.05;
    vertical-align: baseline;
}

.mss-card-price del {
    margin-right: 4px;
    opacity: .72;
}

.mss-card-price .woocommerce-Price-currencySymbol {
    margin-left: 1px;
}

.mss-card-button-price-text {
    max-width: 100%;
    min-width: 0;
}

.mss-card-button-price-text del {
    display: none !important;
}

.mss-card-button-price-text ins {
    text-decoration: none !important;
}

.mss-card-button-price-text .amount,
.mss-card-button-price-text .woocommerce-Price-amount {
    white-space: nowrap !important;
}

/* v1.0.132: keep old sale price visibly crossed out */
.mss-card-price del,
.mss-card-price del .amount,
.mss-card-price del .woocommerce-Price-amount {
    text-decoration-line: line-through !important;
    text-decoration-thickness: 1px !important;
    text-decoration-color: currentColor !important;
}

.mss-card-button-mode-price .mss-card-button-price-text,
.mss-card-button-mode-add_price .mss-card-button-price-text {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (max-width: 620px) {
    .mss-card-bottom .mss-card-price {
        max-width: calc(100% - 70px);
    }

    .mss-card-price {
        font-size: min(var(--mss-card-price-size, 15px), 14px) !important;
    }
}

/* v1.0.97: clean WooCommerce complex price output and make modal description expansion logical */
.mss-menu .screen-reader-text,
.mss-modal .screen-reader-text,
.mss-card-price .screen-reader-text,
.mss-card-button-price-text .screen-reader-text,
.mss-modal-price .screen-reader-text {
    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;
}

.mss-card-price {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 4px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.mss-card-price del,
.mss-card-price ins {
    min-width: 0 !important;
    white-space: nowrap !important;
}

.mss-card-price del {
    flex: 0 1 auto !important;
    max-width: 48% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.mss-card-price ins {
    flex: 0 0 auto !important;
    max-width: 58% !important;
}

.mss-card-button-price-text,
.mss-card-button-price-text .amount,
.mss-card-button-price-text .woocommerce-Price-amount {
    display: inline-flex !important;
    align-items: baseline !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
}

.mss-modal-description-wrap {
    position: relative;
}


.mss-modal-description-wrap.is-expanded .mss-modal-description {
    display: block !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
}

.mss-modal-description-more {
    position: relative;
    z-index: 2;
    display: inline;
    width: auto;
    margin-top: 5px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
}

.mss-modal-content {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}


/* v1.0.98: show modal read-more button only when text is actually clipped */
.mss-modal-description-more[hidden] {
    display: none !important;
}


/* v1.0.100: compact add-with-price button and controllable title-to-button spacing */
.mss-card-bottom {
    margin-top: var(--mss-card-title-button-gap-custom, 10px) !important;
}

.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button {
    box-sizing: border-box !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: 100% !important;
    padding: 0 14px !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

.mss-menu.mss-card-button-mode-add_price .mss-card-button-add-text,
.mss-menu.mss-card-button-mode-add_price .mss-card-button-price-text {
    flex: 0 0 auto !important;
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

@media (max-width: 620px) {
    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
    .mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button {
        padding-left: 12px !important;
        padding-right: 12px !important;
        max-width: 100% !important;
    }
}


/* v1.0.101: title spacing controls work in normal and light card layouts */
.mss-menu .mss-card-title {
    margin: var(--mss-card-title-margin-custom, 0) !important;
    padding: var(--mss-card-title-padding-custom, 0) !important;
}

.mss-menu.mss-layout-light .mss-card-title {
    margin: var(--mss-card-title-margin-custom, 0) !important;
    padding: var(--mss-card-title-padding-custom, 0) !important;
}

.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button {
    min-width: 0 !important;
}


/* v1.0.102: stable title-to-control spacing, price+qty gap, and cleaner mobile modal */
.mss-menu.mss-hide-card-descriptions .mss-card-content,
.mss-menu.mss-hide-card-descriptions .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions .mss-card-content--no-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-content--no-description {
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-title,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-title {
height: auto !important;
    margin: var(--mss-card-title-margin-custom, 0) !important;
    padding: var(--mss-card-title-padding-custom, 0) !important;
}

.mss-menu.mss-hide-card-descriptions .mss-card-bottom,
.mss-menu.mss-hide-card-descriptions.mss-layout-light .mss-card-bottom {
    margin-top: var(--mss-card-title-button-gap-custom, 8px) !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions {
    gap: 3px !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions {
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    justify-content: center !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-link-button {
    display: inline-flex !important;
    width: auto !important;
    min-width: 54px !important;
    max-width: none !important;
    padding: 0 10px !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control {
    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
    margin-left: 3px !important;
}

@media (max-width: 620px) {
    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions {
        gap: 3px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button,
    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-link-button,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-link-button {
        min-width: 50px !important;
        padding: 0 8px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control {
        width: 76px !important;
        min-width: 76px !important;
        max-width: 76px !important;
        margin-left: 3px !important;
    }
}

@media (max-width: 760px) {
    .mss-modal {
        padding: 0 !important;
    }

    .mss-modal-dialog {
        width: 100% !important;
        max-width: 100% !important;
        max-height: 92vh !important;
        border-radius: 28px 28px 0 0 !important;
        overflow: hidden !important;
    }

    .mss-modal-content {
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }
}


/* v1.0.106: clean and stable mobile modal layout */
@media (max-width: 760px) {
    .mss-modal-dialog {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: 92vh !important;
        border-radius: 28px 28px 0 0 !important;
        overflow: hidden !important;
    }

    .mss-modal-image-wrap {
        position: relative !important;
        z-index: 1 !important;
        flex: 0 0 auto !important;
        width: var(--mss-mobile-modal-image-width-custom, 100%) !important;
        margin: 0 auto !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: hidden !important;
    }

    .mss-modal-image {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .mss-modal-content {
        position: relative !important;
        z-index: 2 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        margin-top: calc(var(--mss-mobile-modal-title-lift-custom, 0px) * -1) !important;
        padding: 0 18px max(42px, calc(env(safe-area-inset-bottom) + 30px)) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        background: transparent !important;
        box-shadow: none !important;
        isolation: auto !important;
    }

    .mss-modal-category {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        z-index: 3 !important;
        display: inline-flex !important;
        width: fit-content !important;
        max-width: 100% !important;
        margin: 0 0 9px 0 !important;
        padding: 7px 10px !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: color-mix(in srgb, var(--mss-accent, #0b4a34) 10%, transparent) !important;
        color: var(--mss-accent, #0b4a34) !important;
        box-shadow: none !important;
        filter: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        transition: none !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .mss-modal-title {
        position: relative !important;
        z-index: 3 !important;
        margin: 0 !important;
    }

    .mss-modal-description,
    .mss-modal-bottom,
    .mss-modal-options {
        position: relative !important;
        z-index: 3 !important;
    }

    .mss-modal-close {
        z-index: var(--mss-z-index-max, 2147483640) !important;
    }
}

/* v1.0.107: calmer category navigation and safer mobile popup layering */
.mss-category-nav,
.mss-has-sticky-nav .mss-category-nav {
    box-shadow: none !important;
    isolation: isolate;
}

.mss-category-pill {
    box-shadow: none !important;
}

.mss-category-pill:hover,
.mss-category-pill:focus-visible,
.mss-category-pill.is-active {
    box-shadow: none !important;
}

.mss-category-nav.is-mss-fixed {
    box-shadow: none !important;
}

@media (max-width: 760px) {
    .mss-modal.is-visible {
        display: flex !important;
    }

    .mss-modal-dialog {
        max-height: calc(100dvh - 18px) !important;
        overscroll-behavior: contain;
    }

    .mss-modal-dialog.is-dragging {
        transition: none !important;
        cursor: grabbing;
    }
}

/* v1.0.112: mobile popup category badge fixed to the popup top-left corner */
@media (max-width: 760px) {
    .mss-modal-dialog {
        position: relative !important;
    }

    .mss-modal-content {
        position: static !important;
    }

    .mss-modal-category {
        position: absolute !important;
        top: 20px !important;
        left: 14px !important;
        right: auto !important;
        z-index: 20 !important;
        margin: 0 !important;
        max-width: calc(100% - 76px) !important;
        transform: none !important;
        font-size: 10px;
        padding: 3px 10px !important;
    }
}


/* v1.0.122: mobile gallery thumbnails position */
@media (max-width: 760px) {
  .mss-modal-gallery-thumbs {
    right: 0px !important;
    bottom: 5px !important;
    z-index: 30 !important;
    gap: 6px !important;
    max-width: calc(100% - 24px) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    pointer-events: auto !important;
  }

    .mss-modal-gallery-thumb {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
        flex: 0 0 48px !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 13px !important;
    }

    .mss-modal-gallery-thumb img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
}


/* v1.0.126: optional Cart v2 - keep closing button colored, keep drawer white */
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing {
    background: #fff !important;
    color: var(--mss-text, #173d2c) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.14) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary {
    background: #fff !important;
    color: var(--mss-text, #173d2c) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary {
    background: var(--mss-cart-bg) !important;
    color: var(--mss-cart-text) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-title,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total .woocommerce-Price-amount,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-title,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta strong,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta .woocommerce-Price-amount,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-button,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-value,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-cart-qty-input,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-title,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta strong,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta .woocommerce-Price-amount,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-qty-button,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-qty-value,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-cart-qty-input {
    color: var(--mss-text, #173d2c) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-title,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total .woocommerce-Price-amount {
    color: var(--mss-cart-text) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 8%, transparent) !important;
    color: var(--mss-text, #173d2c) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-cart-text) 16%, transparent) !important;
    color: var(--mss-cart-text) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-toggle-text,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-checkout-link,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-checkout-link {
    background: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent-text, #fff) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-toggle-text {
    background: var(--mss-cart-text) !important;
    color: var(--mss-cart-bg) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-empty,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-empty {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-empty,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-options,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-empty,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-options {
    color: color-mix(in srgb, var(--mss-text, #173d2c) 74%, transparent) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control {
    border-color: color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent) !important;
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
}

.mss-menu.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-cart-qty-input:focus,
.mss-menu.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-cart-qty-input:focus {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 8%, transparent) !important;
}


/* v1.0.128: extra mobile pop-up and mobile card controls */
@media (max-width: 760px) {
    .mss-product-grid {
        gap: var(--mss-mobile-card-gap-custom, var(--mss-card-gap-custom, 24px)) !important;
    }

    .mss-card-image-wrap {
        aspect-ratio: var(--mss-mobile-card-image-aspect-custom, var(--mss-card-image-aspect-custom, 4/3)) !important;
    }

    .mss-card-body,
    .mss-layout-light .mss-card-body {
        padding: var(--mss-mobile-card-body-padding-custom, var(--mss-card-body-padding-custom, 12px)) !important;
    }

    .mss-menu .mss-card-title,
    .mss-menu.mss-layout-light .mss-card-title {
        font-size: var(--mss-mobile-card-title-size-custom, calc(var(--mss-card-title-size, 18px) * 0.9)) !important;
        line-height: var(--mss-mobile-card-title-line-height-custom, 22px) !important;
        margin: var(--mss-mobile-card-title-margin-custom, var(--mss-card-title-margin-custom, 8px 0 -16px 0)) !important;
        padding: var(--mss-mobile-card-title-padding-custom, var(--mss-card-title-padding-custom, 0)) !important;
    }

    .mss-menu .mss-card-description,
    .mss-menu.mss-layout-light .mss-card-description {
        font-size: var(--mss-mobile-card-text-size-custom, var(--mss-card-text-size, 13px)) !important;
        line-height: var(--mss-mobile-card-text-line-height-custom, 1.38) !important;
        margin: var(--mss-mobile-card-description-margin-custom, 4px 0 0) !important;
    }

    .mss-card-price,
    .mss-card-price .amount,
    .mss-card-price .woocommerce-Price-amount {
        font-size: var(--mss-mobile-card-price-size-custom, var(--mss-card-price-size, 15px)) !important;
    }

    .mss-card-add-button,
    .mss-card-link-button,
    .mss-card-disabled-button {
        font-size: var(--mss-mobile-card-button-size-custom, var(--mss-card-button-size, 12px)) !important;
    }

    .mss-card-bottom {
        margin-top: var(--mss-mobile-card-bottom-gap-custom, var(--mss-card-title-button-gap-custom, 10px)) !important;
    }

    .mss-modal-image-wrap {
        aspect-ratio: var(--mss-mobile-modal-image-aspect-custom, var(--mss-modal-image-aspect-custom, auto)) !important;
    }

    .mss-modal-content {
        padding: var(--mss-mobile-modal-content-padding-custom, 0 18px max(42px, calc(env(safe-area-inset-bottom) + 30px))) !important;
    }

    .mss-modal .mss-modal-title {
        font-size: var(--mss-mobile-modal-title-size-custom, calc(var(--mss-modal-title-size, 34px) * 0.7)) !important;
        line-height: var(--mss-mobile-modal-title-line-height-custom, 1.04) !important;
        margin: var(--mss-mobile-modal-title-margin-custom, 0) !important;
    }

    .mss-modal .mss-modal-description,
    .mss-modal .mss-modal-description-more {
        font-size: var(--mss-mobile-modal-text-size-custom, var(--mss-modal-text-size, 15px)) !important;
        line-height: var(--mss-mobile-modal-text-line-height-custom, 1.42) !important;
    }

    .mss-modal .mss-modal-description {
        margin: var(--mss-mobile-modal-description-margin-custom, 2px 0 0) !important;
    }

    .mss-modal-price,
    .mss-modal-price .amount,
    .mss-modal-price .woocommerce-Price-amount {
        font-size: var(--mss-mobile-modal-price-size-custom, var(--mss-modal-price-size, 22px)) !important;
    }

    .mss-modal-add-button,
    .mss-modal-link-button,
    .mss-modal-disabled-button {
        font-size: var(--mss-mobile-modal-button-size-custom, var(--mss-modal-button-size, 14px)) !important;
    }

    .mss-modal-options,
    .mss-modal-options .mss-option-item,
    .mss-modal-options .mss-option-title,
    .mss-modal-options .mss-option-meta,
    .mss-modal-options .mss-option-qty-input {
        font-size: var(--mss-mobile-modal-options-size-custom, var(--mss-modal-options-size, 14px)) !important;
    }

    .mss-modal-bottom {
        gap: var(--mss-mobile-modal-bottom-gap-custom, 22px) !important;
    }
}

/* v1.0.129: parallel mobile preview for live frontend settings */
.mss-front-customizer-head-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.mss-front-customizer-preview-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(17,24,39,.12);
    border-radius: 999px;
    background: #fff;
    color: #172033;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
}

.mss-front-customizer-preview-toggle[aria-pressed="true"] {
    background: #111827;
    color: #fff;
    border-color: #111827;
}

.mss-mobile-preview {
    position: fixed !important;
    top: 86px !important;
    left: 428px !important;
    z-index: 2147483646 !important;
    width: 430px !important;
    max-width: calc(100vw - 448px) !important;
    max-height: calc(100vh - 108px) !important;
    padding: 14px !important;
    border: 1px solid rgba(17,24,39,.12) !important;
    border-radius: 26px !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 18px 20px 60px rgba(0,0,0,.16) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateX(-18px) scale(.985) !important;
    transition: opacity 220ms ease, transform 260ms ease !important;
}

.mss-front-customizer.is-preview-open .mss-mobile-preview {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateX(0) scale(1) !important;
}

.mss-mobile-preview-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 12px;
    padding: 0 2px;
}

.mss-mobile-preview-bar strong {
    display: block;
    color: #172033;
    font-size: 14px;
    line-height: 1.1;
}

.mss-mobile-preview-bar span {
    display: block;
    margin-top: 3px;
    color: rgba(23,32,51,.56);
    font-size: 11px;
    font-weight: 800;
}

.mss-mobile-preview-bar button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 999px;
    background: rgba(17,24,39,.08);
    color: #172033;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.mss-mobile-preview-phone {
    width: 100%;
    max-width: 390px;
    margin: 0 auto;
    padding: 10px;
    border-radius: 34px;
    background: #111827;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 18px 45px rgba(0,0,0,.18);
}

.mss-mobile-preview-phone iframe {
    display: block;
    width: 390px;
    max-width: 100%;
    height: min(760px, calc(100vh - 188px));
    border: 0;
    border-radius: 24px;
    background: #fff;
}

html.mss-is-mobile-preview-frame .mss-front-customizer {
    display: none !important;
}

html.mss-is-mobile-preview-frame,
html.mss-is-mobile-preview-frame body {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

@media (max-width: 980px) {
    .mss-mobile-preview {
        display: none !important;
    }

    .mss-front-customizer-preview-toggle {
        display: none !important;
    }
}


/* v1.0.130: safer mobile card flow, compact mobile add button, readable popup category badge */
.mss-modal-category {
    background: var(--mss-modal-category-bg-custom, rgba(255, 255, 255, 0.88)) !important;
    color: var(--mss-modal-category-text-custom, var(--mss-text, #173d2c)) !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.10) !important;
}

@media (max-width: 760px) {
    .mss-card-body {
        gap: var(--mss-mobile-card-bottom-gap-custom, 10px) !important;
    }

    .mss-card-content,
    .mss-card-content--has-description,
    .mss-card-content--no-description {
        display: flex !important;
        flex-direction: column !important;
        min-height: 0 !important;
        height: auto !important;
    }

    .mss-card-title {
height: auto !important;
        margin: var(--mss-mobile-card-title-margin-custom, 0 0 4px 0) !important;
        padding: var(--mss-mobile-card-title-padding-custom, 0) !important;
        font-size: var(--mss-mobile-card-title-size-custom, 16px) !important;
        line-height: var(--mss-mobile-card-title-line-height-custom, 1.18) !important;
    }

    .mss-card-description {
        min-height: 0 !important;
        height: auto !important;
        margin: var(--mss-mobile-card-description-margin-custom, 4px 0 0) !important;
        font-size: var(--mss-mobile-card-text-size-custom, 12px) !important;
        line-height: var(--mss-mobile-card-text-line-height-custom, 1.35) !important;
    }

    .mss-card-bottom {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 6px !important;
        min-width: 0 !important;
        min-height: 30px !important;
    }

    .mss-card-bottom .mss-card-price {
        flex: 1 1 auto !important;
        align-self: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 1px !important;
        min-width: 0 !important;
        max-width: calc(100% - 62px) !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        font-size: var(--mss-mobile-card-price-size-custom, 14px) !important;
        line-height: 1.05 !important;
    }

    .mss-card-price del,
    .mss-card-price ins {
        display: block !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        line-height: 1.05 !important;
    }

    .mss-card-price del {
        order: 1 !important;
        opacity: .62 !important;
        line-height: 1 !important;
        text-decoration-line: line-through !important;
        text-decoration-thickness: 1px !important;
        text-decoration-color: currentColor !important;
    }

    .mss-card-price del,
    .mss-card-price del .amount,
    .mss-card-price del .woocommerce-Price-amount {
        font-size: calc(var(--mss-mobile-card-price-size-custom, var(--mss-card-price-size, 14px)) * 0.72) !important;
        line-height: 1 !important;
        text-decoration-line: line-through !important;
        text-decoration-thickness: 1px !important;
        text-decoration-color: currentColor !important;
    }

    .mss-card-price ins {
        order: 2 !important;
        text-decoration: none !important;
    }

    .mss-card-price ins,
    .mss-card-price > .amount,
    .mss-card-price > .woocommerce-Price-amount,
    .mss-card-price ins .amount,
    .mss-card-price ins .woocommerce-Price-amount {
        font-size: var(--mss-mobile-card-price-size-custom, var(--mss-card-price-size, 14px)) !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }

    .mss-card-bottom .mss-product-actions,
    .mss-card-bottom .mss-card-actions {
        flex: 0 0 auto !important;
        align-self: center !important;
        width: auto !important;
        max-width: 62px !important;
        min-width: 0 !important;
    }

    .mss-card-bottom .mss-card-add-button,
    .mss-card-bottom .mss-card-link-button,
    .mss-card-bottom .mss-card-disabled-button {
        width: auto !important;
        min-width: 50px !important;
        max-width: 62px !important;
        height: 30px !important;
        min-height: 30px !important;
        max-height: 30px !important;
        padding: 0 7px !important;
        font-size: min(var(--mss-mobile-card-button-size-custom, 12px), 11.5px) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .mss-lang-ru .mss-card-bottom .mss-card-add-button,
    .mss-lang-ru .mss-card-bottom .mss-card-link-button,
    .mss-lang-ru .mss-card-bottom .mss-card-disabled-button,
    html:lang(ru) .mss-card-bottom .mss-card-add-button,
    html:lang(ru) .mss-card-bottom .mss-card-link-button,
    html:lang(ru) .mss-card-bottom .mss-card-disabled-button {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
}

/* v1.0.139: cleaned mobile pop-up category badge CSS and stable UI states */
.mss-product-card.is-updating,
.mss-cart-item.is-updating,
.mss-qty-control.is-updating {
    opacity: 1 !important;
}

.mss-cart-item.is-updating {
    transform: translateZ(0);
}

.mss-modal-dialog {
    isolation: isolate !important;
}

.mss-modal-image-wrap {
    z-index: 1 !important;
}

.mss-modal-content {
    position: relative !important;
    z-index: 2 !important;
}

.mss-modal-gallery-thumbs {
    z-index: 50 !important;
}

.mss-modal-category[data-mss-modal-category].is-visible {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.mss-modal-category[data-mss-modal-category].is-empty,
.mss-modal-category[data-mss-modal-category][hidden] {
    display: none !important;
}

.mss-modal-category-mobile-layer {
    display: none;
}

@media (max-width: 760px) {
    .mss-modal .mss-modal-content > .mss-modal-category[data-mss-modal-category],
    .mss-modal .mss-modal-content .mss-modal-category[data-mss-modal-category] {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    .mss-modal .mss-modal-dialog {
        position: relative !important;
        isolation: isolate !important;
    }

    .mss-modal .mss-modal-dialog > .mss-modal-category-mobile-layer {
        display: none;
    }

    .mss-modal .mss-modal-dialog > .mss-modal-category-mobile-layer.is-visible {
        position: absolute;
        top: 14px;
        left: 14px;
        z-index: 620;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: auto;
        max-width: calc(100% - 92px);
        min-height: 26px;
        margin: 0;
        padding: 5px 10px;
        border-radius: 999px;
        background: var(--mss-modal-category-bg-custom, rgba(255, 255, 255, 0.94));
        color: var(--mss-modal-category-text-custom, var(--mss-text, #173d2c));
        border: 1px solid rgba(255, 255, 255, 0.76);
        box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);
        visibility: visible;
        opacity: 1;
        pointer-events: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        backdrop-filter: blur(12px) saturate(145%);
        -webkit-backdrop-filter: blur(12px) saturate(145%);
    }

    .mss-modal .mss-modal-image-wrap > .mss-modal-category-mobile-layer,
    .mss-modal .mss-modal-content > .mss-modal-category-mobile-layer {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }

    .mss-modal .mss-modal-gallery-thumbs {
        z-index: 80 !important;
    }
}


/* v1.0.140: optional mobile-only hiding for pop-up category badge */
@media (max-width: 760px) {
    .mss-hide-mobile-modal-category .mss-modal .mss-modal-dialog > .mss-modal-category-mobile-layer,
    .mss-hide-mobile-modal-category .mss-modal .mss-modal-content > .mss-modal-category[data-mss-modal-category] {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}


/* v1.0.141: mobile pop-up button bottom spacing */
@media (max-width: 760px) {
    .mss-modal .mss-modal-bottom {
        padding-bottom: var(--mss-mobile-modal-button-bottom-offset-custom, 0px) !important;
    }
}


/* v1.0.143: bottom cart width cap and tablet product columns control */
.mss-cart-panel {
    width: min(500px, calc(100vw - 14px)) !important;
    max-width: min(500px, calc(100vw - 14px)) !important;
}

.mss-cart-panel.is-expanded {
    width: min(500px, calc(100vw - 14px)) !important;
    max-width: min(500px, calc(100vw - 14px)) !important;
}

.mss-cart-panel:not(.is-expanded),
.mss-cart-panel.is-closing {
    width: min(365px, calc(100vw - 76px)) !important;
    max-width: min(365px, calc(100vw - 76px)) !important;
}

@media (min-width: 761px) and (max-width: 1120px) {
    .mss-product-grid {
        grid-template-columns: repeat(var(--mss-tablet-columns-custom, 3), minmax(0, 1fr)) !important;
    }
}


/* v1.0.144: enforce bottom cart panel max width on the real panel wrapper */
.mss-menu .mss-cart-panel[data-mss-cart-bar],
.mss-menu .mss-cart-panel[data-mss-cart-bar].is-expanded,
.mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar],
.mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded {
    width: min(500px, calc(100vw - 14px)) !important;
    max-width: min(500px, calc(100vw - 14px)) !important;
    left: 50% !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translate3d(-50%, -10px, 0) !important;
    box-sizing: border-box !important;
}

.mss-menu .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
.mss-menu .mss-cart-panel[data-mss-cart-bar].is-closing,
.mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
.mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing {
    width: min(365px, calc(100vw - 76px)) !important;
    max-width: min(365px, calc(100vw - 76px)) !important;
    left: 50% !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translate3d(-50%, 0, 0) !important;
    box-sizing: border-box !important;
}

@media (max-width: 620px) {
    .mss-menu .mss-cart-panel[data-mss-cart-bar].is-expanded,
    .mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded {
        width: min(500px, calc(100vw - 14px)) !important;
        max-width: min(500px, calc(100vw - 14px)) !important;
        transform: translate3d(-50%, -12px, 0) !important;
    }

    .mss-menu .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    .mss-menu .mss-cart-panel[data-mss-cart-bar].is-closing,
    .mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    .mss-menu.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing {
        width: min(292px, calc(100vw - 76px)) !important;
        max-width: min(292px, calc(100vw - 76px)) !important;
        transform: translate3d(-50%, 0, 0) !important;
    }
}

/* v1.0.148: mobile pop-up width cap without breaking mobile image width setting */
@media (max-width: 760px) {
    .mss-modal {
        align-items: flex-end !important;
        justify-content: center !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
        box-sizing: border-box !important;
    }

    .mss-modal .mss-modal-dialog,
    .mss-modal.is-visible .mss-modal-dialog,
    .mss-modal.is-open .mss-modal-dialog,
    .mss-modal[aria-hidden="false"] .mss-modal-dialog {
        width: 100vw !important;
        max-width: 560px !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
        grid-template-columns: minmax(0, 1fr) !important;
        overflow-x: hidden !important;
    }

    .mss-modal.is-open .mss-modal-dialog {
        opacity: 1 !important;
        transform: translate3d(0, 0, 0) scale(1) !important;
    }

    .mss-modal.is-visible:not(.is-open) .mss-modal-dialog {
        opacity: 1 !important;
        transform: translate3d(0, 100%, 0) scale(1) !important;
    }

    .mss-modal-dialog *,
    .mss-modal-dialog *::before,
    .mss-modal-dialog *::after {
        box-sizing: border-box;
    }

    .mss-modal .mss-modal-content,
    .mss-modal .mss-modal-bottom,
    .mss-modal .mss-modal-options,
    .mss-modal .mss-modal-description-wrap {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .mss-modal .mss-modal-image-wrap {
        width: var(--mss-mobile-modal-image-width-custom, 100%) !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mss-modal .mss-modal-image,
    .mss-modal .mss-modal-gallery-image {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        object-fit: cover !important;
    }

    .mss-modal .mss-modal-bottom {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        flex-wrap: nowrap !important;
    }

    .mss-modal .mss-modal-bottom > * {
        min-width: 0 !important;
    }

    .mss-modal .mss-modal-add {
        flex-shrink: 0 !important;
    }

    .mss-modal .mss-modal-category-mobile-layer.is-visible {
        max-width: calc(100% - 28px) !important;
        left: 14px !important;
        right: auto !important;
    }
}

@media (max-width: 560px) {
    .mss-modal .mss-modal-dialog,
    .mss-modal.is-visible .mss-modal-dialog,
    .mss-modal.is-open .mss-modal-dialog,
    .mss-modal[aria-hidden="false"] .mss-modal-dialog {
        max-width: 100vw !important;
    }
}

/* v1.0.151: restore smooth mobile swipe-down closing animation */
@media (max-width: 760px) {
    .mss-modal.is-visible .mss-modal-dialog.is-swipe-closing,
    .mss-modal.is-open .mss-modal-dialog.is-swipe-closing,
    .mss-modal[aria-hidden="false"] .mss-modal-dialog.is-swipe-closing {
        transition: transform 320ms cubic-bezier(.22, 1, .36, 1), opacity 260ms ease, border-radius 320ms cubic-bezier(.22, 1, .36, 1) !important;
        transform: translate3d(0, var(--mss-sheet-drag-y, 105dvh), 0) scale(.985) !important;
        opacity: .98 !important;
        will-change: transform, opacity, border-radius;
    }

    .mss-modal.is-visible .mss-modal-dialog.is-dragging,
    .mss-modal.is-open .mss-modal-dialog.is-dragging,
    .mss-modal[aria-hidden="false"] .mss-modal-dialog.is-dragging {
        transition: none !important;
        transform: translate3d(0, var(--mss-sheet-drag-y, 0px), 0) scale(1) !important;
    }
}


/* v1.0.152: stable one-line mobile pop-up price and action row */
@media (max-width: 760px) {
    .mss-modal .mss-modal-bottom {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        gap: 10px !important;
        flex-wrap: nowrap !important;
        margin-top: var(--mss-mobile-modal-bottom-gap-custom, 18px) !important;
    }

    .mss-modal .mss-modal-price {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 46px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        border-radius: 999px !important;
        background: rgba(248, 248, 248, 0.96) !important;
        box-shadow: inset 0 0 0 1px rgba(17, 24, 39, 0.04) !important;
        color: var(--mss-text) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .mss-modal .mss-modal-price del,
    .mss-modal .mss-modal-price ins,
    .mss-modal .mss-modal-price .amount,
    .mss-modal .mss-modal-price .woocommerce-Price-amount {
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .mss-modal .mss-modal-price del {
        opacity: 0.58 !important;
        font-size: 0.72em !important;
        margin-right: 2px !important;
    }

    .mss-modal .mss-modal-price ins {
        display: inline-flex !important;
        text-decoration: none !important;
    }

    .mss-modal .mss-modal-actions {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: 48% !important;
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        justify-items: end !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }

    .mss-modal .mss-modal-actions > * {
        margin: 0 !important;
    }

    .mss-modal .mss-modal-actions .mss-add-button,
    .mss-modal .mss-modal-actions .mss-link-button,
    .mss-modal .mss-modal-actions .mss-disabled-button,
    .mss-modal .mss-modal-add-button,
    .mss-modal .mss-modal-link-button,
    .mss-modal .mss-modal-disabled-button {
        flex: 0 1 auto !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 112px !important;
        min-height: 46px !important;
        height: 46px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 16px !important;
        border-radius: 999px !important;
        white-space: nowrap !important;
        line-height: 1 !important;
        transform: none !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-control,
    .mss-modal .mss-modal-inline-qty-control {
        flex: 0 0 auto !important;
        width: 128px !important;
        max-width: 100% !important;
        min-width: 112px !important;
        min-height: 46px !important;
        height: 46px !important;
        grid-template-columns: 38px minmax(36px, 1fr) 38px !important;
        align-items: center !important;
        border-radius: 999px !important;
        transform: none !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-button,
    .mss-modal .mss-modal-inline-qty-control .mss-qty-button {
        width: 38px !important;
        height: 46px !important;
        min-height: 46px !important;
        line-height: 1 !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-value,
    .mss-modal .mss-modal-inline-qty-control .mss-qty-value {
        min-width: 0 !important;
        text-align: center !important;
        line-height: 1 !important;
    }
}

@media (max-width: 374px) {
    .mss-modal .mss-modal-bottom {
        gap: 8px !important;
    }

    .mss-modal .mss-modal-price {
        min-height: 42px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .mss-modal .mss-modal-actions {
        max-width: 50% !important;
    }

    .mss-modal .mss-modal-actions .mss-add-button,
    .mss-modal .mss-modal-actions .mss-link-button,
    .mss-modal .mss-modal-actions .mss-disabled-button,
    .mss-modal .mss-modal-add-button,
    .mss-modal .mss-modal-link-button,
    .mss-modal .mss-modal-disabled-button {
        min-width: 102px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-control,
    .mss-modal .mss-modal-inline-qty-control {
        width: 112px !important;
        min-width: 102px !important;
        height: 42px !important;
        min-height: 42px !important;
        grid-template-columns: 34px minmax(34px, 1fr) 34px !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-button,
    .mss-modal .mss-modal-inline-qty-control .mss-qty-button {
        width: 34px !important;
        height: 42px !important;
        min-height: 42px !important;
    }
}

/* v1.0.153: modal must never show hidden/unused action buttons */
.mss-modal .mss-modal-actions [hidden],
.mss-modal .mss-modal-actions .mss-link-button,
.mss-modal .mss-modal-actions .mss-disabled-button {
    display: none !important;
}

@media (max-width: 760px) {
    .mss-modal .mss-modal-actions [hidden],
    .mss-modal .mss-modal-actions .mss-link-button,
    .mss-modal .mss-modal-actions .mss-disabled-button {
        display: none !important;
    }

    .mss-modal .mss-modal-actions {
        display: inline-flex !important;
    }

    .mss-modal .mss-modal-actions .mss-add-button:not([hidden]) {
        display: inline-flex !important;
    }

    .mss-modal .mss-modal-actions .mss-qty-control:not([hidden]) {
        display: grid !important;
    }
}

/* v1.0.154: compact mobile pop-up price pill and per-product stock status */
@media (max-width: 760px) {
    .mss-modal .mss-modal-bottom {
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .mss-modal .mss-modal-price {
        flex: 0 1 auto !important;
        width: auto !important;
        max-width: calc(100% - 122px) !important;
        min-width: 0 !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
        align-self: center !important;
    }

    .mss-modal .mss-modal-actions {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        justify-content: flex-start !important;
    }

    .mss-modal .mss-modal-stock-status {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 112px !important;
        min-height: 46px !important;
        height: 46px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 16px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: rgba(248, 248, 248, 0.96) !important;
        color: rgba(44, 45, 50, 0.62) !important;
        box-shadow: inset 0 0 0 1px rgba(17, 24, 39, 0.06) !important;
        font: inherit !important;
        font-size: var(--mss-mobile-modal-button-size-custom, var(--mss-button-font-size, 15px)) !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        cursor: default !important;
        pointer-events: none !important;
        transform: none !important;
    }

    .mss-modal .mss-modal-stock-status[hidden] {
        display: none !important;
    }
}

@media (max-width: 374px) {
    .mss-modal .mss-modal-price {
        max-width: calc(100% - 104px) !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .mss-modal .mss-modal-stock-status {
        min-width: 102px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* v1.0.155: smoother modal image preload and stable pop-up opening */
.mss-modal .mss-modal-image-wrap {
    background: var(--mss-modal-media-bg, #ead7bf) !important;
    isolation: isolate;
}

.mss-modal .mss-modal-image-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(110deg, rgba(255,255,255,0.18), rgba(255,255,255,0.42), rgba(255,255,255,0.18));
    transform: translateX(-100%);
    transition: opacity 180ms ease;
}

.mss-modal .mss-modal-image-wrap.is-loading::after {
    opacity: 1;
    animation: mssModalImageShimmer 980ms ease-in-out infinite;
}

.mss-modal .mss-modal-image {
    will-change: opacity;
    backface-visibility: hidden;
}

.mss-modal .mss-modal-image.is-loading {
    opacity: 0 !important;
}

.mss-modal .mss-modal-image.is-ready {
    opacity: 1 !important;
}

@keyframes mssModalImageShimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}


/* v1.0.157: keep mobile card title and description in normal flow */
@media (max-width: 760px) {
    .mss-menu .mss-card-content,
    .mss-menu.mss-layout-light .mss-card-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        min-height: 0 !important;
        height: auto !important;
        overflow: visible !important;
    }

    .mss-menu .mss-card-content--has-description,
    .mss-menu.mss-layout-light .mss-card-content--has-description {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        min-height: 60px !important;
        height: auto !important;
        overflow: visible !important;
    }

    .mss-menu .mss-card-content--has-description .mss-card-title,
    .mss-menu.mss-layout-light .mss-card-content--has-description .mss-card-title {
        position: static !important;
        height: auto !important;
        overflow: visible !important;
        display: block !important;
        margin-bottom: 0 !important;
    }

    .mss-menu .mss-card-content--has-description .mss-card-description,
    .mss-menu.mss-layout-light .mss-card-content--has-description .mss-card-description {
        position: static !important;
        min-height: 0 !important;
        height: auto !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2;
        margin-top: 5px !important;
        padding-top: 0 !important;
        clear: both !important;
    }
}



/* v1.0.160: equal-height card rows with bottom-pinned price/actions */
.mss-menu .mss-product-grid {
    align-items: stretch !important;
}

.mss-menu .mss-product-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.mss-menu .mss-card-body,
.mss-menu.mss-layout-light .mss-card-body {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    min-height: 0 !important;
}

.mss-menu .mss-card-content,
.mss-menu .mss-card-content--has-description,
.mss-menu .mss-card-content--no-description,
.mss-menu.mss-layout-light .mss-card-content,
.mss-menu.mss-layout-light .mss-card-content--has-description,
.mss-menu.mss-layout-light .mss-card-content--no-description,
.mss-menu.mss-hide-card-descriptions .mss-card-content,
.mss-menu.mss-hide-card-descriptions .mss-card-content--has-description,
.mss-menu.mss-hide-card-descriptions .mss-card-content--no-description {
    flex: 0 1 auto !important;
    min-height: 0 !important;
}

.mss-menu .mss-card-title,
.mss-menu.mss-layout-light .mss-card-title {
    min-height: 0 !important;
}

.mss-menu .mss-card-description,
.mss-menu.mss-layout-light .mss-card-description {
    min-height: 0 !important;
}

.mss-menu .mss-card-bottom,
.mss-menu.mss-layout-light .mss-card-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    margin-top: auto !important;
    width: 100% !important;
    min-width: 0 !important;
}

.mss-menu .mss-card-price {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.mss-menu .mss-card-actions {
    flex: 0 0 auto !important;
}


/* v1.0.163: configurable card description margin */
.mss-menu .mss-card-description,
.mss-menu.mss-layout-light .mss-card-description {
    margin: var(--mss-card-description-margin-custom, 0) !important;
}

@media (max-width: 760px) {
    .mss-menu .mss-card-description,
    .mss-menu.mss-layout-light .mss-card-description {
        margin: var(--mss-mobile-card-description-margin-custom, var(--mss-card-description-margin-custom, 4px 0 0)) !important;
    }
}

/* v1.0.162: separate mobile card radius */
@media (max-width: 760px) {
    .mss-menu .mss-product-card,
    .mss-menu.mss-layout-light .mss-product-card {
        border-radius: var(--mss-mobile-card-radius-custom, var(--mss-card-radius-custom, 24px)) !important;
    }
}


/* v1.0.164: keep price-in-button card controls centered after bottom-pinned card layout */
.mss-menu.mss-card-button-mode-price .mss-card-bottom,
.mss-menu.mss-card-button-mode-add_price .mss-card-bottom,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-card-bottom,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-card-bottom {
    justify-content: center !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-card-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-disabled-button,
.mss-menu.mss-card-button-mode-price .mss-card-actions .mss-card-qty-control,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-add-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-link-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-disabled-button,
.mss-menu.mss-card-button-mode-add_price .mss-card-actions .mss-card-qty-control {
    margin-left: auto !important;
    margin-right: auto !important;
}



/* v1.0.168: restore compact 5px gap between price and quantity control */
.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-bottom,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-bottom,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-bottom,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-bottom {
    justify-content: center !important;
    align-items: center !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    column-gap: 5px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]) {
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-button-price-text,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-button-price-text,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-button-price-text,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-button-price-text {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]) {
    display: grid !important;
    grid-template-columns: 30px 32px 30px !important;
    align-items: center !important;
    justify-items: center !important;
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    flex: 0 0 92px !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    overflow: hidden !important;
    border-radius: 999px !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button {
    width: 30px !important;
    min-width: 30px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1 !important;
    font-size: 17px !important;
}

.mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
.mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
.mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
.mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1 !important;
    font-size: 12.5px !important;
}

@media (max-width: 620px) {
    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions,
    .mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions,
    .mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions {
        gap: 5px !important;
        column-gap: 5px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
    .mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]),
    .mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]) {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
    .mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]),
    .mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control:not([hidden]) {
        grid-template-columns: 29px 30px 29px !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 30px !important;
        min-height: 30px !important;
        max-height: 30px !important;
        flex-basis: 88px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
    .mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button,
    .mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-button {
        width: 29px !important;
        min-width: 29px !important;
        height: 30px !important;
        min-height: 30px !important;
        font-size: 16px !important;
    }

    .mss-menu.mss-card-button-mode-price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
    .mss-menu.mss-card-button-mode-add_price .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
    .mss-menu.mss-card-button-mode-price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value,
    .mss-menu.mss-card-button-mode-add_price.mss-layout-light .mss-product-card.is-in-cart .mss-card-actions .mss-card-qty-control .mss-qty-value {
        width: 30px !important;
        min-width: 30px !important;
        height: 30px !important;
        min-height: 30px !important;
        font-size: 12px !important;
    }
}


/* Mark Style Shop - filters for fashion / shoes */
.mss-shop-filters {
    margin: 0 0 22px;
    padding: 18px;
    border: 1px solid rgba(44, 45, 50, .08);
    border-radius: 26px;
    background: color-mix(in srgb, var(--mss-card-bg, #fff) 88%, transparent);
    box-shadow: 0 14px 40px rgba(0, 0, 0, .05);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.mss-shop-filters-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.mss-shop-filters-head strong {
    font-size: 17px;
    line-height: 1.2;
    color: var(--mss-text, #2c2d32);
}

.mss-filter-reset {
    appearance: none;
    border: 0;
    border-radius: 999px;
    padding: 8px 12px;
    background: rgba(44, 45, 50, .06);
    color: var(--mss-text, #2c2d32);
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease;
}

.mss-filter-reset:hover {
    background: rgba(44, 45, 50, .1);
    transform: translateY(-1px);
}

.mss-shop-filters-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.mss-filter-group {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.mss-filter-group legend {
    display: block;
    margin: 0 0 8px;
    padding: 0;
    color: var(--mss-muted, #6f7377);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .02em;
}

.mss-price-inputs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.mss-price-inputs label {
    display: grid;
    gap: 5px;
}

.mss-price-inputs span {
    color: var(--mss-muted, #6f7377);
    font-size: 11px;
}

.mss-price-inputs input {
    width: 100%;
    height: 40px;
    border: 1px solid rgba(44, 45, 50, .1);
    border-radius: 14px;
    padding: 0 11px;
    background: rgba(255, 255, 255, .72);
    color: var(--mss-text, #2c2d32);
    outline: none;
}

.mss-price-inputs input:focus {
    border-color: color-mix(in srgb, var(--mss-accent-color, #111) 42%, transparent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--mss-accent-color, #111) 14%, transparent);
}

.mss-filter-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.mss-filter-chip {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
}

.mss-filter-chip input {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    opacity: 0;
    pointer-events: none;
}

.mss-filter-chip span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 12px;
    border: 1px solid rgba(44, 45, 50, .08);
    border-radius: 999px;
    background: rgba(255, 255, 255, .72);
    color: var(--mss-text, #2c2d32);
    font-size: 13px;
    line-height: 1;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.mss-filter-chip:hover span {
    transform: translateY(-1px);
}

.mss-filter-chip input:checked + span {
    border-color: transparent;
    background: var(--mss-accent-color, var(--mss-accent, #111));
    color: var(--mss-accent-text, #fff);
}

.mss-filter-chip input:focus-visible + span {
    outline: 3px solid color-mix(in srgb, var(--mss-accent-color, #111) 22%, transparent);
    outline-offset: 2px;
}

.mss-product-card.is-filter-hidden {
    display: none !important;
}

.mss-filter-empty {
    margin: 26px 0;
    padding: 22px;
    border-radius: 24px;
    background: rgba(44, 45, 50, .05);
    color: var(--mss-muted, #6f7377);
    text-align: center;
}

.mss-filter-layout-side .mss-shop-filters-grid {
    grid-template-columns: 1fr;
}

@media (max-width: 1100px) {
    .mss-shop-filters-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .mss-shop-filters {
        margin-bottom: 16px;
        padding: 14px;
        border-radius: 22px;
    }

    .mss-shop-filters-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .mss-shop-filters-head strong {
        font-size: 16px;
    }

    .mss-filter-chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }

    .mss-filter-chips::-webkit-scrollbar {
        display: none;
    }

    .mss-filter-chip span {
        white-space: nowrap;
    }
}

/* Mark Style Shop v1.0.2 - category page layout: sidebar categories + top filters */
.mss-category-page-layout {
    display: grid;
    grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
    gap: 34px;
    align-items: start;
}

.mss-category-page-layout.no-sidebar {
    grid-template-columns: minmax(0, 1fr);
}

.mss-category-page-main {
    min-width: 0;
}

.mss-category-sidebar {
    position: sticky;
    top: 96px;
    min-width: 0;
    align-self: start;
}

.mss-category-sidebar-title {
    margin: 0 0 12px;
    color: var(--mss-muted, #6f7377);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
}

.mss-category-sidebar-nav {
    display: grid;
    gap: 2px;
}

.mss-category-sidebar-item {
    display: grid;
    gap: 1px;
}

.mss-category-sidebar-children {
    display: grid;
    gap: 1px;
    margin: 1px 0 5px 12px;
    padding-left: 12px;
    border-left: 1px solid rgba(44, 45, 50, .12);
}

.mss-category-sidebar-children .mss-category-sidebar-link {
    padding-top: 5px;
    padding-bottom: 5px;
    color: var(--mss-muted, #6f7377) !important;
    font-size: 14px;
    font-weight: 650;
}

.mss-category-sidebar-link.is-ancestor {
    color: var(--mss-text, #2c2d32) !important;
    font-weight: 800;
}

.mss-category-sidebar-link {
    display: block;
    padding: 7px 0;
    color: var(--mss-text, #2c2d32) !important;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.25;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease, opacity .18s ease;
}

.mss-category-sidebar-link:hover,
.mss-category-sidebar-link:focus-visible {
    color: var(--mss-accent, #111) !important;
    transform: translateX(2px);
}

.mss-category-sidebar-link.is-active {
    color: var(--mss-accent, #111) !important;
    opacity: 1;
}

.mss-category-page .mss-shop-filters {
    margin: 0 0 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.mss-category-page .mss-shop-filters-head {
    justify-content: flex-end;
    margin: 0 0 10px;
}

.mss-category-page .mss-shop-filters-head strong {
    display: none;
}

.mss-category-page .mss-filter-reset {
    min-height: 40px;
    border: 1px solid rgba(44, 45, 50, .16);
    border-radius: 12px;
    background: #fff;
    font-weight: 750;
}

.mss-category-page .mss-shop-filters-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-start;
}

.mss-category-page .mss-filter-group {
    width: auto;
    min-width: 128px;
    max-width: 100%;
    padding: 12px 13px;
    border: 1px solid rgba(44, 45, 50, .18);
    border-radius: 12px;
    background: #fff;
}

.mss-category-page .mss-filter-group-price {
    min-width: 230px;
}

.mss-category-page .mss-filter-group legend {
    margin: 0 0 9px;
    color: var(--mss-text, #2c2d32);
    font-size: 14px;
    font-weight: 750;
    letter-spacing: 0;
}

.mss-category-page .mss-filter-chip span {
    min-height: 30px;
    padding: 7px 10px;
    border-radius: 10px;
    font-size: 12px;
}

.mss-category-page .mss-price-inputs input {
    height: 36px;
    border-radius: 10px;
}

@media (max-width: 960px) {
    .mss-category-page-layout,
    .mss-category-page-layout.no-sidebar {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .mss-category-sidebar {
        position: relative;
        top: auto;
        width: 100%;
        overflow: hidden;
    }

    .mss-category-sidebar-nav {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 0 0 4px;
        scrollbar-width: none;
    }

    .mss-category-sidebar-item,
    .mss-category-sidebar-children {
        display: flex;
        flex: 0 0 auto;
        gap: 8px;
        margin: 0;
        padding: 0;
        border-left: 0;
    }

    .mss-category-sidebar-nav::-webkit-scrollbar {
        display: none;
    }

    .mss-category-sidebar-link {
        flex: 0 0 auto;
        min-height: 34px;
        padding: 8px 12px;
        border: 1px solid rgba(44, 45, 50, .12);
        border-radius: 999px;
        background: #fff;
        font-size: 13px;
        transform: none !important;
        white-space: nowrap;
    }

    .mss-category-sidebar-children .mss-category-sidebar-link {
        padding-top: 8px;
        padding-bottom: 8px;
        font-size: 13px;
        font-weight: 700;
    }

    .mss-category-sidebar-link.is-active {
        border-color: transparent;
        background: var(--mss-accent, #111);
        color: var(--mss-accent-text, #fff) !important;
    }

    .mss-category-sidebar-link.is-ancestor:not(.is-active) {
        border-color: rgba(44, 45, 50, .22);
        background: rgba(255, 255, 255, .74);
    }

    .mss-category-page .mss-shop-filters-grid {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    .mss-category-page .mss-shop-filters-grid::-webkit-scrollbar {
        display: none;
    }

    .mss-category-page .mss-filter-group {
        flex: 0 0 auto;
        min-width: 185px;
    }

    .mss-category-page .mss-filter-group-price {
        min-width: 220px;
    }
}

@media (max-width: 620px) {
    .mss-category-page-header {
        margin-bottom: 18px;
    }

    .mss-category-sidebar-title {
        font-size: 13px;
        margin-bottom: 9px;
    }

    .mss-category-page .mss-shop-filters-head {
        margin-bottom: 8px;
    }

    .mss-category-page .mss-filter-reset {
        min-height: 36px;
        padding: 8px 11px;
        font-size: 12px;
    }
}


/* Mark Style Shop v1.0.5 - category sidebar main link + compact dropdown filters */
.mss-menu.mss-card-images-square .mss-card-image-wrap,
.mss-menu.mss-square-card-images .mss-card-image-wrap,
.mss-menu.mss-card-images-square.mss-layout-light .mss-card-image-wrap,
.mss-menu.mss-square-card-images.mss-layout-light .mss-card-image-wrap {
    aspect-ratio: var(--mss-card-image-aspect-custom, 4 / 3) !important;
}

.mss-category-sidebar-title-link {
    display: inline-flex;
    align-items: center;
    width: 100%;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease, opacity .18s ease;
}

.mss-category-sidebar-title-link:hover,
.mss-category-sidebar-title-link:focus-visible {
    color: var(--mss-accent, #111) !important;
    transform: translateX(2px);
}

.mss-category-sidebar-title-link.is-active {
    color: var(--mss-accent, #111) !important;
}

.mss-shop-filters-compact {
    overflow: visible;
}

.mss-shop-filters-compact .mss-shop-filters-head {
    margin-bottom: 10px;
}

.mss-shop-filters-compact .mss-shop-filters-grid,
.mss-category-page .mss-shop-filters-compact .mss-shop-filters-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-start;
    overflow: visible;
    padding: 0;
}

.mss-filter-dropdown {
    position: relative;
    min-width: 0;
}

.mss-filter-summary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid rgba(44, 45, 50, .16);
    border-radius: 12px;
    background: #fff;
    color: var(--mss-text, #2c2d32);
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    cursor: pointer;
    list-style: none;
    user-select: none;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .035);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.mss-filter-summary::-webkit-details-marker {
    display: none;
}

.mss-filter-summary::after {
    content: '';
    width: 7px;
    height: 7px;
    border-right: 1.8px solid currentColor;
    border-bottom: 1.8px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    opacity: .7;
    transition: transform .18s ease;
}

.mss-filter-dropdown[open] .mss-filter-summary {
    border-color: color-mix(in srgb, var(--mss-accent-color, #111) 36%, rgba(44, 45, 50, .16));
    box-shadow: 0 12px 28px rgba(0, 0, 0, .075);
}

.mss-filter-dropdown[open] .mss-filter-summary::after {
    transform: rotate(225deg) translate(-1px, -1px);
}

.mss-filter-dropdown .mss-filter-group,
.mss-category-page .mss-filter-dropdown .mss-filter-group {
    position: absolute;
    z-index: 40;
    top: calc(100% + 8px);
    left: 0;
    width: max-content;
    min-width: 240px;
    max-width: min(360px, calc(100vw - 32px));
    margin: 0;
    padding: 14px;
    border: 1px solid rgba(44, 45, 50, .12);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .14);
}

.mss-filter-dropdown .mss-filter-group legend {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.mss-filter-dropdown .mss-filter-chips {
    max-width: 320px;
    max-height: 270px;
    overflow: auto;
    padding: 1px;
}

.mss-filter-dropdown .mss-price-inputs {
    min-width: 230px;
}

.mss-category-page .mss-filter-dropdown .mss-filter-chip span,
.mss-filter-dropdown .mss-filter-chip span {
    min-height: 32px;
    padding: 8px 11px;
    border-radius: 10px;
}

@media (max-width: 960px) {
    .mss-category-sidebar-title-link {
        width: auto;
        min-height: 34px;
        padding: 8px 12px;
        border: 1px solid rgba(44, 45, 50, .12);
        border-radius: 999px;
        background: #fff;
        font-size: 13px;
        white-space: nowrap;
        transform: none !important;
    }

    .mss-category-sidebar-title-link.is-active {
        border-color: transparent;
        background: var(--mss-accent, #111);
        color: var(--mss-accent-text, #fff) !important;
    }

    .mss-shop-filters-compact,
    .mss-category-page .mss-shop-filters-compact {
        overflow: visible;
    }

    .mss-shop-filters-compact .mss-shop-filters-grid,
    .mss-category-page .mss-shop-filters-compact .mss-shop-filters-grid {
        flex-wrap: wrap;
        overflow: visible;
        padding: 0;
        scrollbar-width: none;
    }

    .mss-shop-filters-compact .mss-shop-filters-grid::-webkit-scrollbar,
    .mss-category-page .mss-shop-filters-compact .mss-shop-filters-grid::-webkit-scrollbar {
        display: none;
    }

    .mss-filter-dropdown {
        flex: 0 0 auto;
    }

    .mss-filter-summary {
        min-height: 38px;
        padding: 0 13px;
        font-size: 13px;
    }

    .mss-filter-dropdown .mss-filter-group,
    .mss-category-page .mss-filter-dropdown .mss-filter-group {
        position: absolute;
        top: calc(100% + 8px);
        left: 0;
        right: auto;
        bottom: auto;
        width: max-content;
        min-width: min(260px, calc(100vw - 24px));
        max-width: min(360px, calc(100vw - 24px));
        max-height: min(58vh, 430px);
        overflow: auto;
        border-radius: 18px;
        padding: 14px;
        z-index: var(--mss-z-index-max, 2147483640);
    }

    .mss-filter-dropdown[data-mss-align="right"] .mss-filter-group,
    .mss-category-page .mss-filter-dropdown[data-mss-align="right"] .mss-filter-group {
        left: auto;
        right: 0;
    }

    .mss-filter-dropdown .mss-filter-chips {
        max-width: none;
        max-height: none;
        overflow: visible;
        flex-wrap: wrap;
    }
}

/* Mark Style Shop v1.0.6 - all products sidebar link + cleaner inline filter bar */
.mss-category-sidebar-all-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    width: 100%;
    min-height: 34px;
    margin: 0 0 12px;
    color: var(--mss-muted, #6f7377) !important;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.2;
    text-decoration: none !important;
    transition: color .18s ease, transform .18s ease, opacity .18s ease;
}

.mss-category-sidebar-all-link:hover,
.mss-category-sidebar-all-link:focus-visible {
    color: var(--mss-accent, #111) !important;
    transform: translateX(-2px);
}

.mss-category-sidebar-all-link.is-active {
    color: var(--mss-accent, #111) !important;
    opacity: 1;
}

.mss-filter-reset-inline,
.mss-category-page .mss-filter-reset-inline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid rgba(44, 45, 50, .16);
    border-radius: 12px;
    background: #fff;
    color: var(--mss-text, #2c2d32);
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .035);
}

.mss-filter-reset-inline:hover,
.mss-filter-reset-inline:focus-visible {
    background: rgba(44, 45, 50, .04);
    border-color: rgba(44, 45, 50, .24);
}

.mss-shop-filters-compact .mss-shop-filters-head,
.mss-category-page .mss-shop-filters-compact .mss-shop-filters-head {
    display: none !important;
}

@media (max-width: 960px) {
    .mss-category-sidebar {
        overflow: visible;
    }

    .mss-category-sidebar-all-link {
        flex: 0 0 auto;
        width: auto;
        min-height: 34px;
        margin: 0 8px 0 0;
        padding: 8px 12px;
        border: 1px solid rgba(44, 45, 50, .12);
        border-radius: 999px;
        background: #fff;
        font-size: 13px;
        white-space: nowrap;
        transform: none !important;
    }

    .mss-category-sidebar-nav {
        align-items: center;
    }

    .mss-filter-reset-inline,
    .mss-category-page .mss-filter-reset-inline {
        flex: 0 0 auto;
        min-height: 38px;
        padding: 0 13px;
        font-size: 13px;
    }
}

/* Mark Style Shop v1.0.10 - compact card attribute chips and simplified add button */
.mss-card-attribute {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 5px;
    margin: 6px 0 0;
    line-height: 1.15;
    color: var(--mss-muted, #6b7280);
    letter-spacing: 0;
}

.mss-card-attribute-label {
    flex: 0 0 auto;
    font-size: var(--mss-card-attribute-label-size, 11px);
    font-weight: 600;
    color: var(--mss-text, #111827);
}

.mss-card-attribute-values {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 3px;
    min-width: 0;
}

.mss-card-attribute-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 17px;
    padding: 1px 6px;
    border: 1px solid rgba(17, 24, 39, .16);
    border-radius: 999px;
    background: rgba(255, 255, 255, .62);
    color: var(--mss-text, #111827);
    font-size: var(--mss-card-attribute-chip-size, 10px);
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
}

.mss-menu.mss-card-button-mode-hidden .mss-card-actions {
    display: none !important;
}

.mss-product-card .mss-card-qty-control,
.mss-menu .mss-product-card .mss-card-actions .mss-card-qty-control,
.mss-menu.mss-layout-light .mss-product-card .mss-card-actions .mss-card-qty-control {
    display: none !important;
}

.mss-product-card.is-in-cart .mss-card-actions .mss-card-add-button:not([hidden]) {
    opacity: .78;
}


/* Mark Style Shop v1.0.11 - adjustable card attribute typography and larger dropdown filter values */
.mss-filter-dropdown .mss-filter-chip span,
.mss-category-page .mss-filter-dropdown .mss-filter-chip span {
    font-size: 13px;
}

.mss-filter-dropdown .mss-price-inputs span,
.mss-category-page .mss-filter-dropdown .mss-price-inputs span {
    font-size: 12px;
}

.mss-filter-dropdown .mss-price-inputs input,
.mss-category-page .mss-filter-dropdown .mss-price-inputs input {
    font-size: 14px;
}


/* v1.0.13 - shop cleanup: explicit card image aspect ratio control */
.mss-menu .mss-card-image-wrap,
.mss-menu.mss-layout-light .mss-card-image-wrap {
    aspect-ratio: var(--mss-card-image-aspect-custom, 4 / 3) !important;
}

@media (max-width: 760px) {
    .mss-menu .mss-card-image-wrap,
    .mss-menu.mss-layout-light .mss-card-image-wrap {
        aspect-ratio: var(--mss-mobile-card-image-aspect-custom, var(--mss-card-image-aspect-custom, 4 / 3)) !important;
    }
}

/* v1.0.15 - adjustable discount badge on product cards */
.mss-card-discount-badge {
    position: absolute;
    top: var(--mss-discount-badge-offset-top, 2px);
    left: var(--mss-discount-badge-offset-left, 2px);
    z-index: 6;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    max-width: calc(100% - (var(--mss-discount-badge-offset-left, 2px) * 2));
    padding: 4px 7px;
    border-radius: var(--mss-discount-badge-radius, 8px);
    background: var(--mss-discount-badge-bg, #e11919);
    color: var(--mss-discount-badge-text, #fff);
    font-size: var(--mss-discount-badge-font-size, 11px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.01em;
    white-space: nowrap;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.14);
    pointer-events: none;
}

@media (max-width: 640px) {
    .mss-card-discount-badge {
        padding: 3px 6px;
    }
}

/* v1.0.15 - configurable image radius for light card layout */
.mss-menu.mss-layout-light .mss-card-image-wrap {
    border-radius: var(--mss-light-image-radius-custom, 22px) !important;
}

/* v1.0.18: WooCommerce-powered single product shortcode */
.mss-wc-product-shortcode {
    padding-bottom: 110px;
}

.mss-wc-product-breadcrumbs {
    margin: 0 0 18px;
    color: color-mix(in srgb, var(--mss-text, #111827) 66%, transparent);
    font-size: 13px;
    font-weight: 650;
}

.mss-wc-product-breadcrumbs .woocommerce-breadcrumb {
    margin: 0;
    color: inherit;
}

.mss-wc-product-breadcrumbs a {
    color: inherit;
    text-decoration: none !important;
}

.mss-wc-product-breadcrumbs a:hover,
.mss-wc-product-breadcrumbs a:focus-visible {
    color: var(--mss-accent, #111827);
}

.mss-wc-product-panel {
    display: grid;
    grid-template-columns: minmax(280px, 52%) minmax(320px, 1fr);
    gap: clamp(24px, 4vw, 58px);
    align-items: start;
    width: 100%;
    margin: 0 auto;
    padding: clamp(0px, 1vw, 10px);
    color: var(--mss-text, #111827);
}

.mss-wc-product-gallery-wrap {
    min-width: 0;
}

.mss-wc-product-gallery-wrap .woocommerce-product-gallery {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.mss-wc-product-gallery-wrap .woocommerce-product-gallery__wrapper {
    margin: 0 !important;
}

.mss-wc-product-gallery-wrap .woocommerce-product-gallery__image,
.mss-wc-product-gallery-fallback {
    overflow: hidden;
    border-radius: var(--mss-card-image-radius, 0px);
    background: color-mix(in srgb, var(--mss-card-bg, #f5f5f5) 92%, #fff 8%);
}

.mss-wc-product-gallery-wrap .woocommerce-product-gallery__image img,
.mss-wc-product-gallery-fallback-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.mss-wc-product-gallery-wrap .flex-control-thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(68px, 1fr));
    gap: 8px;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.mss-wc-product-gallery-wrap .flex-control-thumbs li {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    overflow: hidden;
    border-radius: 12px;
    background: color-mix(in srgb, var(--mss-card-bg, #f5f5f5) 92%, #fff 8%);
}

.mss-wc-product-gallery-wrap .flex-control-thumbs img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    opacity: .72;
    transition: opacity 180ms ease, transform 180ms ease;
}

.mss-wc-product-gallery-wrap .flex-control-thumbs img.flex-active,
.mss-wc-product-gallery-wrap .flex-control-thumbs img:hover {
    opacity: 1;
    transform: scale(1.02);
}

.mss-wc-product-summary {
    min-width: 0;
    padding-top: clamp(0px, 1vw, 12px);
}

.mss-wc-product-summary .product_title {
    margin: 0 0 12px !important;
    color: var(--mss-text, #111827);
    font-size: clamp(30px, 4.2vw, 56px);
    line-height: .98;
    font-weight: 820;
    letter-spacing: -0.045em;
}

.mss-wc-product-summary .woocommerce-product-rating {
    margin: 0 0 12px !important;
    font-size: 13px;
}

.mss-wc-product-summary .price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    margin: 0 0 18px !important;
    color: var(--mss-text, #111827) !important;
    font-size: clamp(20px, 2.2vw, 28px) !important;
    font-weight: 820;
    line-height: 1.15;
}

.mss-wc-product-summary .price del {
    color: color-mix(in srgb, var(--mss-text, #111827) 42%, transparent);
    font-size: .78em;
    font-weight: 650;
    opacity: 1;
}

.mss-wc-product-summary .price ins {
    text-decoration: none;
}

.mss-wc-product-summary .woocommerce-product-details__short-description {
    max-width: 640px;
    margin: 0 0 22px;
    color: color-mix(in srgb, var(--mss-text, #111827) 72%, transparent);
    font-size: 15px;
    line-height: 1.55;
}

.mss-wc-product-add-to-cart {
    margin-top: 20px;
}

.mss-wc-product-summary form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px;
    margin: 0 !important;
}

.mss-wc-product-summary form.cart.grouped_form,
.mss-wc-product-summary form.cart.variations_form {
    display: block;
}

.mss-wc-product-summary table.variations {
    width: 100%;
    margin: 0 0 18px !important;
    border: 0 !important;
}

.mss-wc-product-summary table.variations tr,
.mss-wc-product-summary table.variations th,
.mss-wc-product-summary table.variations td {
    display: block;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* Mark Style Shop v1.0.24 - WooCommerce/Divi variation table spacing override */
.woocommerce div.product form.cart .variations td {
    padding: 0 20px 5px 0 !important;
    max-width: none !important;
    line-height: 1.3em;
}

.mss-wc-product-summary table.variations tr + tr {
    margin-top: 14px;
}

.mss-wc-product-summary table.variations label {
    display: block;
    margin: 0 0 7px;
    color: var(--mss-text, #111827);
    font-size: 13px;
    font-weight: 780;
    line-height: 1.2;
}

.mss-wc-product-summary table.variations select,
.mss-wc-product-summary form.cart input.qty {
    min-height: 48px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 16%, transparent) !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: var(--mss-text, #111827) !important;
    box-shadow: none !important;
    font-size: 15px;
    font-weight: 650;
}

.mss-wc-product-summary table.variations select {
    width: 100%;
    padding: 0 14px;
}

.mss-wc-product-summary .reset_variations {
    display: inline-flex !important;
    margin-top: 8px;
    color: color-mix(in srgb, var(--mss-text, #111827) 62%, transparent);
    font-size: 13px;
    font-weight: 650;
    text-decoration: none !important;
}

.mss-wc-product-summary .single_variation_wrap {
    margin-top: 16px;
}

.mss-wc-product-summary .woocommerce-variation-price {
    margin-bottom: 12px;
}

.mss-wc-product-summary form.cart .quantity {
    margin: 0 !important;
}

.mss-wc-product-summary form.cart input.qty {
    width: 86px;
    padding: 0 10px;
    text-align: center;
}

.mss-wc-product-summary .single_add_to_cart_button,
.mss-wc-product-summary .button.product_type_simple,
.mss-wc-product-summary button.button {
    min-height: 48px;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--mss-accent, #111827) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 820 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: transform 180ms ease, opacity 180ms ease;
}

.mss-wc-product-summary .single_add_to_cart_button:hover,
.mss-wc-product-summary .single_add_to_cart_button:focus-visible,
.mss-wc-product-summary button.button:hover,
.mss-wc-product-summary button.button:focus-visible {
    transform: translateY(-1px);
    opacity: .92;
}

.mss-wc-product-summary .single_add_to_cart_button.disabled,
.mss-wc-product-summary .single_add_to_cart_button:disabled {
    opacity: .45 !important;
    transform: none !important;
}

.mss-wc-product-meta-wrap {
    margin-top: 0px;
    padding-top: 5px;
    border-top: solid 0px;
    color: #111827;
    font-size: 13px;
    line-height: 1.6;
}

.mss-wc-product-meta-wrap a {
    color: inherit;
    text-decoration: none !important;
    font-weight: 700;
}

.mss-wc-product-tabs {
    margin-top: clamp(36px, 5vw, 64px);
    color: var(--mss-text, #111827);
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px !important;
    padding: 0 !important;
    border: 0 !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs::before,
.mss-wc-product-tabs .woocommerce-tabs ul.tabs::after {
    display: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--mss-text, #111827) 6%, transparent) !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    display: inline-flex !important;
    padding: 11px 16px !important;
    color: var(--mss-text, #111827) !important;
    font-size: 13px;
    font-weight: 780 !important;
    text-decoration: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active {
    background: var(--mss-accent, #111827) !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active a {
    color: #fff !important;
}

.mss-wc-product-tabs .woocommerce-Tabs-panel {
    padding: clamp(18px, 2.4vw, 28px) !important;
    border-radius: 24px;
    background: color-mix(in srgb, var(--mss-card-bg, #fff) 86%, transparent);
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 8%, transparent);
}

.mss-wc-product-tabs .woocommerce-Tabs-panel h2 {
    margin-top: 0;
    color: var(--mss-text, #111827);
    font-size: 22px;
    line-height: 1.15;
}

@media (max-width: 900px) {
    .mss-wc-product-panel {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .mss-wc-product-summary .product_title {
        font-size: clamp(30px, 9vw, 42px);
    }

    .mss-wc-product-summary form.cart,
    .mss-wc-product-summary .woocommerce-variation-add-to-cart {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: stretch;
    }

    .mss-wc-product-summary .single_add_to_cart_button {
        flex: 1 1 180px;
    }
}

@media (max-width: 520px) {
    .mss-wc-product-summary form.cart input.qty {
        width: 76px;
    }

    .mss-wc-product-summary .single_add_to_cart_button,
    .mss-wc-product-summary button.button {
        width: auto;
        min-width: 0;
    }

    .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 4px !important;
        scrollbar-width: none;
    }

    .mss-wc-product-tabs .woocommerce-tabs ul.tabs::-webkit-scrollbar {
        display: none;
    }
}

/* Mark Style Shop v1.0.19 - category sorting and sale-only filter */
.mss-filter-sort,
.mss-category-page .mss-filter-sort {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.mss-filter-sort select,
.mss-category-page .mss-filter-sort select {
    min-height: 40px;
    max-width: 220px;
    padding: 0 36px 0 14px;
    border: 1px solid rgba(44, 45, 50, .16);
    border-radius: 12px;
    background-color: #fff;
    color: var(--mss-text, #2c2d32);
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .035);
    cursor: pointer;
    appearance: auto;
}

.mss-filter-sale-only,
.mss-category-page .mss-filter-sale-only {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    color: var(--mss-text, #2c2d32);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.25;
    cursor: pointer;
}

.mss-filter-sale-only input,
.mss-category-page .mss-filter-sale-only input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--mss-accent, #111);
}

@media (max-width: 960px) {
    .mss-filter-sort,
    .mss-category-page .mss-filter-sort {
        flex: 0 0 auto;
    }

    .mss-filter-sort select,
    .mss-category-page .mss-filter-sort select,
    .mss-filter-reset-inline,
    .mss-category-page .mss-filter-reset-inline {
        min-height: 38px;
        font-size: 13px;
    }
}

/* Mark Style Shop v1.0.20 - Mark-style sorting dropdown and Divi-safe product page */
.mss-filter-dropdown-sort .mss-filter-summary,
.mss-category-page .mss-filter-dropdown-sort .mss-filter-summary {
    gap: 7px;
}

.mss-filter-sort-title,
.mss-category-page .mss-filter-sort-title {
    opacity: .62;
    font-weight: 720;
}

.mss-filter-sort-current,
.mss-category-page .mss-filter-sort-current {
    font-weight: 820;
}

.mss-filter-dropdown-sort .mss-filter-group,
.mss-category-page .mss-filter-dropdown-sort .mss-filter-group {
    min-width: 250px;
}

.mss-filter-sort-options,
.mss-category-page .mss-filter-sort-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
    max-height: none;
    overflow: visible;
}

.mss-filter-sort-chip,
.mss-category-page .mss-filter-sort-chip {
    width: 100%;
}

.mss-filter-sort-chip span,
.mss-category-page .mss-filter-sort-chip span {
    width: 100%;
    justify-content: flex-start;
    min-height: 36px;
}

.mss-wc-product-panel-divi-safe,
.mss-menu .mss-wc-product-panel-divi-safe {
    box-sizing: border-box;
}

.mss-wc-product-panel-divi-safe .woocommerce-product-gallery,
.mss-wc-product-panel-divi-safe .mss-wc-product-gallery-wrap .woocommerce-product-gallery {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.mss-wc-product-panel-divi-safe .mss-wc-product-summary,
.mss-wc-product-panel-divi-safe .summary,
.mss-menu .mss-wc-product-summary {
    width: auto !important;
    float: none !important;
    clear: none !important;
}

.mss-wc-product-shortcode form.variations_form table.variations,
.mss-wc-product-shortcode form.cart table.variations {
    margin-bottom: 14px !important;
}


/* Mark Style Shop v1.0.21 - compact sorting button without visible sort title */
.mss-filter-dropdown-sort .mss-filter-summary,
.mss-category-page .mss-filter-dropdown-sort .mss-filter-summary {
    gap: 9px;
    min-width: 0;
    white-space: nowrap;
}

.mss-filter-dropdown-sort .mss-filter-sort-current,
.mss-category-page .mss-filter-dropdown-sort .mss-filter-sort-current {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
}

.mss-filter-dropdown-sort .mss-filter-sort-title,
.mss-category-page .mss-filter-dropdown-sort .mss-filter-sort-title {
    display: none !important;
}


/* Mark Style Shop v1.0.24 - product page variation chips and quantity stepper */
.mss-wc-product-shortcode .mss-wc-product-summary table.variations tr {
    margin-bottom: 16px;
}

.mss-wc-product-shortcode .mss-wc-product-summary table.variations .value {
    width: 100%;
}

.mss-wc-product-shortcode .mss-product-variation-select-enhanced {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.mss-wc-product-shortcode .mss-product-variation-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
}

.mss-wc-product-shortcode .mss-product-variation-option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    min-width: 44px;
    padding: 0 13px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 14%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-card-bg, #fff) 92%, transparent);
    color: var(--mss-text, #111827);
    font-size: 14px;
    font-weight: 760;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, opacity 160ms ease;
}

.mss-wc-product-shortcode .mss-product-variation-option:hover,
.mss-wc-product-shortcode .mss-product-variation-option:focus-visible {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--mss-accent, #111827) 45%, transparent);
}

.mss-wc-product-shortcode .mss-product-variation-option.is-active {
    border-color: var(--mss-accent, #111827);
    background: var(--mss-accent, #111827);
    color: #fff;
}

.mss-wc-product-shortcode .mss-product-variation-option:disabled {
    opacity: .34;
    cursor: not-allowed;
    text-decoration: line-through;
    transform: none;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: auto !important;
    min-height: 48px;
    margin: 0 !important;
    padding: 3px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 14%, transparent);
    border-radius: 999px;
    background: #fff;
    box-shadow: none;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
    width: 44px !important;
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--mss-text, #111827) !important;
    font-size: 15px !important;
    font-weight: 780 !important;
    line-height: 1 !important;
    text-align: center;
    box-shadow: none !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty::-webkit-outer-spin-button,
.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
}

.mss-wc-product-shortcode .mss-product-qty-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: color-mix(in srgb, var(--mss-text, #111827) 6%, transparent);
    color: var(--mss-text, #111827);
    font-size: 21px;
    font-weight: 720;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    transition: background 160ms ease, color 160ms ease, transform 160ms ease, opacity 160ms ease;
}

.mss-wc-product-shortcode .mss-product-qty-btn:hover,
.mss-wc-product-shortcode .mss-product-qty-btn:focus-visible {
    background: var(--mss-accent, #111827);
    color: #fff;
    transform: translateY(-1px);
}

.mss-wc-product-shortcode .mss-product-qty-btn:disabled {
    opacity: .32;
    cursor: not-allowed;
    transform: none;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button {
    flex: 1 1 190px;
}

@media (max-width: 520px) {
    .mss-wc-product-shortcode .mss-product-variation-options {
        gap: 7px;
    }

    .mss-wc-product-shortcode .mss-product-variation-option {
        min-height: 36px;
        min-width: 40px;
        padding: 0 11px;
        font-size: 13px;
    }

    .mss-wc-product-shortcode .mss-product-qty-btn {
        width: 38px;
        height: 38px;
    }

    .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
        width: 40px !important;
        min-height: 38px !important;
        height: 38px !important;
    }
}


/* Mark Style Shop v1.0.25 - improved single-product tabs/details block */
.mss-wc-product-tabs {
    margin-top: clamp(28px, 4vw, 48px);
}

.mss-wc-product-tabs .woocommerce-tabs {
    display: block;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs {
    gap: 10px;
    margin: 0 0 14px !important;
    padding: 0 !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    border-radius: 18px !important;
    background: color-mix(in srgb, var(--mss-text, #111827) 7%, transparent) !important;
    box-shadow: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    padding: 8px 16px !important;
    font-size: 13px;
    line-height: 1.15;
    font-weight: 760 !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active {
    background: var(--mss-accent, #111827) !important;
}

.mss-wc-product-tabs .woocommerce-Tabs-panel {
    padding: 18px 20px !important;
    border-radius: 22px;
    background: color-mix(in srgb, var(--mss-card-bg, #fff) 96%, transparent);
}

.mss-wc-product-tabs .woocommerce-Tabs-panel h2:first-child {
    display: none !important;
}

.mss-wc-product-tabs .woocommerce-Tabs-panel > *:first-child {
    margin-top: 0 !important;
}

.mss-wc-product-tabs .woocommerce-Tabs-panel p:last-child,
.mss-wc-product-tabs .woocommerce-Tabs-panel table:last-child {
    margin-bottom: 0 !important;
}

.mss-wc-product-tabs .shop_attributes {
    width: 100%;
    margin: 0 !important;
    border-collapse: separate;
    border-spacing: 0;
    border: 0 !important;
}

.mss-wc-product-tabs .shop_attributes tr th,
.mss-wc-product-tabs .shop_attributes tr td {
    border-top: 1px solid color-mix(in srgb, var(--mss-text, #111827) 8%, transparent) !important;
    border-bottom: 0 !important;
    background: transparent !important;
    padding: 14px 0 !important;
}

.mss-wc-product-tabs .shop_attributes tr:first-child th,
.mss-wc-product-tabs .shop_attributes tr:first-child td {
    border-top: 0 !important;
}

.mss-wc-product-tabs .shop_attributes th {
    width: 180px;
    min-width: 140px;
    color: color-mix(in srgb, var(--mss-text, #111827) 84%, transparent);
    font-size: 14px;
    font-weight: 760 !important;
    text-align: left;
}

.mss-wc-product-tabs .shop_attributes td {
    color: var(--mss-text, #111827);
    font-size: 14px;
    line-height: 1.5;
}

.mss-wc-product-tabs .shop_attributes td p {
    margin: 0 !important;
    font-style: normal !important;
}

.mss-product-attribute-pills {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.mss-product-attribute-pill,
.mss-wc-product-tabs .shop_attributes td a {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 12%, transparent);
    background: color-mix(in srgb, var(--mss-card-bg, #fff) 96%, transparent);
    color: var(--mss-text, #111827) !important;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    text-decoration: none !important;
}

.mss-wc-product-tabs .commentlist,
.mss-wc-product-tabs .commentlist li,
.mss-wc-product-tabs #reviews {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
        gap: 8px;
        margin-bottom: 12px !important;
    }

    .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
        padding: 8px 14px !important;
        font-size: 12px;
    }

    .mss-wc-product-tabs .woocommerce-Tabs-panel {
        padding: 16px 16px !important;
        border-radius: 18px;
    }

    .mss-wc-product-tabs .shop_attributes tr,
    .mss-wc-product-tabs .shop_attributes th,
    .mss-wc-product-tabs .shop_attributes td,
    .mss-wc-product-tabs .shop_attributes tbody {
        display: block;
        width: 100%;
    }

    .mss-wc-product-tabs .shop_attributes th {
        min-width: 0;
        padding-bottom: 6px !important;
    }

    .mss-wc-product-tabs .shop_attributes td {
        padding-top: 0 !important;
        padding-bottom: 14px !important;
    }
}


/* Mark Style Shop v1.0.26 - product photo contrast/saturation and desktop title line-height */
.mss-menu .mss-card-image,
.mss-menu .mss-card-hover-image,
.mss-menu.mss-layout-light .mss-card-image {
    filter: contrast(var(--mss-card-image-contrast-custom, 100%)) saturate(var(--mss-card-image-saturate-custom, 100%)) !important;
}

.mss-menu .mss-card-title,
.mss-menu.mss-layout-light .mss-card-title {
    line-height: var(--mss-card-title-line-height-custom, 1.14) !important;
}

@media (max-width: 767px) {
    .mss-menu .mss-card-title,
    .mss-menu.mss-layout-light .mss-card-title {
        line-height: var(--mss-mobile-card-title-line-height-custom, var(--mss-card-title-line-height-custom, 1.14)) !important;
    }
}


/* Mark Style Shop v1.0.28 - single product page visual settings */
.mss-wc-product-shortcode .mss-wc-product-panel,
.mss-menu.mss-wc-product-shortcode .mss-wc-product-panel {
    gap: var(--mss-product-panel-gap-custom, clamp(28px, 5vw, 58px)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary,
.mss-menu.mss-wc-product-shortcode .mss-wc-product-summary {
    padding: var(--mss-product-summary-padding-custom, 0) !important;
}

.mss-wc-product-shortcode .woocommerce-product-gallery,
.mss-wc-product-shortcode .woocommerce-product-gallery__wrapper,
.mss-wc-product-shortcode .woocommerce-product-gallery__image,
.mss-wc-product-shortcode .woocommerce-product-gallery__image img,
.mss-wc-product-shortcode .mss-wc-product-gallery-fallback,
.mss-wc-product-shortcode .mss-wc-product-gallery-fallback-image {
    border-radius: var(--mss-product-gallery-radius-custom, 24px) !important;
}

.mss-wc-product-shortcode .woocommerce-product-gallery,
.mss-wc-product-shortcode .mss-wc-product-gallery-fallback {
    box-shadow: var(--mss-product-gallery-shadow-custom, none) !important;
    overflow: hidden;
}

.mss-wc-product-shortcode .mss-wc-product-summary .product_title,
.mss-menu.mss-wc-product-shortcode .mss-wc-product-summary .product_title {
    margin: var(--mss-product-title-margin-custom, 0 0 14px 0) !important;
    padding: var(--mss-product-title-padding-custom, 0) !important;
    color: var(--mss-product-title-color-custom, var(--mss-text, #111827)) !important;
    font-size: var(--mss-product-title-size-custom, clamp(42px, 5vw, 72px)) !important;
    line-height: var(--mss-product-title-line-height-custom, 1.02) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .price,
.mss-menu.mss-wc-product-shortcode .mss-wc-product-summary .price {
    margin: var(--mss-product-price-margin-custom, 0 0 18px 0) !important;
    color: var(--mss-product-price-color-custom, var(--mss-text, #111827)) !important;
    font-size: var(--mss-product-price-size-custom, clamp(20px, 2.2vw, 28px)) !important;
    line-height: var(--mss-product-price-line-height-custom, 1.15) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .price ins,
.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-price ins {
    color: var(--mss-product-sale-price-color-custom, var(--mss-accent, #111827)) !important;
    text-decoration: none !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .price del,
.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-price del {
    color: var(--mss-product-old-price-color-custom, color-mix(in srgb, var(--mss-text, #111827) 42%, transparent)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-product-details__short-description {
    margin: var(--mss-product-excerpt-margin-custom, 0 0 22px 0) !important;
    color: var(--mss-product-excerpt-color-custom, color-mix(in srgb, var(--mss-text, #111827) 72%, transparent)) !important;
    font-size: var(--mss-product-excerpt-size-custom, 15px) !important;
    line-height: var(--mss-product-excerpt-line-height-custom, 1.55) !important;
}

.mss-wc-product-shortcode .mss-wc-product-add-to-cart {
    margin-top: var(--mss-product-form-margin-top-custom, 20px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary table.variations label {
    color: var(--mss-product-variation-label-color-custom, var(--mss-text, #111827)) !important;
    font-size: var(--mss-product-variation-label-size-custom, 13px) !important;
}

.mss-wc-product-shortcode .mss-product-variation-option {
    min-height: var(--mss-product-variation-chip-height-custom, 38px) !important;
    padding: var(--mss-product-variation-chip-padding-custom, 0 13px) !important;
    border: var(--mss-product-variation-chip-border-custom, 1px solid color-mix(in srgb, var(--mss-text, #111827) 14%, transparent)) !important;
    border-radius: var(--mss-product-variation-chip-radius-custom, 999px) !important;
    background: var(--mss-product-variation-chip-bg-custom, color-mix(in srgb, var(--mss-card-bg, #fff) 92%, transparent)) !important;
    color: var(--mss-product-variation-chip-text-custom, var(--mss-text, #111827)) !important;
    font-size: var(--mss-product-variation-chip-size-custom, 14px) !important;
}

.mss-wc-product-shortcode .mss-product-variation-option.is-active {
    background: var(--mss-product-variation-chip-active-bg-custom, var(--mss-accent, #111827)) !important;
    color: var(--mss-product-variation-chip-active-text-custom, #fff) !important;
    border-color: var(--mss-product-variation-chip-active-bg-custom, var(--mss-accent, #111827)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control {
    min-height: var(--mss-product-qty-height-custom, 48px) !important;
    border-radius: var(--mss-product-qty-radius-custom, 999px) !important;
    background: var(--mss-product-qty-bg-custom, #fff) !important;
    color: var(--mss-product-qty-text-custom, var(--mss-text, #111827)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
    color: var(--mss-product-qty-text-custom, var(--mss-text, #111827)) !important;
}

.mss-wc-product-shortcode .mss-product-qty-btn {
    background: var(--mss-product-qty-button-bg-custom, color-mix(in srgb, var(--mss-text, #111827) 6%, transparent)) !important;
    color: var(--mss-product-qty-button-text-custom, var(--mss-text, #111827)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .single_add_to_cart_button,
.mss-wc-product-shortcode .mss-wc-product-summary .button.product_type_simple,
.mss-wc-product-shortcode .mss-wc-product-summary button.button {
    min-height: var(--mss-product-button-height-custom, 48px) !important;
    padding: var(--mss-product-button-padding-custom, 0 24px) !important;
    border-radius: var(--mss-product-button-radius-custom, 999px) !important;
    background: var(--mss-product-button-bg-custom, var(--mss-accent, #111827)) !important;
    color: var(--mss-product-button-text-custom, #fff) !important;
    font-size: var(--mss-product-button-font-size-custom, 15px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-tabs {
    margin-top: var(--mss-product-tabs-margin-top-custom, clamp(28px, 4vw, 48px)) !important;
}

.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    border-radius: var(--mss-product-tabs-radius-custom, 18px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    font-size: var(--mss-product-tabs-font-size-custom, 13px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-Tabs-panel {
    padding: var(--mss-product-tabs-panel-padding-custom, 18px 20px) !important;
    border-radius: var(--mss-product-tabs-panel-radius-custom, 22px) !important;
    background: var(--mss-product-tabs-panel-bg-custom, color-mix(in srgb, var(--mss-card-bg, #fff) 96%, transparent)) !important;
}


/* Mark Style Shop v1.0.29 - grouped single-product settings: gallery filters, zoom switch, spacing and button controls */
.mss-wc-product-shortcode .woocommerce-product-gallery__image img,
.mss-wc-product-shortcode .mss-wc-product-gallery-fallback-image {
    filter: contrast(var(--mss-product-image-contrast-custom, 100%)) brightness(var(--mss-product-image-brightness-custom, 100%)) saturate(var(--mss-product-image-saturate-custom, 100%)) !important;
    transition: transform 220ms ease, filter 180ms ease !important;
}

.mss-wc-product-shortcode:not(.mss-product-gallery-zoom-disabled) .woocommerce-product-gallery__image:hover img,
.mss-wc-product-shortcode:not(.mss-product-gallery-zoom-disabled) .mss-wc-product-gallery-fallback:hover .mss-wc-product-gallery-fallback-image {
    transform: scale(var(--mss-product-gallery-hover-scale-custom, 1.02));
}

.mss-wc-product-shortcode.mss-product-gallery-zoom-disabled .woocommerce-product-gallery__image img,
.mss-wc-product-shortcode.mss-product-gallery-zoom-disabled .mss-wc-product-gallery-fallback-image {
    transform: none !important;
}

.mss-wc-product-shortcode.mss-product-gallery-zoom-disabled .woocommerce-product-gallery__trigger {
    display: none !important;
}

.mss-wc-product-shortcode form.variations_form table.variations,
.mss-wc-product-shortcode form.cart table.variations {
    margin-bottom: var(--mss-product-variations-margin-bottom-custom, 8px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary table.variations tr {
    margin-bottom: var(--mss-product-variations-gap-custom, 10px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) {
    gap: var(--mss-product-add-to-cart-gap-custom, 12px) !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .single_add_to_cart_button,
.mss-wc-product-shortcode .mss-wc-product-summary .button.product_type_simple,
.mss-wc-product-shortcode .mss-wc-product-summary button.button {
    width: var(--mss-product-button-width-custom, auto) !important;
    margin: var(--mss-product-button-margin-custom, 0) !important;
    box-shadow: var(--mss-product-button-shadow-custom, none) !important;
    font-weight: var(--mss-product-button-font-weight-custom, 760) !important;
}


/* Mark Style Shop v1.0.31 - keep product-page bottom cart consistent and show add feedback */
.mss-single-product-page.mss-cart-v2 .mss-cart-panel,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing,
.mss-single-product-page.mss-cart-v2 .mss-cart-summary,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary {
    background: var(--mss-cart-bg) !important;
    color: var(--mss-cart-text) !important;
}

.mss-single-product-page.mss-cart-v2 .mss-cart-bar-title,
.mss-single-product-page.mss-cart-v2 .mss-cart-bar-total,
.mss-single-product-page.mss-cart-v2 .mss-cart-bar-total .woocommerce-Price-amount,
.mss-single-product-page.mss-cart-v2 .mss-cart-item-title,
.mss-single-product-page.mss-cart-v2 .mss-cart-item-meta strong,
.mss-single-product-page.mss-cart-v2 .mss-cart-item-meta .woocommerce-Price-amount,
.mss-single-product-page.mss-cart-v2 .mss-cart-qty-control .mss-qty-button,
.mss-single-product-page.mss-cart-v2 .mss-cart-qty-control .mss-qty-value,
.mss-single-product-page.mss-cart-v2 .mss-cart-qty-control .mss-cart-qty-input,
.mss-single-product-page.mss-cart-v2 .mss-cart-empty,
.mss-single-product-page.mss-cart-v2 .mss-cart-item-options {
    color: var(--mss-cart-text) !important;
}

.mss-single-product-page.mss-cart-v2 .mss-cart-bar-count,
.mss-single-product-page.mss-cart-v2 .mss-cart-item,
.mss-single-product-page.mss-cart-v2 .mss-cart-empty,
.mss-single-product-page.mss-cart-v2 .mss-cart-qty-control {
    background: color-mix(in srgb, var(--mss-cart-text) 10%, transparent) !important;
    border-color: color-mix(in srgb, var(--mss-cart-text) 16%, transparent) !important;
}

.mss-single-product-page.mss-cart-v2 .mss-cart-toggle-text,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-toggle-text,
.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-toggle-text {
    background: var(--mss-cart-text) !important;
    color: var(--mss-cart-bg) !important;
}

.mss-single-product-page .single_add_to_cart_button.mss-product-added-feedback {
    filter: saturate(1.05);
}

/* Mark Style Shop v1.0.32 - category sidebar, product cart, recommendations and product tabs fixes */
.mss-category-sidebar-all-link,
.mss-category-sidebar-all-link.is-active,
.mss-category-sidebar-all-link:hover,
.mss-category-sidebar-all-link:focus-visible {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #111827) !important;
    box-shadow: none !important;
}

.mss-category-sidebar-all-link.is-active {
    border-color: color-mix(in srgb, var(--mss-text, #111827) 14%, transparent) !important;
}

.mss-menu.mss-hide-all-products-link .mss-category-sidebar-all-link {
    display: none !important;
}

.mss-menu.mss-single-product-page,
.mss-menu.mss-wc-product-shortcode {
    position: relative !important;
    z-index: 1 !important;
    isolation: isolate !important;
    max-width: 100% !important;
    overflow: visible !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar],
html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar].is-closing,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar],
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing {
    background: var(--mss-cart-bg, #111827) !important;
    background-color: var(--mss-cart-bg, #111827) !important;
    color: var(--mss-cart-text, #ffffff) !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    z-index: var(--mss-z-index-max, 2147483640) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-summary,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-summary,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-closing .mss-cart-summary {
    background: var(--mss-cart-bg, #111827) !important;
    background-color: var(--mss-cart-bg, #111827) !important;
    color: var(--mss-cart-text, #ffffff) !important;
    opacity: 1 !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-drawer,
html body .mss-menu.mss-single-product-page .mss-cart-items,
html body .mss-menu.mss-single-product-page .mss-cart-item-list {
    background: transparent !important;
}

.mss-wc-product-recommendations .mss-product-card,
.mss-wc-product-recommendations .mss-product-card:hover,
.mss-wc-product-recommendations .mss-product-media,
.mss-wc-product-recommendations .mss-product-media:hover,
.mss-wc-product-recommendations .mss-product-image,
.mss-wc-product-recommendations .mss-product-image:hover,
.mss-wc-product-recommendations img {
    box-shadow: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    background: var(--mss-product-tabs-bg-custom, #ffffff) !important;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 10%, transparent) !important;
    box-shadow: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li::before,
.mss-wc-product-tabs .woocommerce-tabs ul.tabs li::after,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li::before,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li::after {
    display: none !important;
    content: none !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li a,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
    background: transparent !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active {
    background: var(--mss-product-tabs-active-bg-custom, var(--mss-accent, #111827)) !important;
    border-color: var(--mss-product-tabs-active-bg-custom, var(--mss-accent, #111827)) !important;
}

.mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active a,
.mss-wc-product-shortcode .mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active a {
    color: var(--mss-product-tabs-active-text-custom, #ffffff) !important;
}


/* Mark Style Shop v1.0.33 - product-page overflow, layer and cart color fixes */
body:has(.mss-menu.mss-single-product-page) {
    overflow-x: hidden !important;
}

html body .et_pb_section:has(.mss-menu.mss-single-product-page),
html body .et_pb_row:has(.mss-menu.mss-single-product-page),
html body .et_pb_column:has(.mss-menu.mss-single-product-page),
html body .et_pb_module:has(.mss-menu.mss-single-product-page),
html body .et_pb_code:has(.mss-menu.mss-single-product-page),
html body .et_pb_code_inner:has(.mss-menu.mss-single-product-page) {
    z-index: auto !important;
    overflow: visible !important;
}

html body .mss-menu.mss-single-product-page,
html body .mss-menu.mss-wc-product-shortcode {
    --mss-z-index-max: 9990;
    width: 100% !important;
    max-width: min(1600px, 100%) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: min(16px, max(10px, 3vw)) !important;
    padding-right: min(16px, max(10px, 3vw)) !important;
    position: relative !important;
    z-index: 0 !important;
    overflow-x: clip !important;
    box-sizing: border-box !important;
    transform: none !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-panel,
html body .mss-menu.mss-wc-product-shortcode .mss-wc-product-panel {
    grid-template-columns: minmax(0, 52%) minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-gallery-wrap,
html body .mss-menu.mss-single-product-page .mss-wc-product-summary,
html body .mss-menu.mss-single-product-page .woocommerce-product-gallery,
html body .mss-menu.mss-single-product-page .woocommerce-product-gallery__wrapper,
html body .mss-menu.mss-single-product-page .woocommerce-product-gallery__image,
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs,
html body .mss-menu.mss-single-product-page .mss-product-recommendations,
html body .mss-menu.mss-single-product-page .mss-product-recommendation-grid {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html body .mss-menu.mss-single-product-page img,
html body .mss-menu.mss-single-product-page video,
html body .mss-menu.mss-single-product-page iframe {
    max-width: 100% !important;
}

html body .mss-menu.mss-single-product-page .woocommerce-product-gallery__trigger {
    z-index: 6 !important;
}

html body .mss-menu.mss-single-product-page .mss-front-customizer {
    z-index: 99990 !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-backdrop {
    z-index: 9988 !important;
    background: rgba(0, 0, 0, 0.16) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar],
html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar].is-closing,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar],
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing {
    z-index: 9989 !important;
    background: var(--mss-cart-bg, #0b4a34) !important;
    background-color: var(--mss-cart-bg, #0b4a34) !important;
    color: var(--mss-cart-text, #ffffff) !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-summary,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-summary,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-closing .mss-cart-summary,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary {
    background: var(--mss-cart-bg, #0b4a34) !important;
    background-color: var(--mss-cart-bg, #0b4a34) !important;
    color: var(--mss-cart-text, #ffffff) !important;
    opacity: 1 !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-bar-title,
html body .mss-menu.mss-single-product-page .mss-cart-bar-total,
html body .mss-menu.mss-single-product-page .mss-cart-bar-total .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page .mss-cart-item-title,
html body .mss-menu.mss-single-product-page .mss-cart-item-meta,
html body .mss-menu.mss-single-product-page .mss-cart-item-meta strong,
html body .mss-menu.mss-single-product-page .mss-cart-item-meta .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page .mss-cart-item-options,
html body .mss-menu.mss-single-product-page .mss-cart-empty,
html body .mss-menu.mss-single-product-page .mss-cart-qty-control .mss-qty-button,
html body .mss-menu.mss-single-product-page .mss-cart-qty-control .mss-qty-value,
html body .mss-menu.mss-single-product-page .mss-cart-qty-control .mss-cart-qty-input {
    color: var(--mss-cart-text, #ffffff) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-bar-count,
html body .mss-menu.mss-single-product-page .mss-cart-item,
html body .mss-menu.mss-single-product-page .mss-cart-empty,
html body .mss-menu.mss-single-product-page .mss-cart-qty-control {
    background: color-mix(in srgb, var(--mss-cart-text, #ffffff) 10%, transparent) !important;
    border-color: color-mix(in srgb, var(--mss-cart-text, #ffffff) 16%, transparent) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-toggle-text,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-toggle-text,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-closing .mss-cart-toggle-text {
    background: var(--mss-cart-text, #ffffff) !important;
    color: var(--mss-cart-bg, #0b4a34) !important;
}

html body .mss-menu.mss-single-product-page .mss-checkout-link,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-checkout-link,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-checkout-link {
    background: var(--mss-checkout-bg, #ffffff) !important;
    color: var(--mss-accent, #0b4a34) !important;
}

.mss-menu.mss-product-back-button-disabled .mss-product-page-back-wrap {
    display: none !important;
}

@media (max-width: 900px) {
    html body .mss-menu.mss-single-product-page .mss-wc-product-panel,
    html body .mss-menu.mss-wc-product-shortcode .mss-wc-product-panel {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}


/* Mark Style Shop v1.0.33b - keep product page under WordPress/admin layers */
html body .mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_section.mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_row.mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_column.mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_module.mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_code.mss-divi-layer-host:has(.mss-menu.mss-single-product-page),
html body .et_pb_code_inner.mss-divi-layer-host:has(.mss-menu.mss-single-product-page) {
    z-index: auto !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-layer-active,
html body .mss-menu.mss-wc-product-shortcode.mss-cart-layer-active {
    z-index: 0 !important;
}


/* Mark Style Shop v1.0.34 - product page cart must use the same Cart v2 styling as category pages */
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--mss-text, #173d2c) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.14) !important;
    opacity: 1 !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary {
    background: var(--mss-cart-bg) !important;
    background-color: var(--mss-cart-bg) !important;
    color: var(--mss-cart-text) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-title,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-title,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta strong,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-button,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-value,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-cart-qty-input,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-title,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta strong,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-qty-button,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-qty-value,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-cart-qty-input {
    color: var(--mss-text, #173d2c) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-title,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total .woocommerce-Price-amount {
    color: var(--mss-cart-text) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 8%, transparent) !important;
    color: var(--mss-text, #173d2c) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-cart-text) 16%, transparent) !important;
    color: var(--mss-cart-text) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-toggle-text,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-checkout-link,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-checkout-link {
    background: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent-text, #fff) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-toggle-text {
    background: var(--mss-cart-text) !important;
    color: var(--mss-cart-bg) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-empty,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-empty {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-empty,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-options,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-empty,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-options {
    color: color-mix(in srgb, var(--mss-text, #173d2c) 74%, transparent) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control {
    border-color: color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent) !important;
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
}

html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-cart-qty-input:focus,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-qty-control .mss-cart-qty-input:focus {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 8%, transparent) !important;
}

/* Mark Style Shop v1.0.34 - product page add-to-cart row stays in one line on mobile */
.mss-wc-product-shortcode .mss-wc-product-summary form.cart.variations_form {
    display: block !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart .quantity {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 128px !important;
}

.mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
.mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    white-space: nowrap !important;
}

@media (max-width: 520px) {
    .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) {
        gap: 8px !important;
    }

    .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control,
    .mss-wc-product-shortcode .mss-wc-product-summary form.cart .quantity {
        max-width: 118px !important;
        min-height: 42px !important;
    }

    .mss-wc-product-shortcode .mss-product-qty-btn {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
    }

    .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
        width: 34px !important;
        min-height: 34px !important;
        height: 34px !important;
        font-size: 14px !important;
    }

    .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button {
        min-height: 42px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: min(var(--mss-product-button-font-size-custom, 15px), 14px) !important;
        line-height: 1.1 !important;
    }
}


/* Mark Style Shop v1.0.35 - hide default WooCommerce View Cart link after product add-to-cart */
html body .mss-menu.mss-single-product-page a.added_to_cart,
html body .mss-menu.mss-single-product-page a.added_to_cart.wc-forward,
html body .mss-menu.mss-single-product-page .woocommerce-message a.button.wc-forward,
html body .mss-wc-product-shortcode a.added_to_cart,
html body .mss-wc-product-shortcode a.added_to_cart.wc-forward,
html body .mss-wc-product-shortcode .woocommerce-message a.button.wc-forward {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    pointer-events: none !important;
}


/* Mark Style Shop v1.0.35 - mobile product add-to-cart must remain one row */
@media (max-width: 520px) {
    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form),
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart .quantity,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart .quantity {
        flex: 0 0 108px !important;
        width: 108px !important;
        max-width: 108px !important;
        min-width: 108px !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}


/* Mark Style Shop v1.0.36 - product page cart must visually match Cart v2 from category pages */
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded,
html body .mss-menu.mss-single-product-page .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.14) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-summary,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-drawer,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-items,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-list,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-drawer,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-items,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-list {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
    opacity: 1 !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-bar-title,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-bar-total,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-bar-total .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-title,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-meta strong,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-meta .woocommerce-Price-amount,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-button,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-qty-value,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-qty-control .mss-cart-qty-input,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-empty,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-meta,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-empty,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item-options {
    color: color-mix(in srgb, var(--mss-text, #173d2c) 74%, transparent) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-bar-count,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-item,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-empty,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-qty-control {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
    border-color: color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent) !important;
}

html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-cart-toggle-text,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-toggle-text,
html body .mss-menu.mss-single-product-page .mss-cart-panel.is-expanded .mss-checkout-link,
html body .mss-menu.mss-single-product-page.mss-cart-v2 .mss-cart-panel.is-expanded .mss-checkout-link {
    background: var(--mss-accent, #0b4a34) !important;
    background-color: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent-text, #ffffff) !important;
}

/* Mark Style Shop v1.0.36 - keep quantity and add button in one row on small phones */
@media (max-width: 640px) {
    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form),
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 7px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart .quantity,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart .quantity {
        flex: 0 0 96px !important;
        width: 96px !important;
        max-width: 96px !important;
        min-width: 96px !important;
        min-height: 40px !important;
    }

    html body .mss-wc-product-shortcode .mss-product-qty-btn,
    html body .mss-menu.mss-single-product-page .mss-product-qty-btn {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
        width: 28px !important;
        min-height: 30px !important;
        height: 30px !important;
        font-size: 13px !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 103px) !important;
        min-height: 40px !important;
        padding-left: 9px !important;
        padding-right: 9px !important;
        font-size: 13px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}


/* Mark Style Shop v1.0.37 - one global cart module across the whole site */
.mss-global-cart-root {
    position: static !important;
    z-index: auto !important;
    max-width: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
}

.mss-global-cart-root.mss-cart-layer-active {
    z-index: auto !important;
}

.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar] {
    z-index: var(--mss-z-index-max, 2147483640) !important;
}

.mss-global-cart-root .mss-cart-backdrop {
    z-index: calc(var(--mss-z-index-max, 2147483640) - 2) !important;
}

[data-mss-disabled-local-cart="1"],
[data-mss-disabled-local-cart="1"] * {
    display: none !important;
}

.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing {
    background: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-drawer,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-drawer,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-items,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-items,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-list,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-list {
    background: transparent !important;
    color: var(--mss-text, #173d2c) !important;
}

.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-bar-total .woocommerce-Price-amount,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-title,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta strong,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-item-meta .woocommerce-Price-amount,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-bar-total .woocommerce-Price-amount,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-title,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta strong,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-item-meta .woocommerce-Price-amount {
    color: var(--mss-text, #173d2c) !important;
}

.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-toggle-text,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-toggle-text,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-checkout-link,
.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-checkout-link {
    background: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent-text, #ffffff) !important;
}


/* Mark Style Shop v1.0.38 - hard global cart top layer, identical on every page */
html body #mss-global-cart-root.mss-global-cart-root {
    --mss-global-cart-z: 2147483647;
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    pointer-events: none !important;
    z-index: var(--mss-global-cart-z) !important;
    isolation: isolate !important;
    transform: none !important;
    contain: none !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-backdrop.is-visible,
html body #mss-global-cart-root.mss-global-cart-root .mss-cart-backdrop.is-open {
    pointer-events: auto !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar] {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: max(7px, env(safe-area-inset-bottom)) !important;
    z-index: 2 !important;
    pointer-events: auto !important;
    transform: translate3d(-50%, -5px, 0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    contain: layout paint !important;
    will-change: transform, width, max-width !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar][hidden] {
    display: none !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-expanded {
    transform: translate3d(-50%, -10px, 0) !important;
}

html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-closing {
    transform: translate3d(-50%, -5px, 0) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar],
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-summary,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-summary,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing .mss-cart-summary {
    background: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] {
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.14) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel:not(.is-expanded),
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-closing {
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-drawer,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-items,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-list {
    background: transparent !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-meta,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-meta strong,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-meta .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-qty-control .mss-qty-button,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-qty-control .mss-qty-value,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-qty-control .mss-cart-qty-input,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-bar-count,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-item,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-qty-control {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 5%, transparent) !important;
    border-color: color-mix(in srgb, var(--mss-text, #173d2c) 12%, transparent) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-toggle-text,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-checkout-link {
    background: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent-text, #ffffff) !important;
}

html body .mss-menu.mss-single-product-page,
html body .mss-menu.mss-single-product-page * {
    --mss-z-index-max: 999 !important;
}

html body .mss-menu.mss-single-product-page {
    z-index: 0 !important;
    isolation: auto !important;
}

html body .mss-menu.mss-single-product-page .mss-front-customizer,
html body .mss-menu.mss-single-product-page .mss-front-customizer * {
    --mss-z-index-max: 99990 !important;
}

@media (max-width: 620px) {
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar],
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-expanded,
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-closing {
        left: 50% !important;
        right: auto !important;
        bottom: max(7px, env(safe-area-inset-bottom)) !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-closing {
        width: min(292px, calc(100vw - 76px)) !important;
        max-width: min(292px, calc(100vw - 76px)) !important;
        transform: translate3d(-50%, 0, 0) !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-expanded {
        width: 92% !important;
        max-width: 92% !important;
        transform: translate3d(-50%, -12px, 0) !important;
    }
}


/* Mark Style Shop v1.0.39 - Cart v2 state colors
   Closed bar = same configured colored cart as v1.
   Expanded drawer = white Cart v2 surface. */
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-summary,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-summary {
    background: var(--mss-cart-bg, var(--mss-accent, #0b4a34)) !important;
    background-color: var(--mss-cart-bg, var(--mss-accent, #0b4a34)) !important;
    color: var(--mss-cart-text, #ffffff) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-total .woocommerce-Price-amount {
    color: var(--mss-cart-text, #ffffff) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-bar-count,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-cart-text, #ffffff) 16%, transparent) !important;
    color: var(--mss-cart-text, #ffffff) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded) .mss-cart-toggle-text,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-toggle-text {
    background: var(--mss-cart-text, #ffffff) !important;
    color: var(--mss-cart-bg, var(--mss-accent, #0b4a34)) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-summary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-item-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-item-meta,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-item-meta strong,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-item-meta .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-qty-control .mss-qty-button,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-qty-control .mss-qty-value,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-qty-control .mss-cart-qty-input,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-expanded .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
}


/* Mark Style Shop v1.0.40 - Cart v2 closing color timing
   While closing, keep the expanded white surface. After the panel is closed,
   the compact bar fades back to the configured colored state. */
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar],
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-summary,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-bar-count,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar] .mss-cart-toggle-text {
    transition-property: background-color, background, color, width, max-width, transform, bottom, border-radius, box-shadow !important;
    transition-duration: 280ms, 280ms, 220ms, var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), 420ms, 420ms !important;
    transition-timing-function: ease, ease, ease, var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), ease, ease !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-summary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-item-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-item-meta,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-item-meta strong,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-item-meta .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-qty-control .mss-qty-button,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-qty-control .mss-qty-value,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-qty-control .mss-cart-qty-input,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 10%, transparent) !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-closing .mss-cart-toggle-text {
    background: var(--mss-accent, #0b4a34) !important;
    color: #ffffff !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded):not(.is-closing),
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded):not(.is-closing) .mss-cart-summary {
    background: var(--mss-cart-bg, var(--mss-accent, #0b4a34)) !important;
    background-color: var(--mss-cart-bg, var(--mss-accent, #0b4a34)) !important;
    color: var(--mss-cart-text, #ffffff) !important;
}


/* Mark Style Shop v1.0.41 - Cart v2 opening state and duplicate color flicker fix */
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-summary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-summary {
    transition-property: width, max-width, transform, bottom, border-radius, box-shadow !important;
    transition-duration: var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), var(--mss-cart-motion, 1250ms), 420ms, 420ms !important;
    transition-timing-function: var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), var(--mss-cart-ease, cubic-bezier(.22, 1, .36, 1)), ease, ease !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-bar-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-item-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-item-meta,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-item-meta strong,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-item-meta .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-qty-control .mss-qty-button,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-qty-control .mss-qty-value,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-qty-control .mss-cart-qty-input,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
    transition: none !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-bar-count {
    background: color-mix(in srgb, var(--mss-text, #173d2c) 10%, transparent) !important;
    color: var(--mss-text, #173d2c) !important;
    transition: none !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel[data-mss-cart-bar].is-opening .mss-cart-toggle-text {
    background: var(--mss-accent, #0b4a34) !important;
    color: #ffffff !important;
    transition: none !important;
}





/* Mark Style Shop v1.0.45 - clean recommendations and cart opening
   Recommendations must be normal category cards. No recommendation-specific card styling. */
html body .mss-menu.mss-single-product-page .mss-product-recommendations {
    margin-top: clamp(38px, 5vw, 64px) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-drawer,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-expanded .mss-cart-drawer {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-summary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: var(--mss-text, #173d2c) !important;
}

html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-bar-total,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-bar-total .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-item-title,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-item-meta,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-item-meta strong,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-item-meta .woocommerce-Price-amount,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-empty,
html body #mss-global-cart-root.mss-global-cart-root.mss-cart-v2 .mss-cart-panel.is-opening .mss-cart-item-options {
    color: var(--mss-text, #173d2c) !important;
}


/* Mark Style Shop v1.0.46 - polished mobile category selector */
@media (max-width: 960px) {
    .mss-category-page-layout,
    .mss-category-page-layout.no-sidebar {
        gap: 14px !important;
    }

    .mss-category-sidebar {
        position: sticky !important;
        top: max(8px, env(safe-area-inset-top)) !important;
        z-index: calc(var(--mss-z-index-max, 2147483640) - 80) !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 0 14px !important;
        padding: 6px !important;
        border: 1px solid color-mix(in srgb, var(--mss-text, #2c2d32) 10%, transparent) !important;
        border-radius: 999px !important;
        background: color-mix(in srgb, var(--mss-nav-bg, #f7f2ea) 86%, transparent) !important;
        box-shadow: 0 10px 26px rgba(20, 20, 20, .055) !important;
        backdrop-filter: blur(18px) saturate(145%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(145%) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-x: contain !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
        isolation: isolate !important;
    }

    .mss-category-sidebar::-webkit-scrollbar {
        display: none !important;
    }

    .mss-category-sidebar-title {
        display: none !important;
    }

    .mss-category-sidebar-nav,
    .mss-category-sidebar-item,
    .mss-category-sidebar-children {
        display: flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        gap: 8px !important;
        width: auto !important;
        min-width: max-content !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: visible !important;
    }

    .mss-category-sidebar-nav {
        order: 2 !important;
    }

    .mss-category-sidebar-all-link {
        order: 1 !important;
    }

    .mss-category-sidebar-all-link,
    .mss-category-sidebar-link,
    .mss-category-sidebar-children .mss-category-sidebar-link {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        min-width: auto !important;
        min-height: 38px !important;
        height: 38px !important;
        margin: 0 !important;
        padding: 0 14px !important;
        border: 1px solid color-mix(in srgb, var(--mss-text, #2c2d32) 12%, transparent) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        color: var(--mss-text, #2c2d32) !important;
        box-shadow: none !important;
        font-size: 13px !important;
        font-weight: 780 !important;
        line-height: 1 !important;
        letter-spacing: -0.01em !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        opacity: 1 !important;
        transform: none !important;
        scroll-snap-align: start !important;
        transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
    }

    .mss-category-sidebar-link:hover,
    .mss-category-sidebar-link:focus-visible,
    .mss-category-sidebar-all-link:hover,
    .mss-category-sidebar-all-link:focus-visible {
        border-color: color-mix(in srgb, var(--mss-accent, #111827) 20%, transparent) !important;
        background: color-mix(in srgb, #ffffff 88%, var(--mss-accent, #111827) 12%) !important;
        color: var(--mss-text, #2c2d32) !important;
        transform: translateY(-1px) !important;
    }

    .mss-category-sidebar-link.is-active,
    .mss-category-sidebar-link.is-active:hover,
    .mss-category-sidebar-link.is-active:focus-visible {
        border-color: var(--mss-accent, #111827) !important;
        background: var(--mss-accent, #111827) !important;
        color: var(--mss-accent-text, #ffffff) !important;
        box-shadow: 0 8px 18px color-mix(in srgb, var(--mss-accent, #111827) 18%, transparent) !important;
    }

    .mss-category-sidebar-link.is-ancestor:not(.is-active) {
        border-color: color-mix(in srgb, var(--mss-accent, #111827) 18%, transparent) !important;
        background: color-mix(in srgb, #ffffff 84%, var(--mss-accent, #111827) 16%) !important;
        color: var(--mss-accent, #111827) !important;
    }

    .mss-category-sidebar-all-link.is-active,
    .mss-category-sidebar-all-link.is-active:hover,
    .mss-category-sidebar-all-link.is-active:focus-visible {
        border-color: color-mix(in srgb, var(--mss-text, #111827) 16%, transparent) !important;
        background: #ffffff !important;
        color: var(--mss-text, #111827) !important;
        box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--mss-text, #111827) 5%, transparent) !important;
    }

    .mss-category-nav,
    .mss-has-sticky-nav .mss-category-nav {
        margin: 0 0 16px !important;
        padding: 6px !important;
        border-radius: 999px !important;
        overflow: hidden !important;
        background: color-mix(in srgb, var(--mss-nav-bg, #f7f2ea) 86%, transparent) !important;
        box-shadow: 0 10px 26px rgba(20, 20, 20, .055) !important;
    }

    .mss-category-track {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-x: contain !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
    }

    .mss-category-track::-webkit-scrollbar {
        display: none !important;
    }

    .mss-category-pill {
        flex: 0 0 auto !important;
        min-height: 38px !important;
        height: 38px !important;
        padding: 0 14px !important;
        border: 1px solid color-mix(in srgb, var(--mss-text, #2c2d32) 12%, transparent) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        box-shadow: none !important;
        color: var(--mss-text, #2c2d32) !important;
        font-size: 13px !important;
        font-weight: 780 !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        scroll-snap-align: start !important;
    }

    .mss-category-pill.is-active {
        border-color: var(--mss-accent, #111827) !important;
        background: var(--mss-accent, #111827) !important;
        color: var(--mss-accent-text, #ffffff) !important;
        box-shadow: 0 8px 18px color-mix(in srgb, var(--mss-accent, #111827) 18%, transparent) !important;
    }
}

@media (max-width: 520px) {
    .mss-category-sidebar {
        margin-left: -2px !important;
        margin-right: -2px !important;
        padding: 5px !important;
        gap: 7px !important;
    }

    .mss-category-sidebar-nav,
    .mss-category-sidebar-item,
    .mss-category-sidebar-children,
    .mss-category-track {
        gap: 7px !important;
    }

    .mss-category-sidebar-all-link,
    .mss-category-sidebar-link,
    .mss-category-sidebar-children .mss-category-sidebar-link,
    .mss-category-pill {
        min-height: 36px !important;
        height: 36px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 12.5px !important;
    }
}


/* Mark Style Shop v1.0.47 - cleaner product tabs spacing and mobile layout */
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs {
    margin-top: 24px !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs {
    display: block;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 2px 10px !important;
    margin: 0 0 10px !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs::-webkit-scrollbar {
    display: none;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    flex: 0 0 auto;
    min-height: 48px;
    border-radius: 999px !important;
    margin: 0 !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 20px !important;
    font-size: 14px;
    line-height: 1 !important;
    font-weight: 760 !important;
    white-space: nowrap;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel {
    margin-top: 0 !important;
    padding: 18px 18px !important;
    border-radius: 22px !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel > :first-child {
    margin-top: 0 !important;
}

@media (max-width: 767px) {
    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs {
        margin-top: 20px !important;
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
        gap: 8px;
        padding: 0 0 8px !important;
        margin: 0 0 8px !important;
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
        min-height: 44px;
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
        min-height: 44px;
        padding: 0 18px !important;
        font-size: 13px;
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel {
        padding: 16px 16px !important;
        border-radius: 18px !important;
    }
}


/* Mark Style Shop v1.0.48 - product tabs as clean border tabs and mobile accordion */
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs,
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 8px !important;
    margin: 0 0 14px !important;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 10%, transparent) !important;
    border-radius: 30px !important;
    background: color-mix(in srgb, var(--mss-card-bg, #ffffff) 72%, #f5f5f5) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs::-webkit-scrollbar {
    display: none !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs::before,
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs::after {
    display: none !important;
    content: none !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li {
    flex: 1 1 0 !important;
    min-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 12%, transparent) !important;
    background: var(--mss-product-tabs-bg-custom, #ffffff) !important;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
    box-shadow: none !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li a {
    width: 100% !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 22px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
    background: transparent !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active {
    background: var(--mss-product-tabs-bg-custom, #ffffff) !important;
    border: 2px solid var(--mss-accent, #0b5137) !important;
    color: var(--mss-accent, #0b5137) !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs li.active a {
    color: var(--mss-accent, #0b5137) !important;
}

html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    clear: both !important;
    margin: 0 !important;
    padding: 20px !important;
    border-radius: 24px !important;
    background: var(--mss-card-bg, #ffffff) !important;
    border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 8%, transparent) !important;
    box-shadow: none !important;
}

html body .mss-menu.mss-single-product-page .mss-product-tab-accordion-toggle {
    display: none;
}

@media (max-width: 767px) {
    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-tabs ul.tabs {
        display: none !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-tab-accordion-toggle {
        width: 100% !important;
        min-height: 52px !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        margin: 0 0 10px !important;
        padding: 0 18px !important;
        border-radius: 18px !important;
        border: 1px solid color-mix(in srgb, var(--mss-text, #111827) 12%, transparent) !important;
        background: var(--mss-product-tabs-bg-custom, #ffffff) !important;
        color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
        font: inherit !important;
        font-size: 14px !important;
        font-weight: 760 !important;
        line-height: 1 !important;
        text-align: left !important;
        box-shadow: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-tab-accordion-toggle.is-active {
        border: 2px solid var(--mss-accent, #0b5137) !important;
        background: #ffffff !important;
        color: var(--mss-accent, #0b5137) !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-tab-accordion-icon {
        flex: 0 0 auto;
        font-size: 18px;
        line-height: 1;
        transform: rotate(0deg);
        transition: transform 180ms ease;
    }

    html body .mss-menu.mss-single-product-page .mss-product-tab-accordion-toggle.is-active .mss-product-tab-accordion-icon {
        transform: rotate(45deg);
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel {
        display: none !important;
        width: 100% !important;
        margin: -2px 0 12px !important;
        padding: 16px !important;
        border-radius: 18px !important;
    }

    html body .mss-menu.mss-single-product-page .mss-wc-product-tabs .woocommerce-Tabs-panel.is-active {
        display: block !important;
    }
}

/* Mark Style Shop v1.0.49 - product info accordion in the buy column */
html body .mss-menu.mss-single-product-page .mss-wc-product-tabs {
    display: none !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion {
    width: 100%;
    margin: 22px 0 0 !important;
    padding: 0 !important;
    border-top: 1px solid color-mix(in srgb, var(--mss-text, #111827) 13%, transparent);
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-item {
    display: block;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid color-mix(in srgb, var(--mss-text, #111827) 13%, transparent);
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-title {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    width: 100%;
    min-height: 58px;
    padding: 18px 0 !important;
    margin: 0 !important;
    cursor: pointer;
    list-style: none;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827)) !important;
    background: transparent !important;
    font-size: var(--mss-product-tabs-font-size-custom, 13px);
    line-height: 1.12;
    font-weight: 820;
    letter-spacing: .01em;
    text-transform: uppercase;
    border: 0 !important;
    box-shadow: none !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-title::-webkit-details-marker {
    display: none;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-title::after {
    content: "+";
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827));
    font-size: 34px;
    line-height: 1;
    font-weight: 360;
    transform: translateY(-1px);
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-item[open] > .mss-product-accordion-title::after {
    content: "×";
    font-size: 34px;
    transform: translateY(-2px);
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content {
    width: 100%;
    padding: 0 0 24px !important;
    margin: 0 !important;
    background: transparent !important;
    color: var(--mss-product-tabs-text-custom, var(--mss-text, #111827));
    font-size: var(--mss-product-excerpt-size-custom, 15px);
    line-height: var(--mss-product-excerpt-line-height-custom, 1.55);
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content > h2:first-child,
html body .mss-menu.mss-single-product-page .mss-product-accordion-content > h3:first-child {
    display: none !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content > :first-child {
    margin-top: 0 !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content > :last-child {
    margin-bottom: 0 !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content p,
html body .mss-menu.mss-single-product-page .mss-product-accordion-content li {
    color: inherit;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes {
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes tr,
html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes th,
html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes td {
    border: 0 !important;
    background: transparent !important;
}

html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes th,
html body .mss-menu.mss-single-product-page .mss-product-accordion-content .shop_attributes td {
    padding: 10px 0 !important;
    text-align: left;
}

@media (max-width: 767px) {
    html body .mss-menu.mss-single-product-page .mss-product-accordion {
        margin-top: 18px !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-accordion-title {
        min-height: 54px;
        padding: 16px 0 !important;
        font-size: 13px;
    }

    html body .mss-menu.mss-single-product-page .mss-product-accordion-content {
        padding-bottom: 22px !important;
        font-size: 15px;
    }
}


/* Mark Style Shop v1.0.52 - separate mobile product page typography and spacing settings */
@media (max-width: 767px) {
    html body .mss-wc-product-shortcode .mss-wc-product-summary,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary {
        padding: var(--mss-product-mobile-summary-padding-custom, 0) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .product_title,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .product_title {
        font-size: var(--mss-product-mobile-title-size-custom, 30px) !important;
        line-height: var(--mss-product-mobile-title-line-height-custom, 1.08) !important;
        margin: var(--mss-product-mobile-title-margin-custom, 0 0 10px 0) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .price,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .price {
        font-size: var(--mss-product-mobile-price-size-custom, 22px) !important;
        line-height: var(--mss-product-mobile-price-line-height-custom, 1.15) !important;
        margin: var(--mss-product-mobile-price-margin-custom, 0 0 14px 0) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-product-details__short-description,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-product-details__short-description {
        font-size: var(--mss-product-mobile-excerpt-size-custom, 14px) !important;
        line-height: var(--mss-product-mobile-excerpt-line-height-custom, 1.45) !important;
        margin: var(--mss-product-mobile-excerpt-margin-custom, 0 0 18px 0) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-add-to-cart,
    html body .mss-menu.mss-single-product-page .mss-wc-product-add-to-cart {
        margin-top: var(--mss-product-mobile-form-margin-top-custom, 16px) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary table.variations label,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary table.variations label {
        font-size: var(--mss-product-mobile-variation-label-size-custom, 12px) !important;
    }

    html body .mss-wc-product-shortcode .mss-product-variation-option,
    html body .mss-menu.mss-single-product-page .mss-product-variation-option {
        font-size: var(--mss-product-mobile-variation-chip-size-custom, 13px) !important;
        min-height: var(--mss-product-mobile-variation-chip-height-custom, 36px) !important;
        padding: var(--mss-product-mobile-variation-chip-padding-custom, 0 12px) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form),
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) {
        gap: var(--mss-product-mobile-add-to-cart-gap-custom, 8px) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart .quantity,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .quantity.mss-product-quantity-control,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart .quantity {
        flex-basis: var(--mss-product-mobile-qty-width-custom, 108px) !important;
        width: var(--mss-product-mobile-qty-width-custom, 108px) !important;
        min-width: var(--mss-product-mobile-qty-width-custom, 108px) !important;
        max-width: var(--mss-product-mobile-qty-width-custom, 108px) !important;
        min-height: var(--mss-product-mobile-qty-height-custom, 44px) !important;
    }

    html body .mss-wc-product-shortcode .mss-product-qty-btn,
    html body .mss-menu.mss-single-product-page .mss-product-qty-btn {
        width: var(--mss-product-mobile-qty-button-size-custom, 34px) !important;
        height: var(--mss-product-mobile-qty-button-size-custom, 34px) !important;
        min-width: var(--mss-product-mobile-qty-button-size-custom, 34px) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .quantity.mss-product-quantity-control input.qty {
        min-height: var(--mss-product-mobile-qty-button-size-custom, 34px) !important;
        height: var(--mss-product-mobile-qty-button-size-custom, 34px) !important;
        font-size: var(--mss-product-mobile-button-font-size-custom, 14px) !important;
    }

    html body .mss-wc-product-shortcode .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-wc-product-shortcode .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary form.cart:not(.variations_form) .single_add_to_cart_button,
    html body .mss-wc-product-shortcode .mss-wc-product-summary button.button,
    html body .mss-menu.mss-single-product-page .mss-wc-product-summary button.button {
        min-height: var(--mss-product-mobile-button-height-custom, 44px) !important;
        padding: var(--mss-product-mobile-button-padding-custom, 0 14px) !important;
        font-size: var(--mss-product-mobile-button-font-size-custom, 14px) !important;
        border-radius: var(--mss-product-mobile-button-radius-custom, 999px) !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-accordion {
        margin-top: var(--mss-product-mobile-accordion-margin-top-custom, 18px) !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-accordion-title {
        min-height: var(--mss-product-mobile-accordion-title-height-custom, 54px) !important;
        padding: var(--mss-product-mobile-accordion-title-padding-custom, 16px 0) !important;
        font-size: var(--mss-product-mobile-accordion-title-size-custom, 13px) !important;
    }

    html body .mss-menu.mss-single-product-page .mss-product-accordion-content {
        padding: var(--mss-product-mobile-accordion-content-padding-custom, 0 0 22px) !important;
        font-size: var(--mss-product-mobile-accordion-content-size-custom, 14px) !important;
        line-height: var(--mss-product-mobile-accordion-content-line-height-custom, 1.5) !important;
    }
}


/* Mark Style Shop v1.0.54 - mobile breadcrumbs toggle */
@media (max-width: 767px) {
    .mss-wc-product-breadcrumbs.mss-wc-product-breadcrumbs-hide-mobile {
        display: none !important;
    }
}

/* Mark Style Shop v1.0.55 - multilingual product extra tab settings moved to WooCommerce admin */


/* Mark Style Shop v1.0.58 mobile fixed panel CSS removed in v1.0.60. */

/* Mark Style Shop v1.0.60 - stable mobile filters without fixed positioning */
.mss-mobile-filter-panel {
    display: none;
}

@media (max-width: 960px) {
    .mss-menu .mss-shop-filters-compact,
    .mss-category-page .mss-shop-filters-compact {
        position: relative !important;
        z-index: 30 !important;
        max-width: 100% !important;
        overflow: visible !important;
        isolation: auto !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-shop-filters-grid,
    .mss-category-page .mss-shop-filters-compact .mss-shop-filters-grid {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 2px 8px !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
    }

    .mss-menu .mss-shop-filters-compact .mss-shop-filters-grid::-webkit-scrollbar,
    .mss-category-page .mss-shop-filters-compact .mss-shop-filters-grid::-webkit-scrollbar {
        display: none !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-filter-dropdown,
    .mss-category-page .mss-shop-filters-compact .mss-filter-dropdown,
    .mss-menu .mss-shop-filters-compact .mss-filter-reset-inline,
    .mss-category-page .mss-shop-filters-compact .mss-filter-reset-inline {
        position: static !important;
        flex: 0 0 auto !important;
        max-width: calc(100vw - 24px) !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-filter-summary,
    .mss-category-page .mss-shop-filters-compact .mss-filter-summary {
        white-space: nowrap !important;
        min-height: 38px !important;
        padding: 0 13px !important;
        font-size: 13px !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-filter-dropdown .mss-filter-group,
    .mss-category-page .mss-shop-filters-compact .mss-filter-dropdown .mss-filter-group,
    .mss-menu .mss-shop-filters-compact .mss-filter-dropdown[data-mss-align="right"] .mss-filter-group,
    .mss-category-page .mss-shop-filters-compact .mss-filter-dropdown[data-mss-align="right"] .mss-filter-group {
        position: static !important;
        display: none !important;
        inset: auto !important;
        transform: none !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
        z-index: auto !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel {
        display: none !important;
        position: relative !important;
        z-index: 35 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 2px 0 14px !important;
        clear: both !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel.is-open,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel.is-open {
        display: block !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group {
        position: relative !important;
        display: block !important;
        inset: auto !important;
        transform: none !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        max-height: min(62vh, 430px) !important;
        overflow: auto !important;
        margin: 0 !important;
        padding: 14px !important;
        border: 1px solid rgba(44, 45, 50, .12) !important;
        border-radius: 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 34px rgba(0, 0, 0, .13) !important;
        z-index: 35 !important;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group legend,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group legend {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-chips,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-chips {
        display: flex !important;
        flex-wrap: wrap !important;
        max-width: none !important;
        max-height: none !important;
        overflow: visible !important;
        gap: 8px !important;
        padding: 1px !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-dropdown-sort .mss-filter-chips,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-dropdown-sort .mss-filter-chips,
    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-sort-options,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-sort-options {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-price-inputs,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-price-inputs {
        min-width: 0 !important;
        width: 100% !important;
    }
}

@media (min-width: 961px) {
    .mss-mobile-filter-panel {
        display: none !important;
    }
}

@media (max-width: 960px) {
    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group-sort .mss-filter-chips,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group-sort .mss-filter-chips,
    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-sort-options,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-sort-options {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }
}

/* Mark Style Shop v1.0.60 - mobile categories must not be sticky/fixed */
@media (max-width: 960px) {
    .mss-category-page .mss-category-sidebar,
    .mss-category-sidebar,
    .mss-menu .mss-category-nav,
    .mss-category-nav,
    .mss-has-sticky-nav .mss-category-nav,
    .mss-menu.mss-has-sticky-nav .mss-category-nav,
    .mss-category-nav.is-mss-fixed {
        position: static !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: auto !important;
        transform: none !important;
        will-change: auto !important;
    }

    .mss-category-nav.is-mss-fixed {
        margin: 0 0 16px !important;
        max-width: 100% !important;
    }

    .mss-category-nav-placeholder {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* Mark Style Shop v1.0.63 - clearer active filters and mobile panel controls */
.mss-filter-dropdown.has-active-filter > .mss-filter-summary {
    border-color: var(--mss-accent, #0b4a34) !important;
    color: var(--mss-accent, #0b4a34) !important;
    background: color-mix(in srgb, var(--mss-accent, #0b4a34) 8%, #fff) !important;
}

.mss-filter-active-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    margin-left: 5px;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--mss-accent, #0b4a34);
    color: var(--mss-accent-text, #fff);
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
}

.mss-mobile-filter-panel-header {
    display: none;
}

@media (max-width: 960px) {
    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel.is-open,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel.is-open {
        padding: 0 !important;
        border: 1px solid rgba(44, 45, 50, .12) !important;
        border-radius: 18px !important;
        background: #fff !important;
        box-shadow: 0 14px 34px rgba(0, 0, 0, .11) !important;
        overflow: hidden !important;
    }

    .mss-mobile-filter-panel-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        min-height: 50px;
        padding: 8px 10px 8px 16px;
        border-bottom: 1px solid rgba(44, 45, 50, .09);
    }

    .mss-mobile-filter-panel-title {
        min-width: 0;
        overflow: hidden;
        color: var(--mss-text, #173d2c);
        font-size: 14px;
        font-weight: 800;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mss-mobile-filter-panel-close {
        flex: 0 0 auto;
        width: 34px;
        height: 34px;
        padding: 0;
        border: 0;
        border-radius: 11px;
        background: #f2f3f4;
        color: #25272b;
        font-size: 24px;
        font-weight: 400;
        line-height: 1;
        cursor: pointer;
    }

    .mss-menu .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group,
    .mss-category-page .mss-shop-filters-compact .mss-mobile-filter-panel .mss-filter-group {
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        margin: 0 !important;
    }
}

@supports not (background: color-mix(in srgb, #000 10%, #fff)) {
    .mss-filter-dropdown.has-active-filter > .mss-filter-summary {
        background: #f6faf8 !important;
    }
}

/* Mark Style Shop v1.0.64 - roomier expanded cart on desktop only */
@media (min-width: 621px) {
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-expanded {
        width: min(500px, calc(100vw - 40px)) !important;
        max-width: min(500px, calc(100vw - 40px)) !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-closing {
        bottom: max(20px, env(safe-area-inset-bottom)) !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-cart-drawer {
        max-height: min(74vh, 720px) !important;
        padding: 12px 14px 14px !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-cart-item-list {
        max-height: min(56vh, 560px) !important;
        gap: 10px !important;
        padding: 0 2px 10px !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-cart-item {
        grid-template-columns: 56px minmax(0, 1fr) auto !important;
        gap: 14px !important;
        padding: 11px !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-cart-item-image {
        width: 56px !important;
        height: 56px !important;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-cart-item-title {
        display: -webkit-box !important;
        overflow: hidden !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        text-overflow: ellipsis !important;
        white-space: normal !important;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel.is-expanded .mss-checkout-link {
        height: 52px !important;
        min-height: 52px !important;
        max-height: 52px !important;
        margin-top: 9px !important;
    }
}

/* Mark Style Shop v1.0.66 - desktop cart width parity and stable attribute wrapping */
.mss-card-attribute {
    align-content: flex-start;
}

.mss-card-attribute-lead {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}

@media (min-width: 621px) {
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar]:not(.is-expanded),
    html body #mss-global-cart-root.mss-global-cart-root .mss-cart-panel[data-mss-cart-bar].is-closing {
        width: min(500px, calc(100vw - 40px)) !important;
        max-width: min(500px, calc(100vw - 40px)) !important;
    }
}


/* Mark Style Shop v1.0.67 - reliable native mobile sorting and transparent category chips */
.mss-filter-sort-mobile-wrap {
    display: none;
}

@media (max-width: 960px) {
    .mss-filter-dropdown-sort {
        display: none !important;
    }

    .mss-filter-sort-mobile-wrap {
        position: relative;
        display: inline-flex;
        flex: 0 0 auto;
        min-width: 0;
        max-width: calc(100vw - 24px);
    }

    .mss-filter-sort-mobile-wrap::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 14px;
        width: 7px;
        height: 7px;
        border-right: 1.8px solid currentColor;
        border-bottom: 1.8px solid currentColor;
        pointer-events: none;
        transform: translateY(-65%) rotate(45deg);
        opacity: .68;
    }

    .mss-filter-sort-mobile {
        box-sizing: border-box;
        width: auto;
        max-width: min(68vw, 260px);
        min-height: 38px;
        margin: 0;
        padding: 0 38px 0 13px;
        border: 1px solid rgba(44, 45, 50, .16);
        border-radius: 12px;
        background: #fff;
        color: var(--mss-text, #2c2d32);
        font: inherit;
        font-size: 13px;
        font-weight: 750;
        line-height: 38px;
        white-space: nowrap;
        text-overflow: ellipsis;
        box-shadow: 0 6px 16px rgba(0, 0, 0, .03);
        appearance: none;
        -webkit-appearance: none;
        cursor: pointer;
    }

    .mss-filter-sort-mobile:focus {
        outline: none;
        border-color: color-mix(in srgb, var(--mss-accent, #111) 38%, rgba(44, 45, 50, .16));
        box-shadow: 0 0 0 3px color-mix(in srgb, var(--mss-accent, #111) 10%, transparent);
    }

    .mss-category-sidebar-title-link,
    .mss-category-sidebar-title-link.is-active,
    .mss-category-sidebar-all-link,
    .mss-category-sidebar-all-link.is-active,
    .mss-category-sidebar-link,
    .mss-category-sidebar-link.is-active,
    .mss-category-sidebar-link.is-ancestor,
    .mss-category-pill,
    .mss-category-pill.is-active {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
    }

    .mss-category-sidebar-title-link.is-active,
    .mss-category-sidebar-all-link.is-active,
    .mss-category-sidebar-link.is-active,
    .mss-category-pill.is-active {
        color: var(--mss-accent, #111) !important;
    }
}


/* Mark Style Shop v1.0.68 - more compact mobile size chips under product cards */
@media (max-width: 620px) {
    .mss-card-attribute {
        gap: 2px 3px;
        margin-top: 4px;
        line-height: 1.05;
    }

    .mss-card-attribute-lead {
        gap: 3px;
    }

    .mss-card-attribute-label {
        font-size: min(var(--mss-mobile-card-text-size-custom, 12px), 10.5px);
        line-height: 1.05;
    }

    .mss-card-attribute-chip {
        min-height: 15px;
        padding: 1px 4px;
        border-radius: 999px;
        font-size: min(var(--mss-card-attribute-chip-size, 10px), 9px);
        line-height: 1;
    }

    .mss-card-attribute-values {
        gap: 2px;
    }
}






/* Mark Style Shop v1.0.71 - restore mobile size typography closer to original */
@media (max-width: 620px) {
    .mss-card-attribute {
        gap: 3px 4px !important;
        margin-top: 5px !important;
        line-height: 1.08 !important;
    }

    .mss-card-attribute-lead {
        gap: 4px !important;
    }

    .mss-product-card .mss-card-attribute-lead::before,
    .mss-card-attribute-label {
        font-size: var(--mss-card-attribute-label-size, 11px) !important;
        line-height: 1.08 !important;
    }

    .mss-card-attribute-chip {
        min-height: 16px !important;
        padding: 1px 5px !important;
        font-size: var(--mss-card-attribute-chip-size, 10px) !important;
        line-height: 1 !important;
    }

    .mss-card-attribute-values {
        gap: 3px !important;
    }
}


/* Mark Style Shop v1.0.72 - stable real attribute label on mobile */
@media (max-width: 620px) {
    .mss-product-card .mss-card-attribute-lead::before {
        content: none !important;
        display: none !important;
    }

    .mss-product-card .mss-card-attribute-label {
        position: static !important;
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        flex: 0 0 auto !important;
        inline-size: auto !important;
        block-size: auto !important;
        width: auto !important;
        height: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        clip: auto !important;
        clip-path: none !important;
        color: var(--mss-text, #111827) !important;
        font-size: var(--mss-card-attribute-label-size, 11px) !important;
        line-height: 1.08 !important;
        white-space: nowrap !important;
    }
}
