/*
Theme Name: Bono Child
Theme URI: https://wpshop.ru/themes/bono
Author: WPShop.ru
Author URI: http://wpshop.ru/
Template: bono
Version: 1.0.1
*/

/* Below you can add your CSS styles */
/* Ниже Вы можете добавить свои CSS стили */

/*@media (min-width: 1400px) {
    .container,
    .fixed.block-after-site,
    .fixed.main-navigation-inner,
    .fixed.related-posts,
    .fixed.section-block,
    .fixed.section-html,
    .fixed.site-content,
    .fixed.site-footer-inner,
    .fixed.site-header-inner,
    .footer-navigation.fixed,
    .main-navigation.fixed,
    .site-footer.fixed,
    .site-header.fixed,
    .super-header-inner.fixed,
    .super-header.fixed {
        max-width: 1600px;
    }
}*/

/* Скрытие полей микроразметки OfferCatalog для визуала (для роботов остаются в DOM) */
.shop-grid .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.shop-item__buttons-one-click-buy {
    margin-top: 9px;
}

.card-slider-container {
    margin-top: 0;
}

/*.section-1 {
	padding-top: 0;
	padding-bottom: 0;
}*/

@media (max-width: 991px) {
    #secondary.widget-area {
        max-width: 100%;
        margin-bottom: 20px;
    }

    .widget-area--product {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .main-navigation ul li > a, .main-navigation ul li > span {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .main-navigation ul li:first-child {
        padding-top: 15px;
    }

    .main-navigation ul li:last-child {
        padding-bottom: 15px;
    }
}

@media (min-width: 768px) {
    .main-navigation ul li .sub-menu li > a, .main-navigation ul li .sub-menu li > span {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .main-navigation ul li .sub-menu li:first-child {
        padding-top: 15px;
    }

    .main-navigation ul li .sub-menu li:last-child {
        padding-bottom: 15px;
    }

    .card-slider--type-media .card-slider__image {
        min-height: 400px !important;
    }
}

.widget-area .widget_product_categories > ul .children li {
    padding: 0;
    margin: .7em 0 0;
}

.widget-area .widget_nav_menu .cat-parent:after,
.widget-area .widget_nav_menu .menu-item-has-children:after,
.widget-area .widget_product_categories .cat-parent:after,
.widget-area .widget_product_categories .menu-item-has-children:after {
    padding-top: .2em;
    height: auto;
    min-height: 25px;
}

.product-categories .children .cat-item.current-cat-parent,
.product-categories .children > .cat-item.current-cat {
    border-left: 3px solid #474747;
}

.product-categories .children .cat-item.current-cat-parent > ul {
    padding-left: 5px;
}

.product-categories .cat-item .current-cat-parent > a, .product-categories .cat-item.current-cat > a {
    font-weight: bold !important;
}

@media (max-width: 768px) {
    .product-category a {
        width: 100%;
        text-align: center;
    }

    .product-category a img {
        max-width: 200px;
        width: 100%;
    }

    .shop-item__image img {
        max-width: 250px;
        width: 100%;
    }

}

@media (min-width: 768px) {
    body:not(.is-mobile) .shop-item--type-standard .shop-item__buttons {
        bottom: 5px;
    }

    .shop-item__buttons-cart, .shop-item__buttons-one-click-buy, .shop-item__buttons-view {
        padding: .3em 1em;
    }
}

@media (min-width: 768px) {
    .product-images {
        align-items: flex-start;
    }
}

.woocommerce-product-gallery {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

.woocommerce-product-gallery .flex-control-nav {
    max-width: inherit;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    display: block;
    float: left;
    max-width: 40px;
    margin: 5px 0 5px 0;
}

.woocommerce-product-gallery .flex-control-thumbs li:not(:last-child) {
    margin-right: 5px;
}

.breadcrumb, .woocommerce-breadcrumb {
    flex-wrap: wrap;
    color: #474747;
}

.breadcrumb a,
.breadcrumb span,
.woocommerce-breadcrumb a,
.woocommerce-breadcrumb span {
    margin: 0 3px;
}

.woocommerce-breadcrumb span:last-child {
    color: #474747;
}

.footer-widgets a {
    color: #fff !important;
}

.shop-item__in-stock,
.product-meta__in-stock {
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    font-size: 0.9em;
    color: #2faf36;
}

.shop-item__in-stock-icon,
.product-meta__in-stock-icon {
    color: #2faf36;
    font-weight: bold;
}

.shop-item__in-stock {
    margin-top: 0.35em;
}

.product-meta__in-stock--single {
    display: block;
    margin-top: 0.5em;
    font-size: 1.1em;
}

.shop-item__in-stock--backorder,
.product-meta__in-stock--backorder {
    color: #e67e00;
}

.shop-item__in-stock--backorder .shop-item__in-stock-icon,
.product-meta__in-stock--backorder .product-meta__in-stock-icon {
    color: #e67e00;
}

.product-meta__on-order-note {
    margin: 0.35em 0 0;
    font-size: 0.70em;
    line-height: 1.4;
    color: #888;
}

.woocommerce div.product form.cart p.stock.available-on-backorder,
.woocommerce div.product .woocommerce-variation-availability p.stock.available-on-backorder {
    display: none !important;
}

.shop-item__buttons .shop-item__buttons-cart,
.shop-item__buttons .add_to_cart_button {
    display: none !important;
}

/* Action icons - vertical column on the right (denirashop-like) */
.shop-item__icons {
    position: absolute;
    top: 8px;
    right: 8px;
    left: auto;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: auto;
}

@media (min-width: 768px) {
    .shop-item__icons {
        top: 12px;
        right: 12px;
        left: auto;
    }
}

.shop-item__icons-favorite,
.shop-item__icons-quick,
.shop-item__icons-compare,
.shop-item__icons-cart,
.shop-item__icons-cart.button,
.shop-item__icons-cart.add_to_cart_button,
.section-block .shop-item__icons-cart,
.section-products .shop-item__icons-cart {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    flex: 0 0 auto;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: #555558 !important;
    text-align: center;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.92) !important;
    background-image: none !important;
    border: none !important;
    border-radius: 50% !important;
    box-shadow: 0 1px 4px rgba(34, 34, 40, 0.12) !important;
    box-sizing: border-box;
    cursor: pointer;
    opacity: 1;
    -webkit-transition: color .25s, background-color .25s, box-shadow .25s, opacity .25s, -webkit-transform .25s;
    transition: color .25s, background-color .25s, box-shadow .25s, opacity .25s, transform .25s;
    -webkit-transform: none !important;
    transform: none !important;
}

/* Keep theme behavior: quick view only from tablet up */
.shop-item__icons-quick {
    display: none;
}

@media (min-width: 768px) {
    .shop-item__icons-quick {
        display: inline-flex !important;
    }
}

.shop-item__icons-favorite:before,
.shop-item__icons-quick:before,
.shop-item__icons-compare:before {
    content: "" !important;
    position: static;
    display: block;
    width: 16px;
    height: 16px;
    margin: 0;
    padding: 0;
    line-height: 0;
    font-size: 0;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 16px 16px;
    mask-size: 16px 16px;
}

/* Outline-style icons via SVG masks */
.shop-item__icons-favorite:before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M20.8 5.6c-1.7-1.7-4.5-1.7-6.2 0L12 8.2l-2.6-2.6c-1.7-1.7-4.5-1.7-6.2 0s-1.7 4.5 0 6.2l8.8 8.8 8.8-8.8c1.7-1.7 1.7-4.5 0-6.2z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M20.8 5.6c-1.7-1.7-4.5-1.7-6.2 0L12 8.2l-2.6-2.6c-1.7-1.7-4.5-1.7-6.2 0s-1.7 4.5 0 6.2l8.8 8.8 8.8-8.8c1.7-1.7 1.7-4.5 0-6.2z'/%3E%3C/svg%3E");
}

.shop-item__icons-quick:before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M2 12s3.2-7 10-7 10 7 10 7-3.2 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M2 12s3.2-7 10-7 10 7 10 7-3.2 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E");
}

.shop-item__icons-compare:before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' d='M5 20V10M12 20V4M19 20v-8'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' d='M5 20V10M12 20V4M19 20v-8'/%3E%3C/svg%3E");
}

.shop-item__icons-favorite:after,
.shop-item__icons-quick:after,
.shop-item__icons-compare:after {
    display: none !important;
}

.shop-item__icons-cart svg {
    display: block;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.shop-item__icons-cart svg circle,
.shop-item__icons-cart svg path {
    stroke-width: 1.8;
}

/* Desktop: show action icons only on card hover */
@media (hover: hover) and (pointer: fine) {
    body:not(.is-mobile) .shop-item__icons-favorite,
    body:not(.is-mobile) .shop-item__icons-quick,
    body:not(.is-mobile) .shop-item__icons-compare,
    body:not(.is-mobile) .shop-item__icons-cart {
        opacity: 0;
        -webkit-transform: translate3d(8px, 0, 0) !important;
        transform: translate3d(8px, 0, 0) !important;
        pointer-events: none;
    }

    .shop-item-inner:hover .shop-item__icons-favorite,
    .shop-item-inner:hover .shop-item__icons-quick,
    .shop-item-inner:hover .shop-item__icons-compare,
    .shop-item-inner:hover .shop-item__icons-cart {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) !important;
        transform: translate3d(0, 0, 0) !important;
        pointer-events: auto;
    }

    .shop-item-inner:hover .shop-item__icons-favorite {
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }

    .shop-item-inner:hover .shop-item__icons-quick {
        -webkit-transition-delay: .04s;
        transition-delay: .04s;
    }

    .shop-item-inner:hover .shop-item__icons-compare {
        -webkit-transition-delay: .08s;
        transition-delay: .08s;
    }

    .shop-item-inner:hover .shop-item__icons-cart {
        -webkit-transition-delay: .12s;
        transition-delay: .12s;
    }
}

/* Mobile / touch: icons always visible */
@media (max-width: 767px), (hover: none), (pointer: coarse) {
    .shop-item__icons-favorite,
    .shop-item__icons-quick,
    .shop-item__icons-compare,
    .shop-item__icons-cart {
        opacity: 1 !important;
        -webkit-transform: none !important;
        transform: none !important;
        pointer-events: auto !important;
    }
}

.shop-item__icons-favorite:hover,
.shop-item__icons-quick:hover,
.shop-item__icons-compare:hover,
.shop-item__icons-cart:hover {
    color: #fff !important;
    background: var(--bono-colors-main, #474747) !important;
    background-color: var(--bono-colors-main, #474747) !important;
    box-shadow: 0 2px 8px rgba(34, 34, 40, 0.18) !important;
}

.shop-item__icons-favorite.in-favorite,
.shop-item__icons-compare.in-compare,
.shop-item__icons-cart.added {
    color: #fff !important;
    background: var(--bono-colors-main, #474747) !important;
    background-color: var(--bono-colors-main, #474747) !important;
    box-shadow: 0 2px 8px rgba(34, 34, 40, 0.18) !important;
}

/* Hide "View cart" link that WooCommerce appends */
.shop-item__icons .added_to_cart {
    display: none !important;
}

/* Product badges - one row, compact rounded stickers */
.shop-item__badges,
.single-product__badges {
    top: 8px !important;
    left: 8px !important;
    right: auto !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: center;
    align-content: flex-start;
    gap: 4px;
    max-width: calc(100% - 56px);
}

@media (min-width: 768px) {
    .shop-item__badges,
    .single-product__badges {
        top: 12px !important;
        left: 12px !important;
        right: auto !important;
    }
}

.shop-item__badge,
.shop-item__badges .onsale,
.single-product__badge,
.single-product__badge--onsale {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 24px;
    margin: 0 !important;
    padding: 1px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    line-height: 12px;
    letter-spacing: 0;
    white-space: nowrap;
    box-shadow: none;
}

.shop-item__badge:not(:last-child),
.single-product__badge {
    margin-bottom: 0 !important;
}

.shop-item__badges .onsale,
.shop-item__badge--onsale,
.single-product__badge--onsale {
    color: #222 !important;
    background-color: #ffeca8 !important;
}

.shop-item__badge--new,
.single-product__badge--new {
    color: #fff !important;
    background-color: #32cb41 !important;
}

.shop-item__badge--hit,
.single-product__badge--hit {
    color: #fff !important;
    background-color: #ff7455 !important;
}

.shop-item--type-small .shop-item__icons {
    position: absolute;
    top: 4px;
    right: 4px;
    left: auto;
}

.shop-item--type-small .shop-item__badges {
    position: relative;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    max-width: none;
    margin-bottom: 0.5em;
}

.shop-item--type-small .shop-item__badges .onsale,
.shop-item--type-small .shop-item__badge {
    height: 22px;
    padding: 1px 7px;
    font-size: 11px;
}

.product-country__flag {
    vertical-align: middle !important;
    /*border: 1px solid #000;*/
}

.single-product [data-block-name="woocommerce/product-filters"] {
    display: none !important;
}

@media (max-width: 1400px) {
    .price {
        flex-wrap: balance;
    }

    .footer-navigation ul li > a, .footer-navigation ul li > span, .main-navigation ul li > a, .main-navigation ul li > span {
        padding: 12px 7px;
    }

    .social-links .social-buttons {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }


    .fixed.site-header-inner,
    .super-header-inner.fixed {
        flex-wrap: balance !important;
    }

    .header-mobile-item {
        width: 100% !important;
        height: 100% !important;
    }
}

@media (max-width: 767px) {
    .header-mobile-items-container {
        margin-bottom: 10px;
    }
}

/* Brand carousel (PWB) - neat logos + arrows on desktop */
.section-html .pwb-carousel,
.pwb-carousel.slick-slider {
    position: relative;
    padding: 8px 40px;
    margin: 0;
}

@media (max-width: 767px) {
    .pwb-carousel {
        position: relative;
    }

    .pwb-carousel::before,
    .pwb-carousel::after {
        position: absolute;
        top: 50%;
        z-index: 20;
        transform: translateY(-50%);
        font-size: 30px;
        line-height: 1;
        pointer-events: none;
    }

    .pwb-carousel::before {
        content: "‹";
        left: -5px;
    }

    .pwb-carousel::after {
        content: "›";
        right: -5px;
    }
}

.section-block__header {
    margin-bottom: 5px;
}

@media (min-width: 768px) {
    .section-block,
    .section-html {
        padding-bottom: 20px;
        margin-bottom: 10px;
    }
}

.pwb-carousel .slick-list {
    overflow: hidden;
    margin: 0;
    cursor: grab;
}

.pwb-carousel .slick-list:active {
    cursor: grabbing;
}

.pwb-carousel .slick-track {
    display: flex !important;
    align-items: center;
}

.pwb-carousel .pwb-slick-slide,
.pwb-carousel .slick-slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
    height: auto !important;
    float: none;
    margin: 0 12px;
    box-sizing: border-box;
}

.pwb-carousel .pwb-slick-slide a,
.pwb-carousel .slick-slide a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100px;
    padding: 12px 16px;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    text-decoration: none;
    transition: border-color .2s, box-shadow .2s;
}

.pwb-carousel .pwb-slick-slide a:hover,
.pwb-carousel .slick-slide a:hover {
    border-color: #ddd;
    box-shadow: 0 2px 10px rgba(34, 34, 40, 0.08);
}

.pwb-carousel .pwb-slick-slide img,
.pwb-carousel .slick-slide img,
.pwb-carousel .pwb-slick-slide a > img {
    display: block;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 64px !important;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
}

.pwb-carousel .slick-prev,
.pwb-carousel .slick-next {
    position: absolute;
    top: 50%;
    bottom: auto;
    z-index: 5;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-top: -18px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #fff !important;
    box-shadow: 0 1px 6px rgba(34, 34, 40, 0.16);
    color: #333 !important;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    opacity: 1 !important;
    overflow: visible;
    -webkit-transform: none;
    transform: none;
}

.pwb-carousel .slick-prev {
    left: 0;
    right: auto;
}

.pwb-carousel .slick-next {
    right: 0;
    left: auto;
}

.pwb-carousel .slick-prev > span,
.pwb-carousel .slick-next > span {
    position: static;
    display: block;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    font-size: 18px;
    line-height: 1;
}

.pwb-carousel .slick-prev:hover,
.pwb-carousel .slick-next:hover {
    background: var(--bono-colors-main, #1e3a5f) !important;
    color: #fff !important;
}

.pwb-carousel .slick-prev.slick-disabled,
.pwb-carousel .slick-next.slick-disabled {
    opacity: 0.35 !important;
    cursor: default;
}

@media (max-width: 767px) {
    .section-html .pwb-carousel,
    .pwb-carousel.slick-slider {
        padding: 4px 8px;
    }

    .pwb-carousel .pwb-slick-slide a,
    .pwb-carousel .slick-slide a {
        height: 84px;
        padding: 10px 12px;
    }

    .pwb-carousel .pwb-slick-slide img,
    .pwb-carousel .slick-slide img,
    .pwb-carousel .pwb-slick-slide a > img {
        max-height: 52px !important;
    }
}

/* Видеообзор товара: стили выводятся inline из functions.php */

/* =========================================
   Карточка статьи в сайдбаре категорий
   ========================================= */

.category-article-sidebar {
    margin-top: 25px;
    padding: 20px;
    background: #fff;
    border: 1px solid #e7e7e7;
    border-radius: 8px;
    box-sizing: border-box;
}

.category-article-sidebar__image {
    display: block;
    margin: -20px -20px 18px;
    overflow: hidden;
    border-radius: 8px 8px 0 0;
}

.category-article-sidebar__image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition: transform .3s ease;
}

.category-article-sidebar__image:hover img {
    transform: scale(1.03);
}

.category-article-sidebar__title {
    margin: 0 0 10px;
    padding: 0;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
}

.category-article-sidebar__title a {
    color: inherit;
    text-decoration: none;
}

.category-article-sidebar__title a:hover {
    text-decoration: none;
    opacity: .75;
}

.category-article-sidebar__excerpt {
    margin: 0 0 15px;
    font-size: 14px;
    line-height: 1.55;
    color: #666;
}

.category-article-sidebar__link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.category-article-sidebar__link:hover {
    text-decoration: none;
    opacity: .75;
}

/* =========================================
   Заголовок "Статьи" в виде ссылки
   ========================================= */

.section-posts .section-block__title a {
    color: inherit;
    text-decoration: none;
}

.section-posts .section-block__title a:hover {
    color: inherit;
    text-decoration: none;
}
/* =========================================================
   VS REDESIGN — PHASE 1
   Reference: approved BellePro layout
   ========================================================= */

:root{
  --vs-accent:#ab5a3f;
  --vs-accent-dark:#93482f;
  --vs-accent-soft:#c27a62;
  --vs-bg:#f4f0ec;
  --vs-card:#f7f4f1;
  --vs-line:#e8e1dc;
  --vs-text:#2f2e2f;
  --vs-muted:#77716d;
}

html,body{
  background:#fff !important;
  color:var(--vs-text) !important;
}

body,
button,
input,
select,
textarea{
  font-family:Manrope,Arial,sans-serif !important;
}

h1,h2,h3,
.section-block__title,
.entry-title,
.page-title{
  font-family:Georgia,"Times New Roman",serif !important;
  font-weight:400 !important;
  letter-spacing:-.025em;
  color:var(--vs-text) !important;
}

/* Wider layout */
.site-header-inner.fixed,
.super-header-inner.fixed,
.main-navigation .fixed,
.site-content > .fixed,
.footer-widgets-inner.fixed,
.site-footer-inner.fixed{
  width:min(1540px,calc(100% - 64px)) !important;
  max-width:1540px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Header */
#masthead.site-header{
  background:#fff !important;
  border:0 !important;
  box-shadow:none !important;
}

#masthead .site-header-inner{
  display:grid !important;
  grid-template-columns:210px minmax(360px,1fr) auto auto auto !important;
  align-items:center !important;
  gap:22px !important;
  min-height:92px !important;
  padding-top:16px !important;
  padding-bottom:16px !important;
}

#masthead .site-branding{order:1 !important;margin:0 !important;}
#masthead .header-search{order:2 !important;margin:0 !important;width:100% !important;max-width:none !important;}
#masthead .header-phone{order:3 !important;margin:0 !important;}
#masthead .header-favorite{order:4 !important;margin:0 !important;}
#masthead .header-cart{order:5 !important;margin:0 !important;}
#masthead .header-html-1,
#masthead .social-links,
#masthead .top-menu{display:none !important;}

#masthead .site-logotype img{
  display:block !important;
  width:auto !important;
  max-width:190px !important;
  max-height:58px !important;
  object-fit:contain !important;
}

#masthead .header-search form{
  display:flex !important;
  align-items:stretch !important;
  overflow:hidden !important;
  height:48px !important;
  border:1px solid var(--vs-line) !important;
  border-radius:7px !important;
  background:#f8f6f4 !important;
  box-shadow:none !important;
}

#masthead .header-search label{
  flex:1 1 auto !important;
  margin:0 !important;
}

#masthead .header-search .search-field{
  width:100% !important;
  height:46px !important;
  padding:0 18px !important;
  border:0 !important;
  background:transparent !important;
  color:var(--vs-text) !important;
  font-size:14px !important;
  box-shadow:none !important;
  outline:0 !important;
}

#masthead .header-search .search-field::placeholder{
  color:#a29b96 !important;
  opacity:1 !important;
}

#masthead .header-search .search-submit{
  position:static !important;
  flex:0 0 52px !important;
  width:52px !important;
  height:48px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--vs-accent) !important;
  color:#fff !important;
  box-shadow:none !important;
}

#masthead .header-search .search-submit:hover{
  background:var(--vs-accent-dark) !important;
}

#masthead .header-phone{
  min-width:160px !important;
  text-align:left !important;
}

#masthead .header-phone__item{
  margin:0 !important;
  line-height:1.35 !important;
}

#masthead .header-phone__item:first-child a{
  color:var(--vs-text) !important;
  font-size:15px !important;
  font-weight:700 !important;
}

#masthead .header-phone__item + .header-phone__item{
  margin-top:2px !important;
}

#masthead .header-phone__item + .header-phone__item a{
  color:var(--vs-muted) !important;
  font-size:12px !important;
  font-weight:500 !important;
}

#masthead .header-favorite,
#masthead .header-cart__link{
  width:44px !important;
  height:44px !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
}

#masthead .header-favorite:hover,
#masthead .header-cart__link:hover{
  background:var(--vs-bg) !important;
}

/* Main navigation */
#site-navigation.main-navigation{
  background:#fff !important;
  border-top:1px solid #f0ece8 !important;
  border-bottom:1px solid var(--vs-line) !important;
  box-shadow:none !important;
}

#site-navigation.main-navigation .fixed{
  min-height:56px !important;
}

#site-navigation.main-navigation ul{
  align-items:center !important;
  gap:4px !important;
}

#site-navigation.main-navigation ul li > a,
#site-navigation.main-navigation ul li > span{
  padding:17px 15px !important;
  color:#3f3b38 !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.15 !important;
  border-radius:6px !important;
}

#site-navigation.main-navigation ul li:first-child > a{
  margin-right:10px !important;
  padding:13px 22px !important;
  color:#fff !important;
  background:var(--vs-accent) !important;
}

#site-navigation.main-navigation ul li:first-child > a:hover{
  background:var(--vs-accent-dark) !important;
}

#site-navigation.main-navigation ul li > a:hover{
  color:var(--vs-accent) !important;
  background:#faf7f4 !important;
}

/* Homepage hero: full bleed, lower and calmer */
body.home .card-slider-container.section-0{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  margin-top:0 !important;
  margin-bottom:30px !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:var(--vs-bg) !important;
}

body.home .card-slider-container.section-0 .card-slider__image{
  height:440px !important;
  min-height:440px !important;
  aspect-ratio:auto !important;
  background-size:cover !important;
  background-position:center !important;
}

body.home .card-slider-container .swiper-button-next,
body.home .card-slider-container .swiper-button-prev{
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 3px 14px rgba(40,32,26,.10) !important;
}

body.home .card-slider-container .swiper-pagination-bullet{
  width:7px !important;
  height:7px !important;
  background:#cfc4bb !important;
  opacity:1 !important;
}

body.home .card-slider-container .swiper-pagination-bullet-active{
  background:var(--vs-accent) !important;
}

/* Home sections */
body.home #primary{
  width:100% !important;
  max-width:none !important;
}

body.home .section-block{
  width:min(1540px,calc(100% - 64px)) !important;
  max-width:1540px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-top:12px !important;
  padding-bottom:28px !important;
}

body.home .section-block__header{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  margin-bottom:18px !important;
}

body.home .section-block__title{
  font-size:31px !important;
  line-height:1.1 !important;
  margin:0 !important;
}

body.home .section-block__description{
  color:var(--vs-muted) !important;
}

/* Product grid/cards */
.shop-grid{
  gap:12px !important;
}

.shop-item{
  background:#fff !important;
}

.shop-item-inner{
  height:100% !important;
  overflow:hidden !important;
  border:1px solid var(--vs-line) !important;
  border-radius:9px !important;
  background:#fff !important;
  box-shadow:none !important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease !important;
}

.shop-item-inner:hover{
  transform:translateY(-2px) !important;
  border-color:#d8c9bf !important;
  box-shadow:0 8px 24px rgba(67,48,37,.07) !important;
}

.shop-item__image,
.shop-item__image-inner{
  background:#faf8f6 !important;
}

.shop-item__title{
  padding-left:14px !important;
  padding-right:14px !important;
}

.shop-item__title a{
  color:#3d3936 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
}

.shop-item__price{
  padding-left:14px !important;
  padding-right:14px !important;
  color:#222 !important;
  font-size:17px !important;
  font-weight:700 !important;
}

.shop-item__in-stock,
.shop-item__rating{
  padding-left:14px !important;
  padding-right:14px !important;
}

.shop-item__badges .onsale,
.shop-item__badge--onsale,
.shop-item__badge--hit,
.shop-item__badge--new,
.single-product__badge--onsale,
.single-product__badge--hit,
.single-product__badge--new{
  color:#fff !important;
  background:var(--vs-accent) !important;
}

.msk-final-card-row{
  padding-left:14px !important;
  padding-right:14px !important;
  padding-bottom:14px !important;
}

.msk-final-cart,
.shop-item__buttons-cart{
  border-radius:5px !important;
  background:var(--vs-accent) !important;
  border-color:var(--vs-accent) !important;
  color:#fff !important;
}

.msk-final-cart:hover,
.shop-item__buttons-cart:hover{
  background:var(--vs-accent-dark) !important;
  border-color:var(--vs-accent-dark) !important;
}

/* Brand strip */
body.home .section-html .pwb-carousel,
body.home .pwb-carousel.slick-slider{
  padding-top:2px !important;
  padding-bottom:2px !important;
}

body.home .pwb-carousel .pwb-slick-slide a,
body.home .pwb-carousel .slick-slide a{
  height:86px !important;
  padding:12px 18px !important;
  border:1px solid #eee8e3 !important;
  border-radius:7px !important;
  background:#fff !important;
  box-shadow:none !important;
}

/* Footer */
.site-footer,
.footer-widgets{
  background:#f6f2ee !important;
  border-color:#ebe3dd !important;
}

.site-footer a,
.footer-widgets a{
  color:#655f5b !important;
}

.site-footer a:hover,
.footer-widgets a:hover{
  color:var(--vs-accent) !important;
}

/* Tablet/mobile */
@media (max-width:1199px){
  .site-header-inner.fixed,
  .super-header-inner.fixed,
  .main-navigation .fixed,
  .site-content > .fixed,
  .footer-widgets-inner.fixed,
  .site-footer-inner.fixed,
  body.home .section-block{
    width:min(100% - 36px,1540px) !important;
  }

  #masthead .site-header-inner{
    grid-template-columns:170px minmax(260px,1fr) auto auto auto !important;
    gap:14px !important;
  }
}

@media (max-width:767px){
  body{
    background:#fff !important;
  }

  #masthead .site-header-inner{
    display:block !important;
    min-height:0 !important;
    padding-top:9px !important;
    padding-bottom:9px !important;
  }

  #masthead .site-branding,
  #masthead .header-phone{
    display:none !important;
  }

  #masthead .header-search{
    display:block !important;
    width:100% !important;
  }

  #masthead .header-search form{
    height:44px !important;
    border-radius:6px !important;
  }

  #masthead .header-search .search-field{
    height:42px !important;
    font-size:13px !important;
  }

  #masthead .header-search .search-submit{
    height:44px !important;
    flex-basis:48px !important;
  }

  body.home .card-slider-container.section-0{
    margin-bottom:20px !important;
  }

  body.home .card-slider-container.section-0 .card-slider__image{
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/10 !important;
  }

  body.home .section-block{
    width:calc(100% - 24px) !important;
    padding-bottom:20px !important;
  }

  body.home .section-block__title{
    font-size:25px !important;
  }

  .shop-item-inner{
    border-radius:8px !important;
  }
}

/* =========================================================
   VS HOME — REAL STRUCTURE REDESIGN
   ========================================================= */

body.home .site-content,
body.home .content-area,
body.home #primary,
body.home #main{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.home .site-content > .fixed{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.vs-home{
  background:#fff;
  color:var(--vs-text);
}

.vs-shell{
  width:min(1540px,calc(100% - 64px));
  margin:0 auto;
}

.vs-hero{
  background:#f2ece7;
  overflow:hidden;
}

.vs-hero__grid{
  display:grid;
  grid-template-columns:46% 54%;
  min-height:450px;
}

.vs-hero__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:58px 56px 54px 0;
}

.vs-eyebrow{
  margin-bottom:18px;
  color:var(--vs-accent);
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.16em;
}

.vs-hero h1{
  margin:0 0 18px;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:58px;
  line-height:.98;
  font-weight:400;
  letter-spacing:-.04em;
  color:#282625;
}

.vs-hero p{
  margin:0;
  color:#736d69;
  font-size:16px;
  line-height:1.5;
}

.vs-hero__actions{
  display:flex;
  align-items:center;
  gap:32px;
  margin-top:28px;
}

.vs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:50px;
  padding:0 25px;
  border-radius:6px;
  text-decoration:none !important;
  font-size:14px;
  font-weight:600;
}

.vs-btn--primary{
  color:#fff !important;
  background:var(--vs-accent);
}

.vs-btn--primary:hover{background:var(--vs-accent-dark);}

.vs-btn--link{
  min-height:auto;
  padding:0 0 4px;
  color:#7f5445 !important;
  border-bottom:1px solid rgba(127,84,69,.4);
  border-radius:0;
}

.vs-hero__visual{
  position:relative;
  min-height:450px;
  background-size:cover;
  background-position:center;
}

.vs-hero__visual:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:18%;
  background:linear-gradient(90deg,#f2ece7 0%,rgba(242,236,231,0) 100%);
}

.vs-hero__quote{
  position:absolute;
  top:54px;
  right:40px;
  color:#7b6b62;
  font-family:Georgia,"Times New Roman",serif;
  font-size:13px;
  line-height:1.45;
  letter-spacing:.24em;
}

.vs-benefits{
  border-bottom:1px solid #eee8e3;
  background:#fff;
}

.vs-benefits__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  min-height:88px;
}

.vs-benefit{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px 20px;
  color:#55504d;
  font-size:12px;
  line-height:1.3;
}

.vs-benefit:first-child{padding-left:0;}
.vs-benefit > span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border:1px solid var(--vs-accent);
  border-radius:50%;
  color:var(--vs-accent);
  font-size:18px;
}

.vs-section{
  padding:34px 0 20px;
}

.vs-section__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:20px;
}

.vs-section__head h2{
  margin:0;
  font-size:30px;
  line-height:1.08;
}

.vs-section__head > a{
  color:var(--vs-accent) !important;
  font-size:13px;
  font-weight:600;
  text-decoration:none !important;
}

.vs-section__head > a span{margin-left:12px;}

.vs-category-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.vs-category-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border-radius:7px;
  background:#f6f3f0;
  color:#3d3936 !important;
  text-decoration:none !important;
}

.vs-category-card__image{
  aspect-ratio:1.08/1;
  display:grid;
  place-items:center;
  padding:14px 14px 0;
}

.vs-category-card__image img{
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .22s ease;
}

.vs-category-card:hover img{transform:scale(1.025);}

.vs-category-card__name{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  min-height:62px;
  padding:12px 14px 15px;
  font-size:14px;
  line-height:1.25;
}

.vs-category-card__name b{
  color:#7d7671;
  font-size:18px;
  font-weight:400;
}

.vs-section__head--products{
  justify-content:flex-start;
}

.vs-section__head--products > a{
  margin-left:auto;
}

.vs-product-tabs{
  display:flex;
  align-items:center;
  gap:26px;
  margin-left:18px;
}

.vs-product-tabs button{
  appearance:none;
  padding:0 0 7px;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:#8a827d;
  font:500 12px/1.2 Manrope,Arial,sans-serif;
  cursor:pointer;
}

.vs-product-tabs button.is-active{
  color:var(--vs-accent);
  border-bottom-color:var(--vs-accent);
}

.vs-product-panel{display:none;}
.vs-product-panel.is-active{display:block;}

.vs-product-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.vs-product-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #e9e4df;
  border-radius:8px;
  background:#fff;
}

.vs-product-card__image{
  position:relative;
  display:block;
  aspect-ratio:1/1.05;
  overflow:hidden;
  background:#faf8f6;
}

.vs-product-card__image img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:10px;
  box-sizing:border-box;
}

.vs-product-card__badge{
  position:absolute;
  top:10px;
  left:10px;
  padding:5px 8px;
  border-radius:5px;
  background:var(--vs-accent);
  color:#fff;
  font-size:11px;
  font-weight:700;
}

.vs-product-card__heart{
  position:absolute;
  top:9px;
  right:10px;
  color:#615b57;
  font-size:22px;
  line-height:1;
}

.vs-product-card__body{
  padding:10px 12px 12px;
}

.vs-product-card__title{
  display:block;
  min-height:38px;
  color:#3c3835 !important;
  font-size:13px;
  line-height:1.35;
  font-weight:500;
  text-decoration:none !important;
}

.vs-product-card__rating{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:24px;
  margin-top:5px;
}

.vs-product-card__rating span{
  color:#d66f49;
  font-size:11px;
  letter-spacing:1px;
}

.vs-product-card__rating small{
  color:#8b847f;
  font-size:10px;
}

.vs-product-card__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:7px;
}

.vs-product-card__price{
  min-width:0;
  color:#252322;
  font-size:16px;
  line-height:1.2;
  font-weight:700;
}

.vs-product-card__price del{
  color:#aaa39e;
  font-size:11px;
  font-weight:400;
}

.vs-product-card__price ins{text-decoration:none;}

.vs-product-card__cart{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:5px;
  background:var(--vs-accent);
  color:#fff !important;
  text-decoration:none !important;
  font-size:15px;
}

.vs-promo{
  margin-top:18px;
}

.vs-promo__inner{
  display:grid;
  grid-template-columns:50% 50%;
  min-height:280px;
  overflow:hidden;
  border-radius:0;
  background:var(--vs-accent);
}

.vs-promo__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:42px 52px;
  color:#fff;
}

.vs-eyebrow--light{color:#f6dfd5;}

.vs-promo h2{
  margin:0 0 24px;
  color:#fff !important;
  font-size:38px;
  line-height:1.13;
}

.vs-btn--light{
  align-self:flex-start;
  min-height:46px;
  background:#fff;
  color:var(--vs-accent) !important;
}

.vs-promo__visual{
  background-size:cover;
  background-position:center;
}

.vs-service-strip{
  border-bottom:1px solid #eee8e3;
  background:#fff;
}

.vs-service-strip__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  min-height:100px;
}

.vs-service-item{
  display:flex;
  align-items:center;
  gap:15px;
  padding:20px;
  color:#4c4744;
  font-size:12px;
  line-height:1.35;
}

.vs-service-item:first-child{padding-left:0;}

.vs-service-item > span{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border:1px solid var(--vs-accent);
  border-radius:50%;
  color:var(--vs-accent);
  font-size:17px;
}

/* Suppress old homepage module output if anything leaks around the custom template */
body.home #vs-home ~ .section-block,
body.home #vs-home ~ .card-slider-container{
  display:none !important;
}

@media (max-width:1199px){
  .vs-shell{width:calc(100% - 36px);}
  .vs-category-grid,
  .vs-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .vs-hero h1{font-size:48px;}
}

@media (max-width:767px){
  .vs-shell{width:calc(100% - 24px);}
  .vs-hero__grid{grid-template-columns:1fr;min-height:0;}
  .vs-hero__content{padding:34px 0 28px;}
  .vs-hero h1{font-size:39px;}
  .vs-hero p br{display:none;}
  .vs-hero__visual{min-height:255px;margin:0 -12px;}
  .vs-hero__quote{display:none;}
  .vs-hero__actions{gap:18px;flex-wrap:wrap;}
  .vs-benefits__grid,
  .vs-service-strip__grid{grid-template-columns:repeat(2,1fr);}
  .vs-benefit,
  .vs-service-item{padding:14px 6px;font-size:11px;}
  .vs-category-grid,
  .vs-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .vs-section{padding-top:26px;}
  .vs-section__head{align-items:center;}
  .vs-section__head h2{font-size:25px;}
  .vs-section__head--products{flex-wrap:wrap;}
  .vs-product-tabs{order:3;width:100%;margin:0;gap:20px;}
  .vs-product-card__title{font-size:12px;}
  .vs-promo__inner{grid-template-columns:1fr;}
  .vs-promo__content{padding:34px 24px;}
  .vs-promo h2{font-size:30px;}
  .vs-promo__visual{min-height:220px;}
}

/* =========================================================
   VS HEADER — redesigned from old functional header
   ========================================================= */

body.home #masthead.site-header{display:none !important;}

.vs-header{
  position:relative;
  z-index:80;
  background:#fff;
  color:#302d2b;
  border-bottom:1px solid #ece6e1;
}
.vs-header a{text-decoration:none !important;}

.vs-header__top{
  background:#f7f4f1;
  border-bottom:1px solid #eee8e3;
}
.vs-header__top-inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  font-size:11px;
  color:#77706b;
}
.vs-header__top-left,.vs-header__top-right{
  display:flex;
  align-items:center;
  gap:20px;
}
.vs-header__top a{color:#6d6762 !important;}
.vs-header__top a:hover{color:var(--vs-accent) !important;}
.vs-location{color:#5a524d;font-weight:600;}

.vs-header__main{
  min-height:78px;
  display:grid;
  grid-template-columns:230px 150px minmax(360px,1fr) 180px 210px;
  align-items:center;
  gap:18px;
}
.vs-logo{
  display:flex;
  align-items:center;
  gap:10px;
  color:#242220 !important;
}
.vs-logo__mark{
  display:grid;
  place-items:center;
  width:29px;
  height:37px;
  color:var(--vs-accent);
  font:700 33px/1 Arial,sans-serif;
  letter-spacing:-.08em;
}
.vs-logo__text{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.vs-logo__text strong{
  white-space:nowrap;
  font:700 18px/1.08 Manrope,Arial,sans-serif;
  letter-spacing:.015em;
}
.vs-logo__text small{
  margin-top:5px;
  white-space:nowrap;
  color:#8a827d;
  font:600 7px/1 Manrope,Arial,sans-serif;
  letter-spacing:.22em;
}

.vs-catalog-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:46px;
  border-radius:5px;
  background:var(--vs-accent);
  color:#fff !important;
  font-size:14px;
  font-weight:600;
}
.vs-catalog-button:hover{background:var(--vs-accent-dark);}
.vs-catalog-button__bars{font-size:18px;line-height:1;}

.vs-search{
  display:flex;
  align-items:stretch;
  height:46px;
  overflow:hidden;
  border:1px solid #e6dfda;
  border-radius:5px;
  background:#f8f6f4;
}
.vs-search input[type="search"]{
  flex:1 1 auto;
  min-width:0;
  height:44px;
  padding:0 16px;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#35312f;
  font:400 13px/1 Manrope,Arial,sans-serif;
}
.vs-search input[type="search"]::placeholder{color:#9a928c;opacity:1;}
.vs-search button{
  width:50px;
  flex:0 0 50px;
  border:0;
  border-radius:0;
  background:var(--vs-accent);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.vs-search button:hover{background:var(--vs-accent-dark);}

.vs-header__phone{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.vs-header__phone a{
  color:#262321 !important;
  font-size:14px;
  line-height:1.2;
  font-weight:700;
}
.vs-header__phone small{
  margin-top:4px;
  color:#8c8580;
  font-size:10px;
  line-height:1.2;
}

.vs-header__actions{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  align-items:center;
}
.vs-header__actions>a{
  position:relative;
  min-width:58px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#3c3734 !important;
}
.vs-header__actions>a>span{
  display:block;
  min-height:23px;
  font-size:21px;
  line-height:1;
}
.vs-header__actions>a>small{
  margin-top:4px;
  color:#625b57;
  font-size:9px;
  line-height:1;
}
.vs-header__cart b{
  position:absolute;
  top:-5px;
  right:8px;
  display:grid;
  place-items:center;
  min-width:18px;
  height:18px;
  padding:0 4px;
  border-radius:999px;
  background:var(--vs-accent);
  color:#fff;
  font-size:10px;
}

body.home #site-navigation.main-navigation{
  position:relative !important;
  top:auto !important;
  z-index:75 !important;
  margin:0 !important;
  border-top:1px solid #f0ebe7 !important;
  border-bottom:1px solid #e8e1dc !important;
  background:#fff !important;
  box-shadow:none !important;
}
body.home #site-navigation.main-navigation .fixed{
  width:min(1540px,calc(100% - 64px)) !important;
  max-width:1540px !important;
  min-height:44px !important;
  margin:0 auto !important;
  padding:0 !important;
}
body.home #site-navigation.main-navigation ul{
  justify-content:flex-start !important;
  gap:12px !important;
}
body.home #site-navigation.main-navigation ul li:first-child{display:none !important;}
body.home #site-navigation.main-navigation ul li>a,
body.home #site-navigation.main-navigation ul li>span{
  padding:14px 10px !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#423d39 !important;
  font-size:12px !important;
  font-weight:500 !important;
}
body.home #site-navigation.main-navigation ul li>a:hover{
  color:var(--vs-accent) !important;
}

.vs-hero__grid{min-height:410px !important;}
.vs-hero__content{padding-top:48px !important;padding-bottom:46px !important;}
.vs-hero__visual{min-height:410px !important;}
.vs-hero h1{font-size:54px !important;}

@media (max-width:1280px){
  .vs-header__main{
    grid-template-columns:190px 135px minmax(250px,1fr) 160px 180px;
    gap:12px;
  }
  .vs-logo__text strong{font-size:15px;}
  .vs-logo__text small{font-size:6px;}
}
@media (max-width:980px){
  .vs-header__top{display:none;}
  .vs-header__main{
    min-height:68px;
    grid-template-columns:180px minmax(240px,1fr) 165px;
  }
  .vs-catalog-button,.vs-header__phone{display:none;}
  .vs-header__actions{grid-column:3;}
}
@media (max-width:767px){
  body.home #site-navigation.main-navigation{display:none !important;}
  .vs-header__main{
    width:calc(100% - 24px);
    min-height:62px;
    grid-template-columns:44px minmax(0,1fr) 88px;
    gap:8px;
  }
  .vs-logo{width:40px;overflow:hidden;}
  .vs-logo__mark{width:36px;font-size:31px;}
  .vs-logo__text{display:none;}
  .vs-search{height:42px;}
  .vs-search input[type="search"]{height:40px;padding:0 11px;font-size:12px;}
  .vs-search button{width:44px;flex-basis:44px;}
  .vs-header__actions{grid-template-columns:repeat(2,42px);}
  .vs-header__actions>a:first-child{display:none;}
  .vs-header__actions>a{min-width:42px;}
  .vs-header__actions>a>small{display:none;}
  .vs-header__actions>a>span{font-size:20px;}
}

/* =========================================================
   VS GLOBAL HEADER — all pages
   ========================================================= */

#masthead.site-header,
#site-navigation.main-navigation{
  display:none !important;
}

.vs-global-header{
  width:100%;
  background:#fff;
}

.vs-header__top-left .vs-top-menu{
  display:flex;
  align-items:center;
  gap:18px;
  margin:0;
  padding:0;
  list-style:none;
}

.vs-header__top-left .vs-top-menu li{
  margin:0;
  padding:0;
}

.vs-header__top-left .vs-top-menu a{
  display:block;
  padding:0;
  color:#6d6762 !important;
  font-size:11px;
  line-height:1;
}

.vs-global-header .vs-header__main{
  grid-template-columns:230px minmax(360px,1fr) 185px 220px;
  min-height:80px;
  gap:22px;
}

.vs-global-header .vs-search{
  width:100%;
}

.vs-header__nav{
  border-top:1px solid #f1ece8;
  border-bottom:1px solid #e9e2dc;
  background:#fff;
}

.vs-header__nav-inner{
  display:grid;
  grid-template-columns:220px minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  min-height:54px;
}

.vs-header__nav .vs-catalog-button{
  height:42px;
  margin:6px 0;
}

.vs-primary-menu{
  min-width:0;
}

.vs-primary-menu__list{
  display:flex;
  align-items:center;
  gap:4px;
  margin:0;
  padding:0;
  list-style:none;
}

.vs-primary-menu__list > li{
  position:relative;
  margin:0;
  padding:0;
}

.vs-primary-menu__list > li > a{
  display:flex;
  align-items:center;
  min-height:52px;
  padding:0 14px;
  color:#3f3a37 !important;
  font-size:12px;
  line-height:1.15;
  font-weight:500;
  white-space:nowrap;
}

.vs-primary-menu__list > li > a:hover{
  color:var(--vs-accent) !important;
}

.vs-primary-menu__list .sub-menu{
  position:absolute;
  top:100%;
  left:0;
  z-index:120;
  display:none;
  min-width:250px;
  margin:0;
  padding:10px;
  list-style:none;
  border:1px solid #e9e2dc;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 38px rgba(64,46,36,.12);
}

.vs-primary-menu__list li:hover > .sub-menu{
  display:block;
}

.vs-primary-menu__list .sub-menu a{
  display:block;
  padding:10px 12px;
  border-radius:6px;
  color:#47413d !important;
  font-size:12px;
  line-height:1.25;
  white-space:nowrap;
}

.vs-primary-menu__list .sub-menu a:hover{
  background:#f8f4f1;
  color:var(--vs-accent) !important;
}

.vs-header__city{
  color:#625b56;
  font-size:12px;
  white-space:nowrap;
}

@media (max-width:1180px){
  .vs-global-header .vs-header__main{
    grid-template-columns:200px minmax(260px,1fr) 165px 180px;
    gap:14px;
  }

  .vs-header__nav-inner{
    grid-template-columns:135px minmax(0,1fr);
  }

  .vs-header__city{
    display:none;
  }

  .vs-primary-menu__list > li > a{
    padding-left:9px;
    padding-right:9px;
    font-size:11px;
  }
}

@media (max-width:980px){
  .vs-header__top,
  .vs-header__nav{
    display:none;
  }

  .vs-global-header .vs-header__main{
    min-height:68px;
    grid-template-columns:180px minmax(220px,1fr) 150px;
  }

  .vs-global-header .vs-header__phone{
    display:none;
  }

  .vs-global-header .vs-header__actions{
    grid-column:auto;
  }
}

@media (max-width:767px){
  .vs-global-header .vs-header__main{
    width:calc(100% - 24px);
    grid-template-columns:44px minmax(0,1fr) 88px;
    gap:8px;
  }

  .vs-global-header .vs-logo{
    width:40px;
    overflow:hidden;
  }

  .vs-global-header .vs-logo__mark{
    width:36px;
  }

  .vs-global-header .vs-logo__text{
    display:none;
  }

  .vs-global-header .vs-header__actions{
    grid-template-columns:repeat(2,42px);
  }

  .vs-global-header .vs-header__actions > a:first-child{
    display:none;
  }

  .vs-global-header .vs-header__actions > a > small{
    display:none;
  }
}


/* =========================================================
   VS CATEGORY COPY — 95 CATEGORY TEXTS
   Structured editorial content for product category pages
   ========================================================= */
.vs-category-copy{
  width:100%;
  box-sizing:border-box;
  margin:46px 0 8px;
  padding:clamp(24px,3vw,44px);
  border:1px solid var(--vs-line,#e8e1dc);
  border-radius:20px;
  background:#fff;
  color:var(--vs-text,#2f2e2f);
  box-shadow:0 14px 38px rgba(62,45,36,.055);
  font-size:15px;
  line-height:1.72;
}
.vs-category-copy p{margin:0 0 14px;}
.vs-category-copy p:last-child{margin-bottom:0;}
.vs-category-copy a{
  color:var(--vs-accent,#ab5a3f);
  text-decoration:none;
  border-bottom:1px solid rgba(171,90,63,.32);
}
.vs-category-copy a:hover{border-bottom-color:currentColor;}
.vs-category-copy__lead{
  max-width:1080px;
  margin:0 0 34px;
  padding:0 0 28px;
  border-bottom:1px solid var(--vs-line,#e8e1dc);
  font-size:17px;
  line-height:1.72;
  color:#5f5955;
}
.vs-category-copy__lead strong{color:var(--vs-text,#2f2e2f);font-weight:700;}
.vs-category-copy__section{margin:0;padding:30px 0 0;}
.vs-category-copy__section + .vs-category-copy__section{
  margin-top:30px;
  border-top:1px solid var(--vs-line,#e8e1dc);
}
.vs-category-copy__section h2{
  margin:0 0 18px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(20px,1.55vw,25px) !important;
  line-height:1.16 !important;
  font-weight:400 !important;
  letter-spacing:-.025em !important;
  color:var(--vs-text,#2f2e2f) !important;
}
.vs-category-copy__section h2::before{
  content:"";
  display:block;
  width:38px;
  height:3px;
  margin:0 0 12px;
  border-radius:99px;
  background:var(--vs-accent,#ab5a3f);
}
.vs-category-copy__table-wrap{
  width:100%;
  overflow-x:auto;
  margin:6px 0 4px;
  border:1px solid var(--vs-line,#e8e1dc);
  border-radius:14px;
  background:#fff;
  -webkit-overflow-scrolling:touch;
}
.vs-category-copy__table{
  width:100%;
  min-width:660px;
  margin:0 !important;
  border:0 !important;
  border-collapse:collapse;
  background:#fff;
  font-size:14px;
  line-height:1.48;
}
.vs-category-copy__table th,
.vs-category-copy__table td{
  padding:14px 16px !important;
  border:0 !important;
  border-bottom:1px solid var(--vs-line,#e8e1dc) !important;
  text-align:left;
  vertical-align:top;
}
.vs-category-copy__table th{
  background:var(--vs-bg,#f4f0ec);
  color:#514b47;
  font-size:12px;
  line-height:1.35;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.vs-category-copy__table tr:last-child td{border-bottom:0 !important;}
.vs-category-copy__table td.is-key{
  width:24%;
  color:var(--vs-text,#2f2e2f);
  font-weight:700;
}
.vs-category-copy__list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
  margin:4px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
}
.vs-category-copy__list li{
  position:relative;
  margin:0 !important;
  padding:13px 14px 13px 38px !important;
  border:1px solid var(--vs-line,#e8e1dc);
  border-radius:12px;
  background:var(--vs-card,#f7f4f1);
}
.vs-category-copy__list li::before{
  content:"✓";
  position:absolute;
  left:14px;
  top:13px;
  width:17px;
  height:17px;
  border-radius:50%;
  background:rgba(171,90,63,.12);
  color:var(--vs-accent,#ab5a3f);
  font-size:11px;
  line-height:17px;
  font-weight:800;
  text-align:center;
}
.vs-category-copy__faq{
  display:grid;
  gap:10px;
}
.vs-category-copy__faq-item{
  margin:0;
  border:1px solid var(--vs-line,#e8e1dc);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
.vs-category-copy__faq-item summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  padding:15px 48px 15px 16px;
  color:var(--vs-text,#2f2e2f);
  font-weight:700;
  line-height:1.45;
}
.vs-category-copy__faq-item summary::-webkit-details-marker{display:none;}
.vs-category-copy__faq-item summary::after{
  content:"+";
  position:absolute;
  right:16px;
  top:50%;
  width:24px;
  height:24px;
  margin-top:-12px;
  border-radius:50%;
  background:var(--vs-bg,#f4f0ec);
  color:var(--vs-accent,#ab5a3f);
  font-size:18px;
  line-height:22px;
  font-weight:400;
  text-align:center;
}
.vs-category-copy__faq-item[open] summary::after{content:"−";}
.vs-category-copy__faq-item[open] summary{
  border-bottom:1px solid var(--vs-line,#e8e1dc);
  background:var(--vs-card,#f7f4f1);
}
.vs-category-copy__faq-item > div{
  padding:14px 16px 16px;
  color:#625c58;
}
@media(max-width:767px){
  .vs-category-copy__section h2{font-size:22px !important;line-height:1.22 !important;}
  .vs-category-copy{
    margin-top:34px;
    padding:22px 16px;
    border-radius:16px;
    font-size:14px;
  }
  .vs-category-copy__lead{
    margin-bottom:24px;
    padding-bottom:22px;
    font-size:15px;
  }
  .vs-category-copy__section{padding-top:24px;}
  .vs-category-copy__section + .vs-category-copy__section{margin-top:24px;}
  .vs-category-copy__list{grid-template-columns:1fr;}
  .vs-category-copy__table{min-width:620px;font-size:13px;}
  .vs-category-copy__table th,
  .vs-category-copy__table td{padding:12px 13px !important;}
}


/* =========================================================
   VS HOME FOOTER + ICON POLISH
   ========================================================= */
.vs-icon{
  display:block;
  width:1em;
  height:1em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.vs-location,
.vs-header__city{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.vs-location .vs-icon,
.vs-header__city .vs-icon{
  width:14px;
  height:14px;
}

.vs-search button .vs-icon{
  width:21px;
  height:21px;
  margin:auto;
}

.vs-header__actions>a>span{
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
}
.vs-header__actions>a>span .vs-icon{
  width:22px;
  height:22px;
}

.vs-catalog-button__bars{
  display:grid;
  place-items:center;
}
.vs-catalog-button__bars .vs-icon{
  width:18px;
  height:18px;
  stroke-width:1.9;
}

.vs-benefit > span .vs-icon,
.vs-service-item > span .vs-icon{
  width:19px;
  height:19px;
}
.vs-benefit > span,
.vs-service-item > span{
  background:#fff;
}

.vs-product-card__heart{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
}
.vs-product-card__heart .vs-icon{
  width:20px;
  height:20px;
  stroke-width:1.55;
}
.vs-product-card__cart .vs-icon{
  width:18px;
  height:18px;
  stroke-width:1.8;
}

.vs-home-footer{
  background:#f6f2ee;
  border-top:1px solid #ebe3dd;
  color:#5f5854;
}
.vs-home-footer__grid{
  display:grid;
  grid-template-columns:1.45fr .85fr .85fr .85fr 1.25fr;
  gap:48px;
  padding-top:42px;
  padding-bottom:38px;
}
.vs-home-footer h3{
  margin:0 0 15px;
  color:#403b38 !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  letter-spacing:.02em;
}
.vs-home-footer__logo{
  text-decoration:none !important;
}
.vs-home-footer__brand p{
  max-width:290px;
  margin:20px 0 18px;
  color:#746c67;
  font-size:12px;
  line-height:1.6;
}
.vs-home-footer__contacts{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.vs-home-footer__contacts a{
  color:#312d2a !important;
  font-size:14px;
  font-weight:700;
  text-decoration:none !important;
}
.vs-home-footer__contacts span{
  color:#918983;
  font-size:10px;
}
.vs-home-footer__col{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.vs-home-footer__col a{
  margin:0 0 9px;
  color:#6a625d !important;
  font-size:11px;
  line-height:1.35;
  text-decoration:none !important;
}
.vs-home-footer__col a:hover,
.vs-home-footer__social a:hover{
  color:var(--vs-accent) !important;
}
.vs-home-footer__follow p{
  margin:0 0 15px;
  color:#817872;
  font-size:11px;
  line-height:1.5;
}
.vs-home-footer__cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:42px;
  padding:0 10px 0 14px;
  border:1px solid #e1d6cf;
  border-radius:5px;
  background:#fff;
  color:#625954 !important;
  font-size:11px;
  font-weight:600;
  text-decoration:none !important;
}
.vs-home-footer__cta span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:4px;
  background:var(--vs-accent);
  color:#fff;
}
.vs-home-footer__cta .vs-icon{
  width:16px;
  height:16px;
}
.vs-home-footer__social{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:14px;
}
.vs-home-footer__social a{
  color:#68605b !important;
  font-size:10px;
  font-weight:600;
  text-decoration:none !important;
}
.vs-home-footer__bottom{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid #e5dcd6;
  color:#9a918b;
  font-size:9px;
}

/* Parent Bono footer stays in the DOM for structural closing markup,
   but the homepage uses the new footer above. */
body.home #page > .site-footer-container{
  display:none !important;
}

@media (max-width:1199px){
  .vs-home-footer__grid{
    grid-template-columns:1.35fr repeat(3,1fr);
    gap:34px;
  }
  .vs-home-footer__follow{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr minmax(260px,420px) auto;
    align-items:center;
    gap:24px;
    padding-top:8px;
    border-top:1px solid #e5dcd6;
  }
  .vs-home-footer__follow h3,
  .vs-home-footer__follow p{
    margin:0;
  }
  .vs-home-footer__social{
    margin:0;
  }
}

@media (max-width:767px){
  .vs-home-footer__grid{
    grid-template-columns:1fr 1fr;
    gap:28px 20px;
    padding-top:32px;
    padding-bottom:28px;
  }
  .vs-home-footer__logo.vs-logo{
    width:auto;
    max-width:100%;
    overflow:visible;
    gap:8px;
  }
  .vs-home-footer__logo .vs-logo__mark{
    width:24px;
    flex:0 0 24px;
    font-size:29px;
  }
  .vs-home-footer__logo .vs-logo__text{
    display:flex;
  }
  .vs-home-footer__logo .vs-logo__text strong{
    display:block;
    font-size:13px;
    line-height:1.08;
    letter-spacing:0;
  }
  .vs-home-footer__logo .vs-logo__text small{
    display:block;
    margin-top:4px;
    font-size:6px;
    line-height:1.15;
    letter-spacing:.10em;
    white-space:normal;
    max-width:210px;
  }
  .vs-home-footer__brand,
  .vs-home-footer__follow{
    grid-column:1/-1;
  }
  .vs-home-footer__brand p{
    max-width:none;
  }
  .vs-home-footer__follow{
    display:block;
    padding-top:22px;
  }
  .vs-home-footer__follow p{
    margin:0 0 13px;
  }
  .vs-home-footer__social{
    margin-top:13px;
  }
  .vs-home-footer__bottom{
    min-height:72px;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:5px;
  }
}
@media (max-width:359px){
  .vs-home-footer__logo .vs-logo__text strong{font-size:11px;}
  .vs-home-footer__logo .vs-logo__text small{font-size:5px;}
}


/* =========================================================
   VS HOME EXPERT COPY
   ========================================================= */
.vs-home-copy{
  padding:48px 0 56px;
  background:#faf8f6;
  border-top:1px solid #eee7e2;
}
.vs-home-copy__box{
  max-width:1260px;
  margin:0 auto;
  padding:42px 46px;
  border:1px solid #e9e1db;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(65,47,37,.045);
  color:#514b47;
  font-size:14px;
  line-height:1.72;
}
.vs-home-copy__lead{
  max-width:1080px;
}
.vs-home-copy__lead .vs-eyebrow{
  margin-bottom:12px;
}
.vs-home-copy__lead h2{
  margin:0 0 18px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(26px,2.2vw,34px) !important;
  line-height:1.12 !important;
  font-weight:400 !important;
  letter-spacing:-.03em !important;
  color:#2f2b29 !important;
}
.vs-home-copy p{
  margin:0 0 14px;
}
.vs-home-copy p:last-child{
  margin-bottom:0;
}
.vs-home-copy a{
  color:var(--vs-accent) !important;
  text-decoration:none !important;
  border-bottom:1px solid rgba(171,90,63,.28);
}
.vs-home-copy a:hover{
  border-bottom-color:currentColor;
}
.vs-home-copy__section{
  margin-top:34px;
  padding-top:30px;
  border-top:1px solid #ece5df;
}
.vs-home-copy__section h3{
  margin:0 0 17px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:24px !important;
  line-height:1.2 !important;
  font-weight:400 !important;
  letter-spacing:-.02em !important;
  color:#302c29 !important;
}
.vs-home-copy__section h3::before{
  content:"";
  display:block;
  width:34px;
  height:3px;
  margin-bottom:11px;
  border-radius:99px;
  background:var(--vs-accent);
}
.vs-home-copy__table-wrap{
  width:100%;
  overflow-x:auto;
  border:1px solid #e8e0da;
  border-radius:13px;
  background:#fff;
  -webkit-overflow-scrolling:touch;
}
.vs-home-copy__table{
  width:100%;
  min-width:760px;
  margin:0 !important;
  border:0 !important;
  border-collapse:collapse;
  background:#fff;
  font-size:13px;
  line-height:1.48;
}
.vs-home-copy__table th,
.vs-home-copy__table td{
  padding:14px 16px !important;
  border:0 !important;
  border-bottom:1px solid #ece5df !important;
  text-align:left;
  vertical-align:top;
}
.vs-home-copy__table th{
  background:#f5f1ed;
  color:#5d554f;
  font-size:11px;
  line-height:1.35;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.vs-home-copy__table td:first-child{
  width:21%;
  color:#312d2a;
  font-weight:700;
}
.vs-home-copy__table tr:last-child td{
  border-bottom:0 !important;
}
.vs-home-copy__faq{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
}
.vs-home-copy__faq details{
  margin:0;
  border:1px solid #e7dfd9;
  border-radius:11px;
  background:#fff;
  overflow:hidden;
}
.vs-home-copy__faq summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  padding:15px 44px 15px 15px;
  color:#393431;
  font-weight:700;
  line-height:1.4;
}
.vs-home-copy__faq summary::-webkit-details-marker{
  display:none;
}
.vs-home-copy__faq summary::after{
  content:"+";
  position:absolute;
  top:50%;
  right:14px;
  width:23px;
  height:23px;
  margin-top:-11px;
  border-radius:50%;
  background:#f3eeea;
  color:var(--vs-accent);
  font-size:17px;
  line-height:21px;
  font-weight:400;
  text-align:center;
}
.vs-home-copy__faq details[open] summary{
  background:#f8f5f2;
  border-bottom:1px solid #e7dfd9;
}
.vs-home-copy__faq details[open] summary::after{
  content:"−";
}
.vs-home-copy__faq details>div{
  padding:13px 15px 15px;
  color:#68615d;
}

/* Defensive: old injected homepage article block must never reappear. */
body.home .msk-home-articles,
body.home .section-block.section-posts{
  display:none !important;
}

@media(max-width:767px){
  .vs-home-copy{
    padding:34px 0 38px;
  }
  .vs-home-copy__box{
    padding:25px 16px;
    border-radius:14px;
  }
  .vs-home-copy__lead h2{
    font-size:27px !important;
  }
  .vs-home-copy__section{
    margin-top:26px;
    padding-top:24px;
  }
  .vs-home-copy__section h3{
    font-size:21px !important;
  }
  .vs-home-copy__table{
    min-width:680px;
    font-size:12px;
  }
  .vs-home-copy__table th,
  .vs-home-copy__table td{
    padding:12px 13px !important;
  }
  .vs-home-copy__check ul,
  .vs-home-copy__faq{
    grid-template-columns:1fr;
  }
}




/* =========================================================
   VS HOME COPY DIV GRID FIX 20260919
   Use div cards to avoid inherited Bono list positioning
   ========================================================= */
.vs-home-copy__check-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px 12px !important;
  width:100% !important;
  align-items:stretch !important;
}
.vs-home-copy__check-card{
  position:relative !important;
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
  padding:15px 16px 15px 42px !important;
  border:1px solid #e8e0da !important;
  border-radius:12px !important;
  background:#f8f5f2 !important;
  box-sizing:border-box !important;
}
.vs-home-copy__check-card::before{
  content:"✓";
  position:absolute;
  top:15px;
  left:15px;
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(171,90,63,.11);
  color:var(--vs-accent);
  font-size:11px;
  line-height:1;
  font-weight:800;
}
@media(max-width:767px){
  .vs-home-copy__check-grid{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   VS CATEGORY LAYOUT ISOLATION 20260919
   Isolate all 94 structured category texts from Bono legacy rules
   ========================================================= */
.vs-category-copy,
.vs-category-copy *,
.vs-category-copy *::before,
.vs-category-copy *::after{
  box-sizing:border-box;
}

.vs-category-copy__section{
  float:none !important;
  clear:none !important;
  width:auto !important;
  max-width:none !important;
}

.vs-category-copy__list{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-auto-flow:row !important;
  align-items:stretch !important;
  width:100% !important;
  max-width:none !important;
  margin:4px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  float:none !important;
  clear:none !important;
}

.vs-category-copy__list > li,
.vs-category-copy__list > li:nth-child(odd),
.vs-category-copy__list > li:nth-child(even),
.vs-category-copy__list > li:first-child,
.vs-category-copy__list > li:last-child{
  position:relative !important;
  display:block !important;
  float:none !important;
  clear:none !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:auto !important;
  margin:0 !important;
  padding:13px 14px 13px 38px !important;
  grid-column:auto !important;
  grid-row:auto !important;
  list-style:none !important;
  border:1px solid var(--vs-line,#e8e1dc) !important;
  border-radius:12px !important;
  background:var(--vs-card,#f7f4f1) !important;
}

.vs-category-copy__list > li::before{
  content:"✓" !important;
  position:absolute !important;
  left:14px !important;
  top:13px !important;
  display:block !important;
  width:17px !important;
  height:17px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  background:rgba(171,90,63,.12) !important;
  color:var(--vs-accent,#ab5a3f) !important;
  font-size:11px !important;
  line-height:17px !important;
  font-weight:800 !important;
  text-align:center !important;
}

.vs-category-copy__table-wrap{
  float:none !important;
  clear:none !important;
  width:100% !important;
  max-width:100% !important;
}

.vs-category-copy__table{
  float:none !important;
  clear:none !important;
  width:100% !important;
  max-width:none !important;
  table-layout:auto !important;
}

.vs-category-copy__table tr,
.vs-category-copy__table th,
.vs-category-copy__table td{
  float:none !important;
  clear:none !important;
  max-width:none !important;
}

.vs-category-copy__faq{
  display:grid !important;
  grid-template-columns:1fr !important;
  width:100% !important;
  max-width:none !important;
  float:none !important;
  clear:none !important;
}

.vs-category-copy__faq-item,
.vs-category-copy__faq-item:nth-child(odd),
.vs-category-copy__faq-item:nth-child(even){
  display:block !important;
  float:none !important;
  clear:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
}

@media(max-width:767px){
  .vs-category-copy__list{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   VS HEADER ACTIONS + FULL WIDTH BANNERS 20260919
   ========================================================= */

/* Full-width visual banners, while text stays comfortably inset. */
body.home .vs-hero > .vs-shell,
body.home .vs-promo > .vs-shell{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

body.home .vs-hero__content{
  padding-left:clamp(32px,4vw,72px) !important;
}

body.home .vs-promo__content{
  padding-left:clamp(32px,4vw,72px) !important;
}

body.home .vs-hero__visual,
body.home .vs-promo__visual{
  background-position:center center !important;
}

/* Header has only Wishlist + Cart. */
.vs-global-header .vs-header__main{
  grid-template-columns:230px minmax(360px,1fr) 185px 176px;
}

.vs-header__actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

.vs-header__actions > a{
  position:relative;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:78px !important;
  padding:5px 4px !important;
  border-radius:9px !important;
  color:#403a36 !important;
  text-decoration:none !important;
  transition:background .18s ease,color .18s ease;
}

.vs-header__actions > a > span{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  min-height:34px !important;
  border:1px solid #e4dcd6 !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#514943 !important;
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease,
    transform .18s ease;
}

.vs-header__actions > a > span .vs-icon{
  width:19px !important;
  height:19px !important;
  stroke-width:1.65 !important;
}

.vs-header__actions > a > small{
  margin-top:5px !important;
  color:#716963 !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:500 !important;
}

.vs-header__actions > a:hover{
  background:#faf7f4 !important;
  color:var(--vs-accent) !important;
}

.vs-header__actions > a:hover > span{
  border-color:rgba(171,90,63,.42) !important;
  background:#fbf3ef !important;
  color:var(--vs-accent) !important;
  transform:translateY(-1px);
}

.vs-header__cart b{
  top:1px !important;
  right:9px !important;
  min-width:18px !important;
  height:18px !important;
  padding:0 4px !important;
  border:2px solid #fff !important;
  box-sizing:content-box !important;
  font-size:9px !important;
  line-height:18px !important;
}

/* Override the old mobile rule that used to hide the first of three actions. */
.vs-global-header .vs-header__actions > a:first-child,
.vs-header__actions > a:first-child{
  display:flex !important;
}

@media(max-width:1280px){
  .vs-global-header .vs-header__main{
    grid-template-columns:200px minmax(280px,1fr) 165px 164px;
  }
}

@media(max-width:980px){
  .vs-global-header .vs-header__main{
    grid-template-columns:180px minmax(220px,1fr) 112px;
  }

  .vs-header__actions{
    gap:4px !important;
  }

  .vs-header__actions > a{
    min-width:52px !important;
  }
}

@media(max-width:767px){
  body.home .vs-hero__content,
  body.home .vs-promo__content{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .vs-global-header .vs-header__main{
    grid-template-columns:44px minmax(0,1fr) 88px !important;
  }

  .vs-header__actions{
    gap:2px !important;
  }

  .vs-header__actions > a{
    min-width:42px !important;
    padding:0 !important;
  }

  .vs-header__actions > a > span{
    width:34px !important;
    height:34px !important;
  }

  .vs-header__actions > a > small{
    display:none !important;
  }

  .vs-header__cart b{
    top:-4px !important;
    right:-1px !important;
  }
}


/* =========================================================
   VS HERO PROMO FINAL POLISH 20260919
   Reference-like full bleed banners + cleaner header actions
   ========================================================= */
body.home .vs-hero,
body.home .vs-promo{
  position:relative;
  left:50%;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:-50vw !important;
  margin-right:-50vw !important;
}

body.home .vs-hero__grid{
  grid-template-columns:44% 56% !important;
  min-height:470px !important;
  background:#f2ece7 !important;
}

body.home .vs-hero__content{
  position:relative;
  z-index:2;
  padding:
    64px clamp(34px,4.2vw,72px)
    60px clamp(34px,4.2vw,72px) !important;
}

body.home .vs-hero__content::after{
  content:"";
  position:absolute;
  top:0;
  right:-84px;
  bottom:0;
  width:150px;
  z-index:-1;
  background:linear-gradient(
    90deg,
    #f2ece7 0%,
    rgba(242,236,231,.94) 38%,
    rgba(242,236,231,0) 100%
  );
  pointer-events:none;
}

body.home .vs-hero h1{
  max-width:650px;
  font-size:clamp(48px,4.1vw,64px) !important;
  line-height:.98 !important;
}

body.home .vs-hero p{
  max-width:560px;
  font-size:15px !important;
  line-height:1.55 !important;
}

body.home .vs-hero__visual{
  min-height:470px !important;
  background-size:cover !important;
  background-position:center 46% !important;
}

body.home .vs-hero__visual::before{
  width:13% !important;
  background:linear-gradient(
    90deg,
    #f2ece7 0%,
    rgba(242,236,231,.62) 43%,
    rgba(242,236,231,0) 100%
  ) !important;
}

body.home .vs-hero__quote{
  top:46px !important;
  right:clamp(26px,4vw,62px) !important;
  color:rgba(83,68,61,.72) !important;
  font-size:12px !important;
  line-height:1.55 !important;
  letter-spacing:.22em !important;
}

body.home .vs-promo{
  margin-top:24px !important;
}

body.home .vs-promo__inner{
  grid-template-columns:54% 46% !important;
  min-height:300px !important;
  background:
    linear-gradient(115deg,#b65d42 0%,#b65d42 54%,#c4785e 100%) !important;
}

body.home .vs-promo__content{
  position:relative;
  z-index:2;
  padding:
    48px clamp(34px,4.2vw,72px)
    48px clamp(34px,4.2vw,72px) !important;
}

body.home .vs-promo__content::after{
  content:"";
  position:absolute;
  top:0;
  right:-78px;
  bottom:0;
  width:130px;
  z-index:-1;
  background:linear-gradient(
    90deg,
    #b65d42 0%,
    rgba(182,93,66,.88) 42%,
    rgba(182,93,66,0) 100%
  );
}

body.home .vs-promo h2{
  max-width:720px;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(34px,3vw,46px) !important;
  line-height:1.08 !important;
  font-weight:400 !important;
}

body.home .vs-promo__visual{
  min-height:300px !important;
  background-size:cover !important;
  background-position:center 50% !important;
}

/* Reference-like header actions: clean line icons, no heavy circles. */
.vs-header__actions > a{
  min-width:76px !important;
  padding:6px 4px !important;
  background:transparent !important;
}

.vs-header__actions > a > span{
  width:30px !important;
  height:30px !important;
  min-height:30px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#3f3935 !important;
}

.vs-header__actions > a > span .vs-icon{
  width:22px !important;
  height:22px !important;
  stroke-width:1.55 !important;
}

.vs-header__actions > a > small{
  margin-top:3px !important;
  color:#6f6762 !important;
  font-size:9px !important;
}

.vs-header__actions > a:hover{
  background:transparent !important;
  color:var(--vs-accent) !important;
}

.vs-header__actions > a:hover > span{
  border:0 !important;
  background:transparent !important;
  color:var(--vs-accent) !important;
  transform:translateY(-1px);
}

.vs-header__cart b{
  top:1px !important;
  right:12px !important;
  min-width:16px !important;
  height:16px !important;
  padding:0 3px !important;
  border:2px solid #fff !important;
  border-radius:50px !important;
  background:var(--vs-accent) !important;
  font-size:8px !important;
  line-height:16px !important;
  font-weight:700 !important;
}

@media(max-width:767px){
  body.home .vs-hero,
  body.home .vs-promo{
    left:auto;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  body.home .vs-hero__grid{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  body.home .vs-hero__content{
    padding:34px 20px 28px !important;
  }

  body.home .vs-hero__content::after,
  body.home .vs-promo__content::after{
    display:none;
  }

  body.home .vs-hero__visual{
    min-height:270px !important;
  }

  body.home .vs-promo__inner{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  body.home .vs-promo__content{
    padding:34px 20px !important;
  }

  body.home .vs-promo__visual{
    min-height:225px !important;
  }
}


/* =========================================================
   VS MOVED SOCIAL LINKS IN NAV 20260919
   Existing Bono social module now lives where the city label was
   ========================================================= */
.vs-header__social-slot{
  justify-self:end;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:112px;
}

.vs-header__social-slot .social-links,
.vs-header__social-slot .social-buttons{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  max-width:none !important;
}

.vs-header__social-slot .social-buttons > *,
.vs-header__social-slot .social-links > *{
  margin:0 !important;
}

.vs-header__social-slot a{
  display:grid !important;
  place-items:center !important;
  width:31px !important;
  height:31px !important;
  min-width:31px !important;
  min-height:31px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid #e5ddd7 !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#5e5651 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transition:
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    transform .18s ease;
}

.vs-header__social-slot a:hover{
  color:var(--vs-accent) !important;
  border-color:rgba(171,90,63,.4) !important;
  background:#fbf5f1 !important;
  transform:translateY(-1px);
}

.vs-header__social-slot a svg,
.vs-header__social-slot a img{
  display:block !important;
  width:16px !important;
  height:16px !important;
  max-width:16px !important;
  max-height:16px !important;
  object-fit:contain !important;
}

.vs-header__social-slot a::before,
.vs-header__social-slot a::after{
  font-size:15px;
}

@media(max-width:1180px){
  .vs-header__social-slot{
    display:none !important;
  }
}




/* =========================================================
   VS GLOBAL FOOTER + CONSTRUCTOR BANNERS FINAL 20260919
   ========================================================= */

/* The new storefront footer is global; keep Bono's old footer only as hidden
   lifecycle markup so parent-theme hooks/scripts still have their container. */
body #page > .site-footer-container{
  display:none !important;
}

.vs-site-footer{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  position:relative !important;
  z-index:1;
}

/* Banner 1: the constructor image is the entire wide hero canvas.
   Content overlays the left side, so the right edge of the artwork is retained. */
body.home .vs-hero{
  position:relative !important;
  left:50% !important;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:-50vw !important;
  margin-right:-50vw !important;
  overflow:hidden !important;
  isolation:isolate;
  background-color:#f2ece7 !important;
  background-image:var(--vs-hero-image) !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:var(--vs-hero-position,right center) !important;
}

body.home .vs-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      #f2ece7 0%,
      #f2ece7 31%,
      rgba(242,236,231,.97) 38%,
      rgba(242,236,231,.78) 45%,
      rgba(242,236,231,.18) 56%,
      rgba(242,236,231,0) 65%
    );
}

body.home .vs-hero__grid{
  position:relative;
  z-index:1;
  width:100% !important;
  max-width:none !important;
  min-height:var(--vs-hero-height,500px) !important;
  grid-template-columns:45% 55% !important;
}

body.home .vs-hero__content{
  max-width:760px;
  padding:
    60px clamp(34px,4.2vw,72px)
    56px clamp(34px,4.2vw,72px) !important;
}

body.home .vs-hero__content::after{
  display:none !important;
}

body.home .vs-hero__visual{
  min-height:var(--vs-hero-height,500px) !important;
  background:none !important;
}

body.home .vs-hero__visual::before{
  display:none !important;
}

body.home .vs-hero__quote{
  right:clamp(24px,3.5vw,58px) !important;
}

/* Banner 2: same constructor logic, full-width art with left text overlay. */
body.home .vs-promo{
  position:relative !important;
  left:50% !important;
  width:100vw !important;
  max-width:100vw !important;
  margin-left:-50vw !important;
  margin-right:-50vw !important;
  overflow:hidden !important;
  isolation:isolate;
  background-color:#b65d42 !important;
  background-image:var(--vs-promo-image) !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:var(--vs-promo-position,right center) !important;
}

body.home .vs-promo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      #b65d42 0%,
      #b65d42 34%,
      rgba(182,93,66,.98) 43%,
      rgba(182,93,66,.82) 52%,
      rgba(182,93,66,.22) 64%,
      rgba(182,93,66,0) 73%
    );
}

body.home .vs-promo__inner{
  position:relative;
  z-index:1;
  width:100% !important;
  max-width:none !important;
  min-height:var(--vs-promo-height,310px) !important;
  grid-template-columns:54% 46% !important;
  background:transparent !important;
}

body.home .vs-promo__content{
  max-width:820px;
  padding:
    46px clamp(34px,4.2vw,72px)
    46px clamp(34px,4.2vw,72px) !important;
}

body.home .vs-promo__content::after{
  display:none !important;
}

body.home .vs-promo__visual{
  min-height:var(--vs-promo-height,310px) !important;
  background:none !important;
}

@media(max-width:980px){
  body.home .vs-hero::before{
    background:
      linear-gradient(
        90deg,
        #f2ece7 0%,
        #f2ece7 38%,
        rgba(242,236,231,.92) 49%,
        rgba(242,236,231,.18) 68%,
        rgba(242,236,231,0) 78%
      );
  }

  body.home .vs-promo::before{
    background:
      linear-gradient(
        90deg,
        #b65d42 0%,
        #b65d42 43%,
        rgba(182,93,66,.9) 56%,
        rgba(182,93,66,.18) 75%,
        rgba(182,93,66,0) 83%
      );
  }
}

@media(max-width:767px){
  body.home .vs-hero,
  body.home .vs-promo{
    left:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    background-image:none !important;
  }

  body.home .vs-hero::before,
  body.home .vs-promo::before{
    display:none !important;
  }

  body.home .vs-hero__grid,
  body.home .vs-promo__inner{
    grid-template-columns:1fr !important;
    min-height:0 !important;
  }

  body.home .vs-hero__content{
    max-width:none;
    padding:34px 20px 28px !important;
    background:#f2ece7;
  }

  body.home .vs-hero__visual{
    min-height:280px !important;
    margin:0 !important;
    background-color:#f2ece7 !important;
    background-image:var(--vs-hero-image) !important;
    background-repeat:no-repeat !important;
    background-size:cover !important;
    background-position:var(--vs-hero-position,right center) !important;
  }

  body.home .vs-promo__content{
    max-width:none;
    padding:34px 20px !important;
    background:#b65d42;
  }

  body.home .vs-promo__visual{
    min-height:230px !important;
    background-color:#b65d42 !important;
    background-image:var(--vs-promo-image) !important;
    background-repeat:no-repeat !important;
    background-size:cover !important;
    background-position:var(--vs-promo-position,right center) !important;
  }
}


/* =========================================================
   VS CLEAN DISABLE FLOATING CHANNELS 20260919
   Higher specificity than the shortcode's later inline !important styles.
   Module code remains intact and can be re-enabled by removing this rule.
   ========================================================= */
html body .msk-channels{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* =========================================================
   VS NATIVE CONSTRUCTOR BANNER CONTROLS 20260919
   Bono slider options mapped to the redesigned banners.
   ========================================================= */
body.home .vs-hero.vs-banner--boxed,
body.home .vs-promo.vs-banner--boxed{
  left:auto !important;
  width:min(1540px,calc(100% - 64px)) !important;
  max-width:1540px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media(max-width:767px){
  body.home .vs-banner--hide-mobile{
    display:none !important;
  }

  body.home .vs-hero.vs-banner--boxed,
  body.home .vs-promo.vs-banner--boxed{
    width:calc(100% - 24px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}


/* VS HERO BACKGROUND VISIBILITY FIX 20260919 */
body.home .vs-hero__grid,
body.home .vs-hero__visual{
  background-color:transparent !important;
}
body.home .vs-hero__grid{
  background-image:none !important;
}


/* =========================================================
   VS NATIVE HEADER SETTINGS 20260919
   Header content now comes from Bono/WordPress native settings.
   ========================================================= */
.vs-logo__image{
  display:block !important;
  width:auto !important;
  max-width:210px !important;
  height:auto !important;
  max-height:52px !important;
  object-fit:contain !important;
}

/* The first native header-menu item feeds the separate catalog button. */
.vs-header__nav .vs-catalog-button{
  min-width:150px;
  width:auto;
  padding-left:18px;
  padding-right:18px;
  white-space:nowrap;
}

/* Native social values render directly here; no DOM transfer module. */
.vs-header__social-slot > a{
  flex:0 0 auto;
}

@media(max-width:767px){
  .vs-logo__image{
    max-width:40px !important;
    max-height:40px !important;
  }
}


/* =========================================================
   VS NATIVE FOOTER SETTINGS 20260919
   ========================================================= */
.vs-home-footer__logo-image{
  display:block !important;
  width:auto !important;
  max-width:210px !important;
  height:auto !important;
  max-height:58px !important;
  object-fit:contain !important;
}

.vs-home-footer__menu{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.vs-home-footer__menu li{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.vs-home-footer__menu a{
  display:block;
  margin:0 0 9px;
  color:#6a625d !important;
  font-size:11px;
  line-height:1.35;
  text-decoration:none !important;
}

.vs-home-footer__menu a:hover{
  color:var(--vs-accent) !important;
}


/* =========================================================
   VS CATALOG BUTTON WIDTH FIX 20260919
   ========================================================= */
.vs-header__nav .vs-catalog-button{
  width:220px !important;
  min-width:220px !important;
  max-width:220px !important;
  padding-left:16px !important;
  padding-right:16px !important;
  box-sizing:border-box !important;
}

.vs-header__nav .vs-catalog-button > span:last-child{
  min-width:0;
  white-space:nowrap;
}

@media(max-width:1280px){
  .vs-header__nav-inner{
    grid-template-columns:205px minmax(0,1fr) auto;
  }

  .vs-header__nav .vs-catalog-button{
    width:205px !important;
    min-width:205px !important;
    max-width:205px !important;
    font-size:13px !important;
  }
}


/* =========================================================
   VS PRODUCT IMAGE WHITE BACKGROUND 20260919
   Product photos already have a white canvas, so do not add
   the beige site background around them. Category cards stay unchanged.
   ========================================================= */
body .shop-item__image,
body .shop-item__image-inner,
body.home .vs-product-card__image{
  background:#fff !important;
}

body .shop-item__image img,
body .shop-item__image-inner img,
body.home .vs-product-card__image img{
  background:#fff !important;
}


/* VS CATALOG / PRODUCT RESPONSIVE DESIGN — 2026-09-19
 * Presentation only. WooCommerce, Bono, filter/color/gallery handlers unchanged.
 * Scoped to the storefront; home constructor and checkout are not restyled.
 */

/* One shared content width, without the old nested 1190 / 800 px limits. */
html body.woocommerce #page #content.site-content {
  width: min(1540px, calc(100% - 64px)) !important;
  max-width: 1540px !important;
  margin: 28px auto 0 !important;
  padding: 0 0 64px !important;
  box-sizing: border-box !important;
}
html body.woocommerce #page #content .site-content-inner {
  gap: 28px !important;
  align-items: flex-start !important;
  min-width: 0 !important;
}
html body.woocommerce #page #content #primary,
html body.single-product #page #content .site-content-inner > div.product[id^="product-"] {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.woocommerce #page #content #main { min-width: 0 !important; }
html body.woocommerce #page #content #secondary.widget-area--desktop {
  flex: 0 0 248px !important;
  width: 248px !important;
  min-width: 0 !important;
  max-width: 248px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.woocommerce #page #content :is(.page-title, .entry-title, .product-info > h1) {
  font-size: clamp(27px, 2.3vw, 38px) !important;
  line-height: 1.2 !important;
  font-weight: 650 !important;
  letter-spacing: -.035em !important;
  overflow-wrap: anywhere;
  margin: 0 0 24px !important;
  color: var(--vs-text) !important;
}
html body.woocommerce #page #content .woocommerce-breadcrumb {
  gap: 5px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.7 !important;
  overflow-wrap: anywhere;
}
html body.woocommerce #page #content .woocommerce-breadcrumb :is(a, span) {
  max-width: 100%;
  white-space: normal !important;
  overflow-wrap: anywhere;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
html body.woocommerce #page #content .woocommerce-breadcrumb a { color: var(--vs-muted) !important; }
html body.woocommerce #page #content .woocommerce-breadcrumb a:hover { color: var(--vs-accent) !important; }

/* Existing category tree, including all its expand buttons and nested links. */
html body.woocommerce #page #content .msk-side-catalog-shell {
  padding: 10px !important;
  background: var(--vs-card) !important;
  border: 1px solid var(--vs-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
html body.woocommerce #page #content .msk-side-catalog > li > a {
  padding: 13px 43px 13px 12px !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: var(--vs-text) !important;
}
html body.woocommerce #page #content .msk-side-catalog > li > a:hover,
html body.woocommerce #page #content .msk-side-catalog > :is(.current-cat, .current-cat-parent) > a {
  background: #fff !important;
  border-color: var(--vs-line) !important;
  color: var(--vs-accent-dark) !important;
}
html body.woocommerce #page #content .msk-side-catalog .children a {
  font-size: 12px !important;
  line-height: 1.5 !important;
  padding-top: 9px !important;
  padding-bottom: 9px !important;
}
html body.woocommerce #page #content .msk-side-toggle {
  color: var(--vs-accent) !important;
  border-color: var(--vs-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

@media (min-width:768px) {
/* Filters: existing inputs, price application, chips, reset, sorting. */
html body.woocommerce #page #content #msk-filters-v16 {
  margin: 22px 0 28px !important;
  padding: 20px !important;
  background: var(--vs-card) !important;
  border: 1px solid var(--vs-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-items {
  gap: 18px !important;
  align-items: flex-start !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-item {
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-price { flex: 1.4 1 280px !important; }
html body.woocommerce #page #content #msk-filters-v16 :is(.msk-filter-attribute, .msk-filter-taxonomy) { flex: 1 1 190px !important; }
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-status { flex: .7 1 135px !important; }
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-reset {
  flex: 0 0 auto !important;
  padding: 24px 0 0 !important;
  border: 0 !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-item .wp-block-heading {
  font-size: 12px !important;
  color: #5c544e !important;
  line-height: 1.35 !important;
  margin-bottom: 9px !important;
}
html body.woocommerce #page #content #msk-filters-v16 .wc-block-product-filter-chips__items { gap: 7px !important; }
html body.woocommerce #page #content #msk-filters-v16 .wc-block-product-filter-chips__item {
  min-height: 38px !important;
  padding: 8px 11px !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  background: #fff !important;
  border-color: var(--vs-line) !important;
  color: var(--vs-text) !important;
  transform: none !important;
}
html body.woocommerce #page #content #msk-filters-v16 .wc-block-product-filter-chips__item:hover {
  border-color: var(--vs-accent) !important;
  box-shadow: none !important;
}
html body.woocommerce #page #content #msk-filters-v16 .wc-block-product-filter-chips__item[aria-checked="true"] {
  background: var(--vs-accent) !important;
  border-color: var(--vs-accent) !important;
  color: #fff !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-price-editor { align-items: center !important; gap: 8px !important; }
html body.woocommerce #page #content #msk-filters-v16 .msk-price-field { min-width: 0 !important; }
html body.woocommerce #page #content #msk-filters-v16 .msk-price-field input {
  height: 42px !important;
  font-size: 14px !important;
  background: #fff !important;
  border-color: var(--vs-line) !important;
  color: var(--vs-text) !important;
}
html body.woocommerce #page #content #msk-filters-v16 :is(.msk-price-submit, .msk-filter-reset-button) {
  height: 42px !important;
  min-width: 44px !important;
  font-size: 12px !important;
  border-color: var(--vs-accent) !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-price-submit {
  background: var(--vs-accent) !important;
  color: #fff !important;
}
html body.woocommerce #page #content #msk-filters-v16 .msk-filter-reset-button {
  background: #fff !important;
  color: var(--vs-accent-dark) !important;
}
html body.woocommerce #page #content #msk-filters-v16 .range-bar { background: var(--vs-accent) !important; }
html body.woocommerce #page #content #msk-filter-meta-v16 {
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-color: var(--vs-line) !important;
}
html body.woocommerce #page #content #msk-filter-meta-v16 .woocommerce-result-count {
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #6b625c !important;
  white-space: normal !important;
}
html body.woocommerce #page #content #msk-filter-meta-v16 .woocommerce-ordering select {
  height: 44px !important;
  max-width: 100% !important;
  font-size: 13px !important;
  border-color: var(--vs-line) !important;
  color: var(--vs-text) !important;
  background-color: #fff !important;
}
}

/* Product cards. Existing commerce links and metadata stay in the same DOM. */
html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) {
  display: grid !important;
  grid-template-columns: repeat(var(--msk-catalog-columns, 4), minmax(0, 1fr)) !important;
  gap: 24px 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: stretch !important;
}
html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) > .shop-item {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
}
html body.woocommerce #page #content .shop-item > .shop-item-inner {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-width: 0 !important;
  padding: 12px !important;
  background: #fff !important;
  border: 1px solid var(--vs-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  transform: none !important;
}
html body.woocommerce #page #content .shop-item > .shop-item-inner:hover {
  border-color: #cba997 !important;
  box-shadow: 0 8px 24px rgba(67, 48, 37, .07) !important;
}
html body.woocommerce #page #content .shop-item :is(.shop-item__image, .shop-item__image-inner) {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}
html body.woocommerce #page #content .shop-item .shop-item__image img {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}
html body.woocommerce #page #content .shop-item .shop-item__title {
  min-height: 66px !important;
  height: auto !important;
  max-height: none !important;
  margin: 14px 0 10px !important;
  padding: 0 !important;
  justify-content: flex-start !important;
  line-height: 1.45 !important;
  overflow: visible !important;
}
html body.woocommerce #page #content .shop-item .shop-item__title a {
  font-size: 15px !important;
  font-weight: 550 !important;
  line-height: 1.45 !important;
  color: var(--vs-text) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  text-decoration: none !important;
}
html body.woocommerce #page #content .shop-item .shop-item__title a:hover { color: var(--vs-accent-dark) !important; }
html body.woocommerce #page #content .shop-item :is(.shop-item__price, .price) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  gap: 4px 8px !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 20px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: var(--vs-text) !important;
  white-space: normal !important;
}
html body.woocommerce #page #content .shop-item .price ins { font-size: 20px !important; color: var(--vs-accent-dark) !important; text-decoration: none !important; }
html body.woocommerce #page #content .shop-item .price del { font-size: 13px !important; font-weight: 400 !important; color: #807873 !important; }
html body.woocommerce #page #content .shop-item .price :is(ins, del) .amount { font-size: inherit !important; color: inherit !important; }
html body.woocommerce #page #content .shop-item .shop-item__in-stock {
  flex-wrap: wrap !important;
  gap: 5px !important;
  min-height: 22px !important;
  padding: 0 !important;
  margin: 8px 0 0 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}
html body.woocommerce #page #content .shop-item .msk-final-card-row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 14px 0 0 !important;
  margin: auto 0 0 !important;
}
html body.woocommerce #page #content .shop-item :is(.msk-final-cart, .msk-final-brand) {
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 42px !important;
  padding: 10px !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  white-space: normal !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
  text-overflow: clip !important;
}
html body.woocommerce #page #content .shop-item .msk-final-cart {
  flex: 1 1 108px !important;
  border: 1px solid var(--vs-accent) !important;
  background: var(--vs-accent) !important;
  color: #fff !important;
}
html body.woocommerce #page #content .shop-item .msk-final-brand {
  flex: 1 1 86px !important;
  border: 1px solid var(--vs-line) !important;
  background: var(--vs-card) !important;
  color: #65594f !important;
}
html body.woocommerce #page #content .shop-item .msk-final-cart:hover {
  background: var(--vs-accent-dark) !important;
  border-color: var(--vs-accent-dark) !important;
  box-shadow: none !important;
  transform: none !important;
}
html body.woocommerce #page #content .shop-item .msk-final-brand:hover { border-color: var(--vs-accent) !important; box-shadow: none !important; transform: none !important; }
html body.woocommerce #page #content .shop-item .shop-item__badges {
  top: 10px !important;
  left: 10px !important;
  gap: 5px !important;
}
html body.woocommerce #page #content .shop-item :is(.shop-item__badge, .onsale) {
  min-height: 23px !important;
  height: auto !important;
  padding: 4px 7px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  border-radius: 5px !important;
}
html body.woocommerce #page #content .shop-item .shop-item__badge--new { color: #536653 !important; background: #edf2e9 !important; }
html body.woocommerce #page #content .shop-item .shop-item__badge--hit { color: #7b4d39 !important; background: #f4e6dd !important; }
html body.woocommerce #page #content .shop-item :is(.onsale, .shop-item__badge--onsale) { color: #fff !important; background: var(--vs-accent) !important; }
html body.woocommerce #page #content .shop-item .shop-item__icons { top: 8px !important; right: 8px !important; gap: 8px !important; }
html body.woocommerce #page #content .shop-item :is(.shop-item__icons-favorite, .shop-item__icons-quick) {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  color: var(--vs-accent-dark) !important;
  border: 1px solid var(--vs-line) !important;
  box-shadow: none !important;
}
html body.woocommerce #page #content .shop-item :is(.shop-item__icons-favorite.in-favorite, .shop-item__icons-favorite:hover, .shop-item__icons-quick:hover) {
  color: #fff !important;
  background: var(--vs-accent) !important;
}

/* Single product: fluid gallery and purchase information, no negative offsets. */
html body.single-product #page #content .product-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 0 40px !important;
  padding: 0 !important;
}
html body.single-product #page #content .product-container > :is(.product-images, .product-info) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: initial !important;
}
html body.single-product #page #content .product-images .woocommerce-product-gallery {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}
html body.single-product #page #content .msk-gallery-stage { border: 1px solid var(--vs-line); border-radius: 14px; background: #fff; }
html body.single-product #page #content .msk-gallery-thumbs { width: 100% !important; max-width: 100% !important; }
html body.single-product #page #content .msk-gallery-thumb.is-active { border-color: var(--vs-accent) !important; }
html body.single-product #page #content .msk-gallery-progress-bar { background: var(--vs-accent); }
html body.single-product #page #content .product-info > h1 { font-size: clamp(25px, 2vw, 34px) !important; margin-bottom: 18px !important; }
html body.single-product #page #content .product-info > p.price {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  gap: 6px 12px !important;
  margin: 0 0 12px !important;
  font-size: 28px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: var(--vs-text) !important;
}
html body.single-product #page #content .product-info > p.price ins { color: var(--vs-accent-dark) !important; text-decoration: none !important; }
html body.single-product #page #content .product-info > p.price del { color: #8a817b !important; font-size: 17px !important; font-weight: 400 !important; }
html body.single-product #page #content .product-info > #msk-product-stock-favorite { gap: 12px !important; margin: 0 0 16px !important; }
html body.single-product #page #content .product-info form.cart { margin: 0 0 18px !important; padding: 0 !important; }
html body.single-product #page #content .product-info form.cart .msk-purchase-row {
  display: grid !important;
  grid-template-columns: 104px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row > .quantity {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 104px !important;
  min-width: 104px !important;
  max-width: 104px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  grid-template-columns: 34px 34px 34px !important;
  grid-template-rows: 46px !important;
  background: #fff !important;
  border-color: var(--vs-line) !important;
  border-radius: 8px !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row .quantity :is(input.qty, .quantity-minus, .quantity-plus) {
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  font-size: 16px !important;
  color: var(--vs-text) !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row .single_add_to_cart_button {
  grid-column: 2 !important;
  grid-row: 1 !important;
  border-color: var(--vs-accent) !important;
  background: var(--vs-accent) !important;
  color: #fff !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.js-buy-one-click, .bono_buy_one_click) {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  border: 1px solid var(--vs-accent) !important;
  background: #fff !important;
  color: var(--vs-accent-dark) !important;
  text-indent: 0 !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.single_add_to_cart_button, .js-buy-one-click, .bono_buy_one_click) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 48px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 650 !important;
  white-space: normal !important;
  border-radius: 8px !important;
}
html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.js-buy-one-click, .bono_buy_one_click)::before { content: none !important; display: none !important; }
html body.single-product #page #content .product-info form.cart .msk-purchase-row .single_add_to_cart_button:hover { background: var(--vs-accent-dark) !important; border-color: var(--vs-accent-dark) !important; }
html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.js-buy-one-click, .bono_buy_one_click):hover { background: var(--vs-card) !important; }
html body.single-product #page #content .product_meta {
  font-size: 13px !important;
  line-height: 1.7 !important;
  margin: 18px 0 !important;
  color: #70665f !important;
  overflow-wrap: anywhere;
}
html body.single-product #page #content .product_meta a { color: #51453c !important; }
html body.single-product #page #content .woocommerce-product-form-wrap,
html body.single-product #page #content .product-pay-delivery,
html body.single-product #page #content .product-related-article-link.msk-guide-host,
html body.single-product #page #content .msk-product-guide-card,
html body.single-product #page #content .msk-product-info-row,
html body.single-product #page #content .msk-product-channels-card,
html body.single-product #page #content .msk-color-picker.msk-positioned {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
html body.single-product #page #content :is(.msk-product-guide-card, .msk-color-picker.msk-positioned, .msk-product-channels-card) {
  border-color: var(--vs-line) !important;
  border-radius: 10px !important;
  background: var(--vs-card) !important;
  box-shadow: none !important;
}
html body.single-product #page #content .msk-guide-title { font-size: 14px !important; line-height: 1.45 !important; }
html body.single-product #page #content :is(.msk-guide-label, .msk-guide-description) { font-size: 12px !important; color: #746b64 !important; line-height: 1.4 !important; }
html body.single-product #page #content :is(.msk-guide-icon, .msk-guide-arrow),
html body.single-product #page #content .msk-guide-icon::before { color: var(--vs-accent) !important; }
html body.single-product #page #content .msk-color-desktop-heading strong { white-space: normal !important; font-size: 14px !important; line-height: 1.4 !important; }
html body.single-product #page #content .msk-selected-summary--desktop { left: auto !important; transform: none !important; max-width: 100% !important; }
html body.single-product #page #content .msk-swatch-grid { grid-template-columns: repeat(auto-fit, minmax(52px, 1fr)) !important; gap: 9px !important; }
html body.single-product #page #content .msk-tier-tab.is-active { border-color: var(--vs-accent) !important; background: #f6e9e1 !important; }
html body.single-product #page #content .msk-tier-tab { min-height: 48px !important; }
html body.single-product #page #content .msk-color-note { font-size: 12px !important; line-height: 1.5 !important; }
html body.single-product #page #content .woocommerce-tabs {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 40px !important;
  padding-top: 28px !important;
  border-top: 0 !important;
  overflow-wrap: anywhere;
}
html body.single-product #page #content .woocommerce-Tabs-panel { font-size: 15px !important; line-height: 1.75 !important; }
html body.single-product #page #content .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 8px; }
html body.single-product #page #content .msk-product-bottom-section {
  width: 100% !important;
  max-width: 100% !important;
  margin: 40px 0 0 !important;
}
html body.woocommerce #page #content .woocommerce-pagination { margin-top: 32px !important; }
html body.woocommerce #page #content .woocommerce-pagination ul { display: flex !important; flex-wrap: wrap !important; justify-content: center; gap: 7px !important; border: 0 !important; }
html body.woocommerce #page #content .woocommerce-pagination :is(a, span) { min-width: 42px !important; min-height: 42px !important; border-radius: 8px !important; }

/* Focus is visible without changing JS events or disabled states. */
html body.woocommerce #page #content :is(a, button, input, select):focus-visible {
  outline: 2px solid var(--vs-accent) !important;
  outline-offset: 3px !important;
}

@media (min-width: 1024px) and (max-width: 1279px) {
  html body.woocommerce #page #content.site-content { width: calc(100% - 40px) !important; }
  html body.woocommerce #page #content .site-content-inner { gap: 22px !important; }
  html body.woocommerce #page #content #secondary.widget-area--desktop { flex-basis: 220px !important; width: 220px !important; max-width: 220px !important; }
  html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  html body.single-product #page #content .product-container { gap: 20px !important; }
}

@media (max-width: 1023px) {
  html body.woocommerce #page #content.site-content { width: calc(100% - 40px) !important; margin-top: 22px !important; }
  html body.woocommerce #page #content .site-content-inner { flex-wrap: wrap !important; gap: 20px !important; }
  html body.woocommerce #page #content #primary,
  html body.single-product #page #content .site-content-inner > div.product[id^="product-"] { flex: 1 1 100% !important; width: 100% !important; }
  html body.woocommerce.archive #page #content #secondary.widget-area--desktop {
    display: block !important;
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    order: -1 !important;
  }
  html body.woocommerce.archive #page #content #secondary .sticky-sidebar { position: static !important; transform: none !important; width: 100% !important; }
  html body.woocommerce.archive #page #content .msk-side-catalog-shell { padding: 8px !important; }
  html body.woocommerce.archive #page #content .msk-side-catalog {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 4px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }
  html body.woocommerce.archive #page #content .msk-side-catalog > li {
    flex: 0 0 210px !important;
    width: 210px !important;
    margin: 0 !important;
  }
  html body.woocommerce.archive #page #content .msk-side-catalog > li > .children { max-height: 230px !important; overflow-y: auto !important; }
  html body.single-product #page #content #secondary.widget-area--desktop { display: none !important; }
  html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 18px 14px !important; }
}

@media (max-width: 767px) {
  html body.woocommerce #page #content.site-content {
    width: calc(100% - 28px) !important;
    margin: 16px auto 0 !important;
    padding-bottom: 40px !important;
  }
  html body.woocommerce #page #content :is(.page-title, .entry-title, .product-info > h1) { font-size: 26px !important; line-height: 1.25 !important; margin-bottom: 18px !important; }
  html body.woocommerce #page #content .woocommerce-breadcrumb { font-size: 11px !important; margin-bottom: 14px !important; }
  html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px 10px !important; }
  html body.woocommerce #page #content .shop-item > .shop-item-inner { padding: 9px !important; border-radius: 10px !important; }
  html body.woocommerce #page #content .shop-item .shop-item__title { min-height: 61px !important; margin: 12px 0 9px !important; }
  html body.woocommerce #page #content .shop-item .shop-item__title a { font-size: 13px !important; line-height: 1.5 !important; }
  html body.woocommerce #page #content .shop-item :is(.shop-item__price, .price, .price ins) { font-size: 17px !important; gap: 3px 6px !important; line-height: 1.35 !important; }
  html body.woocommerce #page #content .shop-item .price del { font-size: 12px !important; }
  html body.woocommerce #page #content .shop-item .msk-final-card-row { gap: 6px !important; padding-top: 12px !important; }
  html body.woocommerce #page #content .shop-item :is(.msk-final-cart, .msk-final-brand) { flex: 1 1 100% !important; width: 100% !important; min-height: 44px !important; padding: 9px 5px !important; }
  html body.woocommerce #page #content .shop-item .shop-item__badges { top: 7px !important; left: 7px !important; max-width: calc(100% - 49px) !important; gap: 3px !important; }
  html body.woocommerce #page #content .shop-item :is(.shop-item__badge, .onsale) { font-size: 10px !important; min-height: 20px !important; padding: 3px 5px !important; }
  html body.woocommerce #page #content .shop-item .shop-item__icons { top: 5px !important; right: 5px !important; }
  html body.woocommerce #page #content .shop-item .shop-item__icons-favorite { width: 38px !important; min-width: 38px !important; height: 38px !important; min-height: 38px !important; }
  html body.single-product #page #content .product-container { display: flex !important; flex-direction: column !important; gap: 22px !important; margin: 0 0 28px !important; }
  html body.single-product #page #content .product-info > p.price { justify-content: flex-start !important; text-align: left !important; font-size: 28px !important; }
  html body.single-product #page #content .product-info > #msk-product-stock-favorite { display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 12px !important; margin: 0 0 16px !important; }
  html body.single-product #page #content .product-info > #msk-product-stock-favorite > .product-meta__in-stock { justify-self: start !important; }
  html body.single-product #page #content .msk-product-guide-card { padding: 14px !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-color-toggle {
    grid-template-columns: 40px minmax(0, 1fr) 18px !important;
    gap: 10px !important;
    padding: 14px !important;
    background: var(--vs-card) !important;
  }
  html body.single-product #page #content .msk-color-picker--mobile .msk-color-cue { grid-column: 1 !important; grid-row: 1 !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-color-toggle-title { grid-column: 2 !important; grid-row: 1 !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-color-chevron { grid-column: 3 !important; grid-row: 1 !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-selected-summary { grid-column: 1 / -1 !important; grid-row: 2 !important; width: 100% !important; transform: none !important; padding-top: 4px !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-selected-line { grid-template-columns: auto minmax(0, 1fr) !important; }
  html body.single-product #page #content .msk-color-picker--mobile .msk-selected-line :is(b, small) { font-size: 12px !important; line-height: 1.4 !important; white-space: normal !important; }
  html body.single-product #page #content .msk-tier-tabs { gap: 6px !important; }
  html body.single-product #page #content .msk-tier-tab { padding: 7px !important; }
  html body.single-product #page #content .msk-tier-tab :is(span, small) { white-space: normal !important; line-height: 1.3 !important; }
  html body.single-product #page #content .msk-swatch-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  html body.single-product #page #content .woocommerce-tabs { margin-bottom: 28px !important; padding-top: 24px !important; }
  html body.single-product #page #content .woocommerce-Tabs-panel { font-size: 14px !important; line-height: 1.75 !important; }
  html body.woocommerce #page #content :is(.woocommerce-product-attributes, .woocommerce-Tabs-panel table) { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  html body.woocommerce #page #content .woocommerce-pagination { margin-top: 24px !important; }
}

@media (max-width: 359px) {
  html body.woocommerce #page #content.site-content { width: calc(100% - 20px) !important; }
  html body.woocommerce #page #content .shop-grid:not(.swiper-wrapper) { gap: 12px 8px !important; }
  html body.woocommerce #page #content .shop-item > .shop-item-inner { padding: 7px !important; }
  html body.woocommerce #page #content .shop-item :is(.shop-item__price, .price, .price ins) { font-size: 15px !important; }
  html body.single-product #page #content .msk-tier-tabs { grid-template-columns: minmax(0, 1fr) !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body.woocommerce #page #content :is(.shop-item-inner, .msk-final-cart, .msk-final-brand, .msk-gallery-track, .msk-gallery-thumbs) { transition: none !important; scroll-behavior: auto !important; }
}
/* Keep the existing header links available on touch screens as well. */
html body .vs-primary-menu__list li:focus-within > .sub-menu { display: block; }
@media (max-width: 980px) {
  html body .vs-global-header .vs-header__nav { display: block !important; }
  html body .vs-global-header .vs-header__nav-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 12px !important;
    width: calc(100% - 28px) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 8px 0 2px !important;
  }
  html body .vs-global-header .vs-header__nav .vs-catalog-button {
    display: flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
  }
  html body .vs-global-header .vs-primary-menu { flex: 1 1 100% !important; width: 100% !important; max-width: 100% !important; }
  html body .vs-global-header .vs-primary-menu__list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 4px !important;
    max-width: 100% !important;
    padding: 2px 0 5px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }
  html body .vs-global-header .vs-primary-menu__list > li { flex: 0 0 auto !important; }
  html body .vs-global-header .vs-primary-menu__list > li > a { min-height: 42px !important; padding: 0 9px !important; font-size: 12px !important; }
  html body .vs-global-header .vs-primary-menu__list .sub-menu {
    position: static !important;
    min-width: 220px !important;
    max-width: 280px !important;
    box-shadow: none !important;
  }
  html body .vs-global-header .vs-primary-menu__list .sub-menu a { white-space: normal !important; line-height: 1.4 !important; }
}
@media (max-width: 767px) {
  html body .vs-global-header .vs-header__main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "brand actions" "search search" !important;
    width: calc(100% - 28px) !important;
    gap: 12px 8px !important;
    padding: 12px 0 !important;
    min-height: 0 !important;
  }
  html body .vs-global-header .vs-logo { grid-area: brand !important; width: auto !important; min-width: 0 !important; gap: 8px !important; overflow: visible !important; }
  html body .vs-global-header .vs-logo__mark { width: 24px !important; flex: 0 0 24px !important; font-size: 29px !important; }
  html body .vs-global-header .vs-logo__text { display: flex !important; }
  html body .vs-global-header .vs-logo__text strong { font-size: 13px !important; letter-spacing: 0 !important; }
  html body .vs-global-header .vs-logo__text small { font-size: 6px !important; letter-spacing: .12em !important; }
  html body .vs-global-header .vs-logo__image { max-width: 172px !important; width: 100% !important; height: auto !important; max-height: 42px !important; }
  html body .vs-global-header .vs-search { grid-area: search !important; width: 100% !important; min-width: 0 !important; height: 46px !important; }
  html body .vs-global-header .vs-search input[type="search"] { font-size: 16px !important; padding-left: 12px !important; }
  html body .vs-global-header .vs-header__actions { grid-area: actions !important; display: flex !important; gap: 2px !important; width: auto !important; }
  html body .vs-global-header .vs-header__actions > a,
  html body .vs-global-header .vs-header__actions > a:first-child { display: flex !important; width: 44px !important; min-width: 44px !important; min-height: 44px !important; }
  html body .vs-global-header .vs-header__actions > a > small { display: none !important; }
  html body .vs-global-header .vs-header__nav .vs-catalog-button { width: 100% !important; }
  html body .vs-global-header .vs-header__social-slot { display: none !important; }
  html body.single-product #page #content .woocommerce-Tabs-panel :is(img, video) { max-width: 100% !important; height: auto !important; }
  html body.single-product #page #content .woocommerce-Tabs-panel iframe { width: 100% !important; max-width: 100% !important; height: auto !important; aspect-ratio: 16 / 9; }
}
@media (max-width: 359px) {
  html body .vs-global-header .vs-logo__text strong { font-size: 11px !important; }
  html body .vs-global-header .vs-logo__text small { font-size: 5px !important; }
  html body .vs-global-header .vs-logo__image { max-width: 150px !important; }
}
/* Product dialogs use the same palette and fit short or narrow screens. */
html body.woocommerce :is(.quick-view__holder, .one-click-buy__holder) {
  z-index: 110000 !important;
  background: rgba(47, 46, 47, .46) !important;
  overscroll-behavior: contain;
}
html body.woocommerce .quick-view__container {
  width: min(1040px, calc(100% - 40px)) !important;
  max-width: 1040px !important;
  max-height: calc(100vh - 48px);
  max-height: calc(100dvh - 48px);
  margin: 24px auto !important;
  padding: 42px 24px 24px !important;
  border: 1px solid var(--vs-line) !important;
  border-radius: 16px !important;
  overflow: auto !important;
  box-sizing: border-box !important;
  background: #fff !important;
}
html body.woocommerce .quick-view .msk-quick-view-product {
  border: 0 !important;
  border-radius: 0 !important;
  min-width: 0 !important;
}
html body.woocommerce .quick-view .msk-quick-view-product .product-container {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1fr) !important;
  gap: 24px !important;
  min-height: 0 !important;
  margin: 0 !important;
}
html body.woocommerce .quick-view .msk-quick-view-product :is(.product-images, .product-info) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px !important;
  box-sizing: border-box !important;
}
html body.woocommerce .quick-view .msk-quick-view-product .product-images img {
  width: 100% !important;
  max-width: 400px !important;
  height: auto !important;
  max-height: 400px !important;
  aspect-ratio: 1;
  transform: none !important;
  object-fit: contain !important;
}
html body.woocommerce .quick-view .msk-quick-view-product .product-info h1 {
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  color: var(--vs-text) !important;
  overflow-wrap: anywhere;
}
html body.woocommerce .quick-view .msk-quick-view-product :is(.price, .price ins) { color: var(--vs-accent-dark) !important; }
html body.woocommerce .quick-view .msk-quick-view-product .price del { color: var(--vs-muted) !important; }
html body.woocommerce .quick-view .msk-quick-view-product .add_to_cart_button,
html body.single-product .one-click-buy .bono_buy_one_click_submit {
  background: var(--vs-accent) !important;
  border-color: var(--vs-accent) !important;
}
html body.woocommerce .quick-view .msk-quick-view-product .add_to_cart_button:hover,
html body.single-product .one-click-buy .bono_buy_one_click_submit:hover {
  background: var(--vs-accent-dark) !important;
  border-color: var(--vs-accent-dark) !important;
}
html body.woocommerce .quick-view .msk-quick-view-more {
  color: var(--vs-accent-dark) !important;
  border-color: var(--vs-line) !important;
  background: var(--vs-card) !important;
}
html body.woocommerce .quick-view .msk-quick-view-product .woocommerce-product-form-wrap { gap: 10px !important; }
html body.woocommerce .quick-view .msk-quick-view-product .woocommerce-product-form-wrap > .button { min-height: 46px !important; padding: 12px 16px !important; line-height: 1.4 !important; text-align: center !important; }
html body.woocommerce .quick-view .msk-quick-view-delivery-icon { color: var(--vs-accent) !important; }
html body.woocommerce .quick-view__close,
html body.single-product .one-click-buy .one-click-buy__close {
  top: 8px !important;
  right: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: var(--vs-card) !important;
  cursor: pointer !important;
}
html body.single-product .one-click-buy .one-click-buy__container {
  max-height: calc(100vh - 48px);
  max-height: calc(100dvh - 48px);
  margin: 24px auto !important;
  overflow-y: auto !important;
  border-color: var(--vs-line) !important;
  background: #fff !important;
}
html body.single-product .one-click-buy .one-click-buy__form-row input:not([type="checkbox"]):focus {
  border-color: var(--vs-accent) !important;
  box-shadow: 0 0 0 3px rgba(171, 90, 63, .12) !important;
}
html body.woocommerce .msk-floating-messenger,
html body.home .msk-floating-messenger { width: 44px !important; height: 44px !important; color: var(--vs-accent); border-color: var(--vs-line); border-radius: 12px !important; background: #fff; box-shadow: 0 3px 12px rgba(47, 46, 47, .08); }
html body.woocommerce .msk-floating-messenger:hover,
html body.home .msk-floating-messenger:hover { color: var(--vs-accent-dark); border-color: var(--vs-accent-soft); background: var(--vs-card); }
html body.woocommerce .msk-floating-messenger :is(svg, .msk-max-official),
html body.home .msk-floating-messenger :is(svg, .msk-max-official) { width: 27px !important; height: 27px !important; flex-basis: 27px !important; }
@media (max-width: 767px) {
  html body.woocommerce .quick-view__container,
  html body.single-product .one-click-buy .one-click-buy__container {
    width: calc(100% - 24px) !important;
    max-width: 480px !important;
    max-height: calc(100vh - 24px);
    max-height: calc(100dvh - 24px);
    margin: 12px auto !important;
    border-radius: 12px !important;
  }
  html body.woocommerce .quick-view__container { padding: 52px 16px 20px !important; }
  html body.woocommerce .quick-view .msk-quick-view-product .product-container { grid-template-columns: minmax(0, 1fr) !important; gap: 16px !important; }
  html body.woocommerce .quick-view .msk-quick-view-product :is(.product-images, .product-info) { padding: 0 !important; }
  html body.woocommerce .quick-view .msk-quick-view-product .product-images img { width: min(100%, 220px) !important; max-height: 220px !important; }
  html body.woocommerce .quick-view .msk-quick-view-product .woocommerce-product-form-wrap > .button { flex: 1 1 100% !important; width: 100% !important; }
  html body.single-product .one-click-buy .one-click-buy__form-row input:not([type="checkbox"]) { font-size: 16px !important; }
  html body.single-product .one-click-buy .bono_buy_one_click_outline { min-height: 44px !important; }
}
/* The existing bottom navigation provides the category drawer on phones. */
@media (max-width: 767px) {
  html body.woocommerce.archive #page #content #secondary.widget-area--desktop { display: none !important; }
  html body .msk-mobile-bottom-nav { border-color: var(--vs-line) !important; background: #fff !important; }
  html body .msk-mobile-bottom-nav .msk-chat-nav-link {
    color: var(--vs-accent-dark) !important;
    background: var(--vs-card) !important;
    border-color: var(--vs-line) !important;
  }
  html body .msk-mobile-bottom-nav .msk-mobile-nav-item[aria-expanded="true"] { color: var(--vs-accent-dark) !important; background: var(--vs-card) !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  html body.woocommerce.archive #page #content :is(.msk-side-catalog-shell, .msk-side-root-wrapper) { display: block !important; }
}
/* END VS CATALOG / PRODUCT RESPONSIVE DESIGN */


/* VS SINGLE PRODUCT DESKTOP V3 — 2026-09-20
 * Real breadcrumb row above both columns + rebuilt always-open color/configuration panel.
 */
@media (min-width:1024px) {
  html body.single-product #page #content .product-container {
    display:grid !important;
    grid-template-columns:minmax(390px,500px) minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:36px !important;
    row-gap:14px !important;
    align-items:start !important;
    width:100% !important;
    margin:0 0 40px !important;
  }

  /* Breadcrumb is now a real first grid row, not part of the right column. */
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row {
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    color:#8b827c !important;
    font-size:11px !important;
    line-height:1.45 !important;
  }
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row :is(a,span) {
    flex:0 1 auto !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row a {
    color:#817872 !important;
    text-decoration:none !important;
  }
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row a:hover {
    color:var(--vs-accent) !important;
  }

  html body.single-product #page #content .product-container > .product-images {
    grid-column:1 !important;
    grid-row:2 !important;
    width:100% !important;
    max-width:500px !important;
    justify-self:start !important;
    padding-top:2px !important;
  }
  html body.single-product #page #content .product-container > .product-info {
    grid-column:2 !important;
    grid-row:2 !important;
    width:100% !important;
    min-width:0 !important;
    padding-top:0 !important;
  }
  html body.single-product #page #content .product-images .woocommerce-product-gallery,
  html body.single-product #page #content .product-images .msk-gallery-stage,
  html body.single-product #page #content .product-images .msk-gallery-thumbs {
    width:100% !important;
    max-width:500px !important;
  }

  html body.single-product #page #content .product-info > h1 {
    margin:0 0 10px !important;
    font-size:clamp(22px,1.45vw,28px) !important;
    line-height:1.18 !important;
    letter-spacing:-.025em !important;
  }
  html body.single-product #page #content .product-info > p.price {
    margin:0 0 8px !important;
    font-size:25px !important;
    line-height:1.22 !important;
  }
  html body.single-product #page #content .product-info > #msk-product-stock-favorite {
    margin:0 0 9px !important;
  }
  html body.single-product #page #content .product_meta {
    margin:10px 0 12px !important;
  }

  /* Compact purchase row. */
  html body.single-product #page #content .product-info form.cart {
    margin:0 0 10px !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row {
    display:grid !important;
    grid-template-columns:88px 178px 196px !important;
    grid-template-rows:42px !important;
    justify-content:start !important;
    align-items:stretch !important;
    gap:8px !important;
    width:max-content !important;
    max-width:100% !important;
    margin:0 !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row > .quantity {
    grid-column:1 !important;
    grid-row:1 !important;
    width:88px !important;
    min-width:88px !important;
    max-width:88px !important;
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    grid-template-columns:28px 32px 28px !important;
    grid-template-rows:40px !important;
    border-radius:8px !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row .quantity :is(input.qty,.quantity-minus,.quantity-plus) {
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    font-size:13px !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row .single_add_to_cart_button {
    grid-column:2 !important;
    grid-row:1 !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.js-buy-one-click,.bono_buy_one_click) {
    grid-column:3 !important;
    grid-row:1 !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.single_add_to_cart_button,.js-buy-one-click,.bono_buy_one_click) {
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    padding:0 12px !important;
    border-radius:8px !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:650 !important;
    white-space:nowrap !important;
  }

  /* ===== Rebuilt desktop colour / configuration panel ===== */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop.msk-positioned {
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:14px 0 0 !important;
    padding:16px !important;
    box-sizing:border-box !important;
    border:1px solid #e6ddd6 !important;
    border-radius:12px !important;
    background:#fbf8f5 !important;
    box-shadow:none !important;
    overflow:visible !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop * {
    box-sizing:border-box !important;
  }

  /* Completely remove the old accordion/header presentation. */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop > .msk-color-toggle,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-desktop-heading,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-selected-summary--desktop,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-chevron,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-cue {
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout .vs-color-config-head {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:16px !important;
    width:100% !important;
    margin:0 0 14px !important;
    padding:0 0 13px !important;
    border-bottom:1px solid #e7ded7 !important;
  }
  html body.single-product #page #content .msk-server-layout .vs-color-config-head__copy {
    min-width:0 !important;
  }
  html body.single-product #page #content .msk-server-layout .vs-color-config-head__title {
    margin:0 !important;
    padding:0 !important;
    color:#302c29 !important;
    font-size:16px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    letter-spacing:-.01em !important;
  }
  html body.single-product #page #content .msk-server-layout .vs-color-config-head__note {
    margin:3px 0 0 !important;
    padding:0 !important;
    color:#8a817b !important;
    font-size:10px !important;
    line-height:1.4 !important;
    font-weight:500 !important;
  }

  /* Always open, with old panel geometry fully reset. */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-body,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-body[hidden],
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .vs-color-body-open {
    display:block !important;
    position:static !important;
    inset:auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    visibility:visible !important;
    opacity:1 !important;
    overflow:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-color-note {
    margin:0 0 11px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#8a817b !important;
    font-size:10px !important;
    line-height:1.4 !important;
  }

  /* Material/price tiers. */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tabs {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
    margin:0 0 13px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab {
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-content:center !important;
    gap:2px 6px !important;
    min-width:0 !important;
    min-height:46px !important;
    margin:0 !important;
    padding:8px 10px !important;
    border:1px solid #dfd5ce !important;
    border-radius:9px !important;
    background:#fff !important;
    color:#4e4742 !important;
    box-shadow:none !important;
    text-align:left !important;
    transform:none !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab:hover {
    border-color:#cba28e !important;
    background:#fff !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab.is-active {
    border-color:var(--vs-accent) !important;
    background:#f6e9e1 !important;
    color:#744b3b !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab :is(span,b,strong) {
    min-width:0 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab small {
    grid-column:1 / -1 !important;
    margin:0 !important;
    color:#8a817b !important;
    font-size:9px !important;
    line-height:1.2 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-tab em {
    align-self:start !important;
    min-width:20px !important;
    padding:2px 5px !important;
    border-radius:999px !important;
    background:#f0ebe7 !important;
    color:#817872 !important;
    font-size:9px !important;
    line-height:1.15 !important;
    font-style:normal !important;
    text-align:center !important;
  }

  /* Colour samples. */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-tier-panel {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-grid {
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(64px,72px)) !important;
    justify-content:start !important;
    gap:8px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-card {
    position:relative !important;
    min-width:0 !important;
    margin:0 !important;
    padding:3px !important;
    overflow:hidden !important;
    border:1px solid #e0d7d0 !important;
    border-radius:8px !important;
    background:#fff !important;
    box-shadow:none !important;
    transform:none !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-card:hover {
    border-color:#c79d89 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-card.is-selected {
    border-color:var(--vs-accent) !important;
    box-shadow:0 0 0 1px rgba(171,90,63,.13) !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-select {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 0 4px !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#4e4843 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-thumb {
    display:block !important;
    width:100% !important;
    aspect-ratio:1 / 1 !important;
    min-height:0 !important;
    border-radius:5px !important;
    background-size:cover !important;
    background-position:center !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-name {
    display:block !important;
    min-width:0 !important;
    min-height:13px !important;
    margin:4px 0 0 !important;
    padding:0 2px !important;
    overflow:hidden !important;
    color:#5e5651 !important;
    font-size:9px !important;
    line-height:1.2 !important;
    font-weight:600 !important;
    text-align:center !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-zoom {
    top:5px !important;
    right:5px !important;
    width:21px !important;
    height:21px !important;
    min-width:21px !important;
    min-height:21px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:var(--vs-accent-dark) !important;
    box-shadow:none !important;
  }

  /* Existing configuration controls are kept, only restyled. */
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-component-section {
    width:100% !important;
    margin:15px 0 0 !important;
    padding:14px 0 0 !important;
    border:0 !important;
    border-top:1px solid #e7ded7 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-component-section :is(h3,h4,strong) {
    color:#383330 !important;
    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-component-section :is(button,.msk-component-option,label) {
    min-height:38px !important;
    border-color:#dfd5ce !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#544d48 !important;
    box-shadow:none !important;
    font-size:10px !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-component-section :is(button,.msk-component-option,label).is-active,
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-component-section :is(button,.msk-component-option,label):has(input:checked) {
    border-color:var(--vs-accent) !important;
    background:#f6e9e1 !important;
    color:#744b3b !important;
  }
}

@media (min-width:1024px) and (max-width:1279px) {
  html body.single-product #page #content .product-container {
    grid-template-columns:minmax(350px,44%) minmax(0,1fr) !important;
    column-gap:24px !important;
  }
  html body.single-product #page #content .product-images,
  html body.single-product #page #content .product-images .woocommerce-product-gallery,
  html body.single-product #page #content .product-images .msk-gallery-stage,
  html body.single-product #page #content .product-images .msk-gallery-thumbs {
    max-width:450px !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row {
    grid-template-columns:84px 160px 178px !important;
  }
  html body.single-product #page #content .product-info form.cart .msk-purchase-row :is(.single_add_to_cart_button,.js-buy-one-click,.bono_buy_one_click) {
    padding-left:8px !important;
    padding-right:8px !important;
    font-size:11px !important;
  }
  html body.single-product #page #content .msk-server-layout .msk-color-picker--desktop .msk-swatch-grid {
    grid-template-columns:repeat(auto-fill,minmax(60px,68px)) !important;
  }
}


/* VS PRODUCT BREADCRUMB CHIPS — 2026-09-20 */
@media (min-width:1024px) {
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row {
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    font-family:Manrope,Arial,sans-serif !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row .vs-breadcrumb-chip {
    display:inline-flex !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:340px !important;
    min-height:34px !important;
    padding:7px 11px !important;
    margin:0 !important;
    border:1px solid #ded4cd !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#514a45 !important;
    box-shadow:none !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:550 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    transition:border-color .18s ease,background-color .18s ease,color .18s ease !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row a.vs-breadcrumb-chip:hover {
    border-color:#c89c87 !important;
    background:#fbf4ef !important;
    color:var(--vs-accent-dark) !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row .vs-breadcrumb-chip.is-current {
    border-color:#d7c6bc !important;
    background:#f8f3ef !important;
    color:#6e5b51 !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row .vs-breadcrumb-arrow {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
    width:16px !important;
    height:34px !important;
    margin:0 -1px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:var(--vs-accent) !important;
    font-family:Arial,sans-serif !important;
    font-size:22px !important;
    line-height:1 !important;
    font-weight:400 !important;
  }

  /* Keep the image/title comfortably below the larger breadcrumb row. */
  html body.single-product #page #content .product-container {
    row-gap:17px !important;
  }
}

/

/* VS PRODUCT COLUMN ALIGNMENT — 2026-09-20 */
@media (min-width:1024px) {
  /*
   * Align the left edge of the gallery/information content
   * with the left edge of the first breadcrumb chip "Каталог".
   */
  html body.single-product #page #content .product-container > .product-images,
  html body.single-product #page #content .product-container > .product-info {
    box-sizing:border-box !important;
    padding-left:15px !important;
  }
}


/* VS PRODUCT TOP SPACING / BREADCRUMB HOVER — 2026-09-21 */
@media (min-width:1024px) {
  /* Pull the whole product area closer to the navigation on desktop. */
  html body.single-product #page #content.site-content {
    margin-top:14px !important;
  }

  /* Do not crop chip borders/shadows on hover. */
  html body.single-product #page #content .product-container,
  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row {
    overflow:visible !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row {
    padding:2px 0 !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row .vs-breadcrumb-chip {
    transform:none !important;
    outline:none !important;
  }

  html body.single-product #page #content .product-container > .vs-product-breadcrumb-row a.vs-breadcrumb-chip:hover {
    transform:none !important;
    box-shadow:0 2px 8px rgba(171,90,63,.08) !important;
  }

  /* Slightly tighten breadcrumb-to-product spacing as well. */
  html body.single-product #page #content .product-container {
    row-gap:13px !important;
  }
}


/* VS PRODUCT BADGES PALETTE / PLACEMENT — 2026-09-21 */
/*
 * One restrained badge system for catalog/product/home:
 * sale = warm terracotta, hit = caramel brown, new = muted olive.
 */
html body .shop-item__badges .onsale,
html body .shop-item__badge--onsale,
html body .single-product__badge--onsale,
html body.home #vs-home .vs-product-card__badge {
  color:#fff !important;
  background:#b45f45 !important;
  border-color:#b45f45 !important;
}

html body .shop-item__badge--hit,
html body .single-product__badge--hit {
  color:#fff !important;
  background:#927255 !important;
  border-color:#927255 !important;
}

html body .shop-item__badge--new,
html body .single-product__badge--new {
  color:#fff !important;
  background:#7f8d69 !important;
  border-color:#7f8d69 !important;
}

/* Catalog cards: slightly more substantial, but still compact. */
html body.woocommerce #page #content .shop-item :is(
  .shop-item__badge,
  .shop-item__badges .onsale
) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:26px !important;
  height:26px !important;
  padding:0 9px !important;
  border:0 !important;
  border-radius:7px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:650 !important;
  letter-spacing:0 !important;
  box-shadow:none !important;
}

html body.woocommerce #page #content .shop-item .shop-item__badges {
  top:10px !important;
  left:10px !important;
  gap:6px !important;
}

/* Homepage product badge follows the same sale styling. */
html body.home #vs-home .vs-product-card__badge {
  padding:5px 8px !important;
  border-radius:7px !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:650 !important;
  box-shadow:none !important;
}

/* Product page desktop: larger badges and strictly INSIDE the photo frame. */
@media (min-width:1024px) {
  html body.single-product #page #content .product-images {
    position:relative !important;
  }

  html body.single-product #page #content .product-images > .single-product__badges,
  html body.single-product #page #content .product-images > * > .single-product__badges {
    position:absolute !important;
    z-index:30 !important;
    top:14px !important;
    left:27px !important;
    right:auto !important;
    bottom:auto !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:7px !important;
    max-width:calc(100% - 54px) !important;
    margin:0 !important;
    transform:none !important;
  }

  /* If the theme has moved badges directly into the custom gallery stage,
     use the stage's own 12px inset instead of the product-column padding. */
  html body.single-product #page #content .msk-gallery-stage {
    position:relative !important;
  }
  html body.single-product #page #content .msk-gallery-stage .single-product__badges {
    top:12px !important;
    left:12px !important;
  }

  html body.single-product #page #content :is(
    .single-product__badge,
    .single-product__badge--onsale
  ) {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:31px !important;
    height:31px !important;
    margin:0 !important;
    padding:0 11px !important;
    border:0 !important;
    border-radius:8px !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
    box-shadow:0 2px 7px rgba(55,43,36,.08) !important;
  }
}

/* Keep mobile product badges compact while retaining the new palette. */
@media (max-width:1023px) {
  html body.single-product :is(
    .single-product__badge,
    .single-product__badge--onsale
  ) {
    border-radius:7px !important;
  }
}


/* VS BADGES STRONG FINAL — 2026-09-21 */
/* Higher specificity than the old catalogue badge rules/snippets. */

/* SALE */
html body.woocommerce #page #content .shop-item .shop-item__badges > .onsale,
html body.woocommerce #page #content .shop-item .shop-item__badges > .shop-item__badge--onsale,
html body.single-product #page #content .single-product__badges > .single-product__badge--onsale {
  color:#fff !important;
  background:#b45f45 !important;
  background-color:#b45f45 !important;
  border-color:#b45f45 !important;
}

/* HIT */
html body.woocommerce #page #content .shop-item .shop-item__badges > .shop-item__badge--hit,
html body.single-product #page #content .single-product__badges > .single-product__badge--hit {
  color:#fff !important;
  background:#9a7655 !important;
  background-color:#9a7655 !important;
  border-color:#9a7655 !important;
}

/* NEW */
html body.woocommerce #page #content .shop-item .shop-item__badges > .shop-item__badge--new,
html body.single-product #page #content .single-product__badges > .single-product__badge--new {
  color:#fff !important;
  background:#7f8d69 !important;
  background-color:#7f8d69 !important;
  border-color:#7f8d69 !important;
}

/* Catalogue geometry: 10px inside card/photo, 6px between badges. */
html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__badges {
  top:10px !important;
  left:10px !important;
  right:auto !important;
  gap:6px !important;
}
html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__badges > * {
  min-height:26px !important;
  height:26px !important;
  padding:0 9px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:7px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:650 !important;
  box-shadow:none !important;
}

/* Product page desktop: same visual 10px inset from the PHOTO FRAME.
   Gallery starts 15px to the right and 2px lower inside product-images,
   therefore the badge container is 25px/12px from product-images itself. */
@media (min-width:1024px) {
  html body.single-product #page #content .product-images {
    position:relative !important;
  }

  html body.single-product #page #content .product-images .single-product__badges {
    position:absolute !important;
    z-index:60 !important;
    top:27px !important;\n    left:3px !important;
    right:auto !important;
    bottom:auto !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:6px !important;
    width:auto !important;
    max-width:calc(100% - 50px) !important;
    margin:0 !important;
    padding:0 !important;
    transform:translateX(-21px) !important;
  }

  /* If badges are already inside the custom gallery stage, use its local inset. */
  html body.single-product #page #content .msk-gallery-stage .single-product__badges {
    top:10px !important;
    left:10px !important;
  }

  html body.single-product #page #content .single-product__badges > .single-product__badge,
  html body.single-product #page #content .single-product__badges > .single-product__badge--onsale {
    position:static !important;
    min-height:31px !important;
    height:31px !important;
    padding:0 11px !important;
    margin:0 !important;
    border:0 !important;
    border-radius:8px !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:700 !important;
    white-space:nowrap !important;
    transform:none !important;
    box-shadow:0 2px 7px rgba(55,43,36,.08) !important;
  }
}


/* VS PRODUCT CONFIGURATOR V1 — 2026-09-21 */
@media (min-width:768px) {
  /* Desktop configurator sits directly under product meta, without the old empty band. */
  html body.single-product #page #content .msk-server-layout
  .msk-color-picker--desktop.msk-positioned {
    width:100% !important;
    max-width:100% !important;
    margin:6px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
  }

  html body.single-product #page #content .msk-server-layout
  .msk-color-picker--desktop > :is(
    .vs-color-config-head,
    .msk-color-toggle,
    .msk-color-desktop-heading,
    .msk-selected-summary--desktop
  ) {
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout
  .msk-color-picker--desktop .msk-color-body,
  html body.single-product #page #content .msk-server-layout
  .msk-color-picker--desktop .msk-color-body[hidden] {
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-switcher {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    margin:0 !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-switcher.vs-config-switcher--single {
    grid-template-columns:minmax(0,1fr) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice {
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    min-width:0 !important;
    min-height:62px !important;
    margin:0 !important;
    padding:0 46px 0 58px !important;
    border:1px solid #d9c6bb !important;
    border-radius:11px !important;
    background:linear-gradient(180deg,#fff 0%,#fdf9f6 100%) !important;
    color:#3e3733 !important;
    box-shadow:0 3px 12px rgba(78,55,43,.055) !important;
    font-family:Manrope,Arial,sans-serif !important;
    font-size:15px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    text-align:left !important;
    cursor:pointer !important;
    transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice::before {
    content:"" !important;
    position:absolute !important;
    top:50% !important;
    left:15px !important;
    width:30px !important;
    height:30px !important;
    border:1px solid #ddc9bd !important;
    border-radius:8px !important;
    box-sizing:border-box !important;
    transform:translateY(-50%) !important;
    box-shadow:inset 0 0 0 3px rgba(255,255,255,.72) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice--color::before {
    background:conic-gradient(
      from 40deg,
      #b45f45 0 25%,
      #9a7655 25% 50%,
      #7f8d69 50% 75%,
      #d9c6bb 75% 100%
    ) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice--component::before {
    background:
      linear-gradient(180deg,transparent 0 8px,#a45a43 8px 12px,transparent 12px 18px,#8f765f 18px 23px,transparent 23px),
      #f6ece6 !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice::after {
    content:"›" !important;
    position:absolute !important;
    top:50% !important;
    right:16px !important;
    display:block !important;
    color:#a55a43 !important;
    font-family:Arial,sans-serif !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:400 !important;
    transform:translateY(-50%) rotate(90deg) !important;
    transition:transform .16s ease !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice:hover {
    border-color:#bf8e78 !important;
    background:#fffaf7 !important;
    box-shadow:0 4px 14px rgba(124,76,56,.08) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice.is-active {
    border-color:var(--vs-accent) !important;
    background:#f7eae3 !important;
    color:var(--vs-accent-dark) !important;
    box-shadow:0 3px 12px rgba(171,90,63,.10) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice.is-active::after {
    transform:translateY(-50%) rotate(-90deg) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-panel {
    display:none !important;
    width:100% !important;
    margin:10px 0 0 !important;
    padding:15px !important;
    border:1px solid #e3d6ce !important;
    border-radius:11px !important;
    background:#fbf8f5 !important;
    box-shadow:0 3px 12px rgba(78,55,43,.035) !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-panel.is-open {
    display:block !important;
  }

  /* A color tier is visible immediately when the color section opens. */
  html body.single-product #page #content .msk-server-layout
  .vs-config-panel--colors .msk-tier-panel {
    display:none !important;
  }
  html body.single-product #page #content .msk-server-layout
  .vs-config-panel--colors .msk-tier-panel.is-active {
    display:block !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-panel--component .msk-component-section {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-panel--colors .msk-color-note {
    margin:0 0 11px !important;
  }
}

@media (min-width:768px) and (max-width:1100px) {
  html body.single-product #page #content .msk-server-layout
  .vs-config-choice {
    min-height:54px !important;
    padding-left:48px !important;
    padding-right:36px !important;
    font-size:12px !important;
  }

  html body.single-product #page #content .msk-server-layout
  .vs-config-choice::before {
    left:12px !important;
    width:27px !important;
    height:27px !important;
  }
}


/* VS ARTICLES REDESIGN — 2026-09-21 */
/* Same desktop shell width as the redesigned catalogue/product pages. */
body.category-blog #page #content,
body.vs-article-single #page #content {
  width:min(1540px,calc(100% - 64px)) !important;
  max-width:1540px !important;
  margin:28px auto 0 !important;
  padding:0 0 68px !important;
  box-sizing:border-box !important;
}

body.category-blog #page #content .site-content-inner,
body.vs-article-single #page #content .site-content-inner {
  display:block !important;
  width:100% !important;
  max-width:none !important;
}

body.category-blog #secondary,
body.category-blog .widget-area,
body.vs-article-single #secondary,
body.vs-article-single .widget-area {
  display:none !important;
}

body.category-blog #primary,
body.vs-article-single #primary {
  width:100% !important;
  max-width:none !important;
  flex:0 0 100% !important;
  margin:0 !important;
  padding:0 !important;
}

/* =========================
   ARTICLES ARCHIVE
   ========================= */
body.category-blog .page-header {
  margin:0 0 24px !important;
  padding:28px 30px 26px !important;
  border:1px solid var(--vs-line) !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#fbf8f5 0%,#f7f3ef 100%) !important;
  box-shadow:none !important;
}

body.category-blog .page-title {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--vs-text) !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:clamp(28px,2.2vw,36px) !important;
  line-height:1.16 !important;
  font-weight:700 !important;
  letter-spacing:-.03em !important;
}

body.category-blog .page-title::after {
  display:none !important;
}

body.category-blog :is(.taxonomy-description,.archive-description,.page-description) {
  max-width:920px !important;
  margin:10px 0 0 !important;
  color:#746b64 !important;
  font-size:13px !important;
  line-height:1.6 !important;
}

body.category-blog :is(.taxonomy-description,.archive-description,.page-description) p {
  margin:0 !important;
}

body.category-blog .post-cards--standard {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  width:100% !important;
  margin:0 !important;
}

body.category-blog .post-card--standard {
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid var(--vs-line) !important;
  border-radius:13px !important;
  background:#fff !important;
  box-shadow:0 4px 16px rgba(63,48,40,.045) !important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease !important;
}

body.category-blog .post-card--standard:hover {
  transform:translateY(-2px) !important;
  border-color:#d8b9aa !important;
  box-shadow:0 9px 24px rgba(63,48,40,.075) !important;
}

body.category-blog .post-card--standard > .post-card__thumbnail,
body.category-blog .post-card--standard .post-card__body > .post-card__thumbnail {
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:16/10 !important;
  margin:0 !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:0 !important;
  background:#f4f0ec !important;
}

body.category-blog .post-card--standard .post-card__thumbnail a {
  display:block !important;
  width:100% !important;
  height:100% !important;
}

body.category-blog .post-card--standard .post-card__thumbnail a::before {
  display:none !important;
}

body.category-blog .post-card--standard .post-card__thumbnail img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  transition:transform .28s ease !important;
}

body.category-blog .post-card--standard:hover .post-card__thumbnail img {
  transform:scale(1.025) !important;
}

body.category-blog .post-card--standard .post-card__body {
  display:flex !important;
  flex:1 1 auto !important;
  flex-direction:column !important;
  gap:0 !important;
  min-width:0 !important;
  padding:16px 17px 18px !important;
}

body.category-blog .post-card--standard .post-card__body > .post-card__thumbnail {
  margin:-16px -17px 15px !important;
  width:calc(100% + 34px) !important;
}

body.category-blog .post-card--standard .post-card__title {
  display:-webkit-box !important;
  margin:0 0 9px !important;
  padding:0 !important;
  overflow:hidden !important;
  color:var(--vs-text) !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.38 !important;
  font-weight:700 !important;
  letter-spacing:-.012em !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:3 !important;
}

body.category-blog .post-card--standard .post-card__title a {
  color:inherit !important;
  text-decoration:none !important;
}

body.category-blog .post-card--standard .post-card__title a:hover {
  color:var(--vs-accent) !important;
}

body.category-blog .post-card--standard .post-card__meta {
  order:3 !important;
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:7px 12px !important;
  margin:12px 0 0 !important;
  padding:11px 0 0 !important;
  border-top:1px solid #eee7e2 !important;
  color:#9a918b !important;
  font-size:10px !important;
  line-height:1.3 !important;
}

body.category-blog .post-card--standard .post-card__meta :is(span,time,a) {
  color:#9a918b !important;
  font-size:10px !important;
  text-decoration:none !important;
}

body.category-blog .post-card--standard .post-card__comments {
  display:none !important;
}

body.category-blog .post-card--standard .post-card__description {
  display:-webkit-box !important;
  margin:0 !important;
  overflow:hidden !important;
  color:#746b64 !important;
  font-size:12px !important;
  line-height:1.55 !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
}

body.category-blog .navigation.pagination {
  margin:30px 0 0 !important;
}

/* =========================
   SINGLE ARTICLE
   ========================= */
body.vs-article-single {
  font-family:Manrope,Arial,sans-serif !important;
}

body.vs-article-single #primary > article,
body.vs-article-single #primary article.post {
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 !important;
}

body.vs-article-single :is(.entry-header,.post-header) {
  max-width:1040px !important;
  margin:0 auto 24px !important;
  padding:26px 30px 24px !important;
  border:1px solid var(--vs-line) !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#fbf8f5 0%,#f7f3ef 100%) !important;
}

body.vs-article-single :is(.entry-title,.post-title,h1.entry-title) {
  margin:0 !important;
  padding:0 !important;
  color:var(--vs-text) !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:clamp(30px,2.5vw,42px) !important;
  line-height:1.13 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
}

body.vs-article-single :is(.entry-meta,.post-meta) {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px 14px !important;
  margin:12px 0 0 !important;
  color:#918983 !important;
  font-size:11px !important;
  line-height:1.4 !important;
}

body.vs-article-single :is(.entry-meta,.post-meta) :is(a,span,time) {
  color:#918983 !important;
  text-decoration:none !important;
}

body.vs-article-single :is(.post-thumbnail,.entry-image,.entry-preview) {
  max-width:1040px !important;
  margin:0 auto 26px !important;
  overflow:hidden !important;
  border-radius:14px !important;
  background:#f4f0ec !important;
}

body.vs-article-single :is(.post-thumbnail,.entry-image,.entry-preview) img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  border-radius:14px !important;
}

body.vs-article-single .entry-content {
  max-width:940px !important;
  margin:0 auto !important;
  color:#4f4945 !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:15px !important;
  line-height:1.78 !important;
}

body.vs-article-single .entry-content > :first-child {
  margin-top:0 !important;
}

body.vs-article-single .entry-content p {
  margin:0 0 17px !important;
}

body.vs-article-single .entry-content h2 {
  margin:38px 0 15px !important;
  color:#2f2b29 !important;
  font-size:27px !important;
  line-height:1.22 !important;
  font-weight:700 !important;
  letter-spacing:-.025em !important;
}

body.vs-article-single .entry-content h3 {
  margin:29px 0 12px !important;
  color:#393330 !important;
  font-size:21px !important;
  line-height:1.3 !important;
  font-weight:700 !important;
}

body.vs-article-single .entry-content h4 {
  margin:24px 0 10px !important;
  color:#443d39 !important;
  font-size:17px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

body.vs-article-single .entry-content :is(ul,ol) {
  margin:0 0 20px !important;
  padding-left:24px !important;
}

body.vs-article-single .entry-content li {
  margin:0 0 8px !important;
  padding-left:3px !important;
}

body.vs-article-single .entry-content a {
  color:var(--vs-accent) !important;
  text-decoration:none !important;
  border-bottom:1px solid rgba(171,90,63,.28) !important;
}

body.vs-article-single .entry-content :is(img,figure img) {
  max-width:100% !important;
  height:auto !important;
  border-radius:12px !important;
}

body.vs-article-single .entry-content figure {
  margin:26px 0 !important;
}

body.vs-article-single .entry-content blockquote {
  margin:24px 0 !important;
  padding:18px 20px 18px 22px !important;
  border:1px solid #e6d9d1 !important;
  border-left:4px solid var(--vs-accent) !important;
  border-radius:10px !important;
  background:#fbf7f4 !important;
  color:#5c534e !important;
}

body.vs-article-single .entry-content table {
  width:100% !important;
  margin:24px 0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  overflow:hidden !important;
  border:1px solid var(--vs-line) !important;
  border-radius:10px !important;
  font-size:13px !important;
}

body.vs-article-single .entry-content th {
  background:#f5eee9 !important;
  color:#3d3733 !important;
  font-weight:700 !important;
}

body.vs-article-single .entry-content :is(th,td) {
  padding:11px 12px !important;
  border-right:1px solid var(--vs-line) !important;
  border-bottom:1px solid var(--vs-line) !important;
  text-align:left !important;
  vertical-align:top !important;
}

body.vs-article-single .entry-content tr:last-child td {
  border-bottom:0 !important;
}

body.vs-article-single .entry-content :is(th,td):last-child {
  border-right:0 !important;
}

@media (max-width:1279px) {
  body.category-blog .post-cards--standard {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media (max-width:900px) {
  body.category-blog #page #content,
  body.vs-article-single #page #content {
    width:calc(100% - 28px) !important;
    margin-top:18px !important;
    padding-bottom:46px !important;
  }

  body.category-blog .post-cards--standard {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  body.vs-article-single :is(.entry-header,.post-header) {
    padding:22px 20px 20px !important;
  }

  body.vs-article-single .entry-content {
    font-size:14px !important;
    line-height:1.72 !important;
  }
}

@media (max-width:600px) {
  body.category-blog #page #content,
  body.vs-article-single #page #content {
    width:calc(100% - 24px) !important;
    margin-top:14px !important;
  }

  body.category-blog .page-header {
    padding:21px 17px 19px !important;
    margin-bottom:14px !important;
    border-radius:12px !important;
  }

  body.category-blog .page-title {
    font-size:27px !important;
  }

  body.category-blog .post-cards--standard {
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  body.category-blog .post-card--standard {
    display:grid !important;
    grid-template-columns:118px minmax(0,1fr) !important;
    grid-template-rows:auto !important;
    min-height:106px !important;
  }

  body.category-blog .post-card--standard > .post-card__thumbnail {
    width:118px !important;
    height:100% !important;
    min-height:106px !important;
    aspect-ratio:auto !important;
  }

  body.category-blog .post-card--standard .post-card__body {
    padding:11px 12px !important;
  }

  body.category-blog .post-card--standard .post-card__body > .post-card__thumbnail {
    width:118px !important;
    height:92px !important;
    margin:0 0 10px !important;
    aspect-ratio:4/3 !important;
  }

  body.category-blog .post-card--standard .post-card__title {
    font-size:13px !important;
    margin-bottom:6px !important;
  }

  body.category-blog .post-card--standard .post-card__description {
    font-size:11px !important;
    -webkit-line-clamp:2 !important;
  }

  body.category-blog .post-card--standard .post-card__meta {
    margin-top:8px !important;
    padding-top:8px !important;
  }

  body.vs-article-single :is(.entry-header,.post-header) {
    margin-bottom:16px !important;
    padding:20px 16px 18px !important;
    border-radius:12px !important;
  }

  body.vs-article-single :is(.entry-title,.post-title,h1.entry-title) {
    font-size:28px !important;
  }

  body.vs-article-single .entry-content {
    max-width:none !important;
    font-size:14px !important;
    line-height:1.68 !important;
  }

  body.vs-article-single .entry-content h2 {
    margin-top:30px !important;
    font-size:23px !important;
  }

  body.vs-article-single .entry-content h3 {
    margin-top:24px !important;
    font-size:19px !important;
  }

  body.vs-article-single .entry-content table {
    display:block !important;
    overflow-x:auto !important;
  }
}


/* VS PRODUCT RELATED ARTICLE CARD — 2026-09-21 */
@media (min-width:768px) {
  html body.single-product #page #content
  .product-related-article-link.msk-guide-host {
    width:auto !important;
    max-width:none !important;
    margin:10px 0 10px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-product-guide-card {
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-height:76px !important;
    margin:0 !important;
    padding:12px 44px 13px 14px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    border:1px solid #dfd2ca !important;
    border-radius:10px !important;
    background:linear-gradient(180deg,#fff 0%,#fbf7f4 100%) !important;
    color:#413934 !important;
    box-shadow:0 2px 8px rgba(86,58,44,.04) !important;
    text-decoration:none !important;
    transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-product-guide-card:hover {
    border-color:#c99a84 !important;
    background:#fffaf7 !important;
    box-shadow:0 4px 13px rgba(124,76,56,.07) !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-label {
    display:block !important;
    margin:0 0 7px !important;
    color:#9b7160 !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:650 !important;
    letter-spacing:.02em !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-main {
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) !important;
    align-items:center !important;
    column-gap:10px !important;
    width:100% !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-icon {
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:32px !important;
    height:32px !important;
    margin:0 !important;
    border-radius:8px !important;
    background:#f5e8e1 !important;
    color:#a9543c !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-icon::before {
    content:"" !important;
    width:14px !important;
    height:17px !important;
    border:1.7px solid currentColor !important;
    border-radius:2px !important;
    box-sizing:border-box !important;
    background:
      linear-gradient(currentColor,currentColor) 3px 4px/7px 1.5px no-repeat,
      linear-gradient(currentColor,currentColor) 3px 8px/7px 1.5px no-repeat,
      linear-gradient(currentColor,currentColor) 3px 12px/5px 1.5px no-repeat !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-text {
    display:block !important;
    min-width:0 !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-title {
    display:block !important;
    margin:0 !important;
    color:#342f2c !important;
    font-size:13px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-description {
    display:block !important;
    margin:3px 0 0 !important;
    color:#827871 !important;
    font-size:10.5px !important;
    line-height:1.35 !important;
    font-weight:400 !important;
  }

  html body.single-product #page #content
  .product-related-article-link.msk-guide-host .msk-guide-arrow {
    position:absolute !important;
    top:50% !important;
    right:15px !important;
    margin:0 !important;
    color:#a9543c !important;
    font-size:19px !important;
    line-height:1 !important;
    transform:translateY(-50%) !important;
  }
}

@media (max-width:767px) {
  html body.single-product #page #content
  .product-related-article-link.msk-guide-host {
    width:100% !important;
    max-width:100% !important;
  }
}


/* VS PRODUCT DELIVERY PAYMENT WARRANTY — 2026-09-21 */
@media (min-width:768px) {
  html body.single-product #page #content .msk-server-layout .product-pay-delivery {
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    gap:0 !important;
    border:0 !important;
    background:transparent !important;
    overflow:visible !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-row {
    position:relative !important;
    z-index:20 !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-auto-rows:68px !important;
    align-items:stretch !important;
    gap:9px !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card {
    position:static !important;
    display:block !important;
    min-width:0 !important;
    height:68px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card::before,
  html body.single-product #page #content .msk-server-layout .msk-product-info-card::after,
  html body.single-product #page #content .msk-server-layout .msk-product-info-trigger::before,
  html body.single-product #page #content .msk-server-layout .msk-product-info-trigger::after {
    content:none !important;
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card > .msk-product-info-trigger {
    position:relative !important;
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) 16px !important;
    align-items:center !important;
    column-gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    height:68px !important;
    min-height:68px !important;
    max-height:68px !important;
    margin:0 !important;
    padding:7px 10px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    border:1px solid #dfd2ca !important;
    border-radius:10px !important;
    background:linear-gradient(180deg,#fff 0%,#fbf7f4 100%) !important;
    color:#413934 !important;
    box-shadow:0 2px 8px rgba(86,58,44,.04) !important;
    text-align:left !important;
    cursor:pointer !important;
    transition:border-color .16s ease,background .16s ease,box-shadow .16s ease !important;
  }

  html body.single-product #page #content .msk-server-layout
  .msk-product-info-trigger > :not(.ppd-icon):not(.msk-product-info-copy):not(.msk-product-info-arrow) {
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-trigger:hover {
    border-color:#c99a84 !important;
    background:#fffaf7 !important;
    box-shadow:0 4px 12px rgba(124,76,56,.065) !important;
    color:#413934 !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-trigger[aria-expanded="true"] {
    border-color:#b45f45 !important;
    background:#f8ece6 !important;
    color:#6f3c2b !important;
    box-shadow:0 3px 10px rgba(180,95,69,.09) !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-trigger .ppd-icon {
    grid-column:1 !important;
    display:block !important;
    width:32px !important;
    height:32px !important;
    padding:7px !important;
    box-sizing:border-box !important;
    border-radius:8px !important;
    background:#f5e8e1 !important;
    color:#a9543c !important;
    opacity:1 !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-copy {
    grid-column:2 !important;
    display:block !important;
    min-width:0 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-title {
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    color:#342f2c !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    white-space:nowrap !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-subtitle {
    display:block !important;
    margin:3px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    color:#857b74 !important;
    font-size:9.5px !important;
    line-height:1.3 !important;
    font-weight:450 !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-arrow {
    grid-column:3 !important;
    display:block !important;
    margin:0 !important;
    color:#a9543c !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:500 !important;
    text-align:center !important;
    transform:none !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card .delivery-popup-info {
    position:absolute !important;
    z-index:90 !important;
    top:calc(100% + 10px) !important;
    left:0 !important;
    right:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:20px 20px 17px !important;
    box-sizing:border-box !important;
    border:1px solid #dfd2ca !important;
    border-top:1px solid #dfd2ca !important;
    border-radius:12px !important;
    background:#fffdfb !important;
    box-shadow:0 12px 34px rgba(66,45,36,.13) !important;
    color:#514943 !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-popup-info::before,
  html body.single-product #page #content .msk-server-layout .delivery-popup-info::after {
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-popup-close {
    top:9px !important;
    right:9px !important;
    width:28px !important;
    height:28px !important;
    border-radius:8px !important;
    background:#f6efea !important;
    color:#8a776d !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-popup-close:hover {
    background:#f1dfd6 !important;
    color:#a9543c !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-content :is(h3,h4,h5),
  html body.single-product #page #content .msk-server-layout .delivery-info-title {
    margin:0 0 9px !important;
    padding:0 !important;
    color:#342f2c !important;
    font-size:14px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-content :is(h3,h4,h5)::before,
  html body.single-product #page #content .msk-server-layout :is(.head__vertical_line,.head_undeline)::before {
    display:none !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-content :is(p,li),
  html body.single-product #page #content .msk-server-layout .delivery-info-text {
    color:#675e58 !important;
    font-size:12px !important;
    line-height:1.55 !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-content ul {
    padding-left:18px !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-content ul li::before {
    width:5px !important;
    height:5px !important;
    left:-14px !important;
    background:#b45f45 !important;
  }

  html body.single-product #page #content .msk-server-layout .delivery-info-unit > a {
    color:#a9543c !important;
    border-bottom-color:rgba(169,84,60,.25) !important;
    font-size:12px !important;
    font-weight:650 !important;
  }

  html body.single-product #page #content .msk-server-layout .payment-cards__badge {
    min-width:58px !important;
    padding:6px 8px !important;
    border:1px solid #e2d5cd !important;
    border-radius:7px !important;
    background:#faf5f1 !important;
    color:#684c40 !important;
    font-size:10px !important;
  }
}

@media (max-width:767px) {
  html body.single-product #page #content .msk-server-layout .msk-product-info-row {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card {
    height:auto !important;
  }

  html body.single-product #page #content .msk-server-layout .msk-product-info-card > .msk-product-info-trigger {
    width:100% !important;
    height:auto !important;
    min-height:62px !important;
    max-height:none !important;
  }
}


/* VS PPD INNER SURFACE FIX — 2026-09-21 */
html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-unit,
html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-content,
html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-content > * {
  background:transparent !important;
  box-shadow:none !important;
}

html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-content :is(h3,h4,h5),
html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-title {
  position:relative !important;
  padding-left:16px !important;
  border-left:0 !important;
  background:transparent !important;
}

html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-content :is(h3,h4,h5)::before,
html body.single-product #page #content .msk-server-layout .delivery-popup-info .delivery-info-title::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  top:2px !important;
  bottom:2px !important;
  width:2px !important;
  border:0 !important;
  border-radius:2px !important;
  background:#b45f45 !important;
}


/* VS DESKTOP SIDE CATALOG REDESIGN — 2026-09-21 */
@media (min-width:1280px) {
  html body.woocommerce #page #content .site-content-inner {
    gap:36px !important;
  }

  html body.woocommerce #page #content #secondary.widget-area--desktop {
    flex:0 0 320px !important;
    width:320px !important;
    max-width:320px !important;
  }

  html body.woocommerce #page #content #secondary .sticky-sidebar {
    width:320px !important;
    max-width:320px !important;
  }
}

@media (min-width:1024px) {
  html body.woocommerce #page #content .msk-side-catalog-shell {
    padding:11px !important;
    border:1px solid #e4d9d2 !important;
    border-radius:13px !important;
    background:#f8f5f2 !important;
    box-shadow:none !important;
  }

  html body.woocommerce #page #content .msk-side-catalog,
  html body.woocommerce #page #content .msk-side-catalog ul {
    margin:0 !important;
  }

  html body.woocommerce #page #content .msk-side-catalog > li {
    margin:0 0 5px !important;
    border:0 !important;
    border-left:0 !important;
    border-radius:9px !important;
    background:transparent !important;
  }

  html body.woocommerce #page #content .msk-side-catalog > li:last-child {
    margin-bottom:0 !important;
  }

  html body.woocommerce #page #content .msk-side-catalog > li > a {
    min-height:44px !important;
    padding:11px 44px 11px 13px !important;
    border:1px solid transparent !important;
    border-left:1px solid transparent !important;
    border-radius:9px !important;
    background:transparent !important;
    color:#403934 !important;
    font-size:13.5px !important;
    line-height:1.35 !important;
    font-weight:550 !important;
    box-shadow:none !important;
    transition:background .16s ease,border-color .16s ease,color .16s ease !important;
  }

  html body.woocommerce #page #content .msk-side-catalog > li > a:hover {
    border-color:#e2cec3 !important;
    background:#fffaf7 !important;
    color:#914c36 !important;
  }

  /* Current top-level section: a full soft accent card, not the old white box. */
  html body.woocommerce #page #content .msk-side-catalog > :is(.current-cat,.current-cat-parent) > a {
    border-color:#d9ad9a !important;
    background:linear-gradient(180deg,#f8ece6 0%,#f4e4dc 100%) !important;
    color:#8f4934 !important;
    font-weight:700 !important;
    box-shadow:0 2px 8px rgba(121,72,53,.045) !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children {
    margin:5px 0 7px !important;
    padding:0 0 0 9px !important;
    border:0 !important;
    background:transparent !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children li,
  html body.woocommerce #page #content .product-categories .children .cat-item.current-cat-parent,
  html body.woocommerce #page #content .product-categories .children > .cat-item.current-cat {
    margin:2px 0 !important;
    padding:0 !important;
    border:0 !important;
    border-left:0 !important;
    border-radius:8px !important;
    background:transparent !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children a {
    display:block !important;
    min-height:36px !important;
    margin:0 !important;
    padding:8px 36px 8px 11px !important;
    border:1px solid transparent !important;
    border-left:1px solid transparent !important;
    border-radius:8px !important;
    background:transparent !important;
    color:#665d57 !important;
    font-size:12.5px !important;
    line-height:1.4 !important;
    font-weight:450 !important;
    box-shadow:none !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children a:hover {
    border-color:#e6d8d0 !important;
    background:#fffaf7 !important;
    color:#914c36 !important;
  }

  /* Current subcategory: modern filled chip instead of the inherited left stripe. */
  html body.woocommerce #page #content .msk-side-catalog .children :is(.current-cat,.current-cat-parent) > a {
    border-color:#d8b09e !important;
    border-left-color:#d8b09e !important;
    background:#f6e8e1 !important;
    color:#8f4934 !important;
    font-weight:700 !important;
    box-shadow:none !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children :is(.current-cat,.current-cat-parent)::before,
  html body.woocommerce #page #content .msk-side-catalog .children :is(.current-cat,.current-cat-parent)::after {
    content:none !important;
    display:none !important;
  }

  html body.woocommerce #page #content .msk-side-toggle {
    position:absolute !important;
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:7px !important;
    background:transparent !important;
    color:transparent !important;
    font-size:0 !important;
    line-height:0 !important;
    box-shadow:none !important;
    transition:background .16s ease,transform .16s ease !important;
  }

  html body.woocommerce #page #content .msk-side-toggle::before {
    content:"" !important;
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    display:block !important;
    width:7px !important;
    height:7px !important;
    border-right:1.8px solid #a05a42 !important;
    border-bottom:1.8px solid #a05a42 !important;
    transform:translate(-50%,-65%) rotate(45deg) !important;
    transform-origin:center !important;
    transition:transform .18s ease,border-color .16s ease !important;
  }

  html body.woocommerce #page #content .msk-side-toggle[aria-expanded="true"]::before {
    transform:translate(-50%,-35%) rotate(225deg) !important;
  }

  html body.woocommerce #page #content .msk-side-toggle:hover {
    background:#f3e7e0 !important;
  }

  html body.woocommerce #page #content :is(.current-cat,.current-cat-parent) > .msk-side-toggle {
    border:0 !important;
    background:transparent !important;
    color:transparent !important;
  }

  html body.woocommerce #page #content :is(.current-cat,.current-cat-parent) > .msk-side-toggle::before {
    border-right-color:#914c36 !important;
    border-bottom-color:#914c36 !important;
  }

  html body.woocommerce #page #content :is(.current-cat,.current-cat-parent) > .msk-side-toggle:hover {
    background:#ecd7cc !important;
  }
}


/* VS PRODUCT GRID CARDS POLISH — 2026-09-21 */
/* Standard product cards used in catalogue, related/recent products and product sections. */
@media (min-width:768px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__image,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__image-inner {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__image-inner > a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
  }

  /* A little more white air around the product, so tall/wide equipment is never visually clipped. */
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__image img {
    display:block !important;
    width:90% !important;
    max-width:90% !important;
    height:90% !important;
    max-height:90% !important;
    margin:auto !important;
    object-fit:contain !important;
    object-position:center !important;
  }

  /* The previous 66px forced title zone created an unnecessary hole before the price. */
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    min-height:48px !important;
    margin:12px 0 5px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a {
    font-size:15px !important;
    line-height:1.42 !important;
    font-weight:550 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) :is(.shop-item__price,.price) {
    margin:0 !important;
  }

  /* Stock status must read like useful information, not fine print. */
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    display:inline-flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:5px !important;
    min-height:24px !important;
    margin:7px 0 0 !important;
    padding:0 !important;
    color:#2d9138 !important;
    font-size:13.5px !important;
    line-height:1.35 !important;
    font-weight:600 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
    color:#2d9138 !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:800 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder {
    color:#b16b2d !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder .shop-item__in-stock-icon {
    color:#b16b2d !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-card-row {
    padding-top:11px !important;
  }

  /* Full-width cart action: stronger contrast, readable label and a proper-size icon. */
  html body #page .shop-item:not(.shop-item--type-small) .msk-final-cart {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    min-height:46px !important;
    padding:10px 12px !important;
    border:1px solid #b45f45 !important;
    border-radius:8px !important;
    background:#b45f45 !important;
    color:#fff !important;
    font-size:13.5px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    opacity:1 !important;
    text-shadow:none !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-cart :is(span,i,strong,em) {
    color:#fff !important;
    opacity:1 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-cart svg {
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
    color:#fff !important;
    stroke:#fff !important;
    opacity:1 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-cart:hover {
    border-color:#984a33 !important;
    background:#984a33 !important;
    color:#fff !important;
  }
}

/* VS PRODUCT GRID CARDS READABILITY V2 — 2026-09-21 */
/* Stronger, tighter catalogue cards. No product/business logic is changed. */
@media (min-width:768px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    min-height:42px !important;
    margin:8px 0 3px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a span {
    color:#2f2926 !important;
    font-size:16px !important;
    line-height:1.33 !important;
    font-weight:600 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price {
    margin:0 !important;
    padding-left:12px !important;
    padding-right:12px !important;
    color:#a94f34 !important;
    font-size:19px !important;
    line-height:1.15 !important;
    font-weight:700 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price :is(ins,bdi) {
    color:#a94f34 !important;
    font-weight:700 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price del,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price del :is(span,bdi) {
    color:#8f8179 !important;
    font-size:13px !important;
    font-weight:500 !important;
    opacity:.85 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    display:inline-flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
    min-height:23px !important;
    margin:5px 0 0 !important;
    padding:0 12px !important;
    color:#188a31 !important;
    font-size:15.5px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    white-space:nowrap !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#188a31 !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:800 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder {
    color:#ad682b !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-card-row {
    margin:0 !important;
    padding:8px 12px 12px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart) {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    min-height:48px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 16px !important;
    box-sizing:border-box !important;
    border:1px solid #b45f45 !important;
    border-radius:9px !important;
    background:#b45f45 !important;
    background-image:none !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:15.5px !important;
    line-height:1 !important;
    font-weight:700 !important;
    text-align:center !important;
    text-decoration:none !important;
    opacity:1 !important;
    box-shadow:none !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart)
  :is(span,strong,b,em,i) {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    opacity:1 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart)
  svg {
    width:19px !important;
    height:19px !important;
    min-width:19px !important;
    color:#fff !important;
    fill:none !important;
    stroke:#fff !important;
    opacity:1 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart):hover {
    border-color:#95462f !important;
    background:#95462f !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    transform:none !important;
  }
}

/* Keep two-column mobile cards compact but readable. */
@media (max-width:767px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    min-height:38px !important;
    margin:7px 0 3px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a span {
    font-size:13px !important;
    line-height:1.3 !important;
    font-weight:600 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    margin-top:4px !important;
    font-size:12.5px !important;
    font-weight:700 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-card-row {
    padding-top:7px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart) {
    min-height:42px !important;
    height:42px !important;
    font-size:13px !important;
    font-weight:700 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
}

/* VS ADAPTIVE PRODUCT TITLE FIT — 2026-09-21 */
/*
 * Product names have natural height: short names don't reserve an empty second line.
 * Long names are fitted by the small JS helper below by reducing only their font size.
 */
html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  margin-top:8px !important;
  margin-bottom:4px !important;
}

html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a {
  display:block !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}

@media (max-width:767px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    min-height:0 !important;
    margin-top:7px !important;
    margin-bottom:3px !important;
  }
}

/* VS CARD TYPOGRAPHY MATCH MSK — 2026-09-21 */
/*
 * MSK product cards rely on the theme's clean UI/system typography.
 * Keep the new VS layout/colors, but bring text rhythm and weights closer to MSK.
 */
html body #page .shop-item:not(.shop-item--type-small)
:is(.shop-item__title,.shop-item__title a,.shop-item__title a span,
    .shop-item__price,.shop-item__price *,
    .msk-final-cart,.msk-final-cart *,
    .msk-final-card-row .button,.msk-final-card-row .button *) {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
}

/* Product name: same lighter feel as MSK; adaptive JS still reduces only long names. */
html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a span {
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Price: noticeable, but not heavy/bold like before. */
html body #page .shop-item:not(.shop-item--type-small) .shop-item__price,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__price :is(ins,bdi) {
  font-size:19px !important;
  line-height:1.18 !important;
  font-weight:500 !important;
}

html body #page .shop-item:not(.shop-item--type-small) .shop-item__price del,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__price del * {
  font-size:13px !important;
  font-weight:400 !important;
}

/* Stock: a touch larger than the previous pass, while keeping MSK's light weight. */
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
  font-size:15.5px !important;
  line-height:1.25 !important;
  font-weight:400 !important;
}

html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
  font-size:16.5px !important;
  line-height:1 !important;
  font-weight:600 !important;
}

/* Filled VS cart button stays, but its typography is closer to MSK. */
html body #page .shop-item:not(.shop-item--type-small)
:is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart),
html body #page .shop-item:not(.shop-item--type-small)
:is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart) * {
  font-size:15px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
}

@media (max-width:767px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a span {
    font-weight:400 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price :is(ins,bdi) {
    font-size:16px !important;
    font-weight:500 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    font-size:13px !important;
    font-weight:400 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
    font-size:14px !important;
  }

  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart),
  html body #page .shop-item:not(.shop-item--type-small)
  :is(.msk-final-cart,.msk-final-card-row .button,.shop-item__buttons-cart) * {
    font-size:13px !important;
    font-weight:600 !important;
  }
}


/* VS PRODUCT CARD FIXED TEXT SLOTS — 2026-09-21 */
/*
 * All informational rows below the image start on the same baseline.
 * Only the product-name font is allowed to shrink; the title slot itself stays fixed.
 */
@media (min-width:768px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    display:block !important;
    box-sizing:border-box !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    margin:8px 0 4px !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a {
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price {
    display:flex !important;
    align-items:baseline !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    box-sizing:border-box !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    box-sizing:border-box !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    margin:4px 0 0 !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .msk-final-card-row {
    margin:0 !important;
    padding-top:8px !important;
  }
}

@media (max-width:767px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title {
    display:block !important;
    box-sizing:border-box !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:7px 0 3px !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__title a {
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__price {
    display:flex !important;
    align-items:baseline !important;
    flex-wrap:nowrap !important;
    gap:4px !important;
    box-sizing:border-box !important;
    height:21px !important;
    min-height:21px !important;
    max-height:21px !important;
    overflow:hidden !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    box-sizing:border-box !important;
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    margin:3px 0 0 !important;
    overflow:hidden !important;
  }
}

/* VS STOCK LITERAL MSK COPY — 2026-09-21 */
/*
 * Visual match to the MSK reference screenshot.
 * 19px on VS measured ~18.6% larger than MSK; 16px matches the MSK glyph height.
 */
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
  display:inline-flex !important;
  align-items:center !important;
  gap:.35em !important;
  box-sizing:border-box !important;

  height:24px !important;
  min-height:24px !important;
  max-height:24px !important;
  margin-top:5px !important;
  margin-bottom:0 !important;
  padding:0 12px !important;
  overflow:visible !important;

  font-family:"Roboto Condensed","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-size:16px !important;
  line-height:24px !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-stretch:normal !important;
  font-variant:normal !important;
  letter-spacing:0 !important;
  text-transform:none !important;

  color:#2faf36 !important;
  -webkit-text-fill-color:#2faf36 !important;
}

html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
  display:inline-block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;

  font-family:"Roboto Condensed","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-size:14.4px !important;
  line-height:1 !important;
  font-weight:700 !important;
  font-style:normal !important;
  letter-spacing:0 !important;

  color:#2faf36 !important;
  -webkit-text-fill-color:#2faf36 !important;
}

html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder .shop-item__in-stock-icon {
  color:#e67e00 !important;
  -webkit-text-fill-color:#e67e00 !important;
}

html body #page .shop-item[class*="msk-country-"]:not(.shop-item--type-small) .shop-item__in-stock::after {
  content:"" !important;
  display:block !important;
  width:18px !important;
  height:13.5px !important;
  min-width:18px !important;
  flex:0 0 18px !important;
  margin-left:1px !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  border-radius:2px !important;
  box-shadow:0 0 0 1px rgba(70,65,63,.14) !important;
}

@media (max-width:767px) {
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    margin-top:3px !important;
    padding-left:10px !important;
    padding-right:10px !important;
    font-size:14px !important;
    line-height:20px !important;
    font-weight:400 !important;
  }

  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
    font-size:12.6px !important;
  }
}


/* VS STOCK TRUE FINAL OVERRIDE — 2026-09-21 */
/*
 * Important: an older VS rule uses #page #content and was overriding the later stock styles.
 * These selectors intentionally match/exceed that specificity and reproduce the MSK stock text.
 */
html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock,
html body #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
  display:inline-flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:.35em !important;
  box-sizing:border-box !important;

  height:24px !important;
  min-height:24px !important;
  max-height:24px !important;
  margin:5px 0 0 !important;
  padding:0 !important;
  overflow:visible !important;
  white-space:nowrap !important;

  font-family:"Roboto Condensed","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-size:14.4px !important;
  line-height:21.6px !important;
  font-weight:300 !important;
  font-style:normal !important;
  font-stretch:normal !important;
  font-variant:normal !important;
  letter-spacing:0 !important;
  text-transform:none !important;

  color:#2faf36 !important;
  -webkit-text-fill-color:#2faf36 !important;
}

html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon,
html body #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
  display:inline-block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;

  font-family:"Roboto Condensed","Helvetica Neue",Helvetica,Arial,sans-serif !important;
  font-size:14.4px !important;
  line-height:1 !important;
  font-weight:700 !important;
  font-style:normal !important;
  letter-spacing:0 !important;

  color:#2faf36 !important;
  -webkit-text-fill-color:#2faf36 !important;
}

html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder,
html body #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder,
html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock--backorder {
  color:#e67e00 !important;
  -webkit-text-fill-color:#e67e00 !important;
}

html body #page .shop-item[class*="msk-country-"]:not(.shop-item--type-small) .shop-item__in-stock::after {
  content:"" !important;
  display:block !important;
  width:18px !important;
  height:13.5px !important;
  min-width:18px !important;
  flex:0 0 18px !important;
  margin-left:1px !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  border-radius:2px !important;
  box-shadow:0 0 0 1px rgba(70,65,63,.14) !important;
}

@media (max-width:767px) {
  html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock,
  html body #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock {
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    margin-top:3px !important;
    padding-left:0 !important;
    padding-right:0 !important;
    font-size:12.6px !important;
    line-height:18.9px !important;
    font-weight:300 !important;
  }

  html body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon,
  html body #page #content .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon,
  html body #page .shop-item:not(.shop-item--type-small) .shop-item__in-stock-icon {
    font-size:12.6px !important;
  }
}


/* VS CATEGORY SIDEBAR + BREADCRUMBS POLISH — 2026-09-21 */
/* Slightly smaller category names in the left catalogue without changing expand/collapse behavior. */
@media (min-width:1024px) {
  html body.woocommerce #page #content .msk-side-catalog > li > a {
    font-size:12.5px !important;
    line-height:1.35 !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children a {
    font-size:11.5px !important;
    line-height:1.38 !important;
  }
}

/* Category/archive breadcrumbs styled like the chips inside a product page. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  width:100% !important;
  margin:0 0 18px !important;
  padding:2px 0 !important;
  overflow:visible !important;
  white-space:normal !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1.2 !important;
  color:#514a45 !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
  display:inline-flex !important;
  align-items:center !important;
  min-width:0 !important;
  max-width:340px !important;
  min-height:34px !important;
  padding:7px 11px !important;
  margin:0 !important;
  border:1px solid #ded4cd !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#514a45 !important;
  box-shadow:none !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:550 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  font:inherit !important;
  line-height:inherit !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:has(a):hover {
  border-color:#c89c87 !important;
  background:#fbf4ef !important;
  color:#914c36 !important;
  box-shadow:0 2px 8px rgba(171,90,63,.08) !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:last-child {
  border-color:#d7c6bc !important;
  background:#f8f3ef !important;
  color:#6e5b51 !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-arrow {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:16px !important;
  height:34px !important;
  margin:0 -1px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#b45f45 !important;
  font-family:Arial,sans-serif !important;
  font-size:22px !important;
  line-height:1 !important;
  font-weight:400 !important;
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
    gap:6px !important;
    margin-bottom:14px !important;
    padding:1px 0 !important;
    font-size:11.5px !important;
  }

  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
    max-width:230px !important;
    min-height:30px !important;
    padding:6px 9px !important;
    font-size:11.5px !important;
    border-radius:7px !important;
  }

  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-arrow {
    width:12px !important;
    height:30px !important;
    font-size:18px !important;
  }
}


/* VS CATEGORY H1 + SIDEBAR RESTORE + BREADCRUMB FIX — 2026-09-21 */
/* Restore the left category tree to the previous size: user meant the H1, not sidebar labels. */
@media (min-width:1024px) {
  html body.woocommerce #page #content .msk-side-catalog > li > a {
    font-size:13.5px !important;
    line-height:1.35 !important;
  }

  html body.woocommerce #page #content .msk-side-catalog .children a {
    font-size:12.5px !important;
    line-height:1.4 !important;
  }
}

/* Category/archive H1 under breadcrumbs: smaller and calmer. */
@media (min-width:768px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:clamp(28px,2vw,32px) !important;
    line-height:1.16 !important;
    letter-spacing:-.025em !important;
    margin:0 0 22px !important;
  }
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:24px !important;
    line-height:1.2 !important;
    margin:0 0 16px !important;
  }
}

/* Fix breadcrumb chip labels: percentage max-width inside shrink-to-fit wrapper collapsed linked text. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  flex:0 1 auto !important;
  overflow:visible !important;
  text-overflow:clip !important;
}


/* VS CATEGORY BREADCRUMBS + H1 FINAL — 2026-09-21 */
/* Category H1: deliberately more compact than the previous pass. */
@media (min-width:768px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:26px !important;
    line-height:1.16 !important;
    font-weight:650 !important;
    letter-spacing:-.02em !important;
    margin:0 0 20px !important;
  }
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:22px !important;
    line-height:1.2 !important;
    margin:0 0 15px !important;
  }
}

/* Archive breadcrumbs: same visual language as the product-page chips, but never shrink labels. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:7px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 0 16px !important;
  padding:2px 0 !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  white-space:nowrap !important;
  scrollbar-width:none;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb::-webkit-scrollbar {
  display:none !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:none !important;
  min-height:32px !important;
  padding:6px 10px !important;
  margin:0 !important;
  border:1px solid #ded4cd !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#514a45 !important;
  box-shadow:none !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:12.5px !important;
  line-height:1.2 !important;
  font-weight:550 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
  display:inline !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  font:inherit !important;
  line-height:inherit !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:has(a):hover {
  border-color:#c89c87 !important;
  background:#fbf4ef !important;
  color:#914c36 !important;
  box-shadow:0 2px 8px rgba(171,90,63,.08) !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:last-child {
  border-color:#d7c6bc !important;
  background:#f8f3ef !important;
  color:#6e5b51 !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-arrow {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:14px !important;
  height:32px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#b45f45 !important;
  font-family:Arial,sans-serif !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:400 !important;
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
    gap:5px !important;
    margin-bottom:13px !important;
  }

  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
    min-height:29px !important;
    padding:5px 8px !important;
    border-radius:7px !important;
    font-size:11.5px !important;
  }

  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-arrow {
    width:11px !important;
    height:29px !important;
    font-size:17px !important;
  }
}


/* VS CATEGORY BREADCRUMBS TRUE FINAL — 2026-09-21 */
/* H1: smaller, as requested. */
@media (min-width:768px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:24px !important;
    line-height:1.18 !important;
    font-weight:650 !important;
    letter-spacing:-.018em !important;
    margin:0 0 20px !important;
  }
}
@media (max-width:767px) {
  html body.woocommerce.archive #page #content :is(.page-title,.entry-title) {
    font-size:21px !important;
    line-height:1.2 !important;
    margin:0 0 15px !important;
  }
}

/* Archive breadcrumbs: exact geometry of the product-page chips. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  min-height:34px !important;
  margin:0 0 16px !important;
  padding:2px 0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  white-space:nowrap !important;
  opacity:1 !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1.2 !important;
  scrollbar-width:none !important;
}
html body.woocommerce.archive #page #content .woocommerce-breadcrumb::-webkit-scrollbar {
  display:none !important;
}

/* Remove Bono's own chevrons – they were producing the little crooked arrows
   attached to the right edge of each chip. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb :is(
  .wci-chevron-right,
  .wci-chevron-left,
  .breadcrumb-separator
) {
  display:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}
html body.woocommerce.archive #page #content .woocommerce-breadcrumb :is(
  .wci-chevron-right,
  .wci-chevron-left,
  .breadcrumb-separator
)::before,
html body.woocommerce.archive #page #content .woocommerce-breadcrumb :is(
  .wci-chevron-right,
  .wci-chevron-left,
  .breadcrumb-separator
)::after {
  content:none !important;
  display:none !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:340px !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  margin:0 !important;
  padding:7px 11px !important;
  box-sizing:border-box !important;
  border:1px solid #ded4cd !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#514a45 !important;
  box-shadow:none !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:550 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  vertical-align:middle !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
  display:block !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  font:inherit !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:has(a):hover {
  border-color:#c89c87 !important;
  background:#fbf4ef !important;
  color:#914c36 !important;
  box-shadow:0 2px 8px rgba(171,90,63,.08) !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap:last-child {
  border-color:#d7c6bc !important;
  background:#f8f3ef !important;
  color:#6e5b51 !important;
}

/* Only one separator, centered in its own 16x34 box. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb > .vs-breadcrumb-arrow {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 16px !important;
  width:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#b45f45 !important;
  font-family:Arial,sans-serif !important;
  font-size:22px !important;
  line-height:34px !important;
  font-weight:400 !important;
  text-align:center !important;
  vertical-align:middle !important;
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb {
    gap:6px !important;
    min-height:30px !important;
    margin-bottom:13px !important;
    font-size:11.5px !important;
  }
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
    height:30px !important;
    min-height:30px !important;
    max-height:30px !important;
    max-width:230px !important;
    padding:6px 9px !important;
    border-radius:7px !important;
    font-size:11.5px !important;
  }
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb > .vs-breadcrumb-arrow {
    flex-basis:12px !important;
    width:12px !important;
    min-width:12px !important;
    max-width:12px !important;
    height:30px !important;
    min-height:30px !important;
    max-height:30px !important;
    font-size:18px !important;
    line-height:30px !important;
  }
}


/* VS CATEGORY BREADCRUMB VERTICAL CENTER — 2026-09-21 */
/* True vertical centering for breadcrumb labels: no vertical padding, use the inner 32px line box. */
html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:0 11px !important;
  line-height:32px !important;
  align-items:center !important;
  justify-content:center !important;
}

html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
  display:block !important;
  height:32px !important;
  line-height:32px !important;
  padding:0 !important;
  margin:0 !important;
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap {
    height:30px !important;
    min-height:30px !important;
    max-height:30px !important;
    padding:0 9px !important;
    line-height:28px !important;
  }

  html body.woocommerce.archive #page #content .woocommerce-breadcrumb .vs-breadcrumb-chip-wrap a {
    height:28px !important;
    line-height:28px !important;
  }
}


/* VS CATALOG PAGINATION FINAL — 2026-09-21 */
/* Catalog pagination in the same warm VS visual system as filters/cards. */
html body.woocommerce #page #content nav.woocommerce-pagination {
  margin:30px 0 0 !important;
  padding:0 !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  overflow:visible !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > :is(a,span) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  width:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:0 !important;

  border:1px solid #ded4cd !important;
  border-radius:9px !important;
  background:#fff !important;
  box-shadow:none !important;

  color:#5a514b !important;
  font-family:Manrope,Arial,sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:550 !important;
  text-decoration:none !important;

  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > a:hover {
  border-color:#c89c87 !important;
  background:#fbf4ef !important;
  color:#914c36 !important;
  box-shadow:0 2px 8px rgba(171,90,63,.08) !important;
  transform:translateY(-1px) !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > span.current {
  border-color:#b45f45 !important;
  background:#b45f45 !important;
  color:#fff !important;
  font-weight:700 !important;
  box-shadow:0 3px 10px rgba(180,95,69,.16) !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > span.dots {
  width:30px !important;
  min-width:30px !important;
  max-width:30px !important;
  border-color:transparent !important;
  background:transparent !important;
  color:#948a84 !important;
  box-shadow:none !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > :is(a.prev,a.next) {
  width:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  border-color:#ded4cd !important;
  background:#fffaf7 !important;
  color:#a6573d !important;
  font-family:Arial,sans-serif !important;
  font-size:19px !important;
  font-weight:400 !important;
}

html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > :is(a.prev,a.next):hover {
  border-color:#b45f45 !important;
  background:#f6e8e1 !important;
  color:#8f4934 !important;
}

@media (max-width:767px) {
  html body.woocommerce #page #content nav.woocommerce-pagination {
    margin-top:24px !important;
  }

  html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers {
    gap:6px !important;
  }

  html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > :is(a,span) {
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    border-radius:8px !important;
    font-size:13px !important;
  }

  html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > :is(a.prev,a.next) {
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    font-size:18px !important;
  }

  html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > span.dots {
    width:24px !important;
    min-width:24px !important;
    max-width:24px !important;
  }
}


/* VS PAGINATION CURRENT OVERRIDE — 2026-09-21 */
/* Kill Bono's inherited pagination overlay and force the current page into the VS accent style. */
html body.woocommerce.archive #page #content #primary nav.woocommerce-pagination ul.page-numbers > li > a.page-numbers::before,
html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > a.page-numbers::before {
  content:none !important;
  display:none !important;
  background:none !important;
  transform:none !important;
}

html body.woocommerce.archive #page #content #primary nav.woocommerce-pagination ul.page-numbers > li > span.page-numbers.current,
html body.woocommerce.archive #page #content nav.woocommerce-pagination ul.page-numbers > li > span.page-numbers.current,
html body.woocommerce #page #content nav.woocommerce-pagination ul.page-numbers > li > span.page-numbers.current {
  border:1px solid #b45f45 !important;
  border-radius:9px !important;
  background:#b45f45 !important;
  background-color:#b45f45 !important;
  background-image:none !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 3px 10px rgba(180,95,69,.16) !important;
  filter:none !important;
  opacity:1 !important;
  font-weight:700 !important;
}

html body.woocommerce.archive #page #content #primary nav.woocommerce-pagination ul.page-numbers > li > a.page-numbers:not(.prev):not(.next):not(.dots) {
  background:#fff !important;
  background-color:#fff !important;
  background-image:none !important;
  color:#5a514b !important;
  -webkit-text-fill-color:#5a514b !important;
}

html body.woocommerce.archive #page #content #primary nav.woocommerce-pagination ul.page-numbers > li > a.page-numbers:not(.prev):not(.next):not(.dots):hover {
  border-color:#c89c87 !important;
  background:#fbf4ef !important;
  background-color:#fbf4ef !important;
  color:#914c36 !important;
  -webkit-text-fill-color:#914c36 !important;
}

@media (max-width:767px) {
  html body.woocommerce.archive #page #content #primary nav.woocommerce-pagination ul.page-numbers > li > span.page-numbers.current {
    border-radius:8px !important;
  }
}


/* VS PRODUCT TOP SPACING + TITLE ALIGN FINAL — 2026-09-21 */
@media (min-width:1024px) {
  /* Halve the remaining gap between the top navigation row and product content. */
  html body.single-product #page #content.site-content {
    margin-top:7px !important;
  }

  /* Drop the product title slightly so its top aligns with the main photo frame. */
  html body.single-product #page #content .product-container > .product-info {
    padding-top:10px !important;
  }
}


/* VS PRODUCT TRUE TOP GAP FIX — 2026-09-21 */
@media (min-width:1024px) {
  /*
   * Keep menu → breadcrumbs spacing visually equal to
   * breadcrumbs → photo/title spacing.
   */
  html body.single-product #page #content .site-content-inner {
    margin-top:-14px !important;
  }
}


/* VS HEADER NAV BORDER MATCH — 2026-09-21 */
html body .vs-global-header .vs-header__nav {
  border-top:1px solid #f1ece8 !important;
  border-bottom:.5px solid #f1ece8 !important;
  box-shadow:none !important;
  outline:0 !important;
}


/* VS HEADER SINGLE SEPARATOR FINAL — 2026-09-21 */
/* The lower edge looked thicker because TWO borders were stacked:
   .vs-header had its own bottom border and .vs-header__nav had another one. */
html body .vs-global-header.vs-header,
html body .vs-global-header {
  border-bottom:0 !important;
  box-shadow:none !important;
}

html body .vs-global-header .vs-header__nav {
  border-top:1px solid #f1ece8 !important;
  border-bottom:1px solid #f1ece8 !important;
  box-shadow:none !important;
  outline:0 !important;
}


/* VS FLOATING MESSENGERS GLOBAL SIZE — 2026-09-21 */
/* Unified olive treatment. IMPORTANT: only icon artwork is recoloured/resized;
   tooltip/text children are left completely untouched. */
html body .msk-floating-messenger {
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  box-sizing:border-box !important;

  color:#737d5f !important;
  border:1px solid #d8dccb !important;
  border-radius:12px !important;
  background:#f7f8f2 !important;
  box-shadow:0 3px 12px rgba(74,78,55,.08) !important;

  transition:
    background-color .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease !important;
}

html body .msk-floating-messenger:hover {
  color:#626c50 !important;
  border-color:#c4cab0 !important;
  background:#ecefe2 !important;
  box-shadow:0 5px 14px rgba(74,78,55,.12) !important;
  transform:translateY(-1px) !important;
}

/* Only the actual messenger artwork. Do NOT size/filter generic children:
   the hover label/text is a separate child and must retain its native geometry. */
html body .msk-floating-messenger svg,
html body .msk-floating-messenger img,
html body .msk-floating-messenger .msk-max-official,
html body .msk-floating-messenger .msk-max-official svg,
html body .msk-floating-messenger .msk-max-official img {
  width:27px !important;
  min-width:27px !important;
  max-width:27px !important;
  height:27px !important;
  min-height:27px !important;
  max-height:27px !important;
  flex:0 0 27px !important;
  object-fit:contain !important;

  filter:grayscale(1) sepia(.45) saturate(.8) hue-rotate(28deg) brightness(.72) contrast(1.02) !important;
}

html body .msk-floating-messenger:hover svg,
html body .msk-floating-messenger:hover img,
html body .msk-floating-messenger:hover .msk-max-official,
html body .msk-floating-messenger:hover .msk-max-official svg,
html body .msk-floating-messenger:hover .msk-max-official img {
  filter:grayscale(1) sepia(.55) saturate(.9) hue-rotate(28deg) brightness(.62) contrast(1.04) !important;
}

@media (max-width:767px) {
  html body .msk-floating-messenger {
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
  }
}

/* VS HEADER SOCIAL ICONS POLISH — 2026-09-21 */
/* Stable final version: clone the already-working floating messenger buttons,
   then strip only their button chrome. The icon artwork itself stays untouched. */
html body .vs-header__social-slot {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  min-width:132px !important;
}

html body .vs-header__social-slot > a.vs-header-social-exact {
  position:relative !important;
  inset:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:36px !important;
  min-width:36px !important;
  max-width:36px !important;
  height:36px !important;
  min-height:36px !important;
  max-height:36px !important;

  margin:0 !important;
  padding:0 !important;
  box-sizing:border-box !important;

  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;

  transform:none !important;
  overflow:visible !important;
  z-index:auto !important;

  /* One unified muted olive tone for Telegram / MAX / WhatsApp. */
  filter:grayscale(1) sepia(.45) saturate(.8) hue-rotate(28deg) brightness(.72) contrast(1.02) !important;
  transition:transform .16s ease, filter .16s ease, opacity .16s ease !important;
}

/* Make the real artwork larger and more visible. */
html body .vs-header__social-slot > a.vs-header-social-exact svg,
html body .vs-header__social-slot > a.vs-header-social-exact img,
html body .vs-header__social-slot > a.vs-header-social-exact .msk-max-official,
html body .vs-header__social-slot > a.vs-header-social-exact .msk-max-official svg,
html body .vs-header__social-slot > a.vs-header-social-exact .msk-max-official img {
  width:29px !important;
  min-width:29px !important;
  max-width:29px !important;
  height:29px !important;
  min-height:29px !important;
  max-height:29px !important;
  flex:0 0 29px !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
}

/* Do not kill pseudo-elements: some working floating icons are rendered there. */
html body .vs-header__social-slot > a.vs-header-social-exact::before,
html body .vs-header__social-slot > a.vs-header-social-exact::after {
  background-size:29px 29px !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

html body .vs-header__social-slot > a.vs-header-social-exact:hover {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:translateY(-1px) scale(1.07) !important;
  filter:grayscale(1) sepia(.55) saturate(.9) hue-rotate(28deg) brightness(.62) contrast(1.04) !important;
}

/* Before cloning has completed, keep the original header links visible
   instead of showing empty space. */
html body .vs-header__social-slot > a:not(.vs-header-social-exact) {
  visibility:visible !important;
  opacity:1 !important;
}

@media (max-width:1180px) {
  html body .vs-header__social-slot {
    display:none !important;
  }
}


/* VS CARD BRAND BESIDE STOCK + HEIGHT SYNC — 2026-09-21 */
/* One compact structure for product cards everywhere:
   fixed title/price/status levels, brand beside availability, cart aligned. */

html body .shop-grid:not(.swiper-wrapper),
html body .section-products,
html body .card-slider-container .swiper-wrapper {
  align-items:stretch !important;
}

html body .shop-item:not(.shop-item--type-small) {
  align-self:stretch !important;
  height:auto !important;
}

html body .shop-item:not(.shop-item--type-small) > .shop-item-inner {
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:0 !important;
}

/* Title slot stays equal; the existing JS shrinks only the font when needed. */
@media (min-width:1101px) {
  html body .shop-item:not(.shop-item--type-small) .shop-item__title {
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    margin-bottom:7px !important;
    overflow:hidden !important;
  }
}

@media (min-width:768px) and (max-width:1100px) {
  html body .shop-item:not(.shop-item--type-small) .shop-item__title {
    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    margin-bottom:7px !important;
    overflow:hidden !important;
  }
}

@media (max-width:767px) {
  html body .shop-item:not(.shop-item--type-small) .shop-item__title {
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:9px 0 6px !important;
    overflow:hidden !important;
  }
}

/* Keep price on the same level in every card. */
html body .shop-item:not(.shop-item--type-small) .shop-item__price {
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  min-height:28px !important;
  margin:0 !important;
}

/* Availability + brand are one compact row. */
html body .shop-item:not(.shop-item--type-small) .vs-card-status-row {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  width:100% !important;
  min-height:24px !important;
  margin:5px 0 0 !important;
  padding:0 !important;
}

html body .shop-item:not(.shop-item--type-small) .vs-card-status-row .shop-item__in-stock {
  display:inline-flex !important;
  align-items:center !important;
  flex:0 0 auto !important;
  min-height:22px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.15 !important;
}

html body .shop-item:not(.shop-item--type-small) .vs-card-status-row .msk-final-brand,
html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.msk-loop-brand,.msk-card-brand,.msk-bottom-brand),
html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.pwb-brands-in-loop a,.pwb-loop-brands a) {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 1 auto !important;

  width:auto !important;
  min-width:0 !important;
  max-width:48% !important;
  min-height:22px !important;
  height:22px !important;

  margin:0 !important;
  padding:2px 7px !important;

  border:1px solid #e0d8d1 !important;
  border-radius:6px !important;
  background:#f8f5f2 !important;
  color:#6a625d !important;

  font-family:Manrope,Arial,sans-serif !important;
  font-size:10.5px !important;
  line-height:1 !important;
  font-weight:600 !important;
  text-decoration:none !important;

  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  box-shadow:none !important;
  transform:none !important;
}

html body .shop-item:not(.shop-item--type-small) .vs-card-status-row .msk-final-brand:hover,
html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.msk-loop-brand,.msk-card-brand,.msk-bottom-brand):hover,
html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.pwb-brands-in-loop a,.pwb-loop-brands a):hover {
  border-color:#cdbbb0 !important;
  background:#f3eeea !important;
  color:#8f4934 !important;
}

/* The old lower brand button is gone after JS moves the link; cart remains
   at the same bottom level for all cards. */
html body .shop-item:not(.shop-item--type-small) .msk-final-card-row {
  display:flex !important;
  align-items:stretch !important;
  width:100% !important;
  min-height:0 !important;
  margin:auto 0 0 !important;
  padding:8px 0 0 !important;
  gap:0 !important;
}

html body .shop-item:not(.shop-item--type-small) .msk-final-card-row .msk-final-cart {
  flex:1 1 100% !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:42px !important;
  height:42px !important;
  padding:0 12px !important;
  white-space:nowrap !important;
}

/* Hide empty legacy brand containers after their link has been moved. */
html body .shop-item:not(.shop-item--type-small) :is(.pwb-brands-in-loop,.pwb-loop-brands):empty {
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

@media (max-width:767px) {
  html body .shop-item:not(.shop-item--type-small) .shop-item__price {
    min-height:24px !important;
  }

  html body .shop-item:not(.shop-item--type-small) .vs-card-status-row {
    gap:5px !important;
    min-height:22px !important;
    margin-top:4px !important;
  }

  html body .shop-item:not(.shop-item--type-small) .vs-card-status-row .msk-final-brand,
  html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.msk-loop-brand,.msk-card-brand,.msk-bottom-brand),
  html body .shop-item:not(.shop-item--type-small) .vs-card-status-row :is(.pwb-brands-in-loop a,.pwb-loop-brands a) {
    max-width:50% !important;
    min-height:20px !important;
    height:20px !important;
    padding:2px 5px !important;
    border-radius:5px !important;
    font-size:9.5px !important;
  }

  html body .shop-item:not(.shop-item--type-small) .msk-final-card-row {
    padding-top:7px !important;
  }

  html body .shop-item:not(.shop-item--type-small) .msk-final-card-row .msk-final-cart {
    min-height:40px !important;
    height:40px !important;
  }
}


/* VS CATEGORY SINGLE TITLE + COMPACT H1 — 2026-09-21 */
/* Keep one category title and make the real archive H1 compact on every breakpoint. */
html body.tax-product_cat #page #content h1,
html body.woocommerce.archive #page #content h1.woocommerce-products-header__title,
html body.woocommerce.archive #page #content h1.page-title,
html body.woocommerce.archive #page #content h1.entry-title {
  font-family:Manrope,Arial,sans-serif !important;
  font-size:26px !important;
  line-height:1.18 !important;
  font-weight:650 !important;
  letter-spacing:-.018em !important;
  margin:0 0 18px !important;
}

@media (max-width:767px) {
  html body.tax-product_cat #page #content h1,
  html body.woocommerce.archive #page #content h1.woocommerce-products-header__title,
  html body.woocommerce.archive #page #content h1.page-title,
  html body.woocommerce.archive #page #content h1.entry-title {
    font-size:22px !important;
    line-height:1.2 !important;
    margin:0 0 14px !important;
  }
}


/* VS HEADER FINAL SAFE OVERRIDE 2026-09-22 */
html body .vs-global-header .vs-logo,
html body .vs-global-header .vs-logo:visited,
html body .vs-global-header .vs-logo:hover,
html body .vs-global-header .vs-logo:focus,
html body .vs-global-header .vs-logo:active{
  color:#242220 !important;
  text-decoration:none !important;
  outline:none !important;
  box-shadow:none !important;
}
html body .vs-global-header .vs-logo__mark{
  color:#ab5a3f !important;
  -webkit-text-fill-color:#ab5a3f !important;
}
html body .vs-global-header .vs-logo__text strong{
  color:#242220 !important;
  -webkit-text-fill-color:#242220 !important;
}
html body .vs-global-header .vs-logo__text small{
  color:#8a827d !important;
  -webkit-text-fill-color:#8a827d !important;
}
@media (max-width:767px){
  html body .vs-global-header .vs-logo{
    display:flex !important;
    width:auto !important;
    max-width:calc(100vw - 120px) !important;
    overflow:visible !important;
    gap:8px !important;
  }
  html body .vs-global-header .vs-logo__text{
    display:flex !important;
    flex-direction:column !important;
    min-width:0 !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  html body .vs-global-header .vs-logo__text strong{
    display:block !important;
    font-size:13px !important;
    line-height:1.08 !important;
    white-space:nowrap !important;
  }
  html body .vs-global-header .vs-logo__text small{
    display:block !important;
    margin-top:4px !important;
    font-size:6px !important;
    line-height:1.15 !important;
    letter-spacing:.10em !important;
    white-space:normal !important;
    max-width:210px !important;
  }
}


/* Mobile catalog badges: same compact geometry as the product gallery.
 * Keep both ancestor IDs: the legacy catalog rules use #page #content. */
@media screen and (max-width: 767px) {
    html:root body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__badges {
        gap: 4px !important;
    }
    html:root body.woocommerce #page #content .shop-item:not(.shop-item--type-small) .shop-item__badges > * {
        box-sizing: border-box !important;
        min-height: 18px !important;
        height: 18px !important;
        padding: 3px 6px !important;
        border-radius: 4px !important;
        font-size: 12px !important;
        line-height: 1 !important;
        font-weight: 500 !important;
        box-shadow: none !important;
    }
}

/* MOBILE CATALOG ONLY: hide the legacy categories list on catalog/filter pages.
 * Desktop sidebar stays intact, including single product pages. */
@media (max-width: 991px) {
    body:not(.single-product) #secondary.widget-area--desktop #woocommerce_product_categories-6,
    body:not(.single-product) #secondary.widget-area--desktop .widget_product_categories {
        display: none !important;
    }
}
