@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');
/* Плавний скрол до якорів */
html {
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
}
body {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;;
    -webkit-font-smoothing: antialiased !important; /* Робить шрифт м'якшим на вигляд */
    background-color: #f8f9fa;
}
/* Якщо ви додаєте клас до body при відкритті (рекомендовано) */
.no-scroll {
    overflow: hidden;         /* Блокує прокрутку на ПК */
    touch-action: none;       /* Блокує прокрутку пальцем на мобільних */
    -webkit-overflow-scrolling: none; 
}
/* Прибираємо стрілочки для Chrome, Safari, Edge, Opera */
.ms2_form .input-group input[type=number]::-webkit-outer-spin-button,
.ms2_form .input-group input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
/* Прибираємо стрілочки для Firefox */
.ms2_form .input-group input[type=number] {
    -moz-appearance: textfield;
}
/* Додатково: вимикаємо виділення при фокусі, щоб інпут виглядав як статичний текст */
.ms2_form .input-group input.count-input:focus {
    outline: none;
    box-shadow: none;
    background-color: #fff; /* або колір вашого фону */
}
/* Базовий контейнер */
.tabled-data {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}
.tabled-data li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 12px;
    position: relative;
    overflow: hidden;
}
/* Пунктирна лінія між назвою та значенням */
.tabled-data li::after {
    content: "";
    flex-grow: 1;
    order: 2;
    margin: 0 10px;
    border-bottom: 1px dotted #ccc; /* Світлий колір для білої теми */
    position: relative;
    top: -4px;
}
/* Назва (ліва частина) */
.tabled-data label {
    order: 1;
    font-weight: 600;
    color: #555;
    margin: 0;
    white-space: nowrap;
    font-size: 14px;
}
/* Значення (права частина) */
.tabled-data .value {
    order: 3;
    font-weight: 500;
    color: #000;
    text-align: right;
    font-size: 14px;
}
.flip-horizontal {
    transform: scaleX(-1);
    display: inline-block; /* Обов'язково для роботи трансформації */
}
.-toggle::after {
    border:0 !important;
}
/* Забираємо підсвітку поля*/
.search-box .form-control:focus {
    border-color: #dee2e6; /* Залиште колір рамки як у звичайного поля (або свій колір) */
    box-shadow: none;      /* Саме це прибирає синє свічення */
    outline: 0;            /* Про всяк випадок для старих браузерів */
}
/* Робимо курсор вказівником для всього блоку */
/* Прибираємо фон і рамки у кнопки перемикача */
.dropdown-toggle {
    background: transparent !important;
    font-weight: 600;
    padding-right: 10px;
}
.dropdown-toggle::after {
    border:0 !important;   
}
/* Стиль самого випадаючого списку */
 .dropdown-menu.dropdown-menu-end {
    min-width: 60px; /* Робимо вузьким */
    border: none;
    border-radius: 8px;
    z-index: 99999; /* Вище за sticky-top (1020) */
}
.dropdown-menu-end {
    margin-right: 10px !important;
}
.-item:active {
    background-color: #ddd !important;
}
.btn-info {
    font-size: 14px !important;    /* Дуже компактний текст */
    text-transform: uppercase;      /* Опціонально: капс краще читається в малому розмірі */
    letter-spacing: 0.3px;
        /* Колір та текст */
    background-color: #59B210 !important;
    color: #ffffff !important;
    /* Форма та відступи (замість py-3 та rounded-3) */
    border-radius: 12px !important;
    border: none !important;
    
    /* Шрифт (замість fw-bold) */
    font-weight: 700 !important;
    /* Плавність */
    transition: all 0.3s ease !important;
    cursor: pointer;
    padding: clamp(0.75rem, 2vw, 1.25rem) !important;
}
.breadcrumbs-scroll {
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding:5px 0;
}
.breadcrumbs-scroll::-webkit-scrollbar {
    display: none;
}
.breadcrumbs-inner {
    display: inline-flex;
    align-items: center;
}
.breadcrumb-item {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #666;
    text-decoration: none;
}
.breadcrumb-item.active {
    color: #333;
    font-weight: 500;
}
.btn-outline-success {
    color: #000000 !important; 
}
.btn-check:checked + .btn-outline-success {
    color: #ffffff !important;
}
.btn-outline-success:hover {
    background-color: #198754 !important; /* Фон стає дуууже ніжно-зеленим (легкий блиск) */
    border-color: #198754 !important; /* Рамка залишається зеленою */
    color: #fff !important; 
}
/* Віконце з інфою */
.phone-info-card {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1060;
    background: #fff;
    min-width: 257px;
    border-radius: 8px;
    margin-top:24px;
}
/*Форма відгукі */
#success-message {
    border-radius: 12px;
    padding: 15px;
    font-weight: 500;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

/* Ефект "пульсації" для кнопки під час завантаження */
#submitBtn:disabled {
    cursor: not-allowed;
    opacity: 0.8;
}
a.review-link,a.review-link2 {
    color: #6c757d; /* text-secondary */
    transition: all 0.2s ease;
    letter-spacing: normal !important;
    padding-top:1px;
    text-decoration:none;
}

a.review-link i, a.review-link2 i {
    color: inherit !important;
}

a.review-link:hover,a.review-link2:hover {
    color: #000 !important; /* колір при наведенні (чорний або будь-який інший) */
    opacity: 1 !important;
}
a.review-form.ajax_form {
    max-width: 550px; /* Оптимальна ширина для читабельності */
    width: 100%;
}

/* Ефект наведення на картку */
.card.shadow-sm {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    border: 1px solid rgba(0,0,0,.075);
}
.card.shadow-sm:hover {
    transform: translateY(-3px);
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.1) !important;
}

/* Стиль для зірочок */
.text-warning {
    letter-spacing: 2px;
}

/* Контейнер для фото */
.img-thumbnail {
    transition: filter 0.2s;
}
.img-thumbnail:hover {
    filter: brightness(0.9);
}
.filter-sizes-wrapper {
    max-height: 110px; /* Висота приблизно на 3 ряди кнопок */
    overflow-y: auto;  /* Вмикає скрол, якщо кнопок більше */
    padding-right: 5px;
}

/* Робимо скролбар тоненьким та акуратним */
.filter-sizes-wrapper::-webkit-scrollbar {
    width: 4px;
}
.filter-sizes-wrapper::-webkit-scrollbar-thumb {
    background-color: #ced4da;
    border-radius: 10px;
}
/* Контейнер фільтра */
.filter-wrapper .modern-scroll-box {
    max-height: 183px;       /* Висота приблизно на 4–5 рядів кнопок */
    overflow-y: auto;        /* Вертикальний скрол */
    overflow-x: hidden;      /* Ховаємо горизонтальний */
    padding-right: 6px;      /* Невеликий відступ, щоб кнопки не липли до бігунка */
}
.filter-wrapper .modern-scroll-box.expanded-size{
    max-height: 383px !important;
}
/* Фарбуємо активований чекбокс або світч у зелений колір */
.form-check-input:checked {
    background-color: #198754 !important; /* Наш колір success */
    border-color: #198754 !important;
}

/* Прибираємо синю підсвітку (focus) при кліку і робимо її ніжно-зеленою */
.form-check-input:focus {
    border-color: #bcdab5;
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}
.tags-container .modern-scroll-box{
    max-height: 210px;
}
/* Ефект швидкого відгуку при натисканні на мобільному (Active state) */
.btn-check + .btn {
    transition: all 0.1s ease-in-out;
    -webkit-tap-highlight-color: transparent; /* Прибирає стандартне синє/сіре виділення браузера */
}

.btn-check + .btn:active {
    transform: scale(0.95); /* Кнопка візуально злегка продавлюється всередину при пальцевому натисканні */
    opacity: 0.8;
}
/* Робимо повзунок тоненьким (6 пікселів) */
.modern-scroll-box::-webkit-scrollbar {
    width: 6px;
}

/* Фон доріжки повзунка (майже прозорий) */
.modern-scroll-box::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.03);
    border-radius: 10px;
}

/* Сам сучасний округлий повзунок */
.modern-scroll-box::-webkit-scrollbar-thumb {
    background-color: #ced4da; 
    border-radius: 10px;
    transition: background-color 0.2s ease;
}

/* Ефект підсвітки зеленим при наведенні */
.modern-scroll-box::-webkit-scrollbar-thumb:hover {
    background-color: #198754;
}

/* Для підтримки у Firefox */
.modern-scroll-box {
    scrollbar-width: thin;
    scrollbar-color: #ced4da rgba(0, 0, 0, 0.03);
}
/* На дуже маленьких екранах прибираємо відступи, щоб було більше місця */
@media (max-width: 576px) {
    .review-form.ajax_form {
        padding: 15px;
    }
 .custom-pagination-box .page-link, 
    .custom-pagination-box ul.pagination li a, 
    .custom-pagination-box ul.pagination li span {
        min-width: 32px !important; /* Робимо кнопочки ще на 2 пікселі компактнішими */
        height: 32px !important;
        padding: 0 6px !important;
        font-size: 0.8rem !important;
    }
    .custom-pagination-box ul.pagination {
        gap: 3px !important; /* Зближуємо їх впритул */
    }
}
/* Перетворюємо дефолтний список pdoPage на красиві окремі кнопки */
.custom-pagination-box ul.pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    padding-left: 0;
    list-style: none;
    gap: 8px; /* Робимо відстань між кнопками, щоб вони не зліплювалися */
    margin: 0;
}

/* Стиль для кожної цифрової кнопки та стрілочок */
.custom-pagination-box .page-link, 
.custom-pagination-box ul.pagination li a, 
.custom-pagination-box ul.pagination li span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #2b303a !important; /* Робимо текст темним замість синього */
    text-decoration: none !important; /* Прибираємо убоге підкреслення */
    background-color: #f8f9fa; /* Світло-сірий преміальний фон під колір сайту */
    border: 1px solid #e9ecef;
    border-radius: 10px !important; /* Округлюємо кути, як на твоїх картках товарів */
    transition: all 0.2s ease-in-out;
}

/* Ефект при наведенні або для АКТИВНОЇ сторінки (Твоя фірмова зелень) */
.custom-pagination-box ul.pagination li.active span,
.custom-pagination-box ul.pagination li.active a,
.custom-pagination-box ul.pagination li a:hover {
    color: #fff !important;
    background-color: #198754 !important; /* Bootstrap success зелений під твої кнопки кошика */
    border-color: #198754 !important;
}

/* Ховаємо або приглушаємо неактивні елементи */
.custom-pagination-box ul.pagination li.disabled span {
    color: #6c757d !important;
    background-color: #f1f3f5;
    border-color: #e9ecef;
    opacity: 0.5;
    cursor: not-allowed;
}
/* Затемнення */
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4); /* Рівень затемнення */
    z-index: 1015;
    backdrop-filter: blur(1px); /* Легке розмиття */
}
/* Птічка (анімація повороту) */
#phoneChevron, #LangChevron{
    display: inline-block !important; /* Обов'язково для роботи трансформації */
    transition: transform 0.3s ease;
}
#phoneTrigger{
    text-decoration:none !important;
}
.rotate-180 {
   transform: rotate(180deg) !important;
}
/* МАГІЯ ТУТ: додаємо "-" замість "/" */
.breadcrumb-item:not(:last-child)::after {
    content: "-";
    margin: 0 10px; /* Відступи навколо тире */
    color: #999;    /* Колір тире трохи світліший */
    font-weight: normal;
}
/* Корекція іконки хатки */
.breadcrumb-item i {
    font-size: 16px;
    line-height: 1;
}
.nav-link-custom {
    text-decoration: none;
    color: #495057;
    font-weight: 500;
    padding: 8px 16px;
    display: inline-block;
    border-bottom: 2px solid transparent; /* Резервуємо місце під лінію */
    transition: all 0.2s ease;
    margin-bottom: 3px; /* Виштовхуємо лінію посилання на лінію контейнера */
}
.nav-link-custom.active {
    border-bottom: 2px solid #198754 !important; /* Підкреслення лінією (виглядає акуратніше за text-decoration) */
    color: #198754  !important; /* Можна змінити колір тексту на зелений, як у вашому btn-green-active */
}
.nav-link-custom:hover {
    color: #198754; /* Зелений з Bootstrap success */
    border-bottom-color: #198754; /* Поява лінії */
}

/* Активний стан або при натисканні (Active / Focus) */
.nav-link-custom.active, 
.nav-link-custom:active {
    color: #198754 !important;
    border-bottom: 2px solid #198754 !important;
    font-weight: 600; /* Можна додати товщини для виділення */
}

/* Прибираємо стандартний контур при натисканні (якщо це кнопка або посилання) */
.nav-link-custom:focus {
    outline: none;
    box-shadow: none;
}
/* ПРИБИРАЄМО "/" І СТАВИМО "-" */
/* 1. Вимикаємо ВСІ стандартні роздільники, які могли бути в темах або старих стилях */
.breadcrumb-item:before,.breadcrumb-item:after {
    content: "" !important;
    margin: 0;
}
/* 2. Додаємо ТІЛЬКИ наше тире після кожного пункту, крім останнього */
.breadcrumb-item:not(:last-child):after {
    content: "-" !important;
    margin: 0 10px;
    color: #999;
    display: inline-block;
}
.brand-name {
    font-family: 'Montserrat', sans-serif;
    letter-spacing: -0.5px;
    font-size: 1.5rem;
 
}
.ua-box {
    background: #000;
    color: #fff;
    padding: 2px 6px;
    border-radius: 4px;
    margin-left: 4px;
}
/* 3. Окремо для активного пункту (якщо потрібно прибрати і там) */
.breadcrumb-item.active:before {
    content: "" !important;
}
/*ГАЛЕРЕЯ*/
.product-gallery-wrapper { 
    max-width: 100%; 
    position: relative; 
}
/* Головний слайдер тепер адаптивний */
.main-slider2 { 
        width: 100%;
        aspect-ratio: 1 / 1; /* Робить слайдер квадратним і адаптивним */
        max-height: 500px;    /* Обмежуємо максимальну висоту для десктопа */
        border: 1px solid #eee; 
        border-radius: 5px;
        overflow: hidden;
        background: #fff;
}
/* Слайдер мініатюр */
.thumb-slider { 
    height: 70px; /* Трохи менша висота для зручності */
    margin-top: 10px; 
}
.thumb-slider .swiper-slide { 
        width: 25%; 
        height: 100%; 
        opacity: 0.5; 
        cursor: pointer;
        border-radius: 4px;
        overflow: hidden;
}
.thumb-slider .swiper-slide-thumb-active { 
    opacity: 1; 
    border: 2px solid #198754; 
}
.swiper-slide img { 
    width: 100%; 
    height: 100%; 
    object-fit: contain; /* Картинка не обрізається і не розтягується */
}
.height-logo {
        height:40px;
    }
@media (min-width: 576px) {
        .anchor-nav::after {
        display: none !important; /* Повністю прибирає блок */
    }
}
    /* На мобільних пристроях робимо слайдер трохи меншим, якщо потрібно */
    @media (max-width: 576px) {
        .main-slider {
            aspect-ratio: 4 / 3; /* Співвідношення сторін для мобілок */
        }
        .thumb-slider {
            height: 60px;
        }
        .side-menu__closebtn .close-menu-btn {
            bottom: 23px;
        }
        .anchor-nav .btn {
            font-size: 15px;
            padding: 5px 12px;
        }
        /* Приховуємо скролбар, щоб не забирав висоту */
        .custom-scrollbar::-webkit-scrollbar {
            box-shadow: inset -15px 0 10px -10px rgba(0,0,0,0.1);
        }
        .custom-scrollbar {
            -webkit-overflow-scrolling: touch; /* Плавний скрол на iOS */
        }
    }
/* Змінюємо колір стрілок */


/* Якщо хочете додати білий фон-кружечок навколо стрілки */
.swiper-button-next, .swiper-button-prev {
    background: rgba(255, 255, 255, 0.8);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Щоб стрілка всередині кружечка виглядала акуратно */
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 18px !important;
    font-weight: bold;
}
/* Кнопки анкорного меню */
.btn-outline-custom {
    border: 1px solid #e0e0e0;
    color: #555;
    background: #fff;
}

.btn-green-active, .btn-outline-custom:hover {
    background-color: #59B210 !important;
    color: #fff !important;
    border-color: #59B210 !important;
}

/* Стилізація контенту */

/* Тіні та заокруглення як у WO */
.rounded-4 { border-radius: 1rem !important; }
.shadow-sm { box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important; }


.hover-green:hover {
    color: #59B210 !important;
    transition: 0.3s;
}
/* --- ГОЛОВНИЙ СЛАЙДЕР --- */
/* Основне вікно слайдера */
.product-gallery-wrapper { max-width: 100%; position: relative; }
    
.main-slider { 
        /* Замість фіксованих 400px робимо авто-висоту або збільшуємо її */
        height: auto;
        width: 100%; 
        border: 1px solid #eee; 
        border-radius: 15px; /* Більш сучасне зкруглення, як на скріні */
        overflow: hidden;
        background: #fff;
    }
    .main-slider .swiper-slide img { 
        width: 100%; 
        height: auto; /* Дозволяємо картинці зайняти всю ширину */
        max-height: 600px; /* Обмежуємо максимальну висоту для ПК */
        object-fit: contain; 
        display: block;
    }

    /* Для мініатюр, щоб вони були чіткими квадратами */
    .thumb-slider .swiper-slide img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        padding: 5px; /* Невеликий відступ всередині, щоб не липло до рамок */
    }
    
    .thumb-slider { 
        height: 80px; 
        margin-top: 10px; 
    }
    
    .thumb-slider .swiper-slide { 
        width: 25%; 
        height: 100%; 
        opacity: 0.5; 
        cursor: pointer; 
    }
    
    .thumb-slider .swiper-slide-thumb-active { 
        opacity: 1; 
        border: 2px solid #198754; 
    }
    
    .swiper-slide img { 
        width: 100%; 
        height: 100%; 
        object-fit: contain; 
    }
    
    /* Колір стрілок */
    .swiper-button-next, .swiper-button-prev { color: #000 !important; }
/****************************************/
/* Стиль для великої ціни */
.msop_price {
    font-size: clamp(2rem, 5vw, 3.5rem) !important;
    font-weight: 800;
    color: #212529;
    line-height: 1;
}

/* Стара ціна (якщо є знижка) */
.msop_old_price {
    font-size: 1.2rem;
    text-decoration: line-through;
    color: #999;
    margin-right: 10px;
}

/* Кнопка КУПИТИ - робимо її масивною */
.btn-buy {
    /* Колір та текст */
    background-color: #198754 !important;
    color: #ffffff !important;
    /* Форма та відступи (замість py-3 та rounded-3) */
    padding: 1rem 2rem !important;
    border-radius: 10px !important;
    border: none !important;
    /* Шрифт (замість fw-bold) */
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease !important;
    cursor: pointer;
    font-size: clamp(1rem, 2.5vw, 1.25rem) !important;
    padding: clamp(0.75rem, 2vw, 1.25rem) !important;
}
/* Ефект при наведенні (Hover) - ТЕПЕР ПРАЦЮВАТИМЕ */
.btn-buy:hover {
    /* Робимо колір глибоким зеленим, без зайвої жовтизни */
    background-color: #3d7a0b !important; 
    border-color: #3d7a0b !important;
    /* Тінь робимо сіро-чорною напівпрозорою — це дає глибину, а не пляму кольору */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    /* Мінімальний підйом для відчуття "кнопки" */
    transform: translateY(-1px);
    /* Додай це для м'якості, якщо ще немає в основному класі */
    transition: all 0.2s ease-in-out !important;
}
/* Ефект при натисканні */
.btn-buy:active {
    transform: translateY(0);
}

/* Робимо активні чекбокси зеленими */
.form-check-input:checked {
    background-color: #198754; /* Стандартний зелений колір Bootstrap success */
    border-color: #198754;
}

/* Зелена рамка при фокусі на полі вибору марки */
.form-select:focus, .form-control:focus {
    border-color: #198754;
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}
/* Оновлюємо вигляд картки */
.card {
    border-radius: 16px !important; /* Робимо кути м'якими, як на фото 2 */
    transition: all 0.25s ease-in-out;
}

/* Ефект при наведенні (картка злегка підсвічується і піднімається) */
.hover-shadow:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05) !important;
}

/* Стильний бейдж знижки у верхньому кутку */
.badge-discount {
    background-color: #fff0f0;
    color: #e53e3e;
    font-weight: 700;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 0.75rem;
}

/* Колір зірочок */
.text-warning {
    color: #ffa800 !important; /* Приємний золотий колір для рейтингу */
}
@media (max-width: 991.98px) {
    .mobile-sticky {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020; /* Стандартний z-index для sticky в Bootstrap */
    }
}
@media (min-width: 992px) {
    .mobile-sticky {
        position: static;
        box-shadow: none !important; /* Можна прибрати тінь на ПК для чистоти */
    }
    .sticky-gallery {
        position: -webkit-sticky; 
        position: sticky; 
        top: 20px; 
        height: fit-content;
        z-index: 10;
    }
    .btn-buy {
        width: auto;
        min-width: 300px;
    }
    /* Швидке Меню на сторінці з товаром */
    .anchor-nav.sticky-top.shadow-sm {
        top:58px;
    }
}
/* На мобільних пристроях (до 768px) */
@media (max-width: 767.98px) {
/* Зовнішній контейнер — стабільна база для туману */
.filter-wrapper {
    position: relative;
    display: block;
    width: 100%;
}

/* Обмежуємо висоту саме для внутрішнього скрол-боксу */
.filter-wrapper .modern-scroll-box {
    max-height: 186px; /* Підбери висоту, щоб нижній ряд трохи ховався */
    overflow-y: auto;
    padding-bottom: 20px; /* Невеличкий запас знизу, щоб останній ряд кнопок не перекривався повністю туманом при повному скролі */
}

/* Нерухома маска туману, яка завжди прибита до низу */
.filter-wrapper::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 35px; /* Висота ефекту розчинення */
    /* Плавний перехід від прозорого до білого кольору твоєї шторки */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 90%);
    pointer-events: none; /* Щоб туман не заважав натискати на кнопки під ним */
    z-index: 2; /* Ставимо поверх кнопок, що скроляться */
}
.tags-container .filter-wrapper  .modern-scroll-box{
    max-height: 210px;
    }

    html {
        scroll-padding-top: var(--nav-offset-mobile);
    }
    
    a.review-link {
        padding-top:2px;
    }
    .status-badge {
        padding: 6px 5px !important;
        letter-spacing: 0.1px !important;
    }
    .height-logo {
        height:30px;
    }
    .mobile-no-decoration {
        text-decoration: none !important;
    }
    .d-flex.flex-column {
        align-items: flex-start !important; /* Все по лівому краю */
    }
    .rating {
        font-size: 1rem; /* На мобілці зірки можна трохи більшими */
    }
    .w-100.text-md-end {
        text-align: left !important; /* На мобілці артикул краще зліва */
        margin-top: 12px !important;
    }
    .d-flex.align-items-center.flex-wrap {
        width: 100% !important;
        flex: 0 0 100% !important; 
        display: flex !important;
        justify-content: space-between !important;
    }
    .rating.me-3 {
        margin-right: 0 !important;
    }
    /* Віконце з інфою */
    .phone-info-card {
        position: fixed;
        top: var(--header-height, 33px); 
        left: 50%;
        transform: translateX(-50%);
        width:70%;
        max-width: 310px;
        margin-top: 15px;
        transition: all 0.3s ease;
    }
}
@media (max-width: 767.98px) {
    
    /* 1. МАГІЯ ДЛЯ ІФОНА: Повністю блокуємо рух сторінки на фоні */
    body.search-scroll-lock {
        position: fixed !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
    }

    /* 2. Головний контейнер (тепер він прозорий і на весь екран) */
    body .search-box.mobile-active {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 999999 !important;
    }

    /* 3. БІЛИЙ ФОН ТІЛЬКИ ДЛЯ ФОРМИ (щоб не перекривати блюр знизу) */
    body .search-box.mobile-active .simplesearch-search-form {
        background: #ffffff !important;
        padding: 16px !important;
        position: relative !important;
        z-index: 1000002 !important; /* Вище, ніж блюр */
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    }

    /* 4. ІДЕАЛЬНИЙ БЛЮР ДЛЯ IOS (Саме тут був баг) */
    body .search-box.mobile-active #searchBackdrop {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
    background: rgba(0, 0, 0, 0.35) !important;   /* Трохи затемнили (було 0.25) */
    -webkit-backdrop-filter: blur(4px) !important; /* Зменшили вдвічі (було 10px) */
    backdrop-filter: blur(4px) !important;
        
        z-index: 1000000 !important; /* Під формою, але над усім сайтом */
    }

    /* 5. Результати пошуку підіймаємо над блюром */
    body .search-box.mobile-active .ajax-search-results {
        position: absolute !important;
        top: 75px !important; /* Рівно під форму */
        left: 16px !important;
        right: 16px !important;
        width: calc(100% - 32px) !important;
        max-height: calc(100vh - 120px) !important;
        background: #ffffff !important;
        border-radius: 12px;
        z-index: 1000005 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important; /* Плавний скрол видачі на iOS */
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    }
}
}
@media (max-width: 767px) {
    body {
        padding-bottom:20px;
    }

    /* Додаємо body на початку, щоб на корню знищити Bootstrap-івський d-none */
    body .search-box.active {
        display: block !important;          /* Насильно показуємо блок */
        position: fixed !important;         /* Вириваємо з потоку, фіксуємо зверху */
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;            /* Розгортаємо на всю ширину мобілки */
        height: auto !important;
        margin: 0 !important;               /* Скидаємо mx-auto */
        padding: 12px 16px !important;
        background-color: #ffffff !important; /* Білий фон для форми */
        z-index: 999999 !important;         /* Максимальний пріоритет поверх усього */
        box-shadow: 0 4px 25px rgba(0, 0, 0, 0.2) !important;
    }

    /* Змушуємо інпут розтягнутися на всю доступну ширину форми */
    body .search-box.active .search-field-group {
        width: 100% !important;
        display: flex !important;
    }

    /* Налаштування для випадайки результатів на мобілці */
    body .search-box.active .ajax-search-results {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-height: 80vh !important;
        background: #ffffff !important;
        z-index: 999999 !important;
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15) !important;
    }
}    

/* На ПК (від 768px) */
@media (min-width: 768px) {
    html {
        scroll-padding-top: var(--nav-offset-pc);
    }

    .place-form-review {
        z-index:1000 !important;
        top: 125px !important;
    }
    .anchor-nav.sticky-top.shadow-sm {/*швидке меню на стр товара*/
        top:72px !important;
    }
    .flex-grow-1 .w-md-50 {
        width:50% !important;
    }
    .max-md-120 { max-width: 120px !important; }
    .availability {
        margin: 0 15px; /* Невеликий відступ між блоками в рядку */
    }
    .col-12 .bg-white.p-3.rounded-4{
        padding: 1rem !important;
    }
    .dropdown .responsive-fs {
        font-size: 1rem !important; /* Аналог fs-6 */
    }
}
/* Блок з інформацією (Код, Наявність) */
/* Контейнер */
/* Батьківський контейнер для наявності */
.availability {
    display: flex;
    align-items: center;
    margin-bottom: 0 !important; /* Прибираємо відступ, який ламає лінію */
}
/* Бейдж статусу */
.status-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    border-radius: 50px; /* Повний pill */
    font-size: clamp(0.85rem, 1.5vw, 1rem) !important;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.3px;
}
/* Маленька крапка-індикатор */
.status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 8px;
    margin-top: 1px;
    display: inline-block;
}

/* Текст всередині */
.status-dot, .msop_count, .msGallerytus-unit {
    line-height: 1; /* Прибираємо міжрядкові інтервали, що тягнуть блок вниз */
}
/* Кольори: В наявності */
.in-stock {
    background-color: rgba(89, 178, 16, 0.1);
    color: #59B210;
}
.in-stock .status-dot {
    
    background-color: #59B210;
    box-shadow: 0 0 5px rgba(89, 178, 16, 0.5);
}

/* Кольори: Під замовлення */
.on-order {
    background-color: rgba(0, 38, 255, 0.1);
    color: #0026FF;
}
.on-order .status-dot {
    background-color: #0026FF;
    
}

/* Кольори: Немає в наявності */
.out-of-stock {
    background-color: rgba(220, 53, 69, 0.1);
    color: #dc3545;
}
.out-of-stock .status-dot {
    background-color: #dc3545;
}
/* Число кількості */
.msop_count {
    font-size: clamp(0.95rem, 1.8vw, 1.2rem) !important;
    color:#000;
    margin: 0 3px;
}
/* Прибираємо конфлікт відступів у статусу */
.status-badge {
    margin-bottom: 0 !important;
}
/* Приховуємо стандартний кружечок */
.input-parent input[type="radio"] {
    /*display: none;*/
    opacity: 0; position: absolute;
}

/* Стилізуємо label як кнопку */
/* Приховуємо стандартний інпут */
.input-parent input {
    /*display: none;*/
    opacity: 0; position: absolute;
}
.input-parent .color-swatch {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1px solid #ccc;
    vertical-align: middle;
    margin-right: 5px;
    pointer-events: none; /* Клік гарантовано проходить на radio input */
}
.input-parent {
    display: inline-flex;
    align-items: center;
    padding: 5px 9px;
    margin: 2px;
    border: 1px solid #ddd;
    border-radius: 20px; /* Округлі кнопки */
    cursor: pointer;
    transition: all 0.2s;
    background: #fff;
}

/* Кольоровий кружечок */
.color-swatch {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    margin-right: 8px;
    border: 1px solid rgba(0,0,0,0.1);
}

/* Стиль при виборі */
.input-parent:has(input:checked) {
    border-color: #000;
    background-color: #f8f8f8;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.input-parent:has(input:checked) .option-text {
    font-weight: bold;
}
/* Приховуємо скроллбар, але залишаємо функцію прокрутки */
/* Додатково: кнопки не повинні ставати меншими за свій контент */

.anchor-nav {
    position: relative;
    border-bottom: 1px solid #dee2e6 !important; /* Основна сіра лінія */
    z-index: 1010 !important;
}
.anchor-nav .container {
    padding-bottom: 0; /* Важливо: прибираємо нижній падінг */
    margin-bottom:-3px;
}

/* Градієнт справа, що зникає при повному скролі */
.anchor-nav::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50px; /* Ширина ефекту */
    height: 100%;
 background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2));
    pointer-events: none; /* Щоб можна було клікати крізь градієнт */
    z-index: 2;
}
/* Контейнер кількості */
.quantity-controls {
    background: #f8f9fa;
    height: 48px; /* Висота як у кнопки btn-lg */
    padding: 0 5px;
    min-width: 120px;
}

/* Кнопки + та - */
.qty-btn {
    background: none;
    border: none;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: #333;
    cursor: pointer;
    transition: 0.2s;
    user-select: none;
}

.qty-btn:hover {
    color: #ffc107; /* Твій акцентний коліr */
}

/* Поле вводу */
.qty-input {
    width: 40px;
    background: transparent;
    font-weight: bold;
    font-size: 1rem;
    outline: none;
}

/* Приховуємо стандартні стрілочки браузера */
.qty-input::-webkit-outer-spin-button,
.qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


/* Видаляємо стрілочки в інпуті на комп'ютері */
/* --- ПРИБИРАЄМО СТАНДАРТНІ СТРІЛОЧКИ (СПІН-БАТТОНИ) --- */
/* Для Chrome, Safari, Edge, Opera */
.qty-input-field::-webkit-outer-spin-button,
.qty-input-field::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
/*Аналоги в карточці товара*/
.product-card-analog {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border-color: #edf2f7 !important;
}

.product-card-analog:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.08) !important;
}

.hover-blue:hover {
    color: #2563eb !important;
}

.btn-primary {
    background-color: #2563eb;
    border-color: #2563eb;
}

.btn-primary:hover {
    background-color: #1d4ed8;
    transform: scale(1.02);
}

/* Для Firefox */
.qty-input-field[type=number] {
    -moz-appearance: textfield;
}

/* --- ТВОЇ КАСТОМНІ СТИЛІ --- */

/* Обгортка кількості */
.input-quantity-wrapper {
    height: 48px; /* Висота як у кнопки */
    min-width: 130px;
    padding: 0 4px;
}

/* Поле вводу кількості */
.qty-input-field {
    border: none;
    background: transparent;
    font-weight: bold;
    font-size: 1.1rem;
    width: 45px;
    color: #333;
    outline: none;
}

/* Твої кнопки плюс і мінус */
.qty-btn {
    background: none;
    border: none;
    width: 38px;
    height: 38px;
    position: relative;
    cursor: pointer;
}

/* Малюємо лінії для + та - через CSS */
.qty-btn::before, .plus-btn::after {
    content: '';
    position: absolute;
    background-color: #333; /* Колір ліній */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 1px;
}

/* Горизонтальна лінія (є і в мінусі, і в плюсі) */
.qty-btn::before {
    width: 14px;
    height: 2px;
}

/* Вертикальна лінія (тільки в плюсі) */
.plus-btn::after {
    width: 2px;
    height: 14px;
}
/* Підсвітка при наведенні */
.qty-btn:hover::before, .qty-btn:hover::after {
    background-color: #ffc107; /* Твій акцентний колір */
}
.MobileMenu__wrapper {
  /* Збільшуємо розмір самого контейнера */
  width: 32px; 
  height: 32px;
  margin-right: 20px;
  background-image: url(images/burger-icon2.svg);
  background-size:32px 32px; 
  border-radius:8px;
  cursor: pointer;
}
/* Ефект при наведенні */
.MobileMenu__wrapper:hover {
    background-color: rgba(255, 255, 255, 0.15);
    border:1px solid #000;
}
/* Підкладка (Overlay) */
.side-menu-overlay {
 position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.4); /* Трохи світліше, щоб не було брудно */
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    /* Додаємо розмиття для сучасного вигляду */
}
/* Базовий контейнер меню */
.side-menu {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    /* Притискаємо до лівого краю екрана */
    left: 0; 
    /* Адаптивна ширина */
    width: 100%;
    max-width: 440px; /* Для Pro Max моделей */
    height: 100%;
    height: 100dvh;   /* Динамічна висота для iOS */
    background: #fff;
    z-index: 9999;
    /* Початковий стан: повністю за лівим краєм екрана */
    transform: translateX(-105%); 
    transition: transform 0.3s ease-in-out;
    box-shadow: none;
    padding: 20px 0;
    padding-top: env(safe-area-inset-top, 20px); /* Відступ під Dynamic Island */
    box-shadow: 5px 0 15px rgba(0,0,0,0.2);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
    
    /* Обов'язково залишаємо ці параметри, щоб скрол працював */
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

/* Стан відкриття (is-active додається вашим JS) */
.side-menu.is-active {
    /* Повертаємо в нульову точку (лівий край) */
    transform: translateX(0);
}
.side-menu::-webkit-scrollbar {
    display: none;
}
.side-menu-overlay.is-active {
opacity: 1;
    visibility: visible;
}
.side-menu__closebtn{
position: sticky;
    top: 0;
    left: 0;
    width: 100%; /* Гарантуємо ширину на весь сайдбар */
    height: 60px; /* Фіксована висота для зручності */
    background: #fff;
    z-index: 10001;
    /* Важливо для iPhone: додаємо відступ зверху, щоб хрестик не заліз під камеру */
    padding-top: env(safe-area-inset-top, 0);
}
.close-menu-btn {
  position: absolute;
    right: 10px;      /* Чіткий відступ від правого краю */
    bottom: 12px;      /* Вирівнюємо відносно низу шапки */
    background: none;
    border: none;
    font-size: 40px;  /* Робимо ще більшим для зручності */
    line-height: 1;
    color: #333;
    cursor: pointer;
    padding: 0;    /* Велика зона для натискання пальцем */
    display: flex;
    align-items: center;
    justify-content: center;
}
.close-menu-btn:hover {
    color: #59B210; /* Колір вашого бренду при наведенні */
}
/* Контейнер перемикача */
.side-menu__header .side-menu__lang {
  display: flex;
  padding: 3px 10px 0 10px;
  border-radius: 10px;
  list-style: none;
  margin: 0;
  width: auto;
  flex-shrink: 0;
}

.side-menu__lang .lang-item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px; /* Фіксована висота кнопок */
  width: 30px; /* Фіксована висота кнопок */
  border-radius: 8px;
  transition: all 0.2s ease;
}

/* Активна мова — тепер виділення буде рівним */
.side-menu__lang .lang-item.active {
 background-color: #f1f3f4; 
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.side-menu__lang .lang-item.active .lang-text {
  color: #000;
  font-weight: 700;
}
/* Посилання для неактивної мови */
.side-menu__lang .lang-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
/* Текст (Збільшений) */
.side-menu__lang .lang-text {
  font-size: 16px; /* Було 14px, стало 16px */
  font-family: Arial, sans-serif;
  text-transform: uppercase;
  color: #666;
}

/* Ефект при наведенні на неактивну мову */
.side-menu__lang .lang-item:not(.active):hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.side-menu__logo img {
  width: auto !important;        /* Скасовуємо 100% ширину */
  flex-shrink: 0;                /* Не даємо йому стискатися */
  display: block;
   max-height: 40px;         /* Щоб лого не "роздувало" шапку */
}
/* Контейнер навігації */
.side-menu__nav {
    flex-grow: 1;
    padding: 10px 0;
    width: 100%;
    overflow-y: auto;
    /* Для приховання скролбару (опціонально): */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE 10+ */
    
}
/* МОВИ в ШАПЦІ */
/* Гарантуємо горизонтальний ряд */
.langs {
    display: flex !important;
    flex-direction: row !important;
    gap: 0;
    color: #fff;
}

/* Стиль для кожного елемента мови */
.header-lang-item {
    display: inline-flex;
    align-items: center;
    color: #ffffff !important;
}

/* Додаємо розділювач між мовами */
.header-lang-item:not(:last-child)::after {
    content: "|";
    margin: 0 8px;
    opacity: 0.5;
    font-weight: normal;
}

/* Прибираємо підкреслення */
.header-lang-item {
    text-decoration: none !important;
}

/* Активна мова яскравіша */
.header-lang-item.active {
    opacity: 1;
}

.header-lang-item:not(.active) {
    opacity: 0.7;
}

.side-menu__footer {
    flex-shrink: 0; /* не стискається */
    margin-top: auto;
    padding: 20px; /* Твій внутрішній відступ */
    background: #fff; /* Щоб контент під ним не просвічувався */

}
/* *******************КОШИК***************** */
.cart-icon {
    line-height: 1;
    vertical-align: middle;
}

.cart-icon .badge {
    font-size: 0.65rem; /* Робимо цифру трохи меншою, щоб вона була акуратною */
    padding: 0.35em 0.5em;
}
.cart-upsell .product-mini {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 12px;
    margin-bottom: 10px;
}
.cart-upsell .product-mini img {
    width: 60px;
    height: 60px;
    object-fit: contain;
}
.old-price {
   position: relative;
    display: inline-block; /* Важливо для позиціювання лінії */
    text-decoration: none; /* Вимикаємо стандартне закреслення */
}
.old-price::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%; /* Лінія рівно посередині */
    width: 100%;
    height: 2px; /* Товщина лінії */
    background-color: currentColor; /* Колір такий же, як у тексту */
    transform: translateY(-50%);
}
/*  Модальний КОШИК*/
/* Фікс для всього модального вікна */
.modal_cart {
    position: fixed;
    top: 0; left: 0;
    width: 100vw; 
    height: 100vh;
    display: none; /* Показувати через JS клас .active */
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.modal_cart.active {
    display: flex;
}

.modal_overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* Темний напівпрозорий фон */
}

.modal_main_container {
    /* Цей рядок гарантує, що padding не розширює ширину понад 100% */
    box-sizing: border-box; 
    background-color: #ffffff !important; /* Примусово білий */
}

/* Фікс для горизонтальної прокрутки всередині кошика */
#ajax-cart .row {
    margin-left: 0;
    margin-right: 0;
}

#ajax-cart .cart-item {
    width: 100%;
}
/* Коли модалка відкрита, забороняємо скрол body */
body.modal-open {
    overflow: hidden !important;
}

/* Налаштування обгортки для правильної роботи flex-скролу всередині */
#ajax-cart {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
     width: 100%;
     justify-content: center;   /* Центруємо по горизонталі */
    align-items: center;
}

/* Стилізація вмісту кошика всередині модалки */
.modal_content {
    position: relative;
    background: #fff;
    /*width: 90%;
    max-width: 800px;*/
    max-height: 85vh;
    overflow-y: auto;
    border-radius: 1rem;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

/* Виправлення рядків кошика (Flexbox замість Float) */
#msCart .cart-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
    margin: 0;
}

#msCart .cart-item img {
    max-width: 80px;
    height: auto;
    border-radius: 8px;
}
h5.mod-txt-a{
    font-size: clamp(12px, 2vw, 16px);
}
/* Прибираємо старі відступи Bootstrap 3 */
.no-margin { padding: 0 !important; margin: 0 !important; }

/* Кнопка видалення (хрестик) */
.close-btn {
    background: none;
    border: none;
    color: #ff4d4d;
    font-size: 24px;
    cursor: pointer;
    line-height: 1;
}
.close-btn::before { content: '×'; }

/* Підсумок кошика (Sidebar) */
.cart-summary {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 0 0 1rem 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cart-summary .buttons-holder {
    display: flex;
    gap: 10px;
}

/* Кнопки Bootstrap 5 для кошика */
.le-button {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.2s;
}
.le-button.big { background: #0d6efd; color: #fff; }
.le-button.big:hover { background: #0b5ed7; }
.simple-link { color: #6c757d; }
/* Пункт меню */
/*
.nav-item {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    text-decoration: none;
    color: #333;
    font-size: 16px;
    font-weight: 500;
    border-bottom: 1px solid #f1f1f1;
    transition: background 0.2s;
}
*/
/* Налаштування іконок для мінімального відступу */
/* Базовий пункт */
.nav-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #f5f5f5;
    text-decoration: none;
    color: #333;
    font-size: 16px;
    background: #fff;
}

/* Пункт зі стрілочкою */
.nav-item.has-children i {
    color: #000;
    font-size: 14px;
}

/* Пункти підменю */
.side-menu__submenu {
    height: 0;
    display: block;
    overflow: hidden;    /* Обрізаємо контент */
    opacity: 0;
    transition: max-height 0.35s ease-in-out, opacity 0.25s ease;
    background: #fcfcfc; /* Легкий фон, щоб відрізнити від головних пунктів */
}
.nav-item:hover{
    color: #59B210;
    background: #f5f5f5;    
    
}
/* Коли підменю відкрите (через JS) */
.side-menu__submenu.is-active {
    opacity: 1;
    padding-bottom: 10px;
    height: 100%; /* Меню на весь екран */
}
.submenu-item {
    display: block;
    padding: 10px 20px 10px 40px; /* Збільшений відступ зліва (40px) */
    font-size: 14px;              /* Трохи менший шрифт */
    color: #666;                  /* Світліший колір тексту */
    text-decoration: none;
    border-bottom: none !important;
}

/* Ефект при наведенні на підпункт */
.submenu-item:hover {
    color: #59B210;
    background: #f5f5f5;
}

/* Поворот стрілочки при відкритті */
.nav-item.is-active i {
    transform: rotate(90deg);
}

.nav-item i {
    transition: transform 0.3s ease;
    
}
/* Робимо стрілочку праворуч */
.nav-item.has-children {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.menu-arrow {
    transition: transform 0.3s ease; /* Плавний поворот */
    font-size: 0.8rem;
    opacity: 0.6;
}
/* Повертаємо стрілочку вниз, коли додаємо клас .is-active через JS */
.nav-item.is-active .menu-arrow {
    transform: rotate(90deg);
}
/*секція Ви переглядали */
/* Приховуємо стандартний скроллбар, залишаючи можливість гортати */
.custom-scroll-x {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none;  /* IE and Edge */
}
.custom-scroll-x::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

/* Картка */
.viewed-card {
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.viewed-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
    transform: translateY(-2px);
}
/* Обрізка тексту до 2 рядків */
.text-truncate-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* Для плавного скролу пальцем на мобілках */
.flex-nowrap {
    -webkit-overflow-scrolling: touch;
}
/* Загальний контейнер */


/* Кнопка вверх*/
#btn-back-to-top {
    display: none; /* За замовчуванням прихована */
    position: fixed;
    bottom: 40px; /* Відступ від низу */
    right: 40px;  /* Чітко ПРАВОРУЧ */
    z-index: 1000;
    
    /* Форма та розмір */
    width: 48px;
    height: 48px;
    border-radius: 50%; /* Чітко КРУГЛА */
    
    /* Кольори: "тихий" варіант */
    background-color: rgba(255, 255, 255, 0.7); /* Білий, напівпрозорий фон */
    color: #6c757d; /* Світло-сіра стрілка */
    border: 1px solid rgba(0,0,0,0.1); /* Дуже тонка рамка */
    
    /* Поведінка */
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    box-shadow: 0 2px 5px rgba(0,0,0,0.05); /* Легка, майже непомітна тінь */
    
    /* Центрування іконки */
    padding: 0;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Ефекти при наведенні */
#btn-back-to-top:hover {
    background-color: #fff; /* Стає чисто білою */
    color: #333; /* Стрілка темнішає */
    box-shadow: 0 4px 12px rgba(0,0,0,0.1); /* Тінь стає м'якшою, але чіткішою */
    transform: translateY(-3px); /* Злегка спливає вгору */
}

/* Для мобільних пристроїв */
@media (max-width: 576px) {

}

/* Налаштування для ПК */
@media (min-width: 1024px) {
    .side-menu__header {
        display: flex !important;
        flex-direction: row !important; /* Тільки в один рядок */
        justify-content: space-between; /* Розносить лого вліво, мови вправо */
        align-items: center;           /* Центрує їх по вертикалі */
        width: 100%;
        box-sizing: border-box;
        flex-shrink: 0;
    }
    .side-menu__lang {
        margin-left: auto;      /* Додаткова гарантія, що мови притиснуться вправо */
    }
}
@media (min-width: 375px) {
    .dropdown .responsive-fs {
        font-size: 1.00rem !important; /* Аналог fs-6 */
    }
    .anchor-nav.sticky-top.shadow-sm {/*швидке меню на стр товара*/
        top:48px;
    }
    .side-menu__header {
        display: flex !important;
        padding:20px;
    }
    .side-menu__logo {
        width: auto !important;        /* Скасовуємо 100% ширину */
        flex-shrink: 0;                /* Не даємо йому стискатися */
        display: block;
    }
    /* 3. Мови - теж фіксуємо, щоб не стрибали */
    .side-menu__lang {
        width: auto !important;
        flex-shrink: 0;
        margin-left: 20px;             /* Мінімальний відступ від лого */
    }
    .bg-white.p-4 {
         padding: 0.8rem !important;
    }
    .small.text-muted.mb-3{
        flex: 0 0 auto;
        width: auto;
    }
    .bg-white.p-3.rounded-4.rounded-4.shadow-sm.h-100 {
        padding: 0rem;
    }
    .col-12 .bg-white.p-3{
        padding: 0rem !important;
    }
    .options-container{
        margin-bottom:10px;
    }
}

/*ПОШУК*/
/* Головний контейнер пошуку — широкий та солідний */
.search-wrapper {
    position: relative;
    width: 100%;
    max-width: 650px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Піднімаємо елементи форми та результати над шаром затемнення */
.search-field-group,
.ajax-search-results {
    position: relative;
    z-index: 10000; /* Рівень вище за затемнення */
}

.search-field-group {
    display: flex;
    align-items: center;
    width: 100%;
}

/* Базовий стан інпута — чистий, максимально закруглений (овал) */
.ajax-search-input {
    width: 100%;
    height: 44px;
    padding: 10px 45px 10px 45px;
    font-size: 15px;
    color: #0f172a;
    background-color: #ffffff; /* Завжди білий та контрастний */
    border: 1px solid #cbd5e1;
    border-radius: 24px; /* Круглі краї у спокійному стані */
    outline: none;
    box-sizing: border-box;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
    transition: border-radius 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

/* СТАН ПРИ КЛІКУ (ФОКУСІ) — края стають менш закругленими */
.ajax-search-input:focus {
    border-color: #94a3b8;
    border-radius: 10px; /* М'які прямокутні кути */
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1); /* Потужна тінь для виділення */
}

/* Іконка лупи ліворуч */
.search-side-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    display: flex;
    align-items: center;
    z-index: 10001;
}
.search-side-icon svg {
    width: 18px;
    height: 18px;
}

/* Кнопка-хрестик праворуч */
.search-clear-btn {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10001;
    /* Початково прихована */
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease;
    
    -webkit-appearance: none !important;
    background: transparent !important;
    border: none !important;
    padding: 4px !important; /* Збільшуємо зону кліку для пальця */
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.search-clear-btn:hover {
    background-color: #f1f5f9;
    color: #0f172a;
}

.search-clear-btn svg {
    width: 20px !important;  /* Задай потрібний розмір хрестика */
    height: 20px !important; /* Задай потрібний розмір хрестика */
    display: block !important;
    color: #6c757d; /* Колір хрестика, зміни на свій якщо треба */
}

/* Показуємо хрестик тільки при фокусі на полі */
.ajax-search-input:focus ~ .search-clear-btn {
    opacity: 1;
    visibility: visible;
}

/* ГЛОБАЛЬНЕ ЗАТЕМНЕННЯ ФОНУ (Вуаль на весь екран) */
.search-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(15, 23, 40, 0.15); /* Гарний глибокий темний колір із прозорістю */
    backdrop-filter: blur(3px); /* Модне легке розмиття сайту на фоні */
    z-index: 9999; /* Перекриває весь сайт, але нижче за саму форму */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: all;
}

/* Активуємо затемнення, коли користувач клікнув усередину пошукової зони */
.search-wrapper:focus-within .search-backdrop {
    opacity: 1;
    visibility: visible;
}

/* Результати пошуку (теж адаптовані під прямокутні кути) */
.ajax-search-results {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    width: 100%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px; /* Однакові кути з відкритим інпутом */
    max-height: 450px;
    overflow-y: auto;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.15);
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* 2. Рядок товару */
.search-product-item {
    border-bottom: 1px solid #f1f5f9;
    transition: background-color 0.15s ease-in-out;
}

.search-product-item:hover {
    background-color: #f8fafc;
}

/* Сітка форми всередині рядка */
.search-product-form {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px; /* Менша відстань між колонками */
    margin: 0;
    padding: 6px 14px; /* Зменшили вертикальний відступ з 10px до 6px */
}

/* 3. Міні-контейнер для зображення товару */
.search-image-holder {
    width: 36px; /* Оптимальний компактний розмір (було 48px) */
    height: 36px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 4px;
    overflow: hidden;
}

.search-image-holder img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* 4. Текстовий блок (Центр) */
.search-body-holder {
    flex-grow: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Назва товару */
.search-product-title {
    margin: 0;
    line-height: 1.2;
}

.search-product-title a {
    font-size: 13px; /* Трохи акуратніший шрифт */
    font-weight: 500;
    color: #1e293b;
    text-decoration: none;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; /* Назва суворо в один рядок, щоб тримати компактність */
}

.search-product-item:hover .search-product-title a {
    color: #0284c7; /* Колір акценту при наведенні */
}

/* Мета-дані (Код + Наявність) */
.search-product-meta {
    display: flex;
    align-items: center;
    gap: 8px; /* Ближче один до одного */
    margin-top: 2px; /* Притиснули впритул до назви */
    font-size: 11px;
    color: #64748b;
    line-height: 1;
}

/* 5. Права зона з ціною */
.search-price-area {
    text-align: right;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    min-width: 75px; /* Звузили зону ціни */
}

.price-current {
    font-weight: 700;
    font-size: 13px; /* Акуратна ціна */
    color: #0f172a;
    line-height: 1.1;
}

.price-prev {
    font-size: 10.5px;
    color: #94a3b8;
    text-decoration: line-through;
    line-height: 1.1;
    margin-top: 1px;
}

/* Кастомний тонкий скролбар, щоб не з'їдав простір */
.ajax-search-results::-webkit-scrollbar {
    width: 4px;
}
.ajax-search-results::-webkit-scrollbar-track {
    background: transparent;
}
.ajax-search-results::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 10px;
}
/* Статуси наявності — повертаємо фірмові кольори та рівняємо іконки */
.search-product-availability {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

.status-available {
    color: #59B210; /* Твій фірмовий зелений */
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 500;
    line-height: 1;
}

.status-onorder {
    color: #ea580c;
    font-weight: 500;
    line-height: 1;
}

.status-unavailable {
    color: #d80006; /* Твій фірмовий червоний */
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 500;
    line-height: 1;
}

/* Скидаємо можливі перекоси у самих SVG */
.search-product-availability svg {
    display: block;
    flex-shrink: 0;
    margin: 0;
}


@media (min-width: 992px) {
    
    /* 1. Розширюємо поле результатів на 20px зліва та справа */
    .search-wrapper .ajax-search-results {
        width: calc(100% + 60px) !important; /* На 40px ширше за інпут */
        left: -30px !important;              /* Зсуваємо ліворуч на 20px для центрування */
        
        /* 2. Збільшуємо висоту вікна результатів */
        max-height: 580px !important;        /* Тепер влазить набагато більше товарів */
        border-radius: 12px;
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); /* Робимо тінь глибшою */
    }
    

    /* 3. Блокування загального скролу сайту */
    body.search-scroll-lock {
        overflow: hidden !important;
        /* Наступний рядок необов'язковий, але він запобігає "сіпанню" сайту праворуч 
           при зникненні стандартного скролбару Windows (залежить від верстки) */
        padding-right: 15px; 
    }
/* 1. Додаємо більше простору всередині кожного рядка */
    .search-product-form {
        padding: 10px 20px !important; /* Було 6px -> стало 10px. Текст більше не затиснутий */
        gap: 16px !important;           /* Збільшуємо відстань між картинкою, текстом і ціною */
    }

    /* 2. Збільшуємо мініатюру товару, щоб деталі було видно краще */
    .search-image-holder {
        width: 46px !important;  /* Було 36px -> стало 46px */
        height: 46px !important;
        border-radius: 6px;
    }

    /* 3. Робимо назву товару чіткою та помітною */
    .search-product-title a {
        font-size: 15px !important; /* Було 13px -> тепер ідеальний стандартний розмір */
    }

    /* 4. Збільшуємо шрифт коду товару та статусів наявності */
    .search-product-meta {
        font-size: 12.5px !important; /* Було 11px */
        gap: 14px !important;         /* Більша відстань між кодом та наявністю */
        margin-top: 5px !important;   /* Трохи відсуваємо вниз від назви */
    }
    
    /* Збільшуємо іконки галочки та хрестика в статусах */
    .search-product-availability svg {
        width: 14px !important;
        height: 14px !important;
    }

    /* 5. Робимо акцент на ціні (вона має кидатися в очі) */
    .search-price-area {
        min-width: 95px !important; /* Трохи розширюємо колонку під більший шрифт */
    }

    .price-current {
        font-size: 16px !important; /* Було 13px -> тепер ціна виразно виділяється */
    }

    .price-prev {
        font-size: 12.5px !important; /* Було 10.5px */
        margin-top: 3px !important;
    }
}
/* ОФОРМЛЕННЯ ЗАМОВЛЕННЯ */ 
/* Робимо елементи випадайки клікабельними та красивими */
#res .city_result, 
#warehouses .wh_result {
    display: block;
    width: 100%;
    padding: 0.4rem 1rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    font-size: 0.9rem;
    transition: background-color 0.15s ease-in-out;
    z-index:1000 !important;
}

#res .city_result:hover, 
#warehouses .wh_result:hover {
    background-color: #f8f9fa;
    color: #0d6efd;
}

/* Візуальний ефект збільшених плашок для вибору радіо-кнопок */
.custom-delivery-clickable,
.custom-payment-clickable {
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}
.custom-delivery-clickable:hover,
.custom-payment-clickable:hover {
    border-color: #0d6efd !important;
    background-color: rgba(13, 110, 253, 0.03) !important;
}

/*СТИЛІ ДЛЯ СТАТЕЙ*/

/* Плавність для всього */
.transition-all {
    transition: all 0.2s ease-in-out;
}

/* Ефект при наведенні на картку статті */
.article-item:hover {
    border-color: #dee2e6 !important;
    background-color: #fafafa !important;
}

/* Підсвітка заголовка */
.article-title-link:hover {
    color: #212529 !important;
    text-decoration: underline !important;
}

/* Анімація стрілочки "Читати далі" */
.read-more-link:hover svg {
    transform: translateX(4px);
}
/* Робимо всі картинки всередині статей адаптивними */
.article-body img {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain;
    /* Бонус: додамо легке закруглення, щоб пасувало до нашої картки rounded-4 */
    border-radius: 8px; 
}

/*ПОПУЛЯРНІ ТОВАРИ*/
/* Контейнер ховає стандартний бігунок прокрутки для Webkit (Chrome, Safari, Edge) */
.auto-slider-container::-webkit-scrollbar {
    display: none;
}

.auto-slider-container {
    cursor: grab; /* Курсор у вигляді «ручки» натякає, що можна тягнути */
    user-select: none; /* Забороняє випадкове виділення тексту при перетягуванні */
}

.auto-slider-container:active {
    cursor: grabbing; /* Коли затиснули мишку — ручка стискається */
}

/* Картки всередині треку */
.auto-slider-track {
    display: inline-flex;
    width: max-content;
}

.slider-item {
    white-space: normal !important;
}

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}

/* Стилі контейнера слайдера відгуків */
.reviews-slider-container {
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    cursor: grab;
    user-select: none;
    -webkit-overflow-scrolling: touch;
}

/* Ховаємо скролбари */
.reviews-slider-container::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}
.reviews-slider-container {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.reviews-slider-container:active {
    cursor: grabbing;
}

/* Трек слайдера відгуків */
.reviews-slider-track {
    display: inline-flex !important;
    width: max-content !important;
}

/* Елемент відгуку */
.review-slider-item {
    display: inline-block !important;
    float: none !important;
    vertical-align: top;
}