@media (min-width: 992px){
    /* Убираем стрелочку ТОЛЬКО у главной кнопки "Каталог товаров" */
    .top-menu > ul > li:first-child > a.catalog-link:after,
    .top-menu > ul > li:first-child.down > a.catalog-link:after,
    .top-menu > ul > li:first-child.active > a.catalog-link:after {
        display: none !important;
    }
}
    .top-menu > ul > li a.catalog-link + ul{
        top: 50px;
        height: auto;
        min-height: 495px;
        padding: 0 15px;
        transition: none;
        border-radius: 0 0 10px 10px;
    }
    .top-menu > ul > li a.catalog-link + ul > li > a{
        border-bottom: 1px solid #eee;
        display: flex;
        align-items: center;
        height: 49px;
        overflow: hidden;
        padding: 11px 15px 13px 5px;
    }
    .top-menu > ul > li a.catalog-link + ul.open > li {
        display: block;
    }
    
    /* ОГРАНИЧЕНИЕ КАТЕГОРИЙ - 8 ШТУК ТОЛЬКО ДЛЯ ГЛАВНОЙ */
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li {
        display: none;
    }
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(1),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(2),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(3),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(4),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(5),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(6),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(7),
    body.id-1 .top-menu > ul > li a.catalog-link + ul > li:nth-of-type(8) {
        display: block;
    }
    
    /* ВЫСОТА МЕНЮ ТОЛЬКО ДЛЯ ГЛАВНОЙ */
    body.id-1 .top-menu > ul > li a.catalog-link + ul {
        height: 445px;
        min-height: 445px;
    }
    
    /* РАСКРЫТОЕ МЕНЮ ТОЛЬКО ДЛЯ ГЛАВНОЙ */
    body.id-1 .top-menu > ul > li a.catalog-link + ul.open {
        height: auto;
        padding-bottom: 50px;
    }
    body.id-1 .top-menu > ul > li a.catalog-link + ul.open > li {
        display: block;
    }
    
    .top-bar.fix-true.fixed{
        position: relative;
        box-shadow: none;
    }

    /* СТИЛИ ДЛЯ КНОПКИ БРЕНДОВ КАК У КОРЗИНЫ */
    .top-menu > ul > li:nth-child(2):before {
        display: none !important;
        content: none !important;
        border-bottom: none !important;
        transform: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }
    
    .top-menu > ul > li:nth-child(2):hover:before,
    .top-menu > ul > li:nth-child(2).active:before {
        display: none !important;
        content: none !important;
        border-bottom: none !important;
        transform: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }

    .top-menu > ul > li:nth-child(2) a {
        display: flex !important;
        align-items: center;
        padding: 8px 16px !important;
        background: #2e1573 !important;
        border-radius: 8px !important;
        color: white !important;
        border: 1px solid transparent !important;
        transition: all 0.2s ease !important;
        height: 42px !important;
        box-sizing: border-box !important;
        margin: 0 5px !important;
        text-decoration: none !important;
        line-height: normal !important;
        margin-top: 4px !important;
        margin-bottom: 4px !important;
    }

    .top-menu > ul > li:nth-child(2) a:hover {
        background: rgba(255, 255, 255, 0.2) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        color: white !important;
        text-decoration: none !important;
    }
    
    /* Убираем стрелку если она есть */
    .top-menu > ul > li:nth-child(2).down > a:after {
        display: none !important;
    }

/* ===== УВЕЛИЧЕННАЯ СТОКОВАЯ ЛУПА С ОБВОДКОЙ ===== */
@media (min-width: 992px) {
    .main-panel-search .search-form button {
        background-color: #2e1573 !important;
        border: none !important;
        border-left: 1px solid rgba(255, 255, 255, 0.3) !important;
        padding: 0 25px !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 100% !important;
        box-sizing: border-box !important;
        min-width: 70px !important;
        transition: all 0.3s ease !important;
        position: relative;
        border-radius: 0 25px 25px 0 !important;
        margin-left: -1px !important;
    }
    
    .main-panel-search .search-form button:hover {
        filter: brightness(170%) !important;
        border-left: 1px solid transparent !important;
    }
    
    /* УВЕЛИЧИВАЕМ СТОКОВУЮ ЛУПУ С ОБВОДКОЙ */
    .main-panel-search .search-form button i,
    .main-panel-search .search-form button svg,
    .main-panel-search .search-form button:before {
        font-size: 26px !important;
        width: 26px !important;
        height: 26px !important;
        transform: none !important;
        border: 2px solid white !important;
        border-left: none !important;
        border-radius: 0 12px 12px 0 !important;
        padding: 3px 2px 3px 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Скрываем обводку при наведении */
    .main-panel-search .search-form button:hover i,
    .main-panel-search .search-form button:hover svg,
    .main-panel-search .search-form button:hover:before {
        border-color: transparent !important;
    }
}

/* Стили для верхней информационной панели */
.top-info-bar {
    background-color: #f8f9fa;
    border-bottom: 1px solid #e9ecef;
    padding: 8px 0;
    font-size: 12px;
    width: 100%;
    box-sizing: border-box;
}

.info-menu {
    display: flex;
    justify-content: flex-end;
}

.info-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 25px;
}

.info-menu-item {
    margin: 0;
}

.info-menu-item a {
    color: #6c757d;
    text-decoration: none;
    font-weight: 400;
    transition: color 0.2s ease;
}

.info-menu-item a:hover {
    color: #2e1573;
}

.info-menu-item.active a {
    color: #2e1573;
}

/* СТИЛИ ДЛЯ ПОИСКА ТОЛЬКО НА ДЕСКТОПЕ */
@media (min-width: 992px) {
    .main-panel-search {
        position: absolute;
        left: 480px;
        right: 208px;
        top: 50%;
        transform: translateY(-50%);
        margin: 0;
        height: 32px;
        z-index: 100;
    }
    
    .main-panel-search .header-search {
        margin: 0 !important;
        height: 100%;
    }
    
    .main-panel-search .search-form {
        border: 1px solid #ddd !important;
        border-radius: 25px !important;
        display: flex !important;
        background: white !important;
        overflow: hidden !important;
        width: 100% !important;
        height: 100% !important;
        box-shadow: 
            inset 0 2px 4px rgba(0,0,0,0.1),
            0 1px 3px rgba(0,0,0,0.1);
    }
    
    .main-panel-search .search-form input[type="text"] {
        border: none !important;
        background: transparent !important;
        padding: 6px 20px !important;
        flex-grow: 1 !important;
        font-size: 14px !important;
        outline: none !important;
        height: 100% !important;
        box-sizing: border-box !important;
        color: #333;
    }
    
    .main-panel-search .search-form input[type="text"]::placeholder {
        color: #999;
    }
    
    /* Ограничиваем меню только главным каталогом и брендами на десктопе */
    .top-menu > ul > li:nth-child(n+3) {
        display: none !important;
    }
    
    .search-wrap {
        display: none !important;
    }
}

/* МОБИЛЬНАЯ ВЕРСИЯ - ВОЗВРАЩАЕМ ВСЕ КАК БЫЛО */
@media (max-width: 991px) {
    /* Скрываем поиск в топ-баре на мобильных */
    .main-panel-search {
        display: none !important;
    }
    
    /* Показываем старый поиск для мобильных */
    .search-wrap {
        display: block !important;
    }
}

@media (max-width: 767px) {
    .top-info-bar {
        display: none;
    }
}

/* Скрытие информационных страниц в основном меню */
.top-menu .pdo_menu > li[data-resource="9"],
.top-menu .pdo_menu > li[data-resource="151"],
.top-menu .pdo_menu > li[data-resource="3583"],
.top-menu .pdo_menu > li[data-resource="3582"],
.top-menu .pdo_menu > li[data-resource="11"],
.top-menu .pdo_menu > li[data-resource="10"] {
    display: none !important;
}

.mobile-menu li[data-resource="9"],
.mobile-menu li[data-resource="151"],
.mobile-menu li[data-resource="3583"],
.mobile-menu li[data-resource="3582"],
.mobile-menu li[data-resource="11"],
.mobile-menu li[data-resource="10"] {
    display: none !important;
}

/* ДЕСКТОПНАЯ ВЕРСИЯ */
@media (min-width: 992px) {
    .mobile-cart {
        display: none !important;
    }
    
    .desktop-cart {
        display: block !important;
    }
    
    .header-cart {
        margin-right: 125px;
        height: 50px;
        display: flex;
        align-items: center;
        z-index: 1000;
    }
    
    .minicart-wrapper {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 8px 16px;
        background: #2e1573;
        border-radius: 8px;
        height: 42px;
        border: 1px solid transparent;
        min-width: 160px;
        margin-top: -8px;
        box-sizing: border-box;
        text-decoration: none;
    }
    
    .minicart-wrapper:hover {
        background: rgba(255, 255, 255, 0.2);
        border: 1px solid rgba(255, 255, 255, 0.2);
    }
    
    .minicart-icon {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
    }
    
    .minicart-icon svg {
        width: 26px;
        height: 26px;
        color: white;
    }
    
    .minicart-count {
        position: absolute;
        top: -6px;
        right: -6px;
        background: #c53030;
        color: white;
        border-radius: 10px;
        min-width: 20px;
        height: 20px;
        font-size: 11px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
        border: 2px solid #2e1573;
        line-height: 1;
        padding: 0 6px;
        box-sizing: border-box;
    }
    
    .minicart-text {
        text-align: left;
        color: white;
        flex-grow: 1;
    }
    
    .minicart-title {
        font-size: 15px;
        font-weight: 700;
        line-height: 1.2;
        letter-spacing: 0.3px;
    }
    
    .minicart-subtitle {
        font-size: 12px;
        opacity: 0.9;
        line-height: 1.1;
        margin-top: 1px;
        font-weight: 500;
    }
}

/* МОБИЛЬНАЯ ВЕРСИЯ */
@media (max-width: 991px) {
    .desktop-cart {
        display: none !important;
    }
    
    .mobile-cart {
        display: block !important;
    }
    
    /* Стили для счетчика на мобильных */
    #msMiniCart .ms2_total_count {
        position: absolute;
        top: -3px;
        right: -3px;
        background: #c53030;
        color: white;
        border-radius: 9px;
        min-width: 18px;
        height: 18px;
        font-size: 10px;
        font-weight: bold;
        display: flex !important;
        align-items: center;
        justify-content: center;
        line-height: 1;
        border: 1px solid #fff;
        padding: 0 4px;
        box-sizing: border-box;
    }
}

/* Поиск - ТОЧНАЯ НАСТРОЙКА */
.search-input-wrapper {
    position: relative;
    flex-grow: 1;
}

.search-input {
    width: 100%;
    padding-right: 25px;
}

.search-clear {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #999;
    font-size: 18px;
    line-height: 1;
    opacity: 0;
    visibility: hidden;
    z-index: 10;
}

.search-input:not(:placeholder-shown) + .search-clear {
    opacity: 1;
    visibility: visible;
}

/* Мобильная версия */
@media (max-width: 991px) {
    .search-clear {
        right: 50px;
        font-size: 20px;
    }
    
    .search-input {
        padding-right: 40px;
    }
}

/* Стили для табов на страницах категорий */
.category-tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    margin: 20px 0;
}
.tab-preview {
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    padding: 12px 10px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background: white;
    position: relative;
    overflow: hidden;
    min-height: 280px;
    display: flex;
    flex-direction: column;
}
.tab-preview:hover {
    border-color: #007bff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.tab-preview.active {
    border-color: #007bff;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    box-shadow: 0 2px 8px rgba(0,123,255,0.2);
}
.tab-image {
    width: 100%;
    height: 180px;
    object-fit: contain;
    border-radius: 6px;
    margin-bottom: 6px;
    transition: transform 0.3s ease;
    background: transparent;
    flex-shrink: 0;
}
.tab-preview:hover .tab-image {
    transform: scale(1.03);
}
.tab-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 2px;
}
.tab-preview h3 {
    margin: 2px 0 3px 0;
    font-size: 15px;
    font-weight: 700;
    color: #1a2b3c;
    line-height: 1.2;
}
.tab-preview p {
    font-size: 12px;
    color: #666;
    margin: 0;
    line-height: 1.3;
    font-weight: 400;
}

/* МОБИЛЬНАЯ ВЕРСИЯ */
@media (max-width: 768px) {
    .category-tabs {
        display: flex !important;
        flex-direction: column;
        gap: 8px;
        margin: 12px 0;
    }
    .tab-preview {
        display: flex !important;
        flex-direction: row;
        align-items: center;
        text-align: left;
        padding: 10px;
        border-radius: 10px;
        min-height: auto;
    }
    .tab-image {
        width: 70px;
        height: 70px;
        margin-bottom: 0;
        margin-right: 12px;
        border-radius: 6px;
        flex-shrink: 0;
    }
    .tab-content {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: left;
    }
    .tab-preview h3 {
        font-size: 15px;
        margin: 0 0 2px 0;
        line-height: 1.2;
        word-break: normal;
        white-space: normal;
        hyphens: none;
        text-align: left;
    }
    .tab-preview p {
        font-size: 12px;
        line-height: 1.3;
        margin: 0;
        word-break: normal;
        white-space: normal;
        hyphens: none;
        text-align: center;
    }
    
    .tab-preview:hover {
        border-color: #007bff;
        transform: none;
        box-shadow: 0 2px 8px rgba(0,123,255,0.15);
    }
    .tab-preview.active {
        border-color: #007bff;
        background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        box-shadow: 0 2px 8px rgba(0,123,255,0.15);
    }
    .tab-preview:hover .tab-image {
        transform: scale(1.02);
    }
}

/* Большие экраны */
@media (min-width: 1200px) {
    .category-tabs {
        gap: 18px;
    }
    .tab-preview {
        padding: 15px 12px;
        min-height: 260px;
    }
    .tab-image {
        height: 170px;
    }
}

@media (min-width: 1600px) {
    .category-tabs {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* ===== СТИЛИ ТОЛЬКО ДЛЯ СТРАНИЦЫ БРЕНДОВ (ID 11165) ===== */

/* СТИЛИ ДЛЯ КАРТОЧЕК БРЕНДОВ */
body.id-11165 .brand-item {
    border: 2px solid #ddd;
    border-radius: 15px;
    padding: 15px 10px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
    text-align: center;
    height: 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: white;
}
body.id-11165 .brand-item:hover {
    border-color: #007bff;
    background: #f8f9fa;
}
body.id-11165 .brand-item img {
    max-height: 95px;
    max-width: 95%;
    border-radius: 8px;
    object-fit: contain;
}
body.id-11165 .brand-link {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;
    align-items: center;
    justify-content: space-between;
}
body.id-11165 .img-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 95px;
    width: 100%;
    flex-shrink: 0;
}
body.id-11165 .brand-name {
    font-size: 13px;
    font-weight: 600;
    color: #333;
    line-height: 1.3;
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-height: 36px;
    padding: 0 5px;
    margin-top: auto;
}

/* СТИЛИ ДЛЯ СТРАНИЦЫ БРЕНДОВ */
body.id-11165 .letter-section {
    margin-bottom: 30px;
}
body.id-11165 .letter-section:last-child {
    margin-bottom: 0;
}
body.id-11165 .letter-divider {
    font-size: 24px;
    font-weight: bold;
    color: #333;
    padding: 10px 0;
    margin-bottom: 15px;
    border-bottom: 2px solid #007bff;
    position: relative;
}
body.id-11165 .letter-divider:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background: #ddd;
    z-index: -1;
}

/* АЛФАВИТНЫЙ НАВИГАТОР */
body.id-11165 .alphabet-nav {
    margin-bottom: 20px;
    padding: 15px;
    background: transparent;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
}
body.id-11165 .alphabet-subgroup {
    margin-bottom: 10px;
}
body.id-11165 .alphabet-letters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px;
}
body.id-11165 .alphabet-letter {
    display: inline-block;
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 40px;
    text-align: center;
    background: white;
    color: #333;
    font-size: 16px;
    line-height: 1.2;
}
body.id-11165 .alphabet-letter:hover {
    background: #007bff;
    color: white;
    border-color: #007bff;
    transform: scale(1.05);
}
body.id-11165 .alphabet-divider {
    height: 2px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        #007bff 20%, 
        #007bff 80%, 
        transparent 100%);
    margin: 20px 0;
    opacity: 0.7;
}

/* ФИКС ПОДВАЛА ДЛЯ СТРАНИЦЫ БРЕНДОВ */
body.id-11165 .footer-wrapper {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    position: relative;
    left: 0;
    background: url(../images/wave-bg.png) repeat #6f77c7;
}
body.id-11165 .footer-wrapper .container {
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
}

@media (min-width: 1170px) {
    body.id-11165 .footer-wrapper .container {
        width: 1140px;
    }
}

@media (min-width: 1300px) {
    body.id-11165 .footer-wrapper .container {
        width: 1270px;
    }
}

/* ===== СТИЛИ ТОЛЬКО ДЛЯ СТРАНИЦЫ ТОВАРОВ БРЕНДА (ID 11166) ===== */

/* УМЕРЕННЫЕ ОТСТУПЫ ДЛЯ СТРАНИЦЫ ТОВАРОВ БРЕНДА */
body.id-11166 .pagetitle {
    margin-bottom: 15px !important;
}

body.id-11166 .catalog {
    margin-bottom: 0 !important;
}

body.id-11166 .push30 {
    height: 20px !important;
}

body.id-11166 .title-h2 {
    margin-bottom: 15px !important;
}

body.id-11076 .products-grid [class*="col-"] {
    margin-bottom: 15px !important;
}

body.id-11166 .load-more-section {
    margin-top: 15px !important;
    margin-bottom: 10px !important;
}

/* СТИЛИ СЕТКИ ДЛЯ СТРАНИЦЫ ТОВАРОВ БРЕНДА */
body.id-11166 .products-grid {
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
}

body.id-11166 .products-grid [class*="col-"] {
    display: flex;
    flex-direction: column;
}

body.id-11166 .products-grid .element {
    display: flex;
    flex-direction: column;
    height: 100%;
}

body.id-11166 .products-grid::before,
body.id-11166 .products-grid::after {
    content: "";
    display: table;
    clear: both;
}

body.id-11166 .products-grid [class*="col-"] {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 15px !important;
}

/* ОГРАНИЧЕНИЕ - ПОКАЗЫВАТЬ ТОЛЬКО 4 ТОВАРА */
body.id-11166 .products-grid .col-xs-6.col-sm-4:nth-child(n+5) {
    display: none;
}

/* ВОССТАНАВЛИВАЕМ СТИЛИ ИЗОБРАЖЕНИЙ ТОВАРОВ */
body.id-11166 .products-grid img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 0 !important;
    object-fit: contain !important;
}

/* МОБИЛЬНАЯ СЕТКА (1 колонка) */
@media (max-width: 767px) {
    body.id-11166 .products-grid .col-xs-6 {
        width: 100%;
        float: none;
    }
}

/* ПЛАНШЕТНАЯ СЕТКА (3 колонки) */
@media (min-width: 768px) and (max-width: 1199px) {
    body.id-11166 .products-grid .col-sm-4 {
        width: 33.33333333%;
        float: left;
    }
}

/* ДЕСКТОПНАЯ СЕТКА (4 колонки) */
@media (min-width: 1200px) {
    body.id-11166 .products-grid .col-lg-3 {
        width: 25%;
        float: left;
    }
}

/* СТИЛИ ДЛЯ КНОПКИ "ПОКАЗАТЬ ЕЩЕ" */
body.id-11166 .load-more-wrapper {
    text-align: center;
    margin: 20px 0;
}

body.id-11166 .load-more-btn {
    display: inline-block;
    padding: 12px 30px;
    background: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
}

body.id-11166 .load-more-btn:hover {
    background: #0056b3;
    transform: translateY(-2px);
}

/* ОБЩИЕ СТИЛИ СЕТКИ ДЛЯ ВСЕХ СТРАНИЦ (если нужны) */
.products-grid .col-xs-6.col-sm-4 {
    width: 50%;
    float: left;
    padding: 0 15px;
    margin-bottom: 30px;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .products-grid .col-xs-6.col-sm-4 {
        width: 25%;
    }
}

.products-grid::after {
    content: "";
    display: table;
    clear: both;
}

/* ===== ВОССТАНАВЛИВАЕМ ОРИГИНАЛЬНУЮ РАБОТУ МОБИЛЬНОГО МЕНЮ ===== */

/* УБИРАЕМ ВСЕ НАШИ ПРЕДЫДУЩИЕ ИЗМЕНЕНИЯ ДЛЯ МОБИЛЬНОЙ ШАПКИ */
.top-bar-push,
.top-bar-push-md {
    /* Оставляем оригинальные стили */
}

/* Яндекс метрика/бейдж */
.text-center {
    text-align: center;
}
.iframe-no-border {
    border: none;
}
/* 2GIS бейдж*/
.con3 iframe {
    border: none;
}
/* Уведомление о печеньках на сайте */
/* Стили для cookie соглашения */
.cookieconsent {
    background-color: rgba(91,146,229,0.85);
    padding: 10px 0;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    font-size: 18px;
    color: #FFFAFA;
    text-align: left;
    z-index: 99999;
}

.cookieconsent a {
    color: inherit;
    text-decoration: underline;
}

.cookieconsent_container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.cookieconsentclose_btn {
    width: 100px;
    height: 40px;
    margin-left: 20px;
    cursor: pointer;
    border: 1px solid;
    border-radius: 10px;
    background-color: Snow;
    text-align: center;
    font-size: 15px;
    color: Black;
    line-height: 35px;
}
/* Стили фильтров товаров */
/* Стили для кнопки фильтров на мобильных */
.filters-toggle {
    display: none;
    width: 100%;
    padding: 12px 15px;
    background: #f8f8f8;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
    font-weight: bold;
    text-align: left;
    cursor: pointer;
    margin-bottom: 15px;
    position: relative;
}

.filters-toggle-icon {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
}

/* Заголовок модального окна */
.filters-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #e0e0e0;
    background: white;
    flex-shrink: 0;
}

.filters-modal-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

.filters-close-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    border-radius: 4px;
    color: #666;
    display: flex;
    align-items: center;
    justify-content: center;
}

.filters-close-btn:hover {
    background: #f5f5f5;
}

.filters-close-btn svg {
    width: 20px;
    height: 20px;
}
/* Кнопка "Свернуть фильтры" для мобильных */
.collapse-filters-mobile {
    text-align: center;
    padding: 15px 15px 15px;
    border-top: 1px solid #e0e0e0;
/*     margin-top: 15px; */
    background: white;
    flex-shrink: 0;
}

.btn-collapse-filters {
    color: #414141;
    font-size: 14px;
    text-decoration: underline;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px 16px;
}

.btn-collapse-filters:hover {
    color: #2c3e50;
    background: #f8f8f8;
}

/* На мобильных */
@media (max-width: 991px) {
    .filters-toggle {
        display: block;
    }
    .filters-wrapper {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 10000;
    }
    
    .filters-wrapper.active {
        display: block;
    }
    
    .filters-overlay {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
    }
    
    .filters-modal {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
        max-width: 400px;
        background: white;
        border-radius: 12px;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        /* УБИРАЕМ ФИКСИРОВАННУЮ ВЫСОТУ - теперь модалка будет подстраиваться под контент */
        max-height: 90vh; /* Только максимальная высота, но не фиксированная */
    }
    
    .filters-modal .aside-menu {
        flex: 1;
        display: flex;
        flex-direction: column;
        min-height: 0; /* Важно для flex-контейнеров */
        margin-bottom: 0 !important;
    }
    
    .filters-modal .aside-menu form {
        flex: 1;
        display: flex;
        flex-direction: column;
        min-height: 0; /* Важно для flex-контейнеров */
    }
    
    .filters-content {
        flex: 1;
        overflow-y: auto; /* ВКЛЮЧАЕМ СКРОЛЛ */
        padding: 20px;
        -webkit-overflow-scrolling: touch; /* Плавный скролл для iOS */
        min-height: 0; /* Важно для flex-контейнеров */
    }
    
    /* Стили для скроллбара */
    .filters-content::-webkit-scrollbar {
        width: 6px;
    }
    
    .filters-content::-webkit-scrollbar-track {
        background: #f1f1f1;
        border-radius: 3px;
    }
    
    .filters-content::-webkit-scrollbar-thumb {
        background: #c1c1c1;
        border-radius: 3px;
    }
}

/* На десктопе */
@media (min-width: 992px) {
    .filters-wrapper {
        display: block !important;
        position: static !important;
    }
    
    .filters-overlay,
    .filters-modal-header,
    .collapse-filters-mobile {
        display: none !important;
    }
    
    .filters-modal {
        position: static !important;
        transform: none !important;
        width: auto !important;
        max-width: none !important;
        max-height: none !important;
        background: none !important;
        border-radius: 0 !important;
    }
    
    .filters-content {
        overflow: visible !important;
        padding: 0 !important;
    }
}

/* Стили для сворачиваемых фильтров */
.filter-title-collapsible {
    position: relative;
    padding-right: 40px;
    cursor: pointer;
    margin-bottom: 10px;
    padding-left: 15px;
}

.filter-title-collapsible .filter-arrow {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.filter-title-collapsible .filter-arrow svg {
    transition: transform 0.3s ease;
    width: 11px;
    height: 6px;
}

.filter-content-wrapper {
    transition: all 0.3s ease;
}

/* Убираем лишние отступы при сворачивании */
.collapsible-fieldset.collapsed {
    margin-bottom: 5px;
}

/* .collapsible-fieldset:not(.collapsed) {
    margin-bottom: 15px;
} */
/* Очень специфичные стили для кнопки сброса */
@media (max-width: 991px) {
    #mse2_filters input[type="reset"],
    #mse2_filters button[type="reset"],
    #mse2_filters .woof_frontend_filters_reset,
    .filters-content input[type="reset"],
    .filters-content button[type="reset"],
    .filters-content .woof_frontend_filters_reset,
    .filters-modal input[type="reset"],
    .filters-modal button[type="reset"],
    .filters-modal .woof_frontend_filters_reset,
    form#mse2_filters input[type="reset"],
    form#mse2_filters button[type="reset"],
    form#mse2_filters .woof_frontend_filters_reset {
        padding: 8px 16px !important;
        font-size: 14px !important;
        min-height: 36px !important;
        display: block !important;
        margin: 10px auto !important;
        width: 80% !important;
        max-width: 200px !important;
        text-align: center !important;
        border-radius: 6px !important;
        background: #f8f8f8 !important;
        border: 1px solid #ddd !important;
        color: #333 !important;
        cursor: pointer !important;
        transition: all 0.3s ease !important;
    }
    
    #mse2_filters input[type="reset"]:hover,
    #mse2_filters button[type="reset"]:hover,
    #mse2_filters .woof_frontend_filters_reset:hover,
    .filters-content input[type="reset"]:hover,
    .filters-content button[type="reset"]:hover,
    .filters-content .woof_frontend_filters_reset:hover {
        transform: translateY(-1px) !important;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
        background: #e8e8e8 !important;
    }
    
    #mse2_filters input[type="reset"]:active,
    #mse2_filters button[type="reset"]:active,
    #mse2_filters .woof_frontend_filters_reset:active,
    .filters-content input[type="reset"]:active,
    .filters-content button[type="reset"]:active,
    .filters-content .woof_frontend_filters_reset:active {
        transform: translateY(0) !important;
        background: #d8d8d8 !important;
    }
}
/* Универсальные стили для скрытия ползунков и показа числовых полей */
@media (max-width: 991px) {
    /* Скрываем все возможные элементы ползунков */
    .filters-content input[type="range"],
    .filters-content .irs,
    .filters-content .mse2_number_slider,
    .filters-content .slider-container,
    .filters-content .price-slider,
    .filters-content .range-slider,
    .filters-content .slider-track,
    .filters-content .noUi-target,
    .filters-content .ui-slider {
        display: none !important;
    }
    
    /* Показываем числовые поля */
    .filters-content input[type="number"],
    .filters-content .mse2_number_min,
    .filters-content .mse2_number_max,
    .filters-content .price-input-min,
    .filters-content .price-input-max,
    .filters-content .min-price,
    .filters-content .max-price,
    .filters-content [class*="min"],
    .filters-content [class*="max"] {
        display: inline-block !important;
        width: 48% !important;
        height: 40px !important;
        padding: 8px 12px !important;
        border: 1px solid #d1d1d1 !important;
        border-radius: 6px !important;
        font-size: 14px !important;
        background: white !important;
        box-sizing: border-box !important;
    }
    
    /* Контейнеры для полей ввода */
    .filters-content .mse2_number,
    .filters-content .price-inputs,
    .filters-content .price-range-inputs,
    .filters-content .number-inputs,
    .filters-content .min-max-container {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 15px 0 10px 0 !important;
        flex-wrap: nowrap !important;
    }
    
    /* Стили для разделителя */
    .filters-content .price-separator,
    .filters-content .mse2_number_separator {
        display: inline-block !important;
        margin: 0 5px !important;
        color: #666 !important;
        font-weight: bold !important;
        flex-shrink: 0 !important;
    }
    
    /* Улучшаем внешний вид полей ввода при фокусе */
    .filters-content input[type="number"]:focus,
    .filters-content .mse2_number_min:focus,
    .filters-content .mse2_number_max:focus {
        border-color: #007bff !important;
        outline: none !important;
        box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25) !important;
    }
    
    /* Стили для кнопки применения цены если есть */
    .filters-content .price-submit,
    .filters-content .apply-price {
        width: 100% !important;
        margin-top: 10px !important;
        padding: 10px !important;
        background: #007bff !important;
        color: white !important;
        border: none !important;
        border-radius: 6px !important;
        font-size: 14px !important;
        cursor: pointer !important;
    }
}
/* Стили для скроллируемых фильтров */
.scrollable-filter-content {
    max-height: 200px !important;
    overflow-y: auto !important;
    padding-right: 8px !important;
    margin: 10px 0 !important;
/*     border: 1px solid #e0e0e0 !important;
border-radius: 4px !important; */
    padding: 8px !important;
    background: transparent !important;
}

.scrollable-filter-content label {
    display: block !important;
/*     margin-bottom: 8px !important; */
    padding: 0px 8px !important;
/*     border-radius: 3px !important; */
    transition: background-color 0.2s !important;
}

/* .scrollable-filter-content label:hover {
    background: #f0f0f0 !important;
} */

.scrollable-filter-content input[type="checkbox"] {
    margin-right: 8px !important;
}

.scrollable-filter-content::-webkit-scrollbar {
    width: 6px !important;
}

.scrollable-filter-content::-webkit-scrollbar-track {
    background: #f1f1f1 !important;
    border-radius: 3px !important;
}

.scrollable-filter-content::-webkit-scrollbar-thumb {
    background: #c1c1c1 !important;
    border-radius: 3px !important;
}

.scrollable-filter-content::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8 !important;
}

/* Улучшаем внешний вид для мобильных */
@media (max-width: 991px) {
    .scrollable-filter-content {
        max-height: 180px !important;
    }
}

/* =======================================================
   ФЛЕКСБОКС СЕТКА ДЛЯ КАРТОЧЕК (Одинаковая высота)
   ======================================================= */
.flex-col-wrapper { display: flex; }
.flex-element { display: flex; flex-direction: column; width: 100%; }
.flex-form { display: flex; flex-direction: column; height: 100%; }
.flex-content { display: flex; flex-direction: column; flex-grow: 1; }
.flex-title { 
    flex-grow: 1; 
    height: auto !important; 
    max-height: none !important; 
    overflow: visible !important; 
    display: block !important; 
}

/* =======================================================
   ПРЕМИУМ ДИЗАЙН КАРТОЧКИ: БЛОК ЦЕНЫ И КНОПОК
   ======================================================= */

/* 1. Главный контейнер (В колонку) */
.product-bottom-ui {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: auto;
    width: 100%;
}

.price-block {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* 2. Старая цена */
.old-price {
    color: #999;
    font-size: 13px;
    text-decoration: line-through;
    white-space: nowrap;
    line-height: 1;
    margin-bottom: 2px;
}
.old-price-spacer { 
    height: 15px; 
}

/* 3. Текущая цена (Аккуратный размер) */
.current-price {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    font-size: 21px !important; /* Было 24px, уменьшили до 21px */
    font-weight: 700 !important; 
    color: #1a1a1a !important; 
    letter-spacing: -0.5px !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: baseline !important;
}

/* Знак рубля - пожирнее и средне-серый */
.currency-symbol {
    font-family: inherit !important;
    font-size: 18px !important; 
    font-weight: 700 !important; /* Подняли жирность (было 600) */
    color: #737373 !important; /* Тот самый сбалансированный средний серый */
    margin: 0 0 0 -2px !important; 
    padding: 0 !important;
}

/* =======================================================
   СМАРТ-КНОПКА КОРЗИНЫ (Механика Ozon в премиум-стиле)
   ======================================================= */

/* Общая обертка с фиксированной высотой для плавной анимации */
.cart-action-wrapper,
.order-request-wrapper{
    position: relative;
    width: 100%;
    height: 42px;
    z-index: 20 !important; /* Вытягиваем кнопки поверх прозрачной ссылки */
}

/* --- 1. БАЗОВОЕ СОСТОЯНИЕ (Фиолетовая кнопка) --- */
.btn-add-cart-wide {
    position: absolute;
    top: 0; left: 0;
    width: 100% !important;
    height: 42px !important;
    border-radius: 8px !important;
    background-color: #2e1573 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    cursor: pointer !important;
    padding: 0 15px !important;
    z-index: 2;
    opacity: 1;
    transition: opacity 0.3s ease, transform 0.2s ease !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.btn-add-cart-wide span {
    font-size: 15px !important; 
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    color: #ffffff !important;
    display: inline-block !important; /* Центровка */
    line-height: normal !important;
    margin: 0 !important; 
}

/* Белая иконка для широкой кнопки */
.premium-cart-icon-wide {
    display: block !important;
    width: 20px !important; 
    height: 20px !important;
    fill: none !important; 
    stroke: #ffffff !important; 
    stroke-width: 2 !important; 
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    position: static !important; 
    margin: 0 !important;
    transform: translateY(-1px) !important; /* Оптическая компенсация */
}

/* Hover и Active для фиолетовой кнопки */
@media (hover: hover) {
    .btn-add-cart-wide:hover { 
        background-color: #401da1 !important; 
        box-shadow: none !important;
    }
}
.btn-add-cart-wide:active {
    transform: scale(0.98) !important;
    background-color: #401da1 !important;
    box-shadow: none !important;
}

/* --- 2. СОСТОЯНИЕ "В КОРЗИНЕ" (Счетчик + Кнопка перехода) --- */
.cart-added-state {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    gap: 8px;
    opacity: 0;
    z-index: 1;
    pointer-events: none; 
    transform: scale(0.95);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Левая часть: Счетчик [ - 1 + ] */
.catalog-qty-selector {
    display: flex;
    align-items: center;
    background: #f4f4f6;
    border-radius: 8px;
    padding: 0;
    height: 100%;
    flex: 0 0 90px;
}

.qty-btn {
    background: none;
    border: none;
    font-size: 20px;
    font-weight: 500;
    color: #2e1573;
    cursor: pointer;
    width: 30px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
    border-radius: 6px;
    padding: 0;
}
.qty-btn:active { background: #e0e0e4; }

.qty-input {
    width: 30px;
    border: none;
    background: transparent;
    text-align: center;
    font-weight: 700;
    font-size: 15px;
    color: #111;
    padding: 0;
    margin: 0;
}

/* Правая часть: Кнопка "В корзине" (ведет к оформлению) */
.btn-go-cart {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: #ffffff;
    border: 2px solid #2e1573;
    color: #2e1573;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.btn-go-cart svg {
    width: 16px; 
    height: 16px; 
    stroke: #2e1573; 
    stroke-width: 3; 
    fill: none; 
    stroke-linecap: round; 
    stroke-linejoin: round;
}

.btn-go-cart span {
    margin-top: 2px;
}

@media (hover: hover) {
    .btn-go-cart:hover {
        background: #f4f4f6;
    }
}
.btn-go-cart:active {
    transform: scale(0.97);
}

/* --- 3. ЛОГИКА ПЕРЕКЛЮЧЕНИЯ (АНИМАЦИЯ) --- */
.cart-action-wrapper.is-added .btn-add-cart-wide {
    opacity: 0;
    pointer-events: none;
    transform: scale(1.05) !important;
}

.cart-action-wrapper.is-added .cart-added-state {
    opacity: 1;
    z-index: 3;
    pointer-events: all;
    transform: scale(1);
}

/* ===== ХАРАКТЕРИСТИКИ В КАРТОЧКЕ ТОВАРА ===== */
/* Контейнер характеристик */
.product-mini-specs {
    padding: 10px 12px;
    background: #f8f9fa;
    border-radius: 6px;
    font-size: 12px;
    line-height: 1.4;
    position: relative;
    z-index: 10; /* Вытаскиваем над ссылкой-оберткой */
    pointer-events: none; /* ПРОПУСКАЕМ клики сквозь фон к основной карточке */
}

/* Строка характеристики */
.spec-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

/* Разделитель между строками (если их две) */
.spec-row.has-border {
    border-bottom: 1px dashed #e4e4e4;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

/* Название (Размер, Угол) */
.spec-label {
    color: #666;
    flex-shrink: 0;
}

/* Значение характеристики */
.spec-value {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    text-align: right;
    padding-left: 10px;
}

/* Кликабельные теги-ссылки */
.spec-link {
    color: #2e1573;
    text-decoration: none;
    transition: color 0.2s ease, opacity 0.1s ease;
    display: inline-block;
    padding: 2px 0; /* Слегка увеличиваем невидимую область клика */
    pointer-events: auto; /* ВОЗВРАЩАЕМ кликабельность только самим ссылкам */
}

/* Реакция на нажатие (тап) пальцем на телефоне */
.spec-link:active {
    opacity: 0.5; /* Ссылка слегка моргает при нажатии */
}

@media (hover: hover) and (pointer: fine) {
    .spec-link:hover {
        color: #401da1; /* Цвет при наведении как у кнопки корзины */
    }
}

/* Фикс для интерактивных элементов внутри карточки */
.element .absolute {
    z-index: 1; /* Ссылка-обертка уходит на задний план */
}

/* Заголовок пропускает клики к карточке */
.flex-title {
    position: relative;
    z-index: 10;
    pointer-events: none;
}

/* Нижний блок (цена, кнопки) ловит клики */
.product-bottom-ui {
    position: relative;
    z-index: 10;
}

/* Отключаем кривые CSS-тултипы у тегов внутри сетки каталога */
.flex-col-wrapper .product-tags div::before,
.flex-col-wrapper .product-tags div::after {
    display: none !important;
}

/* На всякий случай отключаем реакцию на мышь для тегов в каталоге */
.flex-col-wrapper .product-tags div {
    pointer-events: none !important;
}
/* Дополнение для брендов товара */

/* ===== СТРАНИЦА БРЕНДОВ: НОВЫЕ БЛОКИ ===== */

/* SEO-текст */
body.id-11165 .brands-seo-text {
    margin-bottom: 20px;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
    max-width: 700px;
    background: #f8f9fa;
    border-left: 3px solid #2e1573;
    padding: 12px 16px;
    border-radius: 0 6px 6px 0;
}

@media (max-width: 767px) {
    body.id-11165 .brands-seo-text {
        text-align: center;
        font-size: 13px;
        border-left: none;
        border-top: 3px solid #2e1573;
        border-radius: 0 0 6px 6px;
    }
}

/* Поиск */
body.id-11165 .brands-top-row {
    display: flex;
    gap: 24px;
    margin-bottom: 20px;
    align-items: center;
}
body.id-11165 .brands-search-wrap {
    position: relative;
    flex: 1;
    display: flex;
    align-items: center;
}
body.id-11165 .brands-search-wrap::before {
    content: '';
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23aaa' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
    z-index: 1;
}
body.id-11165 .brands-search-input {
    width: 100%;
    padding: 10px 36px 10px 40px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}
body.id-11165 .brands-seo-text {
    flex: 1;
    margin-bottom: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
    background: #f8f9fa;
    border-left: 3px solid #2e1573;
    padding: 12px 16px;
    border-radius: 0 6px 6px 0;
}

@media (max-width: 767px) {
    body.id-11165 .brands-top-row {
        flex-direction: column;
        gap: 12px;
    }
    body.id-11165 .brands-seo-text {
        text-align: center;
        font-size: 13px;
        border-left: none;
        border-top: 3px solid #2e1573;
        border-radius: 0 0 6px 6px;
        margin-bottom: 0;
    }
}
body.id-11165 .brands-search-input {
    width: 100%;
    padding: 10px 36px 10px 16px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}
body.id-11165 .brands-search-input:focus {
    border-color: #2e1573;
}
body.id-11165 .brands-search-clear {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #aaa;
    font-size: 16px;
    display: none;
}
body.id-11165 .brands-search-clear.visible {
    display: block;
}
body.id-11165 .brands-search-empty {
    color: #888;
    font-size: 14px;
    margin-bottom: 20px;
}

/* Популярные бренды */
body.id-11165 .brands-popular {
    margin-bottom: 30px;
}
body.id-11165 .brands-popular-title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #007bff;
}

/* Счётчик товаров */
body.id-11165 .brand-count {
    font-size: 11px;
    color: #888;
    margin-top: 4px;
}
body.id-11165 .brand-count--empty {
    color: #bbb;
    font-style: italic;
}

/* Мобильная навигация — увеличиваем кнопки */
@media (max-width: 767px) {
    body.id-11165 .alphabet-letter {
        padding: 10px 14px;
        min-width: 44px;
        font-size: 15px;
    }
    body.id-11165 .brands-search-wrap {
        max-width: 100%;
    }
}

body.id-11165 .brands-search-wrap {
    position: relative;
}
body.id-11165 .brands-search-wrap::before {
    content: '';
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23aaa' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}
body.id-11165 .brands-search-input {
    padding-left: 40px !important;
}

body.id-11165 .brands-search-results {
    margin-bottom: 20px;
}

@media (max-width: 767px) {
    body.id-11165 .brands-search-results .col-xs-6 {
        width: 100%;
    }
}

body.id-11165 .brands-search-empty {
    text-align: center;
    padding: 30px 20px;
    background: #f8f9fa;
    border-radius: 8px;
    margin-bottom: 20px;
}
body.id-11165 .brands-search-empty__icon {
    font-size: 36px;
    margin-bottom: 10px;
}
body.id-11165 .brands-search-empty__title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    margin-bottom: 8px;
}
body.id-11165 .brands-search-empty__hint {
    font-size: 14px;
    color: #888;
    line-height: 1.6;
}

/* =======================================================
   1. ДЕСКТОРНЫЙ HOVER (РАБОТАЕТ ТОЛЬКО ПРИ НАВЕДЕНИИ МЫШИ)
   ======================================================= */
@media (pointer: fine) {
    body.id-11165 .brand-item:hover {
        border-color: #007bff !important;
        background: #f8f9fa !important;
    }
    body.id-11165 .alphabet-letter:hover {
        background: #007bff !important;
        color: white !important;
        border-color: #007bff !important;
        transform: scale(1.05);
    }
}

/* =======================================================
   2. МОБИЛЬНЫЕ СТИЛИ (ЭКРАНЫ ДО 991px И ТАЧ-ИНТЕРФЕЙСЫ)
   ======================================================= */
@media (max-width: 991px) {

    /* ЖЕСТКИЙ СБРОС ЗАЛИПАНИЯ ДЛЯ IPHONE:
       Когда палец просто находится над элементом или уходит с него, 
       возвращаем заводские 2px #ddd и белый фон */
    body.id-11165 .brand-item:hover {
        border-color: #ddd !important;
        background-color: white !important;
        transform: none !important;
    }

    /* МГНОВЕННЫЙ СИНИЙ ХОВЕР ТОЛЬКО В МОМЕНТ ФИЗИЧЕСКОГО КАСАНИЯ (ТАЧА) */
    body.id-11165 .brand-item:active {
        border-color: #007bff !important;
        background-color: #f1f3f5 !important;
        transform: scale(0.98) !important;
    }

    /* Плавный откат назад при отпускании пальца */
    body.id-11165 .brand-item {
        transition: border-color 0.2s ease, background-color 0.2s ease, transform 0.2s ease !important;
        -webkit-tap-highlight-color: transparent; /* Убираем дефолтную серую вспышку Safari */
    }

    /* --- Остальные мобильные интерактивные элементы --- */

    /* Буквы алфавита */
    body.id-11165 .alphabet-letter:hover {
        background-color: white !important;
        color: #333 !important;
        border-color: #ddd !important;
        transform: none !important;
    }
    body.id-11165 .alphabet-letter:active {
        background-color: #007bff !important;
        color: white !important;
        border-color: #007bff !important;
        transform: scale(0.95) !important;
    }

    /* Кнопка "В корзину" */
    .btn-add-cart-wide:active {
        background-color: #1e0d4d !important;
        transform: scale(0.96) !important;
        opacity: 0.9 !important;
    }

    /* Кнопка "В корзине" */
    .btn-go-cart:active {
        background-color: #2e1573 !important;
        color: #ffffff !important;
        transform: scale(0.96) !important;
    }
    .btn-go-cart:active svg {
        stroke: #ffffff !important;
    }

    /* Плюсы и минусы количества */
    .qty-btn:active {
        background-color: #dcdce0 !important;
        color: #1e0d4d !important;
    }

    /* Кнопка "Показать еще" */
    body.id-11166 .load-more-btn:active {
        background-color: #0056b3 !important;
        transform: scale(0.97) !important;
    }

    /* Превью-табы */
    .tab-preview:hover {
        border-color: #e0e0e0 !important;
        background: white !important;
        transform: none !important;
    }
    .tab-preview:active {
        border-color: #007bff !important;
        background: #f1f3f5 !important;
        transform: scale(0.98) !important;
    }
}

/* ===== СТРАНИЦА БРЕНДА: БЛОК ОПИСАНИЯ ===== */
.vendor-description {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-bottom: 24px;
    padding: 16px 20px;
    background: #f8f9fa;
    border-left: 3px solid #2e1573;
    border-radius: 0 6px 6px 0;
}
.vendor-desc-logo {
    flex-shrink: 0;
}
.vendor-desc-logo img {
    max-height: 60px;
    max-width: 160px;
    object-fit: contain;
}
.vendor-desc-text {
    flex: 1;
    font-size: 14px;
    color: #555;
    line-height: 1.7;
    margin: 0;
}
.vendor-desc-text p {
    margin: 0;
}

@media (max-width: 767px) {
    .vendor-description {
        flex-direction: column;
        text-align: center;
        border-left: none;
        border-top: 3px solid #2e1573;
        border-radius: 0 0 6px 6px;
    }
}

/* Новый блок наличия */
.availability-new {
    margin-bottom: 15px;
}

.avail-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 16px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
    border: 1.5px solid;
}

.avail-in {
    background: #eaf3de;
    color: #1a5c32;
    border-color: #97c459;
}

.avail-out {
    background: #fef3e6;
    color: #b8860b;
    border-color: #ffc107;
}

/* Мигающая точка для "В наличии" */
.avail-badge.avail-in::before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #3b6d11;
    flex-shrink: 0;
    animation: pulse-dot 2s ease-in-out infinite;
}

/* Горящая точка для "Доступно к заказу" */
.avail-badge.avail-out::before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ffc107;
    flex-shrink: 0;
}

@keyframes pulse-dot {
    0%, 100% { 
        opacity: 1; 
        transform: scale(1); 
    }
    50% { 
        opacity: 0.35; 
        transform: scale(0.6); 
    }
}

/* Кнопка "Доступно к заказу" */
.btn-order-only {
    background: #f5a623 !important;
    border-color: #f5a623 !important;
    color: #fff !important;
    cursor: pointer !important;
}

@media (hover: none) {
    .button.block.mid:active,
    .product-count-element .btn-number:active {
        background: #2e1573 !important;
        color: white !important;
    }
}

@media (hover: hover) {
    .button.block.mid:hover:not(:disabled) {
        background: #401da1 !important;
        color: white !important;
    }
}

.btn-order-only:hover,
.btn-order-only:focus,
.btn-order-only:active {
    background: #2e1573 !important;
    border-color: #2e1573 !important;
    color: #fff !important;
}
/* Кнопка статуса */
.product-status-row{
    margin-bottom:15px;
}

.product-status-row .avail-badge{
    display:block;
    width:100%;
    text-align:center;
    box-sizing:border-box;
}
.avail-badge::before{
    margin-right: 3px;
}

@media (max-width: 767px) {
    .product-status-row .avail-badge {
        padding: 10px;
        font-size: 14px;
        font-weight: 600;
    }
}

/* Цена + поделиться */
.price-share-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}

/* Убираем старые стили */
.price-status-row{
    display:flex;
    align-items:center;
    gap:20px;
    margin-bottom:20px;
}
.price-status-row .price{
    margin:0;
}
.price-status-row .avail-in{
    display:inline-block;
    width:auto;
    padding:6px 14px;
}

.product-price{
    margin:0;
    line-height:1.2;
}

/* Последняя цена была */
.last-price-text{
    display:block;
    font-size:16px;
    font-weight:400;
    color:#888;
    margin-bottom:5px;
    line-height:1.2;
}

/* Блок поделиться */
.price-share-row .ya-share2{
    margin-left:15px;
    flex-shrink:0;
}

/* Мобильная версия */
@media (max-width:767px){

    .price-share-row{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
    }

    .product-price{
        font-size:28px;
    }

    .price-share-row .ya-share2{
        margin-left:10px;
    }
}

.supplyrequest-note{
    background:#f7f7f7;
    border-left:4px solid #2e1573;
    padding:20px 25px;
    margin:20px 0 25px;
    color:#555;
    line-height:1.6;
}

#supplyrequest .btn{
    width:100%;
    text-align:center;
}

#supplyrequest .title-h3{
    text-align:center;
    margin-bottom:25px;
}

.supply-info{
    display:flex;
    align-items:center;
    gap:25px;
    padding:18px 20px;
    background:#f7f7f7;
    border-left:4px solid #4b2aa8;
    margin-bottom:25px;
}

.supply-info-icon{
    flex:0 0 140px;
}

.supply-info-icon img{
    width:140px;
    height:auto;
    display:block;
}

.supply-info-text{
    flex:1;
    color:#333;
    line-height:1.6;
}

.supply-info-text strong{
    display:block;
    margin-bottom:8px;
    font-size:16px;
    color:#2e1573;
}

@media (max-width:767px){

    .supply-info{
        gap:12px;
        padding:12px;
        margin-bottom:20px;
    }

    .supply-info-icon{
        flex:0 0 100px;
    }

    .supply-info-icon img{
        width:100px;
        height:auto;
    }

    .supply-info-text{
        font-size:14px;
        line-height:1.45;
    }

    .supply-info-text strong{
        font-size:15px;
        margin-bottom:4px;
    }
}
.product-stock-mini{
    display:flex;
    order: -1;
    align-items:center;
    gap:6px;
    margin-top:6px;
    font-size:12px;
    color:#666;
}

.stock-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    flex-shrink:0;
}

.stock-in{
    background:#27ae60;
}

.stock-order{
    background:#f39c12;
}

.stock-text{
    line-height:1;
}

/* Всплывающее облачко для ошибки раскладки клавиатуры */
.lang-error-wrapper,
.input-parent {
    position: relative;
}

.lang-error-tooltip {
    position: absolute;
    bottom: 100%;
    right: 0;
    margin-bottom: 10px;
    background: rgba(231, 76, 60, 0.95);
    color: #ffffff;
    padding: 8px 14px;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 500;
    box-shadow: 0 4px 12px rgba(231, 76, 60, 0.25);
    pointer-events: none;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 1000;
    white-space: nowrap;
}

/* Маленький треугольник-указатель вниз */
.lang-error-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 20px;
    border-width: 6px;
    border-style: solid;
    border-color: rgba(231, 76, 60, 0.95) transparent transparent transparent;
}

/* ========================================================
   ОФОРМЛЕНИЕ ЗАКАЗА — кастомные стили
   ======================================================== */

/* ===== Заголовки блоков ===== */
#msOrder h5 {
    font-size: 15px;
    font-weight: 500;
    color: #1f2733;
    letter-spacing: .2px;
}

/* ===== Поля ввода ===== */
#msOrder .form-control {
    height: 50px;
    padding: 0 16px;
    border: 1.5px solid #e3e6ea;
    border-radius: 10px;
    font-size: 15px;
    color: #2c2c2a;
    background: #fafbfc;
    box-shadow: none;
    transition: border-color .15s, box-shadow .15s, background .15s;
}
#msOrder textarea.form-control {
    height: auto;
    min-height: 90px;
    padding: 12px 16px;
    resize: vertical;
}
#msOrder .form-control::placeholder { color: #9aa3ad; }

/* Фокус — фирменный синий */
#msOrder .form-control:focus {
    border-color: #007bff;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(0,123,255,.15);
    outline: none;
}

/* ===== Поле адреса с иконкой-пином ===== */
#msOrder #address_dadata {
    padding-left: 42px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23007bff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 14px 50%;
}

/* ===== Подсказка и ошибка под адресом ===== */
#msOrder .address-hint {
    display: block;
    margin: 6px 2px 14px;
    font-size: 12px;
    line-height: 1.45;
    color: #9aa3ad;
}
#msOrder .address-error {
    margin: 6px 2px 12px;
    font-size: 13px;
    font-weight: 500;
    color: #d9534f;
}
/* ===== Состояние ошибки для поля адреса ===== */
#msOrder #address_dadata.error {
    border-color: #d9534f;
    box-shadow: 0 0 0 3px rgba(217,83,79,.12);
    background-color: #fff; /* Оставляем фон белым, но не трогаем иконку */
}

/* Если внутри блока с инпутом есть элемент с ошибкой — скрываем серую подсказку */
#msOrder .input-parent:has(.error) .address-hint {
    display: none !important;
}

/* ===== Итого ===== */
#msOrder .order-total {
    text-align: center;
    margin: 16px 0 26px;
}
#msOrder .order-total__label {
    font-size: 18px;
    color: #5f6b7a;
    letter-spacing: .3px;
    margin-bottom: 4px;
}
#msOrder .order-total__row {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}
/* старая цена — серая, зачёркнутая */
#msOrder .order-total__old {
    display: none;                 /* по умолчанию скрыта */
    font-size: 24px;
    font-weight: 400;
    color: #b0b6bd;
    text-decoration: line-through;
    text-decoration-color: #d9534f;
}
#msOrder .order-total__sum {
    font-size: 44px;
    font-weight: 600;
    color: #2e1573;
    line-height: 1;
}
/* бейдж -10% */
#msOrder .order-total__badge {
    display: none;                 /* по умолчанию скрыт */
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    background: #2e7d32;
    border-radius: 8px;
    padding: 4px 10px;
    align-self: center;
}
#msOrder .order-total__note {
    margin-top: 6px;
    font-size: 14px;
    color: #9aa3ad;
}
/* состояние "скидка активна" — показываем старую цену и бейдж */
#msOrder .order-total.has-discount .order-total__old,
#msOrder .order-total.has-discount .order-total__badge {
    display: inline-block;
}
/* ===== Согласие в облачке ===== */
#msOrder .agreement-box {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    max-width: 720px;
    margin: 0 auto 20px;
    padding: 14px 18px;
    background: #f7f9fb;
    border: 1px solid #e9edf1;
    border-radius: 12px;
    font-size: 13px;
    line-height: 1.5;
    color: #5f6b7a;
}
#msOrder .agreement-box input { margin-top: 2px; flex-shrink: 0; }
#msOrder .agreement-box label { margin: 0; font-weight: 400; }
#msOrder .agreement-box a { color: #2e1573; text-decoration: underline; }

/* ===== Кнопки — одинаковая высота, по центру ===== */
#msOrder .order-buttons {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}
#msOrder .order-buttons .prev-btn,
#msOrder #orderbutton {
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .3px;
    margin: 0 !important;
    padding: 0 28px;
}
#msOrder #orderbutton {
    width: auto;
    border: none;
    background: #2e1573;
    color: #fff;
    transition: background .15s;
}
#msOrder #orderbutton:hover { background: #25115c; }

/* ========================================================
   ВЫПАДАШКА ПОДСКАЗОК DaData
   ======================================================== */
.suggestions-suggestions {
    border: 1.5px solid #e3e6ea !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 24px rgba(20,30,50,.12) !important;
    overflow: hidden;
    font-size: 14px;
}
.suggestions-suggestion {
    padding: 11px 16px !important;
    border-top: 1px solid #f1f1f1;
}
.suggestions-suggestion:first-child { border-top: none; }
.suggestions-suggestion.suggestions-selected,
.suggestions-suggestion:hover {
    background: #f0f6ff !important;
}
.suggestions-suggestion strong { color: #007bff; font-weight: 500; }

/* логотип DaData — оставляем (требование тарифа), просто делаем аккуратным */
.suggestions-promo {
    padding: 6px 10px !important;
    background: #fafbfc;
    border-top: 1px solid #f1f1f1;
    opacity: .55;
    transition: opacity .15s;
}
.suggestions-promo:hover { opacity: 1; }
.suggestions-promo img { height: 14px !important; }

/* ========================================================
   КАРТОЧКИ ДОСТАВКИ И ОПЛАТЫ
   ======================================================== */
#msOrder .option-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
#msOrder .option-cards--row { grid-template-columns: repeat(2, 1fr); }

@media (max-width: 600px) {
    #msOrder .option-cards      { grid-template-columns: repeat(2, 1fr); }
    #msOrder .option-cards--row { grid-template-columns: 1fr; }
}

/* сбрасываем bootstrap-обёртку .checkbox, делаем её ячейкой сетки */
#msOrder .option-cards .option-cell {
    margin: 0; padding: 0; min-height: 0;
}
#msOrder .option-cards .option-cell .radio { display: none; }

/* сама карточка */
#msOrder .option-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    gap: 6px;
    height: 100%;
    box-sizing: border-box;
    padding: 16px 12px;
    margin: 0;
    border: 1.5px solid #e3e6ea;
    border-radius: 12px;
    background: #fff;
    font-weight: 400;
    cursor: pointer;
    transition: border-color .15s, background .15s, box-shadow .15s;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none; /* Для Safari */
    -moz-user-select: none;    /* Для старых Firefox */
    -ms-user-select: none;     /* Для старых IE/Edge */
    user-select: none;         /* Стандартный синтаксис */
}
#msOrder .option-card input {
    position: absolute; opacity: 0; pointer-events: none;
}

/* hover — только мышь */
@media (hover: hover) {
    #msOrder .option-card:hover { border-color: #85b7eb; }
}
/* нажатие — отклик для тача */
#msOrder .option-card:active { background: #f4f8ff; }

/* рамка всегда 2px, у невыбранной — цвета фона, поэтому размер не меняется */
#msOrder .option-card { border-width: 2px; border-color: #e3e6ea; }
#msOrder .option-card:has(input:checked) {
    border-color: #007bff;
    background: #f0f6ff;
}

/* доступность с клавиатуры */
#msOrder .option-card:has(input:focus-visible) {
    box-shadow: 0 0 0 3px rgba(0,123,255,.2);
}

/* галочка */
/* Галочка (круг) — отодвигаем от угла и включаем центрирование */
#msOrder .option-card__check {
    position: absolute; 
    top: 12px; 
    right: 12px; /* Сделали 12px, теперь отступы идеально симметричны скруглению карточки */
    width: 20px; 
    height: 20px; 
    border-radius: 50%;
    background: #007bff; 
    opacity: 0; 
    transition: opacity .15s;

    /* Идеально центрируем содержимое внутри круга */
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Сама белая стрелочка внутри кружка */
#msOrder .option-card__check::after {
    content: ""; 
    /* Полностью убираем позиционирование left и top — флекс сам найдет центр */
    width: 5px; 
    height: 9px;
    border: solid #fff; 
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    
    /* Оптическая компенсация: из-за наклона длинный хвостик галочки 
       визуально тянет её вниз, поэтому принудительно приподнимаем на 1.5px */
    margin-top: -1.5px; 
    margin-left: -0.5px;
}
#msOrder .option-card:has(input:checked) .option-card__check { opacity: 1; }

/* логотип / иконка */
#msOrder .option-card__media {
    height: 46px; /* Было 38px */
    width: 100%;
    display: flex; 
    align-items: center; 
    justify-content: center;
}
#msOrder .option-card__media img { 
    max-height: 46px; /* Было 38px */
    max-width: 95%; 
    object-fit: contain; 
}
#msOrder .option-card__icon { 
    width: 42px;  /* Было 34px */
    height: 42px; /* Было 34px */
    color: #5f6b7a; 
    stroke-width: 1.4; /* Сделали линии чуть тоньше для баланса */
}
#msOrder .option-card--row .option-card__icon { 
    width: 32px;  /* Было 28px */
    height: 32px; /* Было 28px */
}
#msOrder .option-card:has(input:checked) .option-card__icon { color: #007bff; }
#msOrder .option-card__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
#msOrder .option-card__name { 
    display: block;
    font-size: 15px; 
    font-weight: 500; 
    color: #1f2733; 
    line-height: 1.3; 
}

/* горизонтальная компоновка для оплаты */
#msOrder .option-card--row {
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 12px;
    padding: 14px 16px;
}
#msOrder .option-card--row .option-card__media { height: auto; }
#msOrder .option-card--row .option-card__name { flex: 1; }

/* панель описания выбранного варианта */
#msOrder .option-desc {
    margin-top: 14px;
    background: #f7f9fb;
    border-left: 3px solid #007bff;
    border-radius: 0 8px 8px 0;
    padding: 11px 14px;
    font-size: 12.5px; line-height: 1.5; color: #5f6b7a;
}
#msOrder .option-desc:empty { display: none; }
#msOrder .option-desc a { color: #007bff; }
/* подпись под названием карточки */
#msOrder .option-card__sub {
    font-size: 12px;
    color: #8a929c;
    line-height: 1.3;
    margin-top: 2px;
}
#msOrder .option-card--row .option-card__sub { margin-top: 3px; }

/* зелёный бейдж акции */
#msOrder .option-card__badge {
    display: inline-block;
    margin-top: 4px;
    font-size: 11px;
    font-weight: 500;
    color: #2e7d32;
    background: #e6f4e7;
    border-radius: 5px;
    padding: 2px 7px;
    line-height: 1.3;
}
/* горизонтальная карточка: иконка | колонка (название над подписью) */
#msOrder .option-card--row {
    padding-right: 40px;
    align-items: center;
}
#msOrder .option-card--row .option-card__text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.25;
}
#msOrder .option-card--row .option-card__name { display: block; }
#msOrder .option-card--row .option-card__sub,
#msOrder .option-card--row .option-card__badge {
    display: inline-block;
    margin-top: 3px;
}

/* --- Фикс для горизонтальных карточек (Оплата) --- */

/* Запрещаем контейнеру иконки растягиваться и выдавливать текст */
#msOrder .option-card--row .option-card__media {
    width: auto; 
    height: auto;
    flex-shrink: 0; 
}

/* Возвращаем тексту нормальное выравнивание по левому краю и даем место */
#msOrder .option-card--row .option-card__text {
    width: auto;
    flex: 1;
    align-items: flex-start; 
}

/* Увеличиваем сами SVG-иконки оплаты */
#msOrder .option-card--row .option-card__icon { 
    width: 38px;  /* Делаем крупнее (изначально было 24px) */
    height: 38px; 
    stroke-width: 1.4; /* Чуть тоньше линии для изящности */
}

/* Соединение двух классов (.pagetitle.custom-title) дает мощную специфичность. 
   Этот селектор гарантированно перебьет стандартные стили из коробки БЕЗ !important */
.pagetitle.custom-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 32px;
    color: #1f2733;
    text-align: center;
    letter-spacing: -0.5px;
    margin-top: 20px;
    margin-bottom: 40px;
}

#msOrder .ms2-form-title {
    font-family: 'Montserrat',
    font-size: 16px;                       
    font-weight: 600;
    color: #1f2733;                        
    letter-spacing: 0.1px;
    margin: 0 0 8px 0;
}
/* ===== Реквизиты юрлица ===== */
#msOrder .requisites-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
#msOrder .requisites-grid .form-group { margin: 0; }
#msOrder .requisites-grid .req-full { grid-column: 1 / -1; }
@media (max-width: 600px) {
    #msOrder .requisites-grid { grid-template-columns: 1fr; }
    #msOrder .requisites-grid .req-full { grid-column: auto; }
}
#msOrder .req-hint { display:block; margin-top:5px; font-size:12px; color:#9aa3ad; line-height:1.4; }
#msOrder .req-check { font-weight:400; font-size:13px; color:#5f6b7a; display:flex; align-items:center; gap:8px; margin:0; cursor:pointer; }
#msOrder .req-check input { margin:0; }

#msOrder .req-nds { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#msOrder .req-nds__label { font-size:14px; color:#5f6b7a; margin-right:4px; }
#msOrder .req-nds__opt { position:relative; margin:0; cursor:pointer; }
#msOrder .req-nds__opt input { position:absolute; opacity:0; }
#msOrder .req-nds__opt span {
    display:inline-block; padding:9px 22px; border:2px solid #e3e6ea; border-radius:10px;
    font-size:14px; font-weight:500; color:#5f6b7a; background:#fff; transition:all .15s;
}
#msOrder .req-nds__opt:hover span { border-color:#85b7eb; }
#msOrder .req-nds__opt input:checked + span {
    border-color:#007bff; background:#f0f6ff; color:#1f2733;
}

#msOrder .option-card:has(input:disabled) {
    opacity: .45;
    background: #f4f5f7;
    border-color: #e9ebee;
    cursor: not-allowed;
    pointer-events: none;
    filter: grayscale(100%);
}
#msOrder .option-card:has(input:disabled) .option-card__name,
#msOrder .option-card:has(input:disabled) .option-card__sub {
    color: #9aa3ad;
}

#msOrder .option-card:has(input:disabled):hover {
    border-color: #e9ebee;
}

#msOrder {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#msOrder input,
#msOrder textarea {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
}

#msOrder .order-total__nds {
    display: none;
    margin: 12px auto 0;
    max-width: 240px;
    border-radius: 10px;
    padding: 8px 14px;
    line-height: 1.3;
}
#msOrder .order-total__nds.show { display: block; }

#msOrder .order-total__nds.nds-yes {
    background: #fde8e8;
    border: 1px solid #f5c2c2;
}
#msOrder .order-total__nds.nds-yes .order-total__nds-main { color: #c0392b; }

#msOrder .order-total__nds.nds-no {
    background: #e6f4e7;
    border: 1px solid #bfe0c2;
}
#msOrder .order-total__nds.nds-no .order-total__nds-main { color: #2e7d32; }

#msOrder .order-total__nds-main { font-size: 15px; font-weight: 700; }
#msOrder .order-total__nds-sub  { font-size: 12px; color: #8a929c; margin-top: 2px; }
#msOrder .option-desc .route-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
    font-size: 13px;
    font-weight: 500;
    color: #007bff;
    text-decoration: none;
}
#msOrder .option-desc .route-link::before {
    content: "";
    width: 15px;
    height: 15px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%23007bff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}
#msOrder .option-desc .route-link:hover { text-decoration: underline; }
/* ===== Shake-эффект для невалидного поля ===== */
:root {
    --shake-distance: 6px;
    --shake-overshoot: 4px;
    --shake-dur-a: 80ms;
    --shake-dur-b: 60ms;
    --shake-ease: cubic-bezier(0.22, 1, 0.36, 1);
    --revert-dur: 280ms;
}
#msOrder #email { will-change: transform; }
#msOrder #email.is-error { border-color: #d9534f !important; }

/* сообщение об ошибке email */
#msOrder #email_wrap .t-error-msg {
    display: block;
    margin: 6px 2px 0;
    font-size: 13px;
    font-weight: 500;
    color: #d9534f;
    opacity: 0;
    visibility: hidden;
    transition:
        opacity var(--revert-dur) ease-out,
        visibility 0s linear var(--revert-dur);
}
#msOrder #email_wrap.is-error .t-error-msg {
    opacity: 1;
    visibility: visible;
    transition: opacity var(--revert-dur) ease-out, visibility 0s linear 0s;
}

#msOrder #email.is-shaking {
    animation: t-input-shake 320ms linear !important;
    position: relative;
}
@keyframes t-input-shake {
    0%   { left: 0;    animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    18%  { left: -6px; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    36%  { left: 5px;  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    54%  { left: -4px; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    72%  { left: 3px;  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    86%  { left: -2px; animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }
    100% { left: 0; }
}
/* успех: зелёная рамка на миг + галочка */
#msOrder #email.is-success {
    border-color: #2e7d32 !important;
    animation: t-input-success 600ms ease-out;
}
@keyframes t-input-success {
    0%   { border-color: #2e7d32; }
    100% { border-color: #ced4da; }
}
#msOrder #email_wrap { position: relative; }
#msOrder #email_wrap .t-success-check {
    position: absolute;
    right: 14px;
    top: 14px;
    width: 20px;
    height: 20px;
    opacity: 0;
    transform: scale(0.5);
    transition: opacity 200ms ease-out, transform 200ms cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events: none;
}
#msOrder #email_wrap.is-success .t-success-check {
    opacity: 1;
    transform: scale(1);
}
#msOrder #email_wrap .t-error-cross {
    position: absolute;
    right: 14px;
    top: 14px;
    width: 20px;
    height: 20px;
    opacity: 0;
    transform: scale(0.5);
    transition: opacity 200ms ease-out, transform 200ms cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events: none;
}
#msOrder #email_wrap.is-error .t-error-cross {
    opacity: 1;
    transform: scale(1);
}
.logo {
    max-width: 295px;
    flex-shrink: 0;
}

.logo img {
    max-width: 100%;
    height: auto;
}
/* Управление топ баром на мобильных */
@media (max-width: 991px) {
    .top-bar.fix-true.fixed {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: white !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
        transform: translateZ(0);
    }
    
    .top-bar.fix-true.fixed + .top-bar-push-md {
        height: 50px !important;
    }
    
    .mobile-menu {
        position: fixed;
        top: 50px !important;
        z-index: 9998 !important;
    }
}

@media (min-width: 992px) {
    .top-bar.fix-true.fixed {
        position: relative !important;
    }
    
    .top-bar.fix-true.fixed + .top-bar-push-md {
        display: none !important;
    }
}
/* Стили только для страницы «Возврат» (ID 3583) */
.id-3583 .content h2{font-size:1.5em;margin:1.4em 0 .4em;padding-top:.5em;border-top:1px solid #ececec}
.id-3583 .content h3{font-size:1.15em;margin:1.1em 0 .3em}
.id-3583 .content .note{background:#f6f7f9;border-left:4px solid #6b4ea8;padding:12px 16px;margin:1em 0;border-radius:0 6px 6px 0}
.id-3583 .content .note p{margin:0}
.id-3583 .content .legal{font-size:.92em;color:#555}
/* Для callback */
.hp-field {
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
/* Для карточки товара */
.sb-product-documents{padding:0 0 20px}
.sb-product-documents .sb-doc-group{margin:0 0 28px}
.sb-product-documents h3{margin:0 0 14px;font-size:19px;line-height:1.4}
.sb-product-documents .sb-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.sb-product-documents .sb-doc-card{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#252525;text-decoration:none;min-width:0;transition:border-color .2s,box-shadow .2s}
@media (hover:hover) and (pointer:fine){
.sb-product-documents .sb-doc-card:hover{border-color:#007bff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
}
.sb-product-documents .sb-doc-card:active{border-color:#007bff;box-shadow:0 3px 12px rgba(0,0,0,.06)}
.sb-product-documents .sb-doc-card:focus-visible{border-color:#007bff;outline:2px solid #007bff;outline-offset:3px}
.sb-product-documents .sb-doc-icon{display:flex;align-items:center;justify-content:center;flex:0 0 54px;height:64px;border-radius:8px;background:#fff3df;color:#9b5a00;font-size:17px;font-weight:700}
.sb-product-documents .sb-doc-preview{width:96px;height:96px;object-fit:contain;flex:0 0 96px}
.sb-product-documents .sb-doc-text{display:block;min-width:0}
.sb-product-documents .sb-doc-name{display:block;font-size:15px;font-weight:600;overflow-wrap:anywhere}
.sb-product-documents .sb-doc-hint{display:block;margin-top:7px;font-size:12px;color:#6b7280}
@media(max-width:480px){.sb-product-documents .sb-doc-grid{grid-template-columns:1fr}.sb-product-documents .sb-doc-card{padding:14px}.sb-product-documents .sb-doc-preview{width:72px;height:72px;flex-basis:72px}}
/* Документы о соответствии: карточки друг под другом */
.sb-product-documents .sb-doc-grid.sb-doc-grid--stacked {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
}

.sb-product-documents .sb-doc-grid--stacked > .sb-doc-card {
    width: 100%;
    min-width: 0;
    max-width: none;
    box-sizing: border-box;
}
/* Видео во вкладке карточки товара */
.product-detail .video-list { display: block; }
.video-list .sb-video-card {
    width: 100%;
    max-width: 900px;
    margin: 0 0 28px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
}
.video-list .sb-video-player {
    position: relative;
    aspect-ratio: 16 / 9;
    background: #111;
}
.video-list .sb-video-player video,
.video-list .sb-video-player iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: contain;
}
.video-list .sb-video-content { padding: 18px; }
.video-list .sb-video-title { margin: 0 0 10px; font-size: 20px; line-height: 1.4; }
.video-list .sb-video-description { margin-bottom: 12px; overflow-wrap: anywhere; }
.video-list .sb-video-source { color: #007bff; text-decoration: underline; }
.video-list .sb-video-source:focus-visible { outline: 2px solid #007bff; outline-offset: 4px; }