/* ============================================================
   vc_desktop.css — десктопная версия VIP COLLECTION (≥ 769 px)
   По согласованным макетам (сентябрь 2026).
   Подключается в index.php ПОСЛЕДНИМ, после vc_mobile.css.
   Телефонную версию не меняет (кроме пары общих правил в начале файла).
   ============================================================ */

/* ---------- Общие правила (все экраны) ---------- */
/* Блок «Есть вопросы?» у текстовых страниц: на телефоне стоит под текстом */
.vc-aside {
    margin: 0 0 32px;
    padding: 24px;
    border: 1px solid #e8dec8;
    border-radius: 12px;
    background: #fdfaf5;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: left;
}
.vc-aside__title { font-size: 19px; font-weight: 600; color: #2c1810; }
.vc-aside__phone { font-size: 22px; font-weight: 700; color: #2c1810 !important; text-decoration: none !important; }
.vc-aside__mail { font-size: 15px; color: #3d2817 !important; }
.vc-aside__msg { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 4px; }
.vc-aside__msg a {
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #e8dec8;
    color: #3d2817 !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
}
.vc-aside__addr { margin-top: 6px; padding-top: 12px; border-top: 1px solid #e8dec8; font-size: 14px; line-height: 1.5; color: #313131; }
/* Панель «Каталог» в меню — только десктоп */
.vc-catbtn, .vc-mega { display: none; }

@media (max-width: 768px) {
    html body.site .vc-crumbs--desk { display: none !important; }
    html body.site .vc-aside { margin: 0 0 32px !important; }
}

@media (min-width: 769px) {

:root {
    --vc-dark:   #2c1810;
    --vc-brown:  #3d2817;
    --vc-wine:   #8b1a1a;
    --vc-wheat:  #f5deb3;
    --vc-cream:  #fdfaf5;
    --vc-bg:     #f4ede0;
    --vc-border: #e8dec8;
    --vc-border-strong: #d9c9a8;
    --vc-text:   #313131;
    --vc-muted:  #8b7355;
    --vc-green:  #2b7a1f;
    --vc-w: 1200px;
}

/* ============================================================
   1. ОСНОВА: фон, ширина 1200 px, лишняя серая полоса сверху
   ============================================================ */
html body.site { background: var(--vc-bg) !important; color: var(--vc-text); }
html body.site .body { background: transparent !important; padding: 0 !important; }
html body.site .menu-1 { display: none !important; }
html body.site .body > .container,
html body.site .navigation1 > .container,
html body.site .mmain > .container,
html body.site .akcia > .container,
html body.site .info > .container,
html body.site .topt > .container,
html body.site .ssl > .container,
html body.site .posl > .container,
html body.site .news > .container,
html body.site .manuf2 > .container,
html body.site footer.footer > .container {
    width: var(--vc-w) !important;
    max-width: calc(100% - 48px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
    box-sizing: border-box;
}
html body.site .akcia,
html body.site .info,
html body.site .topt,
html body.site .ssl,
html body.site .posl,
html body.site .news,
html body.site .manuf2 {
    background: transparent !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 0 56px !important;
}
html body.site .container::before,
html body.site .container::after { content: none !important; display: none !important; }

/* ============================================================
   2. ШАПКА: логотип · поиск · телефон · корзина — одна строка 84 px
   ============================================================ */
html body.site .body > .container:has(header.header) { width: 100% !important; max-width: none !important; background: var(--vc-cream); border-bottom: 1px solid var(--vc-border); }
html body.site header.header {
    width: var(--vc-w) !important;
    max-width: calc(100% - 48px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    background: transparent !important;
    border: 0 !important;
}
html body.site header.header .header-inner {
    display: flex !important;
    align-items: center !important;
    gap: 32px !important;
    height: 84px;
    padding: 0 !important;
    margin: 0 !important;
}
html body.site header.header .header-inner::before,
html body.site header.header .header-inner::after { content: none !important; display: none !important; }
/* Логотип + подпись */
html body.site header.header .brand {
    order: 1;
    flex: none;
    float: none !important;
    display: flex !important;
    align-items: center;
    gap: 14px;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
}
html body.site header.header .brand img { height: 48px !important; max-height: 48px !important; width: auto !important; display: block; }
html body.site header.header .brand .site-description {
    width: 124px;
    max-width: 124px !important;
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase;
    color: var(--vc-muted) !important;
}
/* Корзина и поиск становятся отдельными элементами строки */
html body.site header.header .header-search { display: contents !important; }
html body.site header.header .mod-shop-search {
    order: 2;
    flex: 1 1 auto;
    min-width: 0;
    height: 44px;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: stretch;
    border: 1px solid var(--vc-border-strong);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}
html body.site header.header .mod-shop-search input[type="text"] {
    flex: 1 1 auto;
    width: auto !important;
    min-width: 0;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 15px !important;
    color: var(--vc-text) !important;
}
html body.site header.header .mod-shop-search input[type="text"]::placeholder { color: var(--vc-muted); }
html body.site header.header .mod-shop-search input[type="submit"] {
    flex: none;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--vc-brown) !important;
    background-image: none !important;
    color: var(--vc-wheat) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html body.site header.header .mod-shop-search input[type="submit"]:hover { background: var(--vc-wine) !important; color: #fff !important; }
html body.site header.header .adv_search_link { display: none !important; }
/* Телефон, почта, мессенджеры */
html body.site header.header .header-inner > center {
    order: 3;
    flex: none;
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    text-align: left !important;
}
html body.site header.header .tel {
    display: flex !important;
    flex-direction: column;
    gap: 3px;
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: none !important;
}
html body.site header.header .tel .custom { display: flex !important; flex-direction: column; gap: 2px; }
html body.site header.header .tel p { margin: 0 !important; line-height: 1.25 !important; text-align: left !important; }
html body.site header.header .tel p:first-child a {
    font-size: 19px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    color: var(--vc-dark) !important;
    text-decoration: none !important;
}
html body.site header.header .tel p a::before,
html body.site header.header .tel p a::after { content: none !important; display: none !important; }
/* почту и мессенджеры — одной строкой под телефоном */
html body.site header.header .tel .custom p:nth-child(2) { display: none !important; }
html body.site header.header .vc-tel-msg { display: flex; gap: 10px; font-size: 13px; }
html body.site header.header .vc-tel-msg a { color: var(--vc-brown) !important; text-decoration: underline !important; font-size: 13px; }
html body.site header.header .vc-tel-msg a:hover { color: var(--vc-wine) !important; }
/* Корзина: иконка, слово «Корзина», счётчик */
html body.site header.header #mod-custom226 { order: 4; flex: none; margin: 0 !important; }
html body.site header.header a.vc-cart-link {
    height: 44px;
    box-sizing: border-box;
    padding: 0 14px 0 12px !important;
    display: flex !important;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--vc-brown) !important;
    text-decoration: none !important;
    position: relative;
}
html body.site header.header a.vc-cart-link svg { order: 1; width: 24px !important; height: 24px !important; color: var(--vc-brown); stroke: currentColor; }
html body.site header.header a.vc-cart-link::after {
    content: "Корзина";
    order: 2;
    font-size: 15px;
    font-weight: 600;
    color: var(--vc-brown);
}
html body.site header.header a.vc-cart-link .vc-cart-count {
    order: 3;
    position: static !important;
    min-width: 22px;
    height: 22px;
    padding: 0 6px !important;
    box-sizing: border-box;
    border: 0 !important;
    border-radius: 11px !important;
    background: var(--vc-wine) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 22px !important;
    text-align: center;
}
html body.site header.header a.vc-cart-link .vc-cart-count[hidden] { display: none !important; }

/* ============================================================
   3. МЕНЮ: кнопка «Каталог» + страницы для покупателей
   ============================================================ */
html body.site .navigation1 {
    position: relative;
    z-index: 900;
    height: 48px;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--vc-dark) !important;
    border: 0 !important;
}
html body.site .navigation1 > .container { height: 48px; position: relative; }
html body.site .navigation1 .nav-collapse {
    display: flex !important;
    align-items: stretch;
    height: 48px !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 0 !important;
    background: transparent !important;
}
html body.site .navigation1 .vc-catbtn {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: none;
    height: 48px;
    margin: 0;
    padding: 0 22px 0 18px;
    border: 0;
    background: var(--vc-brown);
    color: var(--vc-wheat);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}
html body.site .navigation1 .vc-catbtn::before {
    content: "";
    width: 18px;
    height: 18px;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5deb3' stroke-width='2'%3E%3Crect x='4' y='4' width='6.5' height='6.5' rx='1'/%3E%3Crect x='13.5' y='4' width='6.5' height='6.5' rx='1'/%3E%3Crect x='4' y='13.5' width='6.5' height='6.5' rx='1'/%3E%3Crect x='13.5' y='13.5' width='6.5' height='6.5' rx='1'/%3E%3C/svg%3E") no-repeat center / contain;
}
html body.site .navigation1 .vc-catbtn::after {
    content: "";
    width: 12px;
    height: 12px;
    transition: transform .2s ease;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5deb3' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat center / contain;
}
html body.site .navigation1 .vc-catbtn[aria-expanded="true"]::after { transform: rotate(180deg); }
html body.site .navigation1 .vc-catbtn:hover,
html body.site .navigation1 .vc-catbtn[aria-expanded="true"] { background: #7a3d12; }
html body.site .navigation1 .vc-catbtn:focus-visible { outline: 2px solid var(--vc-wheat); outline-offset: -4px; }
html body.site .navigation1 ul.menu {
    flex: 1 1 auto;
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 0 0 24px !important;
    list-style: none;
    float: none !important;
    background: transparent !important;
}
html body.site .navigation1 ul.menu > li { display: flex; margin: 0 !important; padding: 0 !important; float: none !important; border: 0 !important; }
html body.site .navigation1 ul.menu > li > a,
html body.site .navigation1 ul.menu > li > a:link,
html body.site .navigation1 ul.menu > li > a:visited {
    display: inline-flex !important;
    align-items: center;
    height: 48px;
    padding: 0 !important;
    background: transparent !important;
    color: var(--vc-wheat) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
    text-decoration: none !important;
    text-shadow: none !important;
    position: relative;
}
html body.site .navigation1 ul.menu > li > a::first-letter { text-transform: uppercase; }
html body.site .navigation1 ul.menu > li > a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 10px !important;
    width: auto !important;
    height: 2px !important;
    background: var(--vc-wheat) !important;
    transform: scaleX(0) !important;
    transition: transform .2s ease !important;
}
html body.site .navigation1 ul.menu > li > a:hover::after,
html body.site .navigation1 ul.menu > li.current > a::after,
html body.site .navigation1 ul.menu > li.active > a::after { transform: scaleX(1) !important; }
html body.site .navigation1 ul.menu > li > a:hover { color: #fff !important; }
/* «Акции» — метка вместо ярко-красного текста */
html body.site .navigation1 ul.menu > li > a.red { color: var(--vc-wheat) !important; font-weight: 600 !important; gap: 8px; }
html body.site .navigation1 ul.menu > li > a.red::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #d65a5a;
}
/* Выпадающая панель «Каталог» */
html body.site .navigation1 .vc-mega {
    position: absolute;
    left: 0;
    right: 0;
    top: 48px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 40px;
    padding: 28px 32px 32px;
    border: 1px solid var(--vc-border);
    border-top: 0;
    border-radius: 0 0 12px 12px;
    background: var(--vc-cream);
    box-shadow: 0 12px 32px rgba(31, 20, 16, 0.18);
}
html body.site .navigation1 .vc-mega[hidden] { display: none; }
html body.site .vc-mega__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2px 24px; align-content: start; }
html body.site .vc-mega__list a {
    min-height: 44px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--vc-border);
    color: var(--vc-dark) !important;
    font-size: 16px;
    text-decoration: none !important;
}
html body.site .vc-mega__list a:hover { color: var(--vc-brown) !important; }
html body.site .vc-mega__promo { display: flex; flex-direction: column; gap: 12px; }
html body.site .vc-mega__promo a {
    padding: 18px 20px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-decoration: none !important;
}
html body.site .vc-mega__promo b { font-size: 18px; font-weight: 600; }
html body.site .vc-mega__promo span { font-size: 14px; opacity: 0.9; }
html body.site .vc-mega__hot { background: var(--vc-wine); color: #fff !important; }
html body.site .vc-mega__sale { background: var(--vc-dark); color: var(--vc-wheat) !important; }
/* лёгкое затемнение страницы под открытой панелью */
html body.site.vc-mega-open .mmain,
html body.site.vc-mega-open .akcia,
html body.site.vc-mega-open .info,
html body.site.vc-mega-open .topt { filter: brightness(0.85); transition: filter .15s; }

/* ============================================================
   4. ХЛЕБНЫЕ КРОШКИ
   ============================================================ */
html body.site .vc-crumbs--desk {
    display: block !important;
    grid-column: 1 / -1;
    width: 100%;
    margin: 0 0 16px !important;
    padding: 0 !important;
    font-size: 14px !important;
    color: var(--vc-muted);
}
html body.site .vc-crumbs--desk ol { display: flex; flex-wrap: wrap; align-items: center; margin: 0; padding: 0; list-style: none; }
html body.site .vc-crumbs--desk li { display: inline-flex; align-items: center; margin: 0; padding: 0; list-style: none; font-size: 14px !important; text-transform: none !important; }
html body.site .vc-crumbs--desk li + li::before { content: "/"; margin: 0 8px; color: var(--vc-muted); }
html body.site .vc-crumbs--desk a { color: var(--vc-brown) !important; text-decoration: none !important; font-size: 14px !important; }
html body.site .vc-crumbs--desk a:hover { text-decoration: underline !important; }
html body.site .vc-crumbs--desk span { color: var(--vc-muted); font-size: 14px !important; }

/* ============================================================
   5. РАСКЛАДКА СТРАНИЦЫ: боковая колонка каталога только в разделах
   ============================================================ */
html body.site .mmain { padding: 24px 0 56px !important; margin: 0 !important; background: transparent !important; }
html body.site .mmain > .container { display: block; }
html body.site .mmain .lft { display: none !important; }
html body.site .mmain .sl,
html body.site .mmain main#content {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Раздел каталога: слева список разделов 264 px */
html body.site:has(#comjshop_list_product) .mmain > .container {
    display: grid !important;
    grid-template-columns: 264px minmax(0, 1fr);
    column-gap: 32px;
    align-items: start;
}
html body.site:has(#comjshop_list_product) .mmain .lft {
    display: flex !important;
    flex-direction: column;
    width: auto !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 8px 8px 8px !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: var(--vc-cream) !important;
    box-shadow: none !important;
}
html body.site:has(#comjshop_list_product) .mmain .lft::before {
    content: "Каталог";
    display: block;
    padding: 8px 10px 8px;
    font-size: 13px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--vc-muted);
}
html body.site .mmain .lft .jshop_menu_level_0,
html body.site .mmain .lft .jshop_menu_level_0_a,
html body.site .mmain .lft .jshop_menu_level_1,
html body.site .mmain .lft .jshop_menu_level_1_a { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
html body.site .mmain .lft .jshop_menu_level_1,
html body.site .mmain .lft .jshop_menu_level_1_a { padding-left: 12px !important; }
html body.site .mmain .lft [class^="jshop_menu_level_"] > a {
    min-height: 42px;
    box-sizing: border-box;
    padding: 8px 12px !important;
    display: flex !important;
    align-items: center;
    border: 0 !important;
    border-radius: 6px;
    background: transparent !important;
    color: var(--vc-dark) !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    text-decoration: none !important;
    transition: background .15s;
}
html body.site .mmain .lft [class^="jshop_menu_level_"] > a:hover { background: var(--vc-bg) !important; padding-left: 12px !important; }
html body.site .mmain .lft [class$="_a"] > a { background: var(--vc-bg) !important; color: var(--vc-brown) !important; font-weight: 600 !important; }
html body.site .mmain .lft a[href*="tovary-po-aktsii"],
html body.site .mmain .lft a[href*="rasprodazha"] { color: var(--vc-wine) !important; font-weight: 600 !important; }

/* Главная: колонка каталога превращается в плитки под баннером */
html body.site.itemid-165 .mmain > .container { display: flex !important; flex-direction: column; gap: 56px; }
html body.site.itemid-165 .mmain .sl { order: 1; }
html body.site.itemid-165 .mmain .lft {
    order: 2;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
html body.site.itemid-165 .mmain .lft::before {
    content: "Каталог";
    grid-column: 1 / -1;
    margin: 0 0 4px;
    font-size: 28px;
    font-weight: 600;
    color: var(--vc-brown);
}
html body.site.itemid-165 .mmain .lft [class^="jshop_menu_level_0"] > a {
    min-height: 76px;
    height: 100%;
    padding: 14px 40px 14px 18px !important;
    position: relative;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px;
    background: var(--vc-cream) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}
html body.site.itemid-165 .mmain .lft [class^="jshop_menu_level_0"] > a::after {
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f1410' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center / contain;
}
html body.site.itemid-165 .mmain .lft [class^="jshop_menu_level_0"] > a:hover { border-color: var(--vc-brown) !important; background: #fff !important; }
html body.site.itemid-165 .mmain .lft a[href*="tovary-po-aktsii"],
html body.site.itemid-165 .mmain .lft a[href*="rasprodazha"] {
    background: var(--vc-wine) !important;
    border-color: var(--vc-wine) !important;
    color: #fff !important;
    text-transform: lowercase !important;
}
html body.site.itemid-165 .mmain .lft a[href*="tovary-po-aktsii"]::first-letter,
html body.site.itemid-165 .mmain .lft a[href*="rasprodazha"]::first-letter { text-transform: uppercase; }
html body.site.itemid-165 .mmain .lft a[href*="tovary-po-aktsii"]::after,
html body.site.itemid-165 .mmain .lft a[href*="rasprodazha"]::after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
}
html body.site.itemid-165 .mmain .lft a[href*="tovary-po-aktsii"]:hover,
html body.site.itemid-165 .mmain .lft a[href*="rasprodazha"]:hover { background: #761616 !important; }

/* ============================================================
   6. ГЛАВНАЯ: баннер — текст слева, фото справа, распродажа внизу
   ============================================================ */
html body.site.itemid-165 .blog-featured { margin: 0 !important; padding: 0 !important; }
html body.site.itemid-165 .blog-featured .item-content {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    column-gap: 0;
    align-content: start;
    overflow: hidden;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
}
html body.site.itemid-165 .blog-featured .item-content > p {
    grid-column: 1;
    margin: 0 !important;
    padding: 0 48px !important;
    text-align: left !important;
}
html body.site.itemid-165 .blog-featured .item-content > p:first-child { padding-top: 56px !important; }
html body.site.itemid-165 .blog-featured .item-content > p:has(img) {
    grid-column: 2;
    grid-row: 1 / span 4;
    padding: 0 !important;
    align-self: stretch;
    background: var(--vc-border);
}
html body.site.itemid-165 .blog-featured .item-content > p:has(img) a { display: block; height: 100%; }
html body.site.itemid-165 .blog-featured .item-content img {
    width: 100% !important;
    height: 100% !important;
    min-height: 400px;
    object-fit: cover;
    border-radius: 0 !important;
    display: block;
}
html body.site.itemid-165 .blog-featured .item-content > p:empty { display: none !important; }
html body.site.itemid-165 .blog-featured p span[style*="font-size: 24pt"] {
    display: block !important;
    margin: 0 0 12px !important;
    font-size: 40px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    text-align: left !important;
    color: var(--vc-dark) !important;
}
html body.site.itemid-165 .blog-featured p span[style*="font-size: 24pt"][style*="#800000"] {
    margin: 16px 0 0 !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    color: var(--vc-wine) !important;
}
html body.site.itemid-165 .blog-featured p span[style*="font-size: 12pt"],
html body.site.itemid-165 .blog-featured p span[style*="font-size: 12pt"] span {
    display: block !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
    text-align: left !important;
    color: var(--vc-text) !important;
}
/* Распродажа David Jones — тёмная полоса во всю ширину карточки */
html body.site.itemid-165 .blog-featured .item-content > p:has(span[style*="font-size: 18pt"]) {
    grid-column: 1 / -1;
    margin: 0 !important;
    padding: 32px 48px 0 !important;
    background: var(--vc-dark);
}
html body.site.itemid-165 .blog-featured .item-content > p:has(span[style*="font-size: 18pt"])::before {
    content: "Распродажа";
    display: block;
    margin: 0 0 6px;
    font-size: 13px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--vc-wheat);
    opacity: 0.8;
}
html body.site.itemid-165 .blog-featured p span[style*="font-size: 18pt"] {
    display: block !important;
    font-size: 28px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    text-align: left !important;
    color: var(--vc-wheat) !important;
}
html body.site.itemid-165 .blog-featured .item-content > p:has(a[href*="zhenskie-sumki"]) {
    grid-column: 1 / -1;
    margin: 0 !important;
    padding: 16px 48px 32px !important;
    background: var(--vc-dark);
    font-size: 0 !important;
    line-height: 0 !important;
}
html body.site.itemid-165 .blog-featured .item-content > p:has(a[href*="zhenskie-sumki"]) span,
html body.site.itemid-165 .blog-featured .item-content > p:has(a[href*="zhenskie-sumki"]) strong { font-size: 0 !important; text-decoration: none !important; }
html body.site.itemid-165 .blog-featured .item-content p a[href*="zhenskie-sumki"] {
    display: inline-flex !important;
    align-items: center;
    height: 52px;
    padding: 0 28px;
    border-radius: 6px;
    background: var(--vc-wine) !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
}
html body.site.itemid-165 .blog-featured .item-content p a[href*="zhenskie-sumki"]::after { content: "Смотреть сумки"; font-size: 16px; font-weight: 600; color: #fff; }
html body.site.itemid-165 .blog-featured .item-content p a[href*="zhenskie-sumki"]:hover { background: #761616 !important; }
html body.site.itemid-165 .blog-featured .item-content > p:has(a[href*="zhenskie-sumki"]) ~ p { display: none !important; }
/* пустой абзац перед картинкой не должен давать отступ */
html body.site.itemid-165 .blog-featured .item-content > p:not(:has(*)) { display: none !important; }

/* ============================================================
   7. ПОДБОРКИ «Новинки», «Популярные», «Последние» — по 4 карточки
   ============================================================ */
html body.site .vc-gallery-wrap { position: relative !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; }
html body.site .vc-gallery-wrap .vc-gallery-title {
    margin: 0 0 20px !important;
    padding: 0 120px 0 0 !important;
    border: 0 !important;
    font-size: 28px !important;
    line-height: 40px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    color: var(--vc-brown) !important;
    background: none !important;
}
html body.site .vc-gallery-wrap .vc-gallery-title::before,
html body.site .vc-gallery-wrap .vc-gallery-title::after { content: none !important; display: none !important; }
/* стрелки — у заголовка справа, не поверх карточек */
html body.site .vc-gallery-wrap .vc-carousel-arrow {
    position: absolute !important;
    top: 0 !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 20px !important;
    background: var(--vc-cream) !important;
    color: var(--vc-brown) !important;
    font-size: 22px !important;
    line-height: 1 !important;
    box-shadow: none !important;
    cursor: pointer;
}
html body.site .vc-gallery-wrap .vc-carousel-arrow.vc-prev { right: 52px !important; }
html body.site .vc-gallery-wrap .vc-carousel-arrow.vc-next { right: 0 !important; }
html body.site .vc-gallery-wrap .vc-carousel-arrow:disabled { opacity: 0.4 !important; cursor: default; }
html body.site .vc-gallery-wrap .vc-carousel-arrow:not(:disabled):hover { border-color: var(--vc-brown) !important; background: #fff !important; }
html body.site .latest_products.jshop_list_product {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    margin: 0 !important;
    padding: 0 0 4px !important;
    scrollbar-width: none;
}
html body.site .latest_products.jshop_list_product::-webkit-scrollbar { display: none; }
html body.site .latest_products .block_product {
    flex: 0 0 calc((100% - 72px) / 4) !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 0 16px !important;
    scroll-snap-align: start;
    display: flex !important;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: var(--vc-cream) !important;
    box-shadow: none !important;
    text-align: left !important;
    transition: border-color .15s;
}
html body.site .latest_products .block_product:hover { border-color: var(--vc-border-strong) !important; box-shadow: none !important; }
html body.site .latest_products .block_product .image,
html body.site .latest_products .block_product .image_block {
    width: 100% !important;
    height: 240px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #fff;
}
html body.site .latest_products .block_product .image_block a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
html body.site .latest_products .block_product img.jshop_img {
    max-width: 100% !important;
    max-height: 240px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    border-radius: 0 !important;
}
html body.site .latest_products .block_product .name {
    margin: 14px 16px 8px !important;
    padding: 0 !important;
    height: 63px;
    overflow: hidden;
    text-align: left !important;
}
html body.site .latest_products .block_product .name a {
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    color: var(--vc-dark) !important;
    text-decoration: none !important;
}
html body.site .latest_products .jshop_price,
html body.site .latest_products .old_price {
    margin: 0 16px 2px !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-align: left !important;
}
html body.site .latest_products .jshop_price span { font-size: 20px !important; line-height: 1.3 !important; font-weight: 700 !important; color: var(--vc-wine) !important; }
html body.site .latest_products .old_price span { font-size: 14px !important; line-height: 1.3 !important; color: var(--vc-muted) !important; text-decoration: line-through !important; }
html body.site .latest_products .block_product { display: flex !important; }
html body.site .latest_products .block_product .old_price { order: 4; }
html body.site .latest_products .block_product .jshop_price { order: 3; }

/* ============================================================
   8. «Бренды / Оплата / Ассортимент» и SEO-текст
   ============================================================ */
html body.site .information {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 32px !important;
    margin: 0 !important;
    padding: 40px 48px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
}
html body.site .information .item {
    display: flex !important;
    flex-direction: column;
    gap: 10px;
    width: auto !important;
    margin: 0 !important;
    padding: 16px 0 0 !important;
    border-top: 2px solid var(--vc-wheat);
    text-align: left !important;
}
html body.site .information .item:hover .pictures { transform: none !important; }
html body.site .information .item .pictures { display: block !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; transform: none !important; text-align: left !important; }
html body.site .information .item .pictures img { display: none !important; }
html body.site .information .item .item-title {
    display: block;
    margin: 0 !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: var(--vc-dark) !important;
    text-align: left !important;
}
html body.site .information .item .texxt,
html body.site .information .item p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15.5px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    color: var(--vc-text) !important;
    text-align: left !important;
}
html body.site .manuf2 .custom { max-width: 900px; }
html body.site .manuf2 .custom p {
    margin: 0 0 12px !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    text-align: left !important;
    color: var(--vc-text) !important;
}
html body.site .manuf2 .custom p.gray {
    margin-top: 16px !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: var(--vc-muted) !important;
}

/* ============================================================
   9. РАЗДЕЛ КАТАЛОГА: заголовок, панель фильтров, сетка 4 карточки
   ============================================================ */
html body.site #comjshop > h1 {
    margin: 0 0 20px !important;
    padding: 0 0 12px !important;
    border-bottom: 3px solid var(--vc-wheat) !important;
    font-size: 32px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    text-align: left !important;
    text-transform: none !important;
    color: var(--vc-brown) !important;
}
html body.site .jshop_list_category:not(:has(*)) { display: none !important; }
/* Сортировка + фильтры — одна светлая панель */
html body.site .jshop_list_product form#sort_count {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
    margin: 0 0 20px !important;
    padding: 14px 16px !important;
    border: 1px solid var(--vc-border);
    border-radius: 8px;
    background: var(--vc-cream) !important;
}
html body.site .jshop_list_product .form_sort_count,
html body.site .jshop_list_product .jshop.filters,
html body.site .jshop_list_product .block_sorting_count_to_page,
html body.site .jshop_list_product .box_cat_man,
html body.site .jshop_list_product .filter_price {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: 0 !important;
    float: none !important;
}
html body.site .jshop_list_product .form_sort_count .jshop_pagination,
html body.site .jshop_list_product .margin_filter,
html body.site .jshop_list_product .filter_mob_head,
html body.site .jshop_list_product .mobile-filter-toggle { display: none !important; }
html body.site .jshop_list_product form#sort_count .control-group {
    display: flex !important;
    align-items: center;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
html body.site .jshop_list_product form#sort_count .control-label {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    color: var(--vc-muted) !important;
    white-space: nowrap;
    text-align: left !important;
}
html body.site .jshop_list_product form#sort_count .controls { display: flex !important; align-items: center; gap: 6px; margin: 0 !important; padding: 0 !important; }
html body.site .jshop_list_product form#sort_count select,
html body.site .jshop_list_product form#sort_count input[type="text"] {
    width: auto !important;
    min-width: 0 !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    box-shadow: none !important;
    font-size: 15px !important;
    color: var(--vc-dark) !important;
}
html body.site .jshop_list_product form#sort_count #order { min-width: 170px !important; }
html body.site .jshop_list_product form#sort_count #price_from,
html body.site .jshop_list_product form#sort_count #price_to { width: 90px !important; }
html body.site .jshop_list_product form#sort_count .icon-arrow {
    height: 40px;
    box-sizing: border-box;
    padding: 0 10px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 6px !important;
    background: #fff !important;
}
html body.site .jshop_list_product form#sort_count .box_button { margin-left: auto !important; }
html body.site .jshop_list_product #submit_product_list_filter {
    height: 40px;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-brown) !important;
    background-image: none !important;
    color: var(--vc-wheat) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html body.site .jshop_list_product .clear_filter { display: inline-flex !important; padding: 0 0 0 10px !important; }
html body.site .jshop_list_product #clear_product_list_filter {
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    color: var(--vc-brown) !important;
    font-size: 14px !important;
    text-decoration: underline !important;
    text-transform: none !important;
}
/* Сетка товаров — по 4, без пустой ячейки bootstrap */
html body.site #comjshop_list_product > hr { display: none !important; }
html body.site .jshop_list_product #comjshop_list_product .row-fluid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
    margin: 0 0 20px !important;
    width: 100% !important;
}
html body.site .jshop_list_product #comjshop_list_product .row-fluid::before,
html body.site .jshop_list_product #comjshop_list_product .row-fluid::after { content: none !important; display: none !important; }
html body.site .jshop_list_product #comjshop_list_product .row-fluid > [class*="sblock"] {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
html body.site .jshop_list_product #comjshop_list_product .block_product {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}
html body.site .jshop_list_product #comjshop_list_product .block_product > .product {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100%;
    margin: 0 !important;
    padding: 0 0 14px !important;
    overflow: hidden;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: var(--vc-cream) !important;
    box-shadow: none !important;
    text-align: left !important;
    transition: border-color .15s;
}
html body.site .jshop_list_product #comjshop_list_product .block_product > .product:hover { border-color: var(--vc-border-strong) !important; }
html body.site .jshop_list_product #comjshop_list_product .product > .image { order: -1; margin: 0 !important; padding: 0 !important; position: relative; background: #fff; }
html body.site .jshop_list_product #comjshop_list_product .product .image_block {
    width: 100% !important;
    height: 220px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden !important;
    background: #fff;
}
html body.site .jshop_list_product #comjshop_list_product .product .image_block a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
html body.site .jshop_list_product #comjshop_list_product .product .image_block .jshop_img {
    max-width: 100% !important;
    max-height: 220px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    border-radius: 0 !important;
}
html body.site .jshop_list_product #comjshop_list_product .product .product_label { position: absolute !important; top: 10px !important; left: 10px !important; margin: 0 !important; z-index: 2; }
html body.site .jshop_list_product #comjshop_list_product .product > .name {
    margin: 12px 14px 8px !important;
    padding: 0 !important;
    height: 61px !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    text-align: left !important;
}
html body.site .jshop_list_product #comjshop_list_product .product > .name a {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    font-size: 14.5px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    color: var(--vc-dark) !important;
    text-decoration: none !important;
}
html body.site .jshop_list_product #comjshop_list_product .product .review_mark,
html body.site .jshop_list_product #comjshop_list_product .product .count_commentar,
html body.site .jshop_list_product #comjshop_list_product .product .block_available,
html body.site .jshop_list_product #comjshop_list_product .product .price_extra_info,
html body.site .jshop_list_product #comjshop_list_product .product .manufacturer_name,
html body.site .jshop_list_product #comjshop_list_product .product .productweight,
html body.site .jshop_list_product #comjshop_list_product .product .extra_fields,
html body.site .jshop_list_product #comjshop_list_product .product .qty_in_stock,
html body.site .jshop_list_product #comjshop_list_product .product .description,
html body.site .jshop_list_product #comjshop_list_product .product .button_detail { display: none !important; }
html body.site .jshop_list_product #comjshop_list_product .product .oiproduct { display: flex !important; flex-direction: column; flex: 1 1 auto; margin: 0 !important; padding: 0 !important; text-align: left !important; }
html body.site .jshop_list_product #comjshop_list_product .product .jshop_price { order: 1; margin: 0 14px 2px !important; font-size: 0 !important; line-height: 1 !important; min-height: 0 !important; text-align: left !important; }
html body.site .jshop_list_product #comjshop_list_product .product .jshop_price span { font-size: 19px !important; line-height: 1.3 !important; font-weight: 700 !important; color: var(--vc-wine) !important; }
html body.site .jshop_list_product #comjshop_list_product .product .old_price { order: 2; margin: 0 14px !important; font-size: 0 !important; line-height: 1 !important; text-align: left !important; }
html body.site .jshop_list_product #comjshop_list_product .product .old_price span { font-size: 13.5px !important; line-height: 1.3 !important; color: var(--vc-muted) !important; text-decoration: line-through !important; }
html body.site .jshop_list_product #comjshop_list_product .product .buttons {
    order: 3;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin: auto 14px 0 !important;
    padding: 12px 0 0 !important;
}
html body.site .jshop_list_product #comjshop_list_product .product .buttons > a.btn.button_buy {
    display: flex !important;
    align-items: center;
    justify-content: center;
    height: 44px;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-brown) !important;
    background-image: none !important;
    color: var(--vc-wheat) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
    box-shadow: none !important;
    opacity: 1 !important;
}
html body.site .jshop_list_product #comjshop_list_product .product .buttons > a.btn.button_buy:hover { background: var(--vc-wine) !important; color: #fff !important; }
html body.site .jshop_list_product #comjshop_list_product .product .buttons > .not_available_list {
    height: 44px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 6px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
/* Страницы */
html body.site .pagination ul, html body.site ul.pagination { display: flex !important; justify-content: center; gap: 8px; margin: 12px 0 0 !important; padding: 0 !important; list-style: none; box-shadow: none !important; }
html body.site .pagination li { display: block !important; margin: 0 !important; }
html body.site .pagination li a, html body.site .pagination li span {
    min-width: 44px;
    height: 44px;
    box-sizing: border-box;
    padding: 0 12px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    float: none !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 6px !important;
    background: var(--vc-cream) !important;
    color: var(--vc-dark) !important;
    text-decoration: none !important;
}
html body.site .pagination li.active a, html body.site .pagination li.active span, html body.site .pagination li a[aria-current] {
    background: var(--vc-brown) !important;
    border-color: var(--vc-brown) !important;
    color: var(--vc-wheat) !important;
}

/* ============================================================
   10. КАРТОЧКА ТОВАРА: фото слева, покупка справа, описание и характеристики
   ============================================================ */
html body.site form.productfull > h1,
html body.site .productfull h1 {
    margin: 0 0 20px !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 30px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    text-transform: none !important;
    text-align: left !important;
    color: var(--vc-brown) !important;
}
html body.site .productfull .jshop_button_print,
html body.site .productfull .block_rating_hits,
html body.site .productfull .text_zoom,
html body.site .productfull .manufacturer_logo { display: none !important; }
html body.site .productfull .row.jshop {
    display: grid !important;
    grid-template-columns: 560px minmax(0, 1fr);
    gap: 48px;
    align-items: start;
    margin: 0 0 32px !important;
}
html body.site .productfull .row.jshop::before,
html body.site .productfull .row.jshop::after { content: none !important; display: none !important; }
html body.site .productfull .row.jshop > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Галерея */
html body.site .productfull .image_middle {
    position: relative;
    height: 560px;
    margin: 0 0 12px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}
html body.site .productfull #list_product_image_middle { display: block !important; width: 100% !important; height: 100%; }
html body.site .productfull #list_product_image_middle > a.lightbox {
    width: 100% !important;
    height: 100% !important;
    align-items: center;
    justify-content: center;
}
html body.site .productfull #list_product_image_middle > a.lightbox:not([style*="display:none"]):not([style*="display: none"]) { display: flex !important; }
html body.site .productfull #list_product_image_middle > a.lightbox img {
    max-width: 92% !important;
    max-height: 92% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    border-radius: 0 !important;
}
html body.site .productfull .product_label { position: absolute !important; top: 16px; left: 16px; margin: 0 !important; z-index: 2; }
html body.site .productfull .image_thumb_list { margin: 0 !important; }
html body.site .productfull #list_product_image_thumb {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}
html body.site .productfull #list_product_image_thumb > .sblock0 { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
html body.site .productfull #list_product_image_thumb img {
    width: 100% !important;
    height: 80px !important;
    margin: 0 !important;
    padding: 4px;
    box-sizing: border-box;
    object-fit: contain;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s;
}
html body.site .productfull #list_product_image_thumb img:hover { border-color: var(--vc-brown) !important; }
/* Блок покупки */
html body.site .productfull .jshop_oiproduct,
html body.site .productfull .row.jshop > .jshop_oiproduct {
    display: flex !important;
    flex-direction: column;
    gap: 8px;
    padding: 24px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
    text-align: left !important;
}
html body.site .productfull .jshop_oiproduct > * { margin-left: 0 !important; margin-right: 0 !important; text-align: left !important; }
html body.site .productfull .prod_price { order: 1; margin: 0 !important; font-size: 0 !important; line-height: 1 !important; }
html body.site .productfull .prod_price #block_price { font-size: 36px !important; line-height: 1.2 !important; font-weight: 700 !important; color: var(--vc-wine) !important; }
html body.site .productfull .old_price:not(span) { order: 2; margin: 0 !important; font-size: 0 !important; line-height: 1 !important; }
html body.site .productfull .old_price #old_price { font-size: 19px !important; line-height: 1.3 !important; color: var(--vc-muted) !important; text-decoration: line-through !important; }
html body.site .productfull .plusshippinginfo { order: 3; display: block !important; margin: 0 !important; font-size: 14px !important; color: var(--vc-text) !important; }
html body.site .productfull .plusshippinginfo a { color: var(--vc-brown) !important; }
html body.site .productfull .block_available { order: 4; margin: 4px 0 0 !important; padding: 0 !important; font-size: 14px !important; font-weight: 600 !important; color: var(--vc-green) !important; background: none !important; }
html body.site .productfull .block_available::before { display: none !important; }
html body.site .productfull .manufacturer_name { order: 5; margin: 0 !important; padding: 0 !important; font-size: 14px !important; text-transform: none !important; letter-spacing: 0 !important; color: var(--vc-muted) !important; }
html body.site .productfull .manufacturer_name span { font-size: 14px !important; font-weight: 600 !important; color: var(--vc-text) !important; margin-left: 2px !important; }
html body.site .productfull .deliverytime,
html body.site .productfull .productweight { order: 6; margin: 0 !important; padding: 0 !important; font-size: 14px !important; color: var(--vc-text) !important; }
html body.site .productfull .productweight #block_weight { font-weight: 400 !important; color: var(--vc-text) !important; }
html body.site .productfull .qty_in_stock { display: none !important; }
html body.site .productfull .extra_fields:empty { display: none !important; }
html body.site .productfull .extra_fields:not(:empty) {
    order: 20;
    display: block !important;
    margin: 12px 0 0 !important;
    padding: 12px 0 0 !important;
    border-top: 1px dashed var(--vc-border);
    font-size: 14.5px !important;
}
html body.site .productfull .extra_fields .extra_fields_el,
html body.site .productfull .extra_fields > div > div {
    display: grid !important;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 16px;
    padding: 9px 0 !important;
    border-bottom: 1px solid var(--vc-border);
}
html body.site .productfull .extra_fields .extra_fields_name { color: var(--vc-muted) !important; font-weight: 400 !important; }
html body.site .productfull .prod_buttons {
    order: 10;
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin: 12px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px dashed var(--vc-border);
}
html body.site .productfull .prod_qty { margin: 0 !important; font-size: 14px !important; color: var(--vc-text) !important; }
html body.site .productfull .prod_qty_input { margin: 0 !important; padding: 0 !important; }
html body.site .productfull .prod_qty_input input[name="quantity"] {
    width: 72px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 8px !important;
    background: #fff !important;
    font-size: 17px !important;
    font-weight: 600;
    text-align: center;
}
html body.site .productfull .prod_buttons .buttons {
    flex: 1 1 auto;
    display: flex !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}
html body.site .productfull .prod_buttons .buttons input.btn-buy,
html body.site .productfull .prod_buttons .buttons input.btn-success {
    flex: 1 1 auto;
    height: 52px;
    margin: 0 !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-brown) !important;
    background-image: none !important;
    color: var(--vc-wheat) !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html body.site .productfull .prod_buttons .buttons input.btn-buy:hover { background: var(--vc-wine) !important; color: #fff !important; }
html body.site .productfull .prod_buttons .buttons input.btn-wishlist {
    flex: none;
    height: 52px;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-border) !important;
    background-image: none !important;
    color: var(--vc-brown) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html body.site .productfull .prod_buttons .buttons input.btn-wishlist:hover { background: var(--vc-border-strong) !important; }
html body.site .productfull .not_available:not(:empty) { order: 4; text-align: left !important; border-left-width: 1px !important; }
/* Описание — отдельной карточкой на всю ширину, без белых полос из редактора */
html body.site .jshop_prod_description {
    margin: 0 0 24px !important;
    padding: 32px 40px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
}
html body.site .jshop_prod_description::before {
    content: "Описание";
    display: block;
    margin: 0 0 16px;
    padding: 0 0 10px;
    border-bottom: 2px solid var(--vc-wheat);
    font-size: 22px;
    font-weight: 600;
    color: var(--vc-dark);
}
html body.site .jshop_prod_description,
html body.site .jshop_prod_description p,
html body.site .jshop_prod_description li,
html body.site .jshop_prod_description span,
html body.site .jshop_prod_description div {
    max-width: 860px;
    font-family: inherit !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: var(--vc-text) !important;
    background-color: transparent !important;
    text-align: left !important;
}
html body.site .jshop_prod_description { max-width: none; }
html body.site .jshop_prod_description p { margin: 0 0 12px !important; }
html body.site .jshop_prod_description p:empty { display: none !important; }
html body.site .jshop_prod_description a { font-size: inherit !important; font-family: inherit !important; color: var(--vc-brown) !important; text-decoration: underline !important; }
html body.site .jshop_prod_description span[style*="#ff0000"],
html body.site .jshop_prod_description span[style*="#FF0000"] { color: var(--vc-wine) !important; font-weight: 600; }
/* «Назад» и отзывы */
html body.site .jshop .button_back { margin: 0 0 24px !important; padding: 0 !important; }
html body.site .jshop .button_back input.btn {
    height: 44px;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-border) !important;
    background-image: none !important;
    color: var(--vc-brown) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html body.site .jshop .review_header { margin: 0 0 6px !important; padding: 0 0 8px !important; border-bottom: 1px solid var(--vc-border) !important; font-size: 19px !important; font-weight: 600 !important; color: var(--vc-dark) !important; }
html body.site .jshop .review_text_not_login { margin: 8px 0 0 !important; font-size: 14px !important; font-style: normal !important; color: var(--vc-muted) !important; }
html body.site #mxcpr { display: block; margin: 24px 0 0; padding: 0 !important; font-size: 11px !important; text-align: right; color: var(--vc-muted) !important; }
html body.site #mxcpr a { color: var(--vc-muted) !important; }

/* ============================================================
   11. ТЕКСТОВЫЕ СТРАНИЦЫ: статья слева, «Есть вопросы?» справа
   ============================================================ */
html body.site.com_content.view-article main#content:has(> .vc-aside) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 40px;
    align-items: start;
}
html body.site.com_content.view-article main#content:has(> .vc-aside) > * { grid-column: 1; }
html body.site.com_content.view-article main#content > .vc-aside {
    grid-column: 2 !important;
    grid-row: 1 / span 20;
    position: sticky;
    top: 24px;
    margin: 0 !important;
}
html body.site .item-page {
    max-width: none !important;
    margin: 0 !important;
    padding: 40px 48px 48px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
    text-align: left !important;
}
html body.site.com_content.view-article main#content:not(:has(> .vc-aside)) > .item-page { max-width: 900px !important; }
html body.site .item-page p,
html body.site .item-page li,
html body.site .item-page td,
html body.site .item-page dd,
html body.site .item-page div:not([class*="vc-"]),
html body.site .item-page section,
html body.site .item-page span,
html body.site .item-page [style*="text-align"],
html body.site.com_content.view-article .item-page p,
html body.site.com_content.view-article .item-page div { text-align: left !important; }
html body.site .item-page p,
html body.site .item-page li,
html body.site .item-page td { font-size: 16.5px !important; line-height: 1.7 !important; }
html body.site .item-page > .page-header { margin: 0 0 20px !important; padding: 0 !important; border: 0 !important; }
html body.site .item-page h1,
html body.site .item-page .page-header h1,
html body.site .item-page .page-header h2 {
    margin: 0 0 20px !important;
    padding: 0 0 14px !important;
    border: 0 !important;
    border-bottom: 3px solid var(--vc-wheat) !important;
    font-size: 32px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    text-transform: none !important;
    color: var(--vc-brown) !important;
}
html body.site .item-page .page-header h1 { margin-bottom: 0 !important; }
html body.site .item-page hr { margin: 24px 0 !important; border: 0 !important; border-top: 1px solid var(--vc-border) !important; background: none !important; height: 0 !important; }
html body.site .item-page > .page-header + hr,
html body.site .item-page > hr:first-of-type:nth-child(2) { display: none !important; }
html body.site .item-page h2 { margin: 28px 0 12px !important; font-size: 24px !important; line-height: 1.3 !important; color: var(--vc-brown) !important; border: 0 !important; text-transform: none !important; }
html body.site .item-page h3 { margin: 24px 0 10px !important; padding-bottom: 6px !important; font-size: 19px !important; color: var(--vc-dark) !important; border-bottom: 2px solid var(--vc-wheat) !important; text-transform: none !important; }
html body.site .item-page h4 { margin: 20px 0 8px !important; font-size: 17px !important; color: var(--vc-brown) !important; text-transform: none !important; }
html body.site .item-page ul, html body.site .item-page ol { margin: 8px 0 16px !important; padding-left: 24px !important; }
html body.site .item-page li { margin: 0 0 8px !important; }
html body.site .item-page img { height: auto !important; border-radius: 8px; }
html body.site .item-page a[style*="background"] {
    display: inline-flex !important;
    align-items: center;
    min-height: 48px;
    box-sizing: border-box;
    padding: 10px 22px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
}

/* ============================================================
   12. КОРЗИНА: товары слева, «Ваш заказ» справа
   ============================================================ */
html body.site:has(#updateCart) .akcia,
html body.site:has(#updateCart) .info,
html body.site:has(#updateCart) .topt,
html body.site:has(#updateCart) .posl,
html body.site:has(#updateCart) .manuf2,
html body.site[class*="task-step"] .akcia,
html body.site[class*="task-step"] .info,
html body.site[class*="task-step"] .topt,
html body.site[class*="task-step"] .posl,
html body.site[class*="task-step"] .manuf2 { display: none !important; }
html body.site #comjshop:has(> #updateCart)::before {
    content: "Корзина";
    display: block;
    margin: 0 0 24px;
    padding: 0 0 12px;
    border-bottom: 3px solid var(--vc-wheat);
    font-size: 32px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--vc-brown);
}
html body.site form#updateCart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 380px;
    column-gap: 32px;
    align-items: start;
}
html body.site form#updateCart > table.cart { grid-column: 1; grid-row: 1 / span 6; }
html body.site form#updateCart > .weightorder,
html body.site form#updateCart > .cartdescr,
html body.site form#updateCart > table.jshop_subtotal,
html body.site form#updateCart > .cart_buttons {
    grid-column: 2;
    margin: 0 !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    border-left: 1px solid var(--vc-border) !important;
    border-right: 1px solid var(--vc-border) !important;
    background: var(--vc-cream) !important;
    box-sizing: border-box;
    width: 100% !important;
}
html body.site form#updateCart > .weightorder {
    grid-row: 1;
    padding-top: 24px !important;
    border-top: 1px solid var(--vc-border) !important;
    border-radius: 12px 12px 0 0;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-align: left !important;
    color: var(--vc-muted) !important;
}
html body.site form#updateCart > .weightorder::before {
    content: "Ваш заказ";
    display: block;
    margin: 0 0 12px;
    font-size: 19px;
    font-weight: 600;
    color: var(--vc-dark);
}
html body.site form#updateCart > .weightorder span { font-weight: 400 !important; color: var(--vc-muted) !important; }
html body.site form#updateCart > .cartdescr { grid-row: 2; }
html body.site form#updateCart > .cartdescr:empty { padding-top: 0 !important; padding-bottom: 0 !important; }
html body.site form#updateCart > table.jshop_subtotal { grid-row: 3; display: block !important; padding-top: 8px !important; padding-bottom: 8px !important; }
html body.site form#updateCart > .cart_buttons {
    grid-row: 4;
    padding-top: 8px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid var(--vc-border) !important;
    border-radius: 0 0 12px 12px;
}
html body.site form#updateCart > .cart_buttons::before { margin: 0 0 16px !important; background-color: #fff !important; }
html body.site #comjshop .cart_buttons #checkout { display: flex !important; flex-direction: column-reverse !important; gap: 10px !important; }
html body.site #comjshop .cart_buttons .pull-left,
html body.site #comjshop .cart_buttons .pull-right { float: none !important; width: 100% !important; margin: 0 !important; }
html body.site #comjshop .cart_buttons a.btn {
    width: 100% !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
html body.site #comjshop .cart_buttons a.btn-arrow-right { height: 52px; background: var(--vc-brown) !important; color: var(--vc-wheat) !important; font-size: 17px !important; }
html body.site #comjshop .cart_buttons a.btn-arrow-right:hover { background: var(--vc-wine) !important; color: #fff !important; }
html body.site #comjshop .cart_buttons a.btn-arrow-left { height: 44px; background: transparent !important; color: var(--vc-brown) !important; font-size: 15px !important; text-decoration: underline !important; }
/* Строки товаров — карточками */
html body.site #comjshop table.jshop.cart,
html body.site #comjshop table.jshop.cart > tbody { display: block !important; width: 100% !important; margin: 0 !important; border: 0 !important; background: none !important; }
html body.site #comjshop table.jshop.cart tr:has(> th) { display: none !important; }
html body.site #comjshop table.jshop.cart tr.jshop_prod_cart {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) auto 130px;
    column-gap: 24px;
    align-items: center;
    margin: 0 0 12px !important;
    padding: 16px !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 12px !important;
    background: var(--vc-cream) !important;
}
html body.site #comjshop table.jshop.cart tr.jshop_prod_cart > td {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    text-align: left !important;
    color: var(--vc-text) !important;
}
html body.site #comjshop table.jshop.cart tr.jshop_prod_cart > td * { text-align: left; }
html body.site #comjshop table.jshop.cart td.jshop_img_description_center { grid-column: 1; grid-row: 1 / span 2; }
html body.site #comjshop table.jshop.cart td.jshop_img_description_center img {
    width: 112px !important;
    height: 112px !important;
    max-width: none !important;
    object-fit: contain;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: #fff;
    display: block;
}
html body.site #comjshop table.jshop.cart td.product_name { grid-column: 2; grid-row: 1; }
html body.site #comjshop table.jshop.cart td.product_name a.prodname { font-size: 16px !important; line-height: 1.4 !important; font-weight: 400 !important; color: var(--vc-dark) !important; text-decoration: none !important; }
html body.site #comjshop table.jshop.cart .jshop_code_prod { display: none !important; }
html body.site #comjshop table.jshop.cart .deliverytime { margin: 6px 0 0 !important; font-size: 13.5px !important; color: var(--vc-muted) !important; }
html body.site #comjshop table.jshop.cart tr.jshop_prod_cart > td.single_price { display: none !important; }
html body.site #comjshop table.jshop.cart td.quantity { grid-column: 3; grid-row: 1 / span 2; }
html body.site #comjshop table.jshop.cart td.quantity .data { display: flex !important; align-items: center; gap: 8px; }
html body.site #comjshop table.jshop.cart td.quantity .mobile-cart-inline { display: none !important; }
html body.site #comjshop table.jshop.cart td.quantity input.inputbox {
    width: 64px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 6px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 8px !important;
    background: #fff !important;
    font-size: 16px !important;
    text-align: center !important;
}
html body.site #comjshop table.jshop.cart td.quantity .cart_reload {
    width: 44px;
    height: 44px;
    padding: 0 !important;
    font-size: 0 !important;
    border-radius: 8px;
    background: var(--vc-border) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236a330e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 0 0-14.9-4M4 4v4h4M4 13a8 8 0 0 0 14.9 4M20 20v-4h-4'/%3E%3C/svg%3E") no-repeat center / 20px 20px !important;
    cursor: pointer;
}
html body.site #comjshop table.jshop.cart td.total_price { grid-column: 4; grid-row: 1 / span 2; }
html body.site #comjshop table.jshop.cart td.total_price,
html body.site #comjshop table.jshop.cart td.total_price .data { text-align: right !important; font-size: 20px !important; font-weight: 700 !important; color: var(--vc-wine) !important; white-space: nowrap; }
html body.site #comjshop table.jshop.cart td.remove { grid-column: 2; grid-row: 2; }
html body.site #comjshop table.jshop.cart td.remove a {
    display: inline !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: var(--vc-brown) !important;
    text-decoration: underline !important;
}
/* Итоги */
html body.site #comjshop table.jshop_subtotal,
html body.site #comjshop table.jshop_subtotal > tbody { display: block !important; width: 100% !important; border: 0 !important; }
html body.site #comjshop table.jshop_subtotal tr { display: flex !important; justify-content: space-between; align-items: baseline; gap: 12px; padding: 6px 0 !important; border: 0 !important; }
html body.site #comjshop table.jshop_subtotal td { display: block !important; width: auto !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 15px !important; font-weight: 400 !important; text-align: left !important; color: var(--vc-text) !important; }
html body.site #comjshop table.jshop_subtotal td.value { white-space: nowrap; font-weight: 600 !important; }
html body.site #comjshop table.jshop_subtotal tr.total { margin-top: 4px; padding-top: 12px !important; border-top: 1px solid var(--vc-border) !important; }
html body.site #comjshop table.jshop_subtotal tr.total td { font-size: 17px !important; font-weight: 600 !important; color: var(--vc-dark) !important; }
html body.site #comjshop table.jshop_subtotal tr.total td.value { font-size: 26px !important; font-weight: 700 !important; color: var(--vc-wine) !important; }
html body.site #comjshop table.jshop_subtotal tr.plusshipping td { font-size: 13.5px !important; color: var(--vc-muted) !important; }

/* ============================================================
   13. ОФОРМЛЕНИЕ ЗАКАЗА: шаги сверху, форма слева, заказ справа
   ============================================================ */
html body.site[class*="task-step"] #comjshop {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 380px;
    column-gap: 32px;
    align-items: start;
}
html body.site[class*="task-step"] #comjshop::before {
    content: "Оформление заказа";
    grid-column: 1 / -1;
    display: block;
    margin: 0 0 20px;
    font-size: 32px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--vc-brown);
}
html body.site[class*="task-step"] #comjshop > #mxcpr { grid-column: 1 / -1; }
html body.site #jshop_menu_order {
    grid-column: 1 / -1;
    display: grid !important;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    gap: 8px;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
}
html body.site #jshop_menu_order .jshop_order_step {
    display: block !important;
    margin: 0 !important;
    padding: 10px 0 0 !important;
    border: 0 !important;
    border-top: 4px solid var(--vc-border) !important;
    background: none !important;
    text-align: left !important;
    font-size: 15px !important;
    color: var(--vc-muted) !important;
}
html body.site #jshop_menu_order .jshop_order_step.prev { border-top-color: var(--vc-border-strong) !important; }
html body.site #jshop_menu_order .jshop_order_step.active { border-top-color: var(--vc-brown) !important; }
html body.site #jshop_menu_order .jshop_order_step span,
html body.site #jshop_menu_order .jshop_order_step a { font-size: 15px !important; font-weight: 400 !important; text-transform: none !important; color: var(--vc-muted) !important; background: none !important; }
html body.site #jshop_menu_order .jshop_order_step.prev a { color: var(--vc-brown) !important; text-decoration: underline !important; }
html body.site #jshop_menu_order .jshop_order_step.active span { color: var(--vc-dark) !important; font-weight: 600 !important; }
/* Мини-корзина — справа, прилипает при прокрутке */
html body.site[class*="task-step"] #comjshop > div.jshop:not(.address_block):not(.checkout_shipping_block):not(.checkout_payment_block):not(.checkout_pfinish_block):not(#jshop_menu_order) {
    grid-column: 2;
    grid-row: 3;
    position: sticky;
    top: 24px;
    padding: 24px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
}
html body.site[class*="task-step"] #comjshop > div.jshop:not(.address_block):not(.checkout_shipping_block):not(.checkout_payment_block):not(.checkout_pfinish_block):not(#jshop_menu_order)::before {
    content: "Ваш заказ";
    display: block;
    margin: 0 0 12px;
    font-size: 19px;
    font-weight: 600;
    color: var(--vc-dark);
}
html body.site[class*="task-step"] #comjshop .vc-cart-panel { padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; margin: 0 !important; }
html body.site[class*="task-step"] #comjshop table.jshop.cart tr.jshop_prod_cart {
    grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 12px;
    row-gap: 2px;
    align-items: start;
    margin: 0 0 12px !important;
    padding: 0 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--vc-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
}
html body.site[class*="task-step"] #comjshop table.jshop.cart td.jshop_img_description_center { grid-row: 1 / span 3; }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.jshop_img_description_center img { width: 64px !important; height: 64px !important; }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.product_name,
html body.site[class*="task-step"] #comjshop table.jshop.cart td.quantity,
html body.site[class*="task-step"] #comjshop table.jshop.cart td.total_price { grid-column: 2 !important; grid-row: auto !important; }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.product_name a.prodname {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px !important;
}
html body.site[class*="task-step"] #comjshop table.jshop.cart .deliverytime { display: none !important; }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.quantity .mobile-cart-inline { display: inline !important; font-size: 13.5px; color: var(--vc-muted); }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.quantity .data { font-size: 13.5px !important; color: var(--vc-muted); gap: 4px; }
html body.site[class*="task-step"] #comjshop table.jshop.cart td.total_price,
html body.site[class*="task-step"] #comjshop table.jshop.cart td.total_price .data { text-align: left !important; font-size: 15px !important; }
html body.site[class*="task-step"] #comjshop .weightorder { margin: 0 0 4px !important; font-size: 13.5px !important; font-weight: 400 !important; text-align: left !important; color: var(--vc-muted) !important; }
html body.site[class*="task-step"] #comjshop .weightorder span { font-weight: 400 !important; }
/* Основной блок шага — слева */
html body.site[class*="task-step"] #comjshop > .address_block,
html body.site[class*="task-step"] #comjshop > .checkout_shipping_block,
html body.site[class*="task-step"] #comjshop > .checkout_payment_block,
html body.site[class*="task-step"] #comjshop > .checkout_pfinish_block {
    grid-column: 1;
    grid-row: 3;
    margin: 0 !important;
}
/* Адрес: подпись слева, поле справа — аккуратнее и крупнее */
html body.site #comjshop .address_block {
    padding: 28px 32px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}
html body.site #comjshop .address_block .control-label { font-size: 15px !important; font-weight: 400 !important; color: var(--vc-dark) !important; }
html body.site #comjshop .address_block .controls input.input,
html body.site #comjshop .address_block .controls input[type="text"],
html body.site #comjshop .address_block .controls input[type="email"],
html body.site #comjshop .address_block .controls select {
    height: 44px !important;
    padding: 0 14px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 8px !important;
    font-size: 15px !important;
}
html body.site #comjshop .address_block .form-horizontal .control-group { margin: 0 0 12px !important; }
html body.site #comjshop #vc-delivery-mode { display: flex !important; gap: 8px !important; }
html body.site #comjshop #vc-delivery-mode label {
    position: relative;
    height: 44px;
    margin: 0 !important;
    padding: 0 16px !important;
    display: inline-flex !important;
    align-items: center;
    border: 1px solid var(--vc-border-strong);
    border-radius: 8px;
    background: #fff;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    color: var(--vc-dark) !important;
    cursor: pointer;
}
html body.site #comjshop #vc-delivery-mode label input[type="radio"] { position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; transform: none !important; pointer-events: none; }
html body.site #comjshop #vc-delivery-mode label:has(input:checked) { border: 2px solid var(--vc-brown); padding: 0 15px !important; background: var(--vc-cream); color: var(--vc-brown) !important; }
html body.site #comjshop #vc-delivery-mode label:has(input:focus-visible) { outline: 2px solid var(--vc-brown); outline-offset: 2px; }
/* Кнопки шагов */
html body.site div#comjshop .vc-checkout-actions {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 24px 0 0 !important;
}
html body.site div#comjshop .vc-checkout-actions .vc-btn,
html body.site div#comjshop .checkout_pfinish_block .vc-checkout-actions .vc-btn,
html body.site div#comjshop .vc-step5-actions .vc-checkout-actions .vc-btn {
    flex: 0 0 auto !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 32px !important;
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    text-shadow: none !important;
    text-transform: none !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}
html body.site div#comjshop .vc-checkout-actions .vc-btn-next { height: 52px !important; font-size: 17px !important; background: var(--vc-brown) !important; color: var(--vc-wheat) !important; }
html body.site div#comjshop .vc-checkout-actions .vc-btn-next:hover { background: var(--vc-wine) !important; color: #fff !important; }
html body.site div#comjshop .vc-checkout-actions .vc-btn-back { height: 48px !important; font-size: 15px !important; background: var(--vc-border) !important; color: var(--vc-brown) !important; }
html body.site div#comjshop .vc-checkout-actions.vc-actions-half .vc-btn-next { flex: 1 1 auto !important; }
/* Способы доставки / оплаты — карточки */
html body.site #comjshop #table_shippings,
html body.site #comjshop #table_payments { display: flex !important; flex-direction: column; gap: 12px; margin: 0 !important; }
html body.site #comjshop #table_shippings > .name,
html body.site #comjshop #table_payments > .name {
    margin: 0 !important;
    padding: 18px 20px !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 12px !important;
    background: var(--vc-cream) !important;
}
html body.site #comjshop #table_shippings > .name:has(> input:checked) { border: 2px solid var(--vc-brown) !important; padding: 17px 19px !important; }
html body.site #comjshop #table_shippings label,
html body.site #comjshop #table_payments label { display: inline !important; font-size: 17px !important; color: var(--vc-dark) !important; }
html body.site #comjshop #table_shippings label b,
html body.site #comjshop #table_payments label b { font-weight: 600 !important; }
html body.site #comjshop #table_shippings input[type="radio"],
html body.site #comjshop #table_payments input[type="radio"] { width: 20px !important; height: 20px !important; margin: 0 12px 0 0 !important; vertical-align: -4px; accent-color: var(--vc-brown); transform: none !important; }
html body.site #comjshop #table_shippings .shipping_price { font-weight: 600 !important; color: var(--vc-wine) !important; }
html body.site #comjshop #table_shippings .shipping_price_hint { font-size: 14px !important; font-style: normal !important; color: var(--vc-muted) !important; }
html body.site #comjshop #table_shippings .shipping_descr,
html body.site #comjshop #table_shippings .shipping_delivery { margin: 6px 0 0 32px !important; font-size: 14.5px !important; line-height: 1.5 !important; color: var(--vc-text) !important; text-align: left !important; }
html body.site #comjshop #table_shippings .shipping_delivery { color: var(--vc-muted) !important; }
html body.site #comjshop #table_shippings .shipping_form { margin: 14px 0 0 !important; }
html body.site #comjshop [id^="yandex_pvz_chosen_"],
html body.site #comjshop [id^="cdek_pvz_chosen_"] {
    margin: 0 0 10px !important;
    padding: 12px 14px;
    border: 1px solid var(--vc-border);
    border-radius: 8px;
    background: #fff;
    font-size: 15px !important;
}
html body.site #comjshop [id^="yandex-osm-map-"],
html body.site #comjshop [id^="cdek-osm-map-"] { border: 1px solid var(--vc-border-strong) !important; border-radius: 8px !important; overflow: hidden; }
html body.site .leaflet-container { isolation: isolate; z-index: 0; font-family: inherit; }
/* Плашка «Товары / Доставка / Итого» на шаге доставки */
html body.site #comjshop #vc-order-total {
    margin: 0 0 16px !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    background: var(--vc-cream) !important;
    box-shadow: none !important;
}
html body.site #comjshop #vc-order-total .vc-total-final b { color: var(--vc-wine) !important; }
/* Подтверждение */
html body.site #comjshop .checkout_pfinish_block .checkoutinfo {
    margin: 0 0 20px !important;
    padding: 20px 24px !important;
    border: 1px solid var(--vc-border);
    border-radius: 12px;
    background: var(--vc-cream);
    display: flex !important;
    flex-direction: column;
    gap: 8px;
    font-size: 15px !important;
}
html body.site #comjshop .checkout_pfinish_block .checkoutinfo strong { font-weight: 400 !important; color: var(--vc-muted) !important; }
html body.site #comjshop .vc-step5-row { display: block !important; }
html body.site #comjshop .vc-step5-left,
html body.site #comjshop .vc-step5-right { width: 100% !important; max-width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important; }
html body.site #comjshop #vc-step5-right-summary:empty { display: none !important; }
html body.site #comjshop #vc-step5-right-summary { margin: 0 0 20px !important; padding: 16px 24px !important; border: 1px solid var(--vc-border); border-radius: 12px; background: var(--vc-cream); }
html body.site #comjshop .vc-consents { margin: 0 0 20px !important; padding: 4px 20px !important; border: 1px solid var(--vc-border); border-radius: 12px; background: var(--vc-cream); }
html body.site #comjshop .vc-consent-row { display: flex !important; align-items: flex-start; gap: 12px; margin: 0 !important; padding: 14px 0 !important; font-size: 15px !important; line-height: 1.45 !important; font-weight: 400 !important; color: var(--vc-text) !important; }
html body.site #comjshop .vc-consent-row + .vc-consent-row { border-top: 1px dashed var(--vc-border) !important; }
html body.site #comjshop .vc-consent-row input[type="checkbox"] { flex: 0 0 20px; width: 20px !important; height: 20px !important; margin: 1px 0 0 !important; accent-color: var(--vc-brown); }
html body.site #comjshop .vc-consent-row b { font-weight: 400 !important; }
html body.site #comjshop .vc-consent-row a.policy { font-weight: 400 !important; text-transform: none !important; color: var(--vc-brown) !important; text-decoration: underline !important; }
html body.site #comjshop .pfinish_comment_block { width: 100% !important; max-width: none !important; margin: 0 0 8px !important; padding: 0 !important; }
html body.site #comjshop .pfinish_comment_block .name { margin: 0 0 6px !important; font-size: 13px !important; letter-spacing: 0.6px !important; text-transform: uppercase !important; text-align: left !important; color: var(--vc-muted) !important; }
html body.site #comjshop .pfinish_comment_block textarea { width: 100% !important; max-width: none !important; min-height: 96px; padding: 12px 14px !important; border: 1px solid var(--vc-border-strong) !important; border-radius: 8px !important; background: #fff !important; font-size: 15px !important; box-sizing: border-box; }

/* ============================================================
   14. ФУТЕР: четыре колонки обычным регистром, реквизиты внизу
   ============================================================ */
html body.site footer.footer { margin: 0 !important; padding: 48px 0 32px !important; background: var(--vc-dark) !important; border: 0 !important; color: var(--vc-wheat) !important; }
html body.site footer.footer > .container {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 32px !important;
    align-items: start;
}
html body.site footer.footer #mod-custom172 { order: -1; display: flex !important; flex-direction: column; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.site footer.footer #mod-custom172::before { order: -2; content: "VIP COLLECTION"; font-size: 20px; font-weight: 600; letter-spacing: 1px; color: var(--vc-wheat); }
html body.site footer.footer #mod-custom172 p { margin: 0 !important; font-size: 14px !important; line-height: 1.5 !important; text-transform: none !important; color: var(--vc-wheat) !important; opacity: 0.9; }
html body.site footer.footer #mod-custom172 p strong { font-weight: 400 !important; color: var(--vc-wheat) !important; }
html body.site footer.footer #mod-custom172 p:has(a[href^="tel:"]) { order: -1; margin-top: 6px !important; opacity: 1; }
html body.site footer.footer #mod-custom172 p a[href^="tel:"] { font-size: 22px !important; font-weight: 600 !important; color: var(--vc-wheat) !important; text-decoration: none !important; }
html body.site footer.footer #mod-custom172 > div { display: flex !important; gap: 8px !important; margin-top: 6px !important; }
html body.site footer.footer #mod-custom172 > div > a {
    width: 40px;
    height: 40px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(245, 222, 179, 0.5);
    border-radius: 6px;
}
html body.site footer.footer #mod-custom172 > div > a:hover { background: rgba(245, 222, 179, 0.1); opacity: 1 !important; }
html body.site footer.footer #mod-custom172 > div > a svg { width: 20px; height: 20px; }
html body.site footer.footer ul.mod-menu { display: flex !important; flex-direction: column; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.site footer.footer ul.mod-menu::before {
    margin: 0 0 4px;
    font-size: 13px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--vc-wheat);
    opacity: 0.7;
}
html body.site footer.footer > .container > ul.mod-menu:nth-of-type(1)::before { content: "Каталог"; }
html body.site footer.footer > .container > ul.mod-menu:nth-of-type(2)::before { content: "Покупателям"; }
html body.site footer.footer > .container > ul.mod-menu:nth-of-type(3)::before { content: "Полезное"; }
html body.site footer.footer ul.mod-menu > li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.site footer.footer ul.mod-menu > li:has(> a[href=""]) { display: none !important; }
html body.site footer.footer ul.mod-menu > li > a {
    display: inline !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    text-transform: lowercase !important;
    color: var(--vc-wheat) !important;
    text-decoration: none !important;
    background: none !important;
}
html body.site footer.footer ul.mod-menu > li > a::first-letter { text-transform: uppercase; }
html body.site footer.footer ul.mod-menu > li > a:hover { text-decoration: underline !important; }
html body.site footer.footer ul.mod-menu > li > a.red,
html body.site footer.footer ul.mod-menu li.item-325 > a { color: var(--vc-wheat) !important; font-weight: 600 !important; }
html body.site footer.footer ul.mod-menu li.item-325 .image-title { text-transform: lowercase; }
html body.site footer.footer ul.mod-menu li.item-325 > a { display: inline-block !important; }
html body.site footer.footer > .container > .st {
    grid-column: 1 / -1;
    margin: 0 !important;
    padding: 20px 0 0 !important;
    border-top: 1px solid rgba(245, 222, 179, 0.25) !important;
}
html body.site footer.footer .footer-copyright { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; column-gap: 24px; }
html body.site footer.footer .footer-copyright p { margin: 0 !important; font-size: 13px !important; line-height: 1.5 !important; text-transform: none !important; color: var(--vc-wheat) !important; opacity: 0.8; }
html body.site footer.footer .footer-legal-links { grid-column: 2; grid-row: 1 / span 2; display: flex !important; gap: 20px; opacity: 1 !important; }
html body.site footer.footer .footer-legal-links a { margin: 0 !important; font-size: 13px !important; text-transform: none !important; color: var(--vc-wheat) !important; text-decoration: underline !important; }


/* ============================================================
   15. ПРАВКИ ПОСЛЕ ПРОВЕРКИ (перебивают старые правила шаблона)
   ============================================================ */
html body.site { margin: 0 !important; padding: 0 !important; }
/* поиск: поле растягивается, кнопка — по тексту */
html body.site header.header .mod-shop-search input[type="text"],
html body.site header.header #jshop_search { flex: 1 1 auto !important; width: auto !important; max-width: none !important; }
html body.site header.header .mod-shop-search input[type="submit"] { flex: 0 0 auto !important; width: auto !important; min-width: 0 !important; max-width: none !important; }
/* главная: контент на всю ширину 1200 px (старое правило сужало до 100% − 280 px) */
html body.site.itemid-165 .mmain .sl.pull-right,
html body.site.itemid-165 .mmain .sl { width: 100% !important; max-width: none !important; flex: none !important; }
html body.site.itemid-165 .mmain .lft.pull-left,
html body.site.itemid-165 .mmain .lft { flex: none !important; max-width: none !important; }
html body.site.itemid-165 .blog-featured .item-content { grid-template-columns: minmax(0, 1fr) minmax(0, 600px) !important; }
html body.site.itemid-165 .blog-featured .item-content img { min-height: 0 !important; aspect-ratio: 3 / 2; max-height: 460px; }
/* панель «Каталог»: ссылки — обычный текст слева, без стилей верхнего меню */
html body.site .navigation1 .vc-mega { align-items: start; }
html body.site .navigation1 .vc-mega__list,
html body.site .navigation1 .vc-mega__promo { margin: 0 !important; padding: 0 !important; }
html body.site .navigation1 .vc-mega__list a,
html body.site .navigation1 .vc-mega__list a:link,
html body.site .navigation1 .vc-mega__list a:visited {
    height: auto !important;
    min-height: 44px;
    margin: 0 !important;
    padding: 10px 0 !important;
    justify-content: flex-start !important;
    background: none !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: none !important;
    text-shadow: none !important;
    color: var(--vc-dark) !important;
}
html body.site .navigation1 .vc-mega__list a:hover { color: var(--vc-wine) !important; }
html body.site .navigation1 .vc-mega__promo a { height: auto !important; margin: 0 !important; text-align: left !important; text-transform: none !important; letter-spacing: 0 !important; text-shadow: none !important; }
html body.site .navigation1 .vc-mega__promo a::after,
html body.site .navigation1 .vc-mega__list a::after,
html body.site .navigation1 .vc-mega__list a::before { content: none !important; }
/* панель сортировки: без переносов внутри полей */
html body.site .jshop_list_product form#sort_count .input-group { display: flex !important; flex-wrap: nowrap !important; align-items: center; gap: 6px; width: auto !important; }
html body.site .jshop_list_product form#sort_count .icon-arrow { display: inline-flex !important; align-items: center; justify-content: center; width: 40px; flex: none; cursor: pointer; }
html body.site .jshop_list_product form#sort_count #price_from,
html body.site .jshop_list_product form#sort_count #price_to { width: 80px !important; }
html body.site .jshop_list_product .jshop.filters,
html body.site .jshop_list_product .filter_price { gap: 12px 16px !important; }
html body.site .jshop_list_product #clear_product_list_filter { white-space: nowrap; }
/* боковой список разделов: «Акции», «Распродажа» без капса */
html body.site .mmain .lft a[href*="tovary-po-aktsii"],
html body.site .mmain .lft a[href*="rasprodazha"] { text-transform: lowercase !important; }
html body.site .mmain .lft a[href*="tovary-po-aktsii"]::first-letter,
html body.site .mmain .lft a[href*="rasprodazha"]::first-letter { text-transform: uppercase; }

/* карточка товара: кнопки в одну строку, «в список пожеланий» — квадрат с сердцем */
html body.site .productfull .prod_buttons { flex-wrap: nowrap !important; }
html body.site .productfull .prod_buttons .buttons { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; flex-wrap: nowrap !important; }
html body.site .productfull .prod_buttons .buttons input.btn-buy { flex: 1 1 auto !important; width: auto !important; min-width: 0 !important; }
html body.site .productfull .prod_buttons .buttons input.btn-wishlist {
    flex: 0 0 52px !important;
    width: 52px !important;
    min-width: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    color: transparent !important;
    background: var(--vc-border) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236a330e' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E") no-repeat center / 22px 22px !important;
}
html body.site .productfull .prod_buttons .buttons input.btn-wishlist:hover { background-color: var(--vc-border-strong) !important; }
html body.site .productfull #not_available.available,
html body.site .productfull .block_available.available { border: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; }
html body.site .productfull .plusshippinginfo,
html body.site .productfull .plusshippinginfo a { font-size: 14px !important; }

html body.site .jshop .button_back input.btn,
html body.site .jshop .button_back input { width: auto !important; min-width: 0 !important; display: inline-block !important; }
html body.site .jshop .button_back input::before { content: none; }

/* шаг «Способ оплаты» скрыт скриптом — не оставляем пустую колонку */
html body.site #jshop_menu_order .jshop_order_step[style*="none"] { display: none !important; }

/* шаг доставки: мини-корзина приходит обёрнутой в .vc-cart-panel — та же карточка справа */
html body.site[class*="task-step"] #comjshop > div.vc-cart-panel {
    grid-column: 2;
    grid-row: 3;
    align-self: start;
    position: sticky;
    top: 24px;
    padding: 24px !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 12px !important;
    background: var(--vc-cream) !important;
}
html body.site[class*="task-step"] #comjshop > div.vc-cart-panel::before { content: "Ваш заказ"; display: block; margin: 0 0 12px; font-size: 19px; font-weight: 600; color: var(--vc-dark); }
html body.site[class*="task-step"] #comjshop > div.vc-cart-panel > div.jshop { padding: 0 !important; border: 0 !important; background: none !important; position: static !important; }
html body.site[class*="task-step"] #comjshop > div.vc-cart-panel > div.jshop::before { content: none !important; }
/* подписи шагов на одной линии */
html body.site #jshop_menu_order .jshop_order_step a,
html body.site #jshop_menu_order .jshop_order_step span { display: inline-block; line-height: 1.4 !important; }

/* направление сортировки — понятная стрелка вместо иконки-шрифта */
html body.site .jshop_list_product form#sort_count .icon-arrow .icon-arrow-up::before,
html body.site .jshop_list_product form#sort_count .icon-arrow .icon-arrow-down::before { font-family: inherit !important; font-size: 18px !important; line-height: 1 !important; color: var(--vc-brown) !important; }
html body.site .jshop_list_product form#sort_count .icon-arrow .icon-arrow-up::before { content: "\2191" !important; }
html body.site .jshop_list_product form#sort_count .icon-arrow .icon-arrow-down::before { content: "\2193" !important; }

} /* конец @media (min-width: 769px) */

/* Узкий десктоп / планшет в альбомной ориентации: по 3 карточки в разделе */
@media (min-width: 769px) and (max-width: 1199px) {
html body.site .jshop_list_product #comjshop_list_product .row-fluid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

/* ============================================================
   v5.1 PATCH (2026-09-27) — фиксы после первого запуска десктопа
   1) Все плитки каталога — заглавная в каждом слове
   2) Боковое меню — многострочный текст выровнен слева
   3) Хедер — подпись под лого не налезает на поиск; кнопка «Корзина» шире, с иконкой
   ============================================================ */

/* [1] Главная — плитки категорий */
html body.site.itemid-165 .mmain .lft [class^="jshop_menu_level_0"] > a,
html body.site.itemid-165 .mmain .lft a[href*="tovary-po-aktsii"],
html body.site.itemid-165 .mmain .lft a[href*="rasprodazha"] {
    text-transform: capitalize !important;
}

/* [2] Раздел каталога — левая колонка со списком разделов */
html body.site .mmain .lft [class^="jshop_menu_level_"] > a {
    display: block !important;
    box-sizing: border-box !important;
    padding: 10px 12px !important;
    min-height: 0 !important;
    text-align: left !important;
    text-indent: 0 !important;
    line-height: 1.35 !important;
    align-items: unset !important;
}
html body.site .mmain .lft [class$="_a"] > a { text-align: left !important; }

/* [3.1] Логотип + подпись — фиксированный слот, текст не выпадает за пределы */
html body.site header.header .brand,
html body.site header.header .header-inner > a.brand {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    max-width: 220px !important;
    padding: 0 !important;
    line-height: 1 !important;
    overflow: hidden !important;
}
html body.site header.header .brand .site-description {
    display: block !important;
    width: 150px !important;
    max-width: 150px !important;
    max-height: 42px !important;
    margin: 0 !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
    overflow: hidden !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    hyphens: auto !important;
    color: var(--vc-muted) !important;
}

/* [3.2] Форма поиска — растягивается, но с отступом слева от лого */
html body.site header.header .header-inner { gap: 24px !important; }
html body.site header.header .mod-shop-search { min-width: 260px !important; }

/* [3.3] Корзина: полный ретрапост поверх vc_custom.css */
html body.site header.header .header-search #mod-custom226 { margin: 0 !important; padding: 0 !important; display: inline-flex !important; align-items: center !important; }
html body.site header.header .header-search #mod-custom226 a.vc-cart-link,
html body.site header.header a.vc-cart-link {
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    box-sizing: border-box !important;
    padding: 0 14px 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--vc-brown) !important;
    text-decoration: none !important;
    position: relative !important;
    margin: 0 !important;
    box-shadow: none !important;
}
html body.site header.header a.vc-cart-link:hover {
    border-color: var(--vc-brown) !important;
    background: #fff !important;
    color: var(--vc-wine) !important;
    box-shadow: none !important;
}
html body.site header.header a.vc-cart-link svg,
html body.site header.header a.vc-cart-link svg.vc-cart-icon,
html body.site header.header a.vc-cart-link .vc-cart-icon {
    order: 1 !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    flex: 0 0 24px !important;
    color: inherit !important;
    stroke: currentColor !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
html body.site header.header a.vc-cart-link::after {
    content: "Корзина" !important;
    order: 2 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: inherit !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}
html body.site header.header a.vc-cart-link .vc-cart-count {
    order: 3 !important;
    position: static !important;
    min-width: 22px !important;
    height: 22px !important;
    padding: 0 6px !important;
    box-sizing: border-box !important;
    top: auto !important;
    right: auto !important;
    border: 0 !important;
    border-radius: 11px !important;
    background: var(--vc-wine) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 22px !important;
    text-align: center !important;
}
html body.site header.header a.vc-cart-link .vc-cart-count[hidden] { display: none !important; }

/* ============================================================
   v5.2 PATCH (2026-09-27) — хедер + фильтр каталога
   1) Сужаем поиск, расширяем слот подписи под лого
   2) Причёсываем фильтр: выравнивание, скрываем странную стрелочку asc/desc
   ============================================================ */

/* [1] Хедер: чуть шире слот подписи, форма поиска ограничена */
html body.site header.header .brand,
html body.site header.header .header-inner > a.brand {
    max-width: 340px !important;
    gap: 14px !important;
}
html body.site header.header .brand .site-description {
    width: 180px !important;
    max-width: 180px !important;
    max-height: 48px !important;
    font-size: 11.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.3px !important;
    hyphens: manual !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}
html body.site header.header .mod-shop-search {
    flex: 0 1 auto !important;
    width: 420px !important;
    max-width: 420px !important;
    min-width: 260px !important;
}

/* [2] Фильтр каталога — общий блок */
html body.site .jshop_list_product form#sort_count.form-horizontal {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px !important;
    margin: 0 0 20px !important;
    padding: 14px 18px !important;
    border: 1px solid var(--vc-border) !important;
    border-radius: 8px !important;
    background: var(--vc-cream) !important;
}
html body.site .jshop_list_product form#sort_count > .form_sort_count,
html body.site .jshop_list_product form#sort_count .form_sort_count {
    display: contents !important;
}
html body.site .jshop_list_product form#sort_count .block_sorting_count_to_page,
html body.site .jshop_list_product form#sort_count .jshop.filters,
html body.site .jshop_list_product form#sort_count .box_cat_man,
html body.site .jshop_list_product form#sort_count .filter_price {
    display: contents !important;
}

/* control-group — единая ячейка label + control */
html body.site .jshop_list_product form#sort_count .control-group {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    min-height: 40px !important;
}
html body.site .jshop_list_product form#sort_count .control-label {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--vc-muted) !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    text-align: left !important;
}
html body.site .jshop_list_product form#sort_count .control-label.mt-2 { margin-top: 0 !important; }

/* controls */
html body.site .jshop_list_product form#sort_count .controls {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* select / input — общий стиль */
html body.site .jshop_list_product form#sort_count select,
html body.site .jshop_list_product form#sort_count input[type="text"] {
    width: auto !important;
    min-width: 0 !important;
    height: 40px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 32px 0 12px !important;
    border: 1px solid var(--vc-border-strong) !important;
    border-radius: 6px !important;
    background: #fff !important;
    font-size: 14px !important;
    color: var(--vc-text) !important;
    line-height: 1 !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233d2817' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 14px 14px !important;
}
/* input[type=text] цен — без стрелки */
html body.site .jshop_list_product form#sort_count input[type="text"] {
    padding: 0 10px !important;
    background-image: none !important;
    width: 84px !important;
}
html body.site .jshop_list_product form#sort_count select#order { min-width: 190px !important; }
html body.site .jshop_list_product form#sort_count select#limit { min-width: 90px !important; }
html body.site .jshop_list_product form#sort_count select#manufacturers { min-width: 200px !important; }

/* asc/desc стрелка — скрываем, она не понятна */
html body.site .jshop_list_product form#sort_count #submit_product_list_filter_sort_dir,
html body.site .jshop_list_product form#sort_count .icon-arrow,
html body.site .jshop_list_product form#sort_count .icon-arrow-up,
html body.site .jshop_list_product form#sort_count .icon-arrow-down {
    display: none !important;
}

/* Диапазон цен — красивый: [от] – [До] */
html body.site .jshop_list_product form#sort_count .filter_price .controls { gap: 6px !important; }
html body.site .jshop_list_product form#sort_count .filter_price .input-append { display: inline-flex !important; padding: 0 !important; margin: 0 !important; }
html body.site .jshop_list_product form#sort_count .filter_price .price_ftspace {
    margin: 0 2px !important;
    padding: 0 !important;
    font-size: 15px !important;
    color: var(--vc-muted) !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* Кнопки Старт + Сбросить фильтр — вправо в отдельной группе */
html body.site .jshop_list_product form#sort_count .box_button {
    margin-left: auto !important;
}
html body.site .jshop_list_product form#sort_count .box_button .controls {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
}
html body.site .jshop_list_product form#sort_count input#submit_product_list_filter {
    height: 40px !important;
    padding: 0 22px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--vc-brown) !important;
    color: var(--vc-wheat) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
}
html body.site .jshop_list_product form#sort_count input#submit_product_list_filter:hover {
    background: var(--vc-wine) !important;
    color: #fff !important;
}
html body.site .jshop_list_product form#sort_count #clear_product_list_filter {
    display: inline-flex !important;
    align-items: center !important;
    height: 40px !important;
    padding: 0 6px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--vc-brown) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: underline !important;
    box-shadow: none !important;
}
html body.site .jshop_list_product form#sort_count #clear_product_list_filter:hover {
    color: var(--vc-wine) !important;
}
html body.site .jshop_list_product form#sort_count .clear_filter { display: inline-flex !important; }



/* VC v5.3 — скрыть «В список пожеланий» (wishlist не используется) */

html body.site .buttons.product-buttons .btn-wishlist,

html body.site input.btn-wishlist,

html body.site .btn-wishlist { display: none !important; }



/* VC v5.4 — показать SEO-описание категорий (было display:none в polish/mobile.css) */

html body.site :is(#comjshop, .jshop) .category_description,

html body.site .jshop_list_category + .category_description,

html body.site .category_description {

    display: block !important;

    max-width: 900px !important;

    margin: 0 auto 32px !important;

    padding: 0 !important;

    color: var(--vc-text) !important;

    font-size: 15px !important;

    line-height: 1.65 !important;

    text-align: left !important;

}

html body.site .category_description h2 {

    margin: 22px 0 10px !important;

    font-size: 20px !important;

    font-weight: 600 !important;

    color: var(--vc-dark) !important;

    line-height: 1.3 !important;

    text-align: left !important;

}

html body.site .category_description p { margin: 0 0 12px !important; }

html body.site .category_description ul,

html body.site .category_description ol { margin: 0 0 14px !important; padding-left: 24px !important; }

html body.site .category_description li { margin: 0 0 6px !important; line-height: 1.5 !important; }

html body.site .category_description strong { color: var(--vc-dark) !important; }

html body.site .category_description a { color: var(--vc-brown) !important; text-decoration: underline !important; }

html body.site .category_description a:hover { color: var(--vc-wine) !important; }



/* VC v5.5 — SEO-описание категории вниз (после списка товаров) */

html body.site #comjshop {

    display: flex !important;

    flex-direction: column !important;

}

html body.site #comjshop > h1 { order: 0 !important; }

html body.site #comjshop > form#sort_count,

html body.site #comjshop > .form_sort_count { order: 1 !important; }

html body.site #comjshop > .jshop_list_product,

html body.site #comjshop > .row-fluid,

html body.site #comjshop > .list_product { order: 2 !important; }

html body.site #comjshop > .jshop_pagination,

html body.site #comjshop > .pagination { order: 3 !important; }

html body.site #comjshop > .category_description { order: 99 !important; margin-top: 32px !important; padding-top: 24px !important; border-top: 1px solid var(--vc-border) !important; }

