/* --- ПОДКЛЮЧЕНИЕ ШРИФТОВ ROBOTO CONDENSED --- */

/* Thin (100) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

/* ExtraLight (200) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-ExtraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

/* Light (300) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

/* Regular (400) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* Medium (500) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* SemiBold (600) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

/* Bold (700) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

/* ExtraBold (800) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

/* Black (900) */
@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../../../javascript/fonts/RobotoCondensed-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../../../javascript/fonts/Manrope-VariableFont_wght.ttf') format('truetype');
    font-weight: 200 800;
    font-style: normal;
    font-display: swap;
}



* {
    font-family: 'Roboto Condensed', sans-serif;
}

.carousel_module p,
.carousel_module span,
.carousel_module a {

    font-family: 'Manrope', sans-serif;
}


.navbar-nav .nav-link {
    position: relative;
    font-weight: 400;
    /* Ваша базовая жирность (Regular) */
}

/* Невидимый псевдоэлемент, который резервирует место */
.navbar-nav .nav-link::before {
    content: attr(data-text);
    /* Текст из HTML-атрибута */
    display: block;
    font-weight: 700;
    /* Жирность при наведении (Bold) */
    height: 0;
    overflow: hidden;
    visibility: hidden;
}

/* При наведении меняем жирность у ВИДИМОГО текста */
.navbar-nav .nav-link:hover {
    font-weight: 700;
    /* Та же жирность, что и в ::before */
}

.hover-white:hover {

    color: #fff;

}

.dropdown-toggle::after {
    /* Замените .selector::after на ваш реальный селектор */
    content: '';
    display: inline-block;
    width: 1em;
    /* Размер иконки */
    height: 1em;
    /* Размер иконки */
    margin-left: .255em;
    vertical-align: middle;

    /* Устанавливаем SVG как фон */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

    /* Убираем старые границы, если они остались */
    border: 0;
}

.bg_blue {
    background-color: #3965C8;
}

.text_blue {
    color: #3965C8;
}

.container-fluid {
    max-width: 1440px;
    background-color: #ECECEC;
}

.bg_form_gray {


    background-color: #ECECEC;

}

.bg_image_none {

    background-image: none;
}

.menu_header {
    min-height: 6.625rem;
}

.logotype {
    max-height: 26px;
}





.right_0 {
    right: 0px !important;
}

.top_0 {
    top: 0px !important;
}

.bottom_0 {
    bottom: 0px !important;
}

.left_0 {
    left: 0px !important;
}

.focus-none:focus,
.focus-none:active,
.focus-none:focus-visible {
    outline: none !important;
    border: none !important;
    box-shadow: none;

}

.text-color-based {
    color: #cc0109 !important;
}

.bg-color-based {
    background-color: #cc0109;
    color: #fff !important;
}

.delivery-button.active {
    background-color: #dc3545 !important;
    color: #fff;
}

.payment_list {
    background-color: #f2f2f2;
}

.delivery-button {
    background-color: #f2f2f2;
}

.text-green {
    color: #00ff22 !important;
}


.text-black {
    color: #000 !important;
}



.rem_0_3 {
    font-size: 0.3rem;
}



.font-0_4rem {
    font-size: 0.4rem;
}

.rem_0_5 {
    font-size: 0.5rem;
}

.rem_0_6r {
    font-size: 0.6rem;
}

.rem_0_65 {
    font-size: 0.65rem;
}

.rem_0_7 {
    font-size: 0.7rem;
}

.rem_0_75 {
    font-size: 0.75rem;
}

.rem_0_8 {
    font-size: 0.8rem;
}

.rem_0_875 {
    font-size: 0.875rem;
}

.rem_0_9 {
    font-size: 0.9rem;
}

.rem_1 {
    font-size: 1rem;
}

.rem_1_125 {
    font-size: 1.125rem;
}

.rem_1_25 {
    font-size: 1.25rem;
}

.rem_1_2 {
    font-size: 1.2rem;
}

.rem_1_3 {
    font-size: 1.3rem;
}

.rem_1_5 {
    font-size: 1.5rem;
}

.rem_1_7 {
    font-size: 1.7rem;
}

.rem_2 {
    font-size: 2rem;
}

.rem_2_5 {
    font-size: 2.5rem;
}


.font-13px {

    font-size: 13px !important;
}

.font-size-inherit {
    font-size: inherit !important;
}

.cursor-pointer {
    cursor: pointer !important;
}

.name {
    font-size: 28px;
}

.text-wrap {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.collapsing {
    -webkit-transition: none;
    transition: none;
    display: none;
}

.top_go {
    z-index: 1000000 !important;
    right: 5%;
    position: fixed;
    top: 90vh;
    padding: 10px 10px 10px 10px;
    border-radius: 10px;
}


.wishlist_count_int,
.compare_count_int {
    width: 1rem;
    font-size: 0.7rem;
    height: 1rem;
    text-align: center;
    top: -0.5rem;
    margin-left: 2rem;
}

.cart_count_int_mobile {
    width: 0.8rem;
    font-size: 0.46rem;
    height: 0.8rem;
    text-align: center;
    top: 0.1rem;
    margin-left: 1.9rem;
    border: 1px solid #727272;
    font-weight: bold;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

/* Track */
::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 100px 100px 100px #dee2e6;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #0d6efd;
}

::-webkit-scrollbar-thumb:window-inactive {
    background: #0d6efd;
}


#SliderShowArsi:hover a {
    display: flex !important;
}

#SliderShowArsi .not_active {
    background-color: #dc3545 !important;
}

#SliderShowArsi .active.not_active {
    background-color: #343a40 !important;
}

#SliderShowArsi:hover li {
    opacity: 1 !important;
}

#SliderShowArsi:hover a {
    opacity: 1 !important;
}

.opacity_1 {

    opacity: 1;
}

.word_split {
    margin: 0;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    word-break: break-all;
}

.carousel-indicators li {
    background-color: #cc0109;
}

.status_updated {
    -webkit-animation: spin 2s linear infinite;
    -moz-animation: spin 2s linear infinite;
    animation: status_updated 2s linear infinite;
}

.breadcrumb-item {

    width: auto !important;
}

.breadcrumb {
    padding-left: 0px !important;
}

@-moz-keyframes status_updated {
    100% {
        -moz-transform: rotate(360deg);
    }
}

@-webkit-keyframes status_updated {
    100% {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes status_updated {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@media (max-width: 575.98px) {

    .border-xs-left-0 {
        border-left: 0px !important;
    }

    .border-xs-right-0 {
        border-right: 0px !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {

    .border-sm-0 {
        border: 0px !important;
    }

    .border-sm-left-0 {
        border-left: 0px !important;
    }

    .border-sm-right-0 {
        border-right: 0px !important;
    }


}

@media (min-width: 768px) and (max-width: 991.98px) {

    .border-md-0 {
        border: 0px !important;
    }

    .border-md-left-0 {
        border-left: 0px !important;
    }

    .border-md-right-0 {
        border-right: 0px !important;
    }

}

@media (min-width: 992px) and (max-width: 1199.98px) {}

@media (min-width: 1200px) {}




.attr_group_name .arrow-right {
    display: none !important;
}

.attr_group_name .arrow-down {
    display: block !important;
}



.attr_group_name.collapsed .arrow-right {
    display: block !important;
}

.attr_group_name.collapsed .arrow-down {
    display: none !important;
}


.info_block .word_split {
    max-width: 140px;
}


.text_mute {
    color: #A3A5A9;
}

.bg-color-gray {
    background-color: #C8CACF;

}

.bg-color-black {
    background-color: #1C1C1C;
}


.text-gray {
    color: #B6B6B6;

}




.spec-row {
    display: flex;
    align-items: baseline;
    /* Выравнивание по базовой линии текста */
    justify-content: space-between;
    margin-bottom: 6px;
    /* Отступ между строками */
}

/* Название характеристики */
.spec-name {
    padding-right: 5px;
    color: #333;
    position: relative;
    z-index: 1;
    background: #fff;
    /* Чтобы текст не перекрывался точками, если экран узкий */
}

/* Точки (линия) */
.spec-dots {
    flex-grow: 1;
    /* Занимает все свободное место */
    border-bottom: 1px dotted #ccc;
    /* Сами точки */
    margin: 0 5px;
    position: relative;
    top: -5px;
    /* Чуть приподнимаем точки, чтобы они были на уровне текста */
    opacity: 0.6;
}

/* Значение характеристики */
.spec-value {
    padding-left: 5px;
    text-align: right;
    font-weight: 500;
    /* Жирность как на скриншоте */
    color: #000;
}

/* Заголовок группы */
.spec-group-title {
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.1rem;
    border-bottom: none;
}

.font-0_6rem {
    font-size: 0.6rem;
}

.font-0_65rem {
    font-size: 0.65rem;
}

.font-0_75rem {
    font-size: 0.75rem;
}

.font-0_875rem {
    font-size: 0.875rem;
}


.font-0_9rem {
    font-size: 0.9rem;
}

.font-1rem {
    font-size: 1rem !important;
}

.font-1_2rem {
    font-size: 1.2rem !important;
}

.font-1_3rem {
    font-size: 1.3rem !important;
}

.font-1_5rem {
    font-size: 1.5rem !important;
}

.font-2rem {
    font-size: 2rem !important;
}

.font-13px {

    font-size: 13px !important;
}

.title_page {

    font-family: Roboto Condensed;
    font-weight: 500;
    font-size: 34px;
    text-transform: uppercase;
}


.button_plus_minus_cart {

    width: 20px;
    height: 20px;
    border: 1px solid #A3A5A9;
    border-radius: 100%;

}
/* === Адаптивность: шапка и подвал === */

/* Мини-корзина: десктопные размеры (инлайн-стили перенесены сюда) */
#cart_block_show {
    max-width: 450px;
    width: max-content;
    min-width: 320px;
}

/* Мини-корзина: мобильные — на всю ширину с небольшими полями */
@media (max-width: 575.98px) {
    #cart_block_show {
        left: 0.5rem !important;
        right: 0.5rem !important;
        max-width: none;
        width: auto;
        min-width: auto;
    }
}

/* Логотип в подвале: ограничение ширины */
.footer-logo-img {
    max-width: 200px;
}

/* === Адаптивность: карточка товара === */

/* Миниатюры галереи */
.product-thumb-img {
    width: 120px;
    border: 2px solid transparent;
    border-radius: 4px;
}
.product-thumb-img.product-thumb-active { border-color: #0d6efd; }

/* Галерея товара: просмотр */
.gallery-modal-content { background: rgba(20, 20, 20, 0.97); }
.gallery-slide-img { max-height: 75vh; max-width: 100%; object-fit: contain; margin: 0 auto; display: block; }
.gallery-thumb { height: 64px; width: 64px; object-fit: contain; background: #fff; border: 2px solid transparent; border-radius: 4px; cursor: pointer; flex: 0 0 auto; }
.gallery-thumb.gallery-thumb-active { border-color: #0d6efd; }

/* Hover-зум на странице товара (только десктоп) */
#zoom-lens {
    position: absolute;
    width: 140px;
    height: 140px;
    border: 1px solid #0d6efd;
    background: rgba(13, 110, 253, 0.12);
    pointer-events: none;
    z-index: 5;
}
#zoom-result {
    position: absolute;
    top: 0;
    left: calc(100% + 12px);
    width: 420px;
    height: 420px;
    background-repeat: no-repeat;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    pointer-events: none;
    z-index: 10;
}
@media (max-width: 991.98px) {
    #zoom-lens, #zoom-result { display: none !important; }
}

/* Стрелка аккордеона заказов: поворот вниз при раскрытии */
.order-chevron {
    transition: transform 0.2s ease;
}
[aria-expanded="true"] .order-chevron {
    transform: rotate(90deg);
}

/* Инфо-страницы: контент из редактора админки не должен ломать карточку */
.info-content img { max-width: 100%; height: auto; }
.info-content iframe { max-width: 100%; }
.info-content table { width: 100%; max-width: 100%; border-collapse: collapse; }
.info-content table td, .info-content table th { border: 1px solid #dee2e6; padding: 0.5rem; }

/* Блок цены — тач-таргет 44px и ширина инпута количества */
.price-card .btn-add-cart {
    min-height: 44px;
}
.price-card .count_add_cart {
    width: 3.5rem;
}

/* Строки характеристик — разрешить перенос */
#attribute .spec-row {
    flex-wrap: wrap;
}
#attribute .spec-value {
    word-break: break-word;
}

/* Мобильная адаптивность (<576px) */
@media (max-width: 575.98px) {
    .product-thumb-img {
        width: 72px;
    }
    #product-product h1 {
        font-size: 1.35rem;
    }
}

/* === Адаптивность: корзина === */

/* Тач-таргеты: кнопки +/- количества не менее 38px */
@media (max-width: 767.98px) {
    .button_plus_minus_cart {
        width: 38px;
        height: 38px;
    }
}

/* Тач-таргеты: иконки удаления и избранного не менее 38px */
@media (max-width: 767.98px) {
    .control_button .remove_product i,
    .control_button .wishlist a i {
        font-size: 1.5rem;
        min-width: 38px;
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}

/* Карта СДЭК: адаптивная высота */
@media (max-width: 767.98px) {
    #cdek-map {
        height: 70vh !important;
    }
}

/* === Адаптивность: категории и списки === */

/* Сортировка: ограничение ширины select на мобильных */
@media (max-width: 575.98px) {
    #input-sort {
        max-width: 12rem;
    }
}

/* Карточки товаров: название меньше на мобильных */
@media (max-width: 575.98px) {
    .product-layout .card-title {
        font-size: 0.875rem;
    }
    .product-layout .card-title a {
        font-size: 0.875rem;
    }
}

/* Кнопки действий в карточке: перенос на мобильных */
@media (max-width: 575.98px) {
    .product-layout .d-flex.justify-content-between {
        flex-wrap: wrap;
    }
}

/* === Адаптивность: личный кабинет === */

/* Активная вкладка ЛК — синяя кнопка с белым текстом (перебиваем утилиты bg-white/text-dark) */
.menu_account .account_tab.active {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    color: #fff !important;
}

/* Карточки/блоки в личном кабинете — отступы между секциями на мобильных */
.account-section + .account-section {
    margin-top: 1rem;
}

/* Табы аккаунта — горизонтальная прокрутка на мобильных */
@media (max-width: 575.98px) {
    .menu_account {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .menu_account .account_tab {
        flex-shrink: 0;
        white-space: nowrap;
    }
}

/* Кнопки сохранения в формах — полная ширина на мобильных */
@media (max-width: 767.98px) {
    .account-form-save {
        width: 100%;
    }
}

/* Формы в личном кабинете — увеличенный тач-таргет для кнопок */
@media (max-width: 767.98px) {
    #account-edit .btn,
    #account-password .btn,
    #account-address .btn {
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* Мобильная нижняя навигация */
.mobile-bottom-nav {
    z-index: 1030;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.08);
}
.mobile-nav-btn {
    flex: 1 1 0;
    border: 0;
    border-radius: 0;
    padding: 0.4rem 0 0.5rem;
    color: #333;
    text-align: center;
    line-height: 1.2;
}
.mobile-nav-badge {
    top: 2px;
    right: 50%;
    margin-right: -1.4rem;
    padding: 0.1rem 0.3rem;
    font-size: 0.65rem;
}
@media (max-width: 1199.98px) {
    body {
        padding-bottom: 64px; /* место под фиксированную нижнюю панель */
    }
    .menu_header {
        min-height: auto;
    }
}
