/* =========================================
   ВЕРХНІЙ РЯДОК (TOPBAR)
   ========================================= */

.container-topbar {
    background-color: #00376b;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    width: 100%;
}

/* Ставимо модуль з телефонами на ПЕРШЕ місце (зліва) */
.container-topbar .mod-custom {
    order: 1;
}
div#comjshop {
    margin-right: 30px;
}

/* Ставимо перемикач мов на ДРУГЕ місце (справа) */
.container-topbar .mod-languages {
    order: 2;
    margin: 0;
    padding: 0;
}

.top-phones {
    display: flex;
    gap: 25px;
}

.top-phones a {
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 500;
    font-size: 16px;
    transition: color 0.3s ease;
}

.top-phones a:hover {
    color: #ffb800 !important; 
}
/* =========================================
   БІЛА ШАПКА 
   ========================================= */
header.container-header {
    background-color: #ffffff !important;
    background-image: none !important;
    border-bottom: 3px solid #00376b;
    padding-bottom: 10px;
}

/* =========================================
   ЄДИНИЙ РЯДОК: ЛОГО + ПОШУК + КОШИК (Позиція search)
   ========================================= */
.container-search {
    display: flex !important;
    align-items: center !important;
    width: 100%;
    gap: 30px; /* Відстань між пошуком, серцем і кошиком */
}

/* 1. Зменшуємо логотип в 2 рази (був 150px) */
.custom-logo img {
    max-width: 200px !important; 
    height: auto;
}

/* 2. Залізно відштовхуємо логотип вліво, а всі інші блоки полетять вправо */
.custom-logo {
    margin-right: auto !important;
}

/* Знімаємо зайві відступи з форми пошуку */
.container-search form {
    margin: 0;
    display: flex;
}

/* =========================================
   ГОЛОВНЕ ГОРИЗОНТАЛЬНЕ МЕНЮ
   ========================================= */
.container-menu {
    background-color: #ffffff !important;
    border-bottom: 3px solid #00376b !important;
    padding: 5px 0 !important;
}

/* Стиль посилань у десктопній версії */
.container-menu .navbar-nav a, .container-header .mod-menu>li>a, .container-header .mod-menu>li>span  {
    color: #00376b !important;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 14px;
    padding: 10px 15px !important;
    transition: color 0.3s ease;
}

.container-menu .navbar-nav a:hover, .container-header .mod-menu>li>a:hover, .container-header .mod-menu>li>span  {
    color: #ffb800 !important;
}

/* Стиль кнопки-бутерброда на мобільних */
.container-menu .navbar-toggler {
    border-color: #00376b !important;
    color: #00376b !important;
    margin: 5px;
}

/* =========================================
   СТИЛІЗАЦІЯ МОДУЛЯ КАТЕГОРІЙ (JoomShopping - ДИЗАЙН 2 ФАРИ)
   ========================================= */
/* Робимо фірмовий жовтий заголовок для модуля категорій */
#sidebar-left .moduletable h3,
#sidebar-right .moduletable h3 {
    background-color: #ffb800 !important; /* Жовтий фон */
    color: #00376b !important; /* Синій текст */
    padding: 10px 15px !important;
    margin: 0;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-align: center; /* Центруємо текст */
}

/* Оформлення самих посилань у списку категорій */
#sidebar-left .moduletable ul,
#sidebar-right .moduletable ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#sidebar-left .moduletable li a,
#sidebar-right .moduletable li a {
    display: block;
    padding: 6px 15px;
    color: #00376b !important;
    text-decoration: none;
    font-weight: 500;
    border-bottom: 1px solid #eef2f7;
    transition: background 0.2s ease;
}

/* Ефект при наведенні на категорію */
#sidebar-left .moduletable li a:hover,
#sidebar-right .moduletable li a:hover {
    background-color: #f0f4fb;
    color: #ffb800 !important;
}
/* =========================================
   МЕНЮ КАТЕГОРІЙ JOOMSHOPPING (Виправлена сітка)
   ========================================= */

/* 1. Скидаємо жорстку ширину колонки, щоб вона не вилазила за екран */
.container-sidebar-left {
    min-width: 0 !important; 
}

/* Фіксуємо ширину самої карточки модуля (всередині колонки) */
.container-sidebar-left .card,
.container-sidebar-right .card {
    min-width: 240px;
    width: 100%;
}

.container-sidebar-left .card-body,
.container-sidebar-right .card-body {
    padding: 0;
    border: 1px solid #e0e0e0 !important; /* Змінено на світло-сіру рамку */
    border-top: none !important;
    margin-right: 20px;
}

/* 2. ВБИВАЄМО вбудовані відступи JoomShopping (він додає margin прямо в HTML) */
div[class^="jshop_menu_level_"] {
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
}

/* 3. РОЗУМНИЙ СЕЛЕКТОР ДЛЯ ВСІХ РІВНІВ */
div[class^="jshop_menu_level_"] > a {
    display: flex !important;
    justify-content: space-between; 
    align-items: center;
    color: #0056b3 !important; /* Трохи світліший синій */
    text-decoration: none;
    font-weight: 500;
    transition: background 0.2s ease, color 0.2s ease;
    
    font-size: 13px !important; /* Зменшуємо базовий шрифт */
    line-height: 1.2 !important;
    
    /* Дозволяємо нормальний перенос довгих слів і забороняємо стискати текст */
    white-space: normal !important; 
    word-break: normal !important; 
    box-sizing: border-box;
}

/* 4. ДОДАЄМО СТРІЛОЧКУ ДО ВСІХ РІВНІВ */
div[class^="jshop_menu_level_"] > a::after {
    content: "\276F"; 
    font-size: 11px;
    color: inherit;
    transition: transform 0.3s ease;
    margin-left: 10px;
    flex-shrink: 0; /* Гарантує, що стрілочка ніколи не сплюснеться */
}

/* ПОВЕРТАЄМО СТРІЛОЧКУ ВНИЗ ДЛЯ ВІДКРИТИХ ПУНКТІВ */
div[class$="_a"] > a::after {
    transform: rotate(90deg);
}

/* =========================================
   НАЛАШТУВАННЯ ВІДСТУПІВ ДЛЯ КОЖНОГО РІВНЯ (КОМПАКТНІ)
   ========================================= */

/* ГОЛОВНИЙ РІВЕНЬ (Бампера, Капоти) */
.jshop_menu_level_0 > a,
.jshop_menu_level_0_a > a {
    padding: 6px 15px !important; /* Суттєво зменшено відступи */
    border-bottom: 1px solid #f0f0f0 !important;
}

/* РІВЕНЬ 1 (Марки авто: AUDI, BMW) */
.jshop_menu_level_1 > a,
.jshop_menu_level_1_a > a {
    padding: 4px 15px 4px 20px !important; /* Відступ зліва 20px */
    font-weight: 400 !important;
    background-color: #ffffff !important;
    border-bottom: 1px dotted #eaeaea !important; /* Легка пунктирна лінія */
}

/* РІВЕНЬ 2 і ДАЛІ (Моделі авто: 100, 80, A4, седан...) */
.jshop_menu_level_2 > a,
.jshop_menu_level_2_a > a,
.jshop_menu_level_3 > a,
.jshop_menu_level_3_a > a {
    padding: 3px 15px 3px 30px !important; /* Мінімальні відступи, зліва 30px */
    font-size: 12.5px !important; 
    font-weight: 400 !important;
    background-color: #ffffff !important;
    border-bottom: 1px dotted #eaeaea !important;
}

/* Прибираємо лінію в останнього елемента */
div[class^="jshop_menu_level_"]:last-child > a {
    border-bottom: none !important;
}

/* ЕФЕКТ ПРИ НАВЕДЕННІ (Спрацьовує для всіх рівнів) */
div[class^="jshop_menu_level_"] > a:hover {
    background-color: #f0f4fb !important;
    color: #ffb800 !important;
}
/* =========================================
   ВІДСТУП КОЛОНКИ ВІД КРАЮ ЕКРАНА
   ========================================= */
body.has-sidebar-left .site-grid > .container-sidebar-left {
    margin-left: 10px !important;
}

/* =========================================
   АДАПТИВНІСТЬ ТА ЖОРСТКИЙ КАРКАС СІТКИ (Grid Areas)
   ========================================= */

/* 2. ДЛЯ КОМП'ЮТЕРІВ ТА НОУТБУКІВ (Екрани БІЛЬШЕ 992px) */
@media (min-width: 992px) {
    /* Ховаємо праву колонку-дублер */
    .container-sidebar-right {
        display: none !important;
    }

    /* ЗАЛІЗОБЕТОННИЙ КАРКАС ЗОН (Grid Areas) */
    /* Жоден блок більше не спливе у порожнє місце, бо ми малюємо карту сайту словами */
    body.has-sidebar-left .site-grid {
        display: grid !important;
        grid-template-columns: 280px 1fr !important;
        grid-template-areas:
            "banner banner"
            "top-a top-a"
            "top-b top-b"
            "side-l comp"
            "bot-a bot-a"
            "bot-b bot-b" !important;
        gap: 5px !important;
    }

    /* Макет для сторінок БЕЗ лівої колонки (наприклад, Кошик або Оформлення замовлення) */
    body:not(.has-sidebar-left) .site-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "banner"
            "top-a"
            "top-b"
            "comp"
            "bot-a"
            "bot-b" !important;
        gap: 30px !important;
    }
}


/* =========================================
   РОЗТЯГУЄМО БЛОКИ НА ВСЮ ШИРИНУ ЕКРАНА
   ========================================= */
/* Змушуємо блоки "bottom-a" та "footer" пробити сітку Cassiopeia і зайняти 100% ширини */
.site-grid > .container-bottom-a,
.site-grid > .container-footer {
    grid-column: 1 / -1 !important;
}

/* =========================================
   БЛОК ПЕРЕВАГ (bottom-a)
   ========================================= */
.container-bottom-a {
    background-color: #ffffff !important; /* Гарантуємо білий фон на всю ширину */
}

.shop-advantages {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 50px;
    padding: 40px 15px;
    width: 100%;
    
    /* ТРИМАЄМО КОНТЕНТ ПО ЦЕНТРУ */
    max-width: 1320px; /* Контент не буде розповзатися по краях на величезних моніторах */
    margin: 0 auto; 
    
}

.adv-item {
    display: flex;
    align-items: center;
    gap: 15px;
    
}

.adv-item img {
    width: 55px; 
    height: auto;
}

.adv-item span {
    color: #00376b;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.4;
}

/* =========================================
   ТЕМНИЙ ФУТЕР (Позиція footer)
   ========================================= */
footer.container-footer {
    background-color: #03082a !important; /* Глибокий темно-синій колір (як на оригіналі) */
    background-image: none !important; /* Вбиваємо системні градієнти Cassiopeia */
    padding: 30px 0 !important; 
    margin: 0 !important;
    border: none !important; /* Прибрали лінію зверху */
}

.custom-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    
    /* ТРИМАЄМО КОНТЕНТ ПО ЦЕНТРУ */
    max-width: 1320px; 
    margin: 0 auto;
    padding: 0 20px;
    gap: 30px;
}

/* Ліва частина: Лого і телефони */
.footer-contacts {
    display: flex;
    align-items: center;
    gap: 20px;
}

.footer-logo {
    max-width: 110px;
}

.footer-phones {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.footer-phones a {
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.2s ease;
}

.footer-phones a:hover {
    color: #ffb800;
}

/* Центральна частина: Посилання */
.footer-links {
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
    justify-content: center;
}

.footer-links a {
    color: #ffb800; 
    text-decoration: none;
    font-size: 15px;
    transition: color 0.2s ease;
}

.footer-links a:hover {
    color: #ffffff;
}

/* Права частина: Іконки */
.footer-social img {
    max-height: 35px;
    width: auto;
}

/* АДАПТИВНІСТЬ ФУТЕРА ДЛЯ МОБІЛЬНИХ (менше 768px) */
@media (max-width: 767.98px) {
    .custom-footer {
        flex-direction: column;
        text-align: center;
    }
    
    .footer-contacts {
        flex-direction: column;
    }
    
    .footer-links {
        flex-direction: column;
        gap: 15px;
    }
    
    .shop-advantages {
        flex-direction: column;
        gap: 30px;
    }
}
/* =========================================
   ЄДИНА СІТКА ТОВАРІВ (ФІНАЛЬНИЙ РЕЗУЛЬТАТ)
   ========================================= */

/* 1. Робимо головні контейнери та ряди гнучкими (Flex) */
.jshop_list_product,
.jshop_list_product .row-fluid,
.jshop_list_product .row {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Примусово знищуємо "костилі" Bootstrap, які розривають ряди */
.jshop_list_product::before, 
.jshop_list_product::after,
.jshop_list_product .row-fluid::before, 
.jshop_list_product .row-fluid::after,
.jshop_list_product .row::before, 
.jshop_list_product .row::after {
    display: none !important;
    content: none !important;
}

/* Знищуємо системні переноси рядків */
.jshop_list_product .w-100, 
.jshop_list_product .clearfix, 
.jshop_list_product .clear {
    display: none !important;
}

/* 2. Картки товарів (Колонки): Рівно 3 в ряд */
/* .block_item - для модулів, .sblock - для категорій */
.jshop_list_product .block_item,
.jshop_list_product > div[class*="sblock"],
.jshop_list_product .row-fluid > div[class*="sblock"],
.jshop_list_product .row > div[class*="sblock"] {
    width: calc(33.333% - 20px) !important; /* 3 товари мінус відступи */
    flex: 0 0 calc(33.333% - 20px) !important;
    margin: 10px !important; /* Робимо рівномірні відступи 10px з усіх боків */
    float: none !important;
    
    /* Дизайн картки */
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    background: #fff !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    transition: box-shadow 0.3s ease;
}

/* Знімаємо внутрішні рамки (щоб не було подвійних рамок) */
.jshop_list_product div[class*="sblock"] .block_product {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Тінь при наведенні мишки */
.jshop_list_product .block_item:hover,
.jshop_list_product > div[class*="sblock"]:hover,
.jshop_list_product .row-fluid > div[class*="sblock"]:hover,
.jshop_list_product .row > div[class*="sblock"]:hover {
    box-shadow: 0 5px 15px rgba(0,0,0,0.15) !important;
}

/* 3. Картинки: однакова висота */
.jshop_list_product .image_block {
    height: 200px !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 15px !important;
    width: 100% !important;
}

.jshop_list_product .image_block img {
    max-height: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important; 
}

/* 4. Назва товару: жорстко 3 рядки */
.jshop_list_product .name,
.jshop_list_product .name a {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important; 
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important; 
    min-height: calc(1.4em * 3) !important; 
    line-height: 1.4em !important;
    margin-bottom: 10px !important;
    font-weight: bold !important;
    text-align: center !important;
}

/* 5. Опис та Атрибути */
.jshop_list_product .description,
.jshop_list_product .extra_fields,
.jshop_list_product .jshop_cart_attribute,
.jshop_list_product .basic_price {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: calc(1.4em * 3) !important;
    line-height: 1.4em !important;
    margin-bottom: 15px !important;
    font-size: 14px !important;
    color: #555 !important;
    text-align: center !important;
}

.jshop_list_product .jshop_price {
    text-align: center !important;
    margin-bottom: 15px !important;
}

/* 6. Кнопки: в самий низ */
.jshop_list_product .buttons {
    margin-top: auto !important;
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* ================= АДАПТИВНІСТЬ ================= */
@media (max-width: 767px) {
    .jshop_list_product .block_item,
    .jshop_list_product > div[class*="sblock"],
    .jshop_list_product .row-fluid > div[class*="sblock"],
    .jshop_list_product .row > div[class*="sblock"] {
        width: calc(100% - 20px) !important;
        flex: 0 0 calc(100% - 20px) !important;
    } 
    .container-nav .navbar {
        margin-bottom: 0 !important;
        padding: 0 !important;
        min-height: 0 !important; /* Знищуємо системну висоту Bootstrap */
    }
    .container-header .container-nav nav {
        margin-top: 0 !important; /* МАГІЯ: Знищуємо фіолетову зону зі скріншота */
        margin-bottom: 0 !important;
        padding: 5px 0 !important;
        min-height: 0 !important;
        display: flex !important;
        justify-content: center !important; /* Ставимо кнопку меню по центру */
        width: 100% !important;
    }

    /* Робимо кнопку красивою, солідною і помітною */
    .navbar-toggler {
        display: flex !important;
        align-items: center !important;
        background-color: #003366 !important; /* Темно-синя кнопка */
        color: #ffffff !important;
        border: none !important;
        border-radius: 5px !important;
        padding: 8px 20px !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2) !important;
    }

    /* Фарбуємо три полосочки (іконку) в білий */
    .navbar-toggler .icon-menu,
    .navbar-toggler .icon-menu::before {
        color: #ffffff !important;
    }

    /* Додаємо напис МЕНЮ поруч з іконкою для зручності клієнтів */
    .navbar-toggler::after {
        content: "МЕНЮ";
        margin-left: 10px;
        font-weight: bold;
        font-size: 14px;
        color: #ffffff !important;
    }
    
    /* Робимо так, щоб розгорнуте меню на мобільному виглядало охайно */
    .container-nav .navbar-collapse {
        background: #f8f9fa !important;
        border-radius: 5px !important;
        margin-top: 10px !important;
        padding: 10px !important;
        width: 100% !important;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .jshop_list_product .block_item,
    .jshop_list_product > div[class*="sblock"],
    .jshop_list_product .row-fluid > div[class*="sblock"],
    .jshop_list_product .row > div[class*="sblock"] {
        width: calc(50% - 20px) !important;
        flex: 0 0 calc(50% - 20px) !important;
    }
}

span#mxcpr {
    display: none;
}

/* =========================================
   ПОВНИЙ РЕДИЗАЙН ШАПКИ (КОМПАКТНА ВЕРСІЯ + МЕНЮ СПРАВА)
   ========================================= */

/* 1. Прибираємо системні тіні, та зменшуємо відступ над шапкою */
header.header {
    box-shadow: none !important;
    background-image: none !important;
    border-bottom: none !important;
    padding-top: 0 !important;
}
.container-topbar {
    border-bottom: 1px solid #eee;
    padding: 2px 0 !important; /* Робимо верхній рядок з телефонами дуже вузьким */
}

/* 2. Контейнер, який містить і Меню, і Пошук */
.grid-child.container-nav {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
}

/* 3. Блок з Логотипом, Пошуком і Кошиком (НАГОРУ) */
.container-nav .container-search {
    order: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px 0 !important; /* БУЛО 20px, стало 10px */
    flex-wrap: wrap !important;
    width: 100% !important;
}

/* 4. Блок з Меню (ВНИЗ) */
.container-nav .navbar {
    order: 2 !important;
    width: 100% !important;
    border-bottom: 4px solid #003366 !important; /* Єдина синя лінія */
    padding: 0 !important;
    margin-bottom: 5px !important; /* БУЛО 20px, стало 5px (відступ від шапки до крихт) */
}

/* 5. ГОЛОВНЕ МЕНЮ (Тепер СПРАВА і компактніше) */
.container-nav .navbar-collapse {
    justify-content: flex-end !important; /* МАГІЯ: Меню притискається вправо */
}
.container-nav .metismenu-item > a {
    color: #003366 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    padding: 10px 15px !important; /* Зменшили висоту пунктів меню */
}
.container-nav .metismenu-item > a:hover {
    color: #ffb400 !important;
}

/* 6. РЯДОК ПОШУКУ */
.mod-shop-search {
    flex-grow: 1 !important;
    max-width: 500px !important;
    margin: 0 30px !important;
    border-right: 1px dotted #ccc !important;
    padding-right: 20px !important;
}
.mod-shop-search > div { display: flex !important; width: 100% !important; }
.mod-shop-search input[type="text"] {
    border: 1px solid #ccc !important;
    border-right: none !important;
    border-radius: 0 !important;
    padding: 10px 15px !important;
    width: 100% !important;
    height: 45px !important;
    box-sizing: border-box !important;
    outline: none !important;
}
.mod-shop-search input[type="submit"] {
    background-color: #ffb400 !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="white" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 20px !important;
    border: 1px solid #ffb400 !important;
    border-radius: 0 !important;
    width: 55px !important;
    height: 45px !important;
    color: transparent !important;
    cursor: pointer !important;
    transition: opacity 0.3s !important;
}
.mod-shop-search input[type="submit"]:hover { opacity: 0.8 !important; }

/* 7. КОШИК ТА СПИСОК БАЖАНЬ */
#jshop_module_cart, #jshop_module_wishlist {
    display: flex !important;
    align-items: center !important;
}
#jshop_module_wishlist {
    border-right: 1px dotted #ccc !important;
    padding-right: 20px !important;
    margin-right: 15px !important;
}
#jshop_module_cart table, #jshop_module_wishlist table,
#jshop_module_cart tbody, #jshop_module_wishlist tbody {
    display: flex !important;
    align-items: center !important;
}
#jshop_module_cart tr, #jshop_module_wishlist tr {
    display: flex !important;
    flex-direction: column !important;
}
#jshop_module_cart tr:first-child td:first-child,
#jshop_module_wishlist tr:first-child td:first-child {
    font-size: 0 !important; 
    position: relative !important;
    display: block !important;
}
#jshop_module_cart tr:first-child td:nth-child(2),
#jshop_module_wishlist tr:first-child td:nth-child(2) { display: none !important; }
#jshop_module_cart tr:first-child td:first-child::before {
    content: "" !important;
    display: inline-block !important;
    width: 35px !important;
    height: 35px !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="%23ffb400" d="M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.299-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}
#jshop_module_wishlist tr:first-child td:first-child::before {
    content: "" !important;
    display: inline-block !important;
    width: 35px !important;
    height: 35px !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23ffb400" d="M462.3 62.6C407.5 15.9 326 24.3 275.7 76.2L256 96.5l-19.7-20.3C186.1 24.3 104.5 15.9 49.7 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}
#jshop_quantity_products {
    background-color: #003366 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: bold !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: -5px !important;
    right: -10px !important;
}
#jshop_module_cart tr:last-child td a,
#jshop_module_wishlist tr:last-child td a {
    color: #4488ff !important;
    font-size: 14px !important;
    text-decoration: none !important;
    margin-left: 15px !important;
}
#jshop_summ_product {
    font-size: 14px !important;
    color: #555 !important;
    margin-left: 10px !important;
}

/* =========================================
   8. СТИСКАЄМО ВІДСТУПИ ХЛІБНИХ КРИХТ ТА КОНТЕНТУ
   ========================================= */

/* Зменшуємо розрив (gap) між модулями у загальній сітці шаблону (стандартно там близько 30px) */
.site-grid {
    gap: 15px !important; 
}

/* Зменшуємо зовнішні відступи самого блоку з хлібними крихтами */
.grid-child.container-breadcrumb {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    margin-bottom: 0 !important;
}

/* Зменшуємо відступи всередині самої панельки хлібних крихт */
.mod-breadcrumbs, .breadcrumb {
    margin-bottom: 0 !important;
    padding: 5px 15px !important;
}

/* Підтягуємо основний контент (товари) вище до хлібних крихт */
.grid-child.container-component {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* =========================================
   КОМПАКТНИЙ КАРКАС САЙТУ (Зменшення "сірєнєвих" відступів)
   ========================================= */

/* 1. Стискаємо головну сітку шаблону */
.site-grid {
    /* Зменшуємо вертикальні відступи (ті самі фіолетові зони між рядами) */
    row-gap: 10px !important; 
    
    /* Горизонтальний відступ між лівим меню (сайдбаром) і товарами залишаємо комфортним */
    column-gap: 10px !important; 
    
    /* Зменшуємо відступ від шапки до початку самого сайту */
    margin-top: 5px !important; 
    margin-bottom: 5px !important;
}

/* 2. Прибираємо зайві системні "подушки" всередині модульних блоків */
.grid-child.container-top-a,
.grid-child.container-top-b,
.grid-child.container-bottom-a,
.grid-child.container-bottom-b {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* 3. Додатково підтягуємо контент до хлібних крихт */
.grid-child.container-component {
    padding-top: 0 !important;
}
.card-body {
    padding: 0px;
}

/* =========================================
   ПРИБИРАЄМО ВІДСТУПИ НАД САЙДБАРОМ ТА КОНТЕНТОМ
   ========================================= */

/* 1. Повністю прибираємо верхній відступ у головного каркаса сайту */
.site-grid {
    margin-top: 5px !important; /* Залишаємо мікро-щілину, щоб не прилипало до лінії, або ставте 0 */
    padding-top: 0 !important;
}

/* 2. Прибираємо внутрішні відступи у лівої колонки (Сайдбару) та Правої (Товарів) */
.grid-child.container-sidebar-left,
.grid-child.container-component {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* 3. Страхуємося від відступів самих карток та блоку магазину */
.sidebar-left.card {
    margin-top: 0 !important;
}

#comjshop,
.shophead {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.grid-child.container-component {
    padding: 5px;
}
/* =========================================
   КОРЕКЦІЯ: ШИРОКИЙ ПОШУК ТА МЕНЮ СПРАВА
   ========================================= */

/* 1. Знімаємо жорсткі ліміти з пошуку (робимо його набагато ширшим) */
.mod-shop-search {
    max-width: 700px !important; /* Було 500px. Тепер він розтягнеться на скільки дозволить екран */
}

/* 2. Примусово штовхаємо всі пункти меню вправо */
.container-nav .navbar-collapse > ul.mod-menu {
    display: flex !important;
    width: 100% !important;
    justify-content: flex-end !important; /* МАГІЯ: притискає елементи до правого краю */
    margin: 0 !important;
}

/* На всякий випадок страхуємо відступ від правого краю екрану */
.container-nav .metismenu-item:last-child > a {
    padding-right: 0 !important; 
}
/* =========================================
   РОЗТЯГУЄМО САМЕ ПОЛЕ ПОШУКУ
   ========================================= */

/* Змушуємо внутрішній div (обгортку поля) рости на всі 100% вільного місця */
.mod-shop-search > div > div:first-child {
    flex-grow: 1 !important;
    width: 100% !important;
}
.metismenu.mod-menu .metismenu-item {
    padding: 2px;
}
/* =========================================
   МОБІЛЬНА ВЕРСІЯ ШАПКИ (МЕНШІ ЛОГО ТА ПОШУК)
   ========================================= */

@media (max-width: 767px) {
    /* 1. Робимо шапку ще щільнішою */
    .container-nav .container-search {
        padding: 5px 10px !important; 
    }

    /* 2. Зменшуємо Логотип */
    .custom-logo img {
        width: 100px !important; /* Було 150px. Можете зробити 100px, якщо треба ще менше */
        height: auto !important;
    }

    /* 3. Зменшуємо Пошук (висоту, іконку та відступи) */
    .mod-shop-search {
        margin: 10px 0 !important; /* Прибираємо великі бокові відступи */
        border-right: none !important; /* На мобільному вертикальна лінія не потрібна */
        padding-right: 0 !important;
        width: 100% !important; /* Дозволяємо пошуку зайняти всю доступну ширину */
        order: 3 !important; /* Опускаємо пошук гарненько під логотип і кошик */
    }
    
    .mod-shop-search input[type="text"] {
        height: 38px !important; /* Робимо поле вужчим по висоті */
        padding: 5px 10px !important;
        font-size: 14px !important;
    }
    
    .mod-shop-search input[type="submit"] {
        height: 38px !important; 
        width: 45px !important; /* Зменшуємо саму жовту кнопку */
        background-size: 16px !important; /* Зменшуємо векторну лупу всередині */
    }

    /* 4. Пропорційно зменшуємо іконки Кошика та Списку бажань */
    #jshop_module_cart tr:first-child td:first-child::before,
    #jshop_module_wishlist tr:first-child td:first-child::before {
        width: 28px !important; /* Було 35px */
        height: 28px !important;
    }

    /* Зменшуємо синій кружечок з кількістю */
    #jshop_quantity_products {
        width: 16px !important;
        height: 16px !important;
        font-size: 10px !important;
        top: -4px !important;
        right: -6px !important;
    }

    /* 5. Ховаємо текст "Ваш кошик", залишаємо тільки суму (для економії місця) */
    #jshop_module_cart tr:last-child td a,
    #jshop_module_wishlist tr:last-child td a {
        display: none !important;
    }
    #jshop_summ_product {
        font-size: 13px !important;
        font-weight: bold;
        margin-left: 5px !important;
    }
}
/* =========================================
   ДИЗАЙН КНОПОК "ДЕТАЛЬНІШЕ" (.btn-primary)
   ========================================= */

/* Основний стан: фірмовий темно-синій колір */
.jshop_list_product .buttons .btn-primary,
.btn-primary {
    background-color: #003366 !important; 
    border-color: #003366 !important;
    color: #ffffff !important; /* Білий текст */
    transition: all 0.3s ease !important; /* Плавна зміна кольору */
}

/* Стан при наведенні мишки: фірмовий жовтий колір */
.jshop_list_product .buttons .btn-primary:hover,
.btn-primary:hover {
    background-color: #ffb400 !important; 
    border-color: #ffb400 !important;
    color: #003366 !important; /* Темно-синій текст для гарного контрасту на жовтому */
    box-shadow: 0 4px 10px rgba(255, 180, 0, 0.4) !important; /* Легке жовте світіння */
}

/* =========================================
   ФІНАЛЬНИЙ РЕДИЗАЙН CHECKOUT (СУВОРЕ ВИРІВНЮВАННЯ)
   ========================================= */

/* 1. Додаємо заголовок лише один раз для головної форми */
#comjshop > form:first-of-type::before {
    content: "Оформлення замовлення" !important;
    display: block !important;
    font-size: 28px !important;
    font-weight: bold !important;
    color: #003366 !important;
    margin-bottom: 25px !important;
    border-bottom: 3px solid #ffb400 !important;
    padding-bottom: 10px !important;
    grid-column: span 2 !important; /* Розтягуємо заголовок на обидві колонки */
}

/* 2. Змушуємо форму використовувати Grid для колонок */
#comjshop > form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important; /* Дві рівні колонки */
    gap: 30px !important;
    align-items: start !important;
}

/* 3. Примусово вирівнюємо всі прямі дочірні блоки форми в колонки */
#comjshop > form > div,
#comjshop > form > table {
    grid-column: span 1 !important; /* Кожен блок займає свою колонку */
    background: #f8f9fa !important;
    padding: 20px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
}

/* 4. Мобільна версія: 1 колонка */
@media (max-width: 767px) {
    #comjshop > form {
        grid-template-columns: 1fr !important;
    }
    #comjshop > form:first-of-type::before {
        grid-column: span 1 !important;
    }
    #comjshop > form > div,
    #comjshop > form > table {
        grid-column: span 1 !important;
    }
}

/* 5. Стилі полів вводу (для компактності) */
#comjshop input[type="text"],
#comjshop input.inputbox {
    width: 100% !important;
    padding: 10px !important;
    margin-bottom: 10px !important;
    border: 1px solid #ccc !important;
}
/* =========================================
   ФІНАЛЬНИЙ ВАРІАНТ: 2 КОЛОНКИ НА CHECKOUT
   ========================================= */


/* Форма в 2 колонки */
#comjshop form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

/* Примусово розтягуємо всі блоки всередині форми до 48% ширини */
#comjshop form > div, 
#comjshop form > table, 
#comjshop form > fieldset {
    flex: 0 0 48% !important;
    box-sizing: border-box !important;
    background: #f8f9fa !important;
    padding: 15px !important;
    border: 1px solid #ddd !important;
    border-radius: 5px !important;
}

/* На мобільних - повертаємо в 1 колонку */
@media (max-width: 767px) {
    #comjshop form > div, 
    #comjshop form > table, 
    #comjshop form > fieldset {
        flex: 0 0 100% !important;
    }
}

.jshop.address_block.max-500, .jshop.checkout_shipping_block {
    float: left;
    margin: 0 20px;
}

.pfinish_comment_block {
    float: inline-start;
}

/* =========================================
   МОБІЛЬНА ВЕРСІЯ: ЛОГІКА САЙДБАРУ (КАТЕГОРІЙ)
   ========================================= */
@media (max-width: 991.98px) {
    
    /* 1. Примусово показуємо ліву колонку */
    .container-sidebar-left {
        display: block !important;
    }

    /* 2. Переводимо каркас сайту у Flexbox для слухняного сортування блоків */
    body.has-sidebar-left .site-grid {
        display: flex !important;
        flex-direction: column !important;
    }

    /* 3. БАЗОВЕ ПРАВИЛО (ДЛЯ ВСІХ СТОРІНОК): Контент зверху, Сайдбар знизу */
    .site-grid > .container-component {
        order: 1 !important;
    }
    .site-grid > .container-sidebar-left {
        order: 2 !important;
        width: 100% !important;
        margin-top: 30px !important;
        margin-bottom: 30px !important;
        margin-left: 0 !important; /* Прибираємо десктопний відступ */
    }

    /* 4. ВИКЛЮЧЕННЯ (ДЛЯ ГОЛОВНОЇ СТОРІНКИ) */
    /* УВАГА: Замініть 127 на реальний ID вашої Головної сторінки в меню */
    body.itemid-127 .site-grid > .container-sidebar-left {
        order: 1 !important; /* На головній - сайдбар стає ПЕРЕД контентом */
        margin-top: 0 !important;
    }
    body.itemid-127 .site-grid > .container-component {
        order: 2 !important; /* На головній - контент опускається ПІД сайдбар */
    }
}