/* ==========================================================================
   1. Базовые правки UIkit / Joomla
   ========================================================================== */

/* Статья: белый фон и отступы (ниже переопределяется на padding: 0) */
.uk-article {
    padding: 40px;
    background: #fff;
}

/* Селекты на всю ширину, место справа под стрелку */
.uk-select {
    width: 100%;
    padding-right: 35px !important;
}

/* Финальный вариант отступов статьи — без padding */
.uk-article {
    padding: 0 !important;
}

/* Мобильное меню (offcanvas): пункт «Избранное» — текст вместо иконки */
.uk-offcanvas ul.uk-nav > li > a[href="/?option=com_zoo&controller=favorite&task=favorite&app_id=1&Itemid=101"]:after {
    content: 'Избранное';
}

.uk-offcanvas ul.uk-nav > li > a[href="/?option=com_zoo&controller=favorite&task=favorite&app_id=1&Itemid=101"] img {
    display: none;
    visibility: hidden;
}

/* Подписи форм Joomla — выравнивание влево */
.dl-horizontal dt,
.form-horizontal .control-label {
    text-align: left;
}

legend {
    padding: 0;
    display: block;
    margin-bottom: 20px;
    font-size: 14px;
    font-weight: 600;
}

.uk-button-link {
    font-weight: 100;
}

/* Системные сообщения Joomla */
#system-message-container {
    width: auto;
}


/* ==========================================================================
   2. Конкретные модули по ID (Joomla module ID)
   #module-130 — верх главной (фильтры)
   #module-285 — блок на всю высоту
   #module-292 — каскадный фильтр (показ скрытых полей)
   #module-288 / #module-289 — корзина / избранное (бейджи-счётчики)
   ========================================================================== */

#module-130 {
    position: relative;
    z-index: 2;
    background: #fff;
    border-bottom: 1px solid #d8d8d8;
    -webkit-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, .1);
    -moz-box-shadow: 0 3px 10px 0 rgba(0, 0, 0, .1);
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, .1);
}

#module-130 > .uk-section {
    background: #fff;
}

/* Чтобы тень #module-130 не перекрывалась следующим builder-блоком */
#module-130 + .builder {
    position: relative;
    z-index: 1;
}

#module-285 {
    height: 100%;
}

/* В модуле 292 показать 2-й ряд каскада и конкретный фильтр-элемент */
#module-292 .cascade__row:nth-child(2) {
    display: block;
    visibility: visible;
}

#module-292 #jbfilter-id-d55083b9-66a2-42b4-9553-52643943ba39 {
    display: block;
    visibility: visible;
}

/* Тот же фильтр вне модуля 292 — скрыт */
#jbfilter-id-d55083b9-66a2-42b4-9553-52643943ba39 {
    display: none;
    visibility: hidden;
}

/* Оранжевый кружок-счётчик на иконках корзины / избранного */
#module-288 .uk-position-relative span,
#module-289 .uk-position-relative span {
    position: absolute;
    background: #f60;
    color: #fff;
    width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    font-size: .6em;
    border-radius: 50%;
    top: -7px;
    right: -7px;
}

#module-289 a {
    display: block;
}


/* ==========================================================================
   3. Шапка сайта (header) и основной контент
   ========================================================================== */

/* Карточки фильтров на главной — минимальная высота */
/*.frontpage-filter .uk-card {*/
/*    min-height: 460px;*/
/*}*/

.tm-main {
    padding-bottom: 40px !important;
}

/* Нижняя граница навбара */
.tm-header .uk-navbar-container {
    border-bottom: 1px solid #d8d8d8;
}

/* Вертикальные разделители справа в шапке */
/*.tm-header .uk-navbar-container .uk-navbar-right > .uk-navbar-item:not(:first-child) {*/
/*    border-left: 1px solid #d8d8d8;*/
/*}*/

.tm-header-mobile {
    border: 1px solid #d8d8d8;
}

/* Телефоны / соцсети справа в шапке */
.header__right .uk-subnav a {
    color: #000;
    font-size: 16px;
}

.header__right .uk-subnav a:hover {
    color: #f60;
}

.header__right .uk-subnav li:nth-child(3),
.header__right .uk-subnav li:nth-child(4) {
    padding-left: 7px;
}

/*Счетчик на иконке избранное, корзина*/
.counter,
.uk-badge.quantity{
    position: absolute;
    background: #f60;
    color: #fff;
    width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    font-size: .6em;
    border-radius: 50%;
    top: -7px;
    right: -7px;
}

/* ==========================================================================
   4. Модуль скидки (discount-module) на главной
   ========================================================================== */

.discount-module > div {
    padding: 30px;
}

/* Верх: фото + затемнение + белый заголовок */
.discount-module__top {
    min-height: 170px;
    background-image: linear-gradient(0deg,rgba(0,0,0,.49),rgba(0,0,0,.49)),url(/images/icons/img-discount.jpg);
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    box-sizing: border-box;
}

.discount-module__top h3 {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
}

/* Середина: лёгкий оранжевый фон */
.discount-module__middle {
    background: rgba(255,102,0,.07);
}


/* ==========================================================================
   5. Модуль поиска / фильтра запчастей (filter-module)
   compact — короткий вид; full — развёрнутый с каскадом
   ========================================================================== */

.filter-module {
    transition: 0s !important;
}

.filter-module select {
    width: 100%;
}

/* Chosen.js — стилизация селектов фильтра под UIkit */
.chosen-container,
.chosen-container-single {
    width: 100% !important;
}

.chosen-container-single .chosen-single {
    background: transparent !important;
    height: 36px !important;
    font-size: 15px;
    color: black !important;
    padding: 6px 20px 0 10px !important;
    border: 1px solid rgba(178, 178, 178, 0.65) !important;
    box-shadow: none !important;
    border-radius: 3px !important;
}

.chosen-with-drop .chosen-single {
    border-color: #FF6600 !important;
}

.chosen-container-single .chosen-single div b {
    background: url(https://autoretail.by/media/zoo/applications/jbuniversal/assets/img/chosen/chosen-sprite.png) no-repeat -5px 10px !important;
    background-image: url(data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23000000%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23000000%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A) !important;
}

/* Кнопка submit поверх соседних элементов (например, в поле поиска) */
input[type="submit"] {
    z-index: 9;
}

/* Скрыть стандартные лейблы JBZoo-каскада */
.filter-module .jbcascade-label {
    display: none !important;
    visibility: hidden !important;
}

.filter-module_compact .filter-module__form {
    margin-bottom: 80px;
}

/*.filter-module_full {*/
/*    margin-bottom: 60px;*/
/*}*/

/* Кнопка «показать ещё параметры» + линия-разделитель */
.filter-module_full .filter-module__toggle {
    font-size: 13px;
    margin-top: 25px !important;
    margin-bottom: 25px !important;
    position: relative;
}

.filter-module_full .filter-module__toggle a {
    color: rgba(80,80,80,.47);
    background: #fff;
    position: relative;
    z-index: 10;
    padding-right: 15px;
}

.filter-module_full .filter-module__toggle a:hover {
    text-decoration: none;
    color: #000;
}

.filter-module_full .filter-module__toggle:after {
    content: '';
    position: absolute;
    bottom: 10px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    background: #d8d8d8;
}

/*.filter-module_full .filter-module__buttons {*/
/*    margin-top: 40px;*/
/*}*/

/* Каскад: сетка 2 колонки */
.filter-module_full .cascade > div {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
    margin-left: -20px;
}

.filter-module_full .cascade > div > div {
    box-sizing: border-box;
    width: 50%;
    max-width: 100%;
    padding-left: 20px;
}

/* Поле ввода + кнопка «найти» внутри (flip) */
.filter-module__container {
    position: relative;
}

.filter-module__container input[type=text] {
    width: 100%;
    box-sizing: border-box;
    padding-right: 100px;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 0;
    -webkit-border-top-left-radius: 0;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-bottomleft: 0;
    -moz-border-radius-topleft: 0;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.filter-module__flip {
    right: 0;
    left: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.filter-module__flip .uk-button,
.filter-module__flip input[type="submit"].uk-button {
    height: 38px;
    line-height: 38px;
    text-transform: none;
    font-size: 13px;
    font-weight: 600;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 0;
    -webkit-border-top-left-radius: 0;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-bottomleft: 0;
    -moz-border-radius-topleft: 0;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

/* Нижняя панель фильтра (ссылка «расширенный поиск» и т.п.) */
.filter-module__footer {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    background: #F6F6F6;
    border-top: 1px solid #d8d8d8;
    padding: 20px;
}

.filter-module__footer a {
    color: #505050;
    text-decoration: none;
}

.filter-module__footer a:hover {
    color: #000;
}

/* Стрелка в футере переворачивается, когда доп. блок открыт */
.filter-module__hidden:not(.uk-hidden)+.filter-module__footer > a svg {
    transform: rotate(180deg);
}

.cascade__row:nth-child(2) {
    margin-top: 10px;
}


/* ==========================================================================
   6. Слайдеры / блоки на главной
   latest-auto / news-auto — авто в разборке
   latest-parts / related — запчасти и похожие
   latest-news / latest-articles — новости и статьи
   ========================================================================== */

/* --- Авто в разборке --- */
.latest-auto__item-title,
.news-auto__item-title {
    font-size: 18px;
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: 700;
}

.latest-auto__item-title a,
.news-auto__item-title a {
    color: #000;
    text-decoration: none;
}

.latest-auto__item-title a:hover,
.news-auto__item-title a:hover {
    color: #f60;
}

.latest-auto__item-props,
.news-auto__item-props {
    font-size: 15px;
}

/* Стрелки слайдера: вынесены наружу, левая зеркалится */
.latest-auto .uk-position-center-left-out,
.news-auto .uk-position-center-left-out {
    margin-right: -40px;
}

.latest-auto .uk-position-center-left-out img,
.news-auto .uk-position-center-left-out img {
    transform: scale(-1, 1);
}

.latest-auto .uk-position-center-right-out,
.news-auto .uk-position-center-right-out {
    margin-left: -40px;
}

.news-auto__item-props {
    font-size: 12px;
    margin-top: 10px;
}

/* --- Запчасти / похожие товары: заголовок, цена, скидка --- */
.latest-parts__item-title,
.related__item-title {
    font-size: 18px;
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: 700;
}

.latest-parts__item-title a,
.related__item-title a {
    color: #000;
    text-decoration: none;
}

.latest-parts__item-title a:hover,
.related__item-title a:hover {
    color: #f60;
}

.latest-parts__item-price .uk-subnav > * > :first-child,
.related__item-price .uk-subnav > * > :first-child {
    text-transform: none !important;
}

.latest-parts__item-price .jbprice-sku,
.related__item-price .jbprice-sku {
    font-size: 14px;
    color: #C1C1C1;
    margin-bottom: 10px;
}

/* Старая цена — зачёркнутая */
.latest-parts__item-price .jbprice-value-price,
.related__item-price .jbprice-value-price {
    font-size: 16px;
    font-weight: 700;
    color: rgba(0,0,0,.32);
    margin-right: 10px;
    text-decoration: line-through;
}

/* Итоговая цена */
.latest-parts__item-price .jbprice-value-total,
.related__item-price .jbprice-value-total {
    position: relative;
    font-size: 19px;
    font-weight: 700;
}

/* Бейдж скидки над ценой */
.latest-parts__item-price .jbprice-value-discount,
.related__item-price .jbprice-value-discount {
    position: absolute;
    top: -9px;
    right: -20px;
}

.latest-parts .uk-position-center-left-out,
.related .uk-position-center-left-out {
    margin-right: -40px;
}

.latest-parts .uk-position-center-left-out img,
.related .uk-position-center-left-out img {
    transform: scale(-1, 1);
}

.latest-parts .uk-position-center-right-out,
.related .uk-position-center-right-out {
    margin-left: -40px;
}

/* --- Новости --- */
.latest-news__item-date,
.latest-news__item-text {
    font-size: 12px;
    margin-bottom: 10px;
    color: rgba(0,0,0,.65);
}

.latest-news__item-title h3 {
    font-size: 14px;
    margin-bottom: 10px;
}

.latest-news__item-title a {
    color: #000;
    text-decoration: none;
}

.latest-news__item-title a:hover {
    color: #f60;
}

.latest-news .uk-position-center-left-out {
    margin-right: -40px;
}

.latest-news .uk-position-center-left-out img {
    transform: scale(-1, 1);
}

.latest-news .uk-position-center-right-out {
    margin-left: -40px;
}

/* --- Статьи / блог --- */
.latest-articles__item-text {
    font-size: 12px;
    margin-bottom: 10px;
    color: rgba(0,0,0,.65);
}

.latest-articles__item-title h3 {
    font-size: 14px;
    margin-bottom: 10px;
}

.latest-articles__item-title a {
    color: #000;
    text-decoration: none;
}

.latest-articles__item-title a:hover {
    color: #f60;
}


/* ==========================================================================
   7. Страница «Контакты»
   ========================================================================== */

/* Блок режима работы (оранжевая рамка) */
.contact__block {
    padding: 14px 18px;
    border-radius: 2px;
    border: 1px solid #f60;
    display: inline-block;
}

.contact__block-time {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin-right: 20px;
}

.contact__block-text {
    font-size: 12px;
    color: #666;
}

.contact__info {
    margin-bottom: 40px;
}

/* Адрес с иконкой-маркером слева */
.contact__info-block {
    padding-left: 45px;
    position: relative;
}

.contact__info-block:before {
    content: '';
    width: 31px;
    height: 41px;
    background: url(/images/icons/ico-marker.svg);
    position: absolute;
    top: 0;
    left: 0;
}

.contact__info-title {
    font-size: 14px;
    margin-bottom: 0;
}

.contact__info-subtitle {
    font-size: 13px;
    color: #666;
}

.contact__info-map {
    margin-top: 15px;
    font-size: 12px;
    color: rgba(0,0,0,.69);
}

.contact__info-phone {
    font-size: 14px;
    line-height: 1;
    color: #000;
    font-weight: 600;
}

.contact__info-phone:hover {
    text-decoration: none;
    color: #f60;
}

.contact__info-phones li:not(:last-child) {
    margin-bottom: 15px;
}


/* ==========================================================================
   8. Форма «заказать звонок» (form-flip) — инпут + кнопка справа
   ========================================================================== */

.form-flip {
    text-align: left;
}

.form-flip__button {
    right: 0;
    left: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.form-flip__button .uk-button {
    height: 38px;
    line-height: 38px;
    text-transform: none;
    font-size: 13px;
    font-weight: 600;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-bottom-left-radius: 0;
    -webkit-border-top-left-radius: 0;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-bottomleft: 0;
    -moz-border-radius-topleft: 0;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.form-flip__container {
    position: relative;
}

.form-flip__container input[type=text] {
    padding-right: 100px;
    font-size: 14px;
}


/* ==========================================================================
   9. Каталог: вкладки фильтра (#filter) и подкатегории
   ========================================================================== */

#filter {
    background: linear-gradient(#f3f3f3 0,#f1f1f1 78.23%,rgba(241,241,241,0) 100%);
}

/* Вкладки сверху с оранжевой активной полосой */
#filter .uk-tab {
    margin-top: -40px;
    margin-left: -40px;
}

#filter .uk-tab > * {
    padding-left: 0;
}

#filter .uk-tab > * > a {
    padding: 15px 40px;
    font-size: 16px;
    line-height: 21px;
    border-bottom: none;
    border-top: 5px solid #d8d8d8;
    color: #d8d8d8;
}

#filter .uk-tab > .uk-active > a {
    border-top: 5px solid #f60;
    color: #000;
}

#filter .uk-tab:before {
    content: none;
}

/* Сетка подкатегорий */
.subcategory__categories {
    margin-top: 30px;
}

.subcategory__categories-item {
    text-align: center;
    border: 1px solid #d8d8d8;
}

.subcategory__categories-item h3 {
    font-size: 14px;
    margin-top: 15px;
}

.subcategory__categories-item h3 a {
    color: #000;
    text-decoration: none;
}

.subcategory__categories-item h3 a:hover {
    color: #f60;
}

.subcategory__title {
    font-size: 22px;
    margin-top: 15px;
    margin-bottom: 0;
}

.subcategory__title a {
    color: #000;
    text-decoration: none;
}

.subcategory__title a:hover {
    color: #f60;
}

/* Разделитель «ещё параметры» в фильтре каталога */
.filter__divider {
    color: #d8d8d8;
    position: relative;
    margin-top: 25px;
    font-size: 13px;
}

.filter__divider-button {
    display: inline-block;
    padding-right: 25px;
    background: #fff;
    position: relative;
    z-index: 100;
    cursor: pointer;
}

.filter__divider span.uk-icon {
    margin-left: 15px;
}

.filter__divider:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    height: 1px;
    width: 100%;
    background: #d8d8d8;
    z-index: 90;
}

.filter__hidden {
    margin-top: 25px;
}

.filter__buttons {
    margin-top: 25px;
}

.filter__buttons .uk-button+.uk-button {
    margin-left: 15px;
}


/* ==========================================================================
   10. Список запчастей (.parts) — карточки в каталоге
   ========================================================================== */

/* .parts и .uk-list на одном ul — без пробела между классами */
.parts.uk-list > li:nth-child(n+2),
.parts.uk-list-divider > :nth-child(n+2) {
    margin-top: 30px;
    padding-top: 30px;
}

.parts .uk-grid+.uk-grid-small {
    margin-top: 5px;
}

.parts .uk-subnav {
    margin-left: -20px;
    margin-bottom: 0 !important;
    padding-left: 0 !important;
}

.parts .uk-dropdown-nav {
    padding: 0;
}

.parts .uk-dropdown {
    box-sizing: content-box;
}

.parts__item-title {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 5px;
}

.parts__item-title a {
    color: #000;
}

.parts__item-title a:hover {
    text-decoration: none;
    color: #f60;
}

.parts__item-sku {
    color: #C1C1C1;
    font-size: 14px;
    line-height: 19px;
}

.parts__item-props {
    margin-top: 25px;
}

.parts__item-props .element__label {
    font-size: 13px;
    line-height: 19px;
    color: #C1C1C1;
}

.parts__item-props .element__value {
    font-size: 13px;
    line-height: 19px;
}

/* Цена в списке */
.parts__item-price .jbprice-value-price,
.parts__item-price-base s {
    font-size: 16px;
    font-weight: 700;
    color: rgba(0,0,0,.32);
    text-decoration: line-through;
}

.parts__item-price .jbprice-value-total,
.parts__item-price-total {
    position: relative;
    font-size: 19px;
    font-weight: 700;
}

.parts__item-price .jbprice-value-total:has( > .jbprice-value-discount) {
    padding-right: 30px;
}

.parts__item-price .jbprice-value-discount {
    position: absolute;
    top: -9px;
    right: -20px;
}

.parts__item-price .uk-subnav {
    padding-right: 20px;
}

.parts__item-image {
    position: relative;
}

.parts__item-image img {
    display: block;
    width: 100%;
    height: auto;
}

/* Кнопки «в корзину» и «в избранное» */
.parts__item-button .uk-button,
.parts__item-favorite .uk-button {
    padding: 0 5px;
    line-height: 36px;
    width: 38px;
    height: 38px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.parts__item-button .uk-button-default,
.parts__item-favorite .uk-button-default {
    color: #E4E4E4;
    border: 1px solid #E4E4E4;
    background: 0 0;
}

.parts__item-button .uk-button-primary,
.parts__item-favorite .uk-button-primary {
    border: 1px solid #F19101;
    color: #F19101;
    background: 0 0;
}

.parts__item-link {
    margin-top: 25px;
}

.parts__list-favorite {
    position: relative;
}

.parts__list-favorite > span {
    position: absolute;
    right: 0;
    bottom: 0;
}

.subcategories+.parts {
    margin-top: 60px;
}

.paginations {
    max-width: 932px;
    margin-top: 75px;
}

/* Кнопка «наверх» */
.totop {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #f60;
    color: #fff;
    -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -moz-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
}

.totop img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.totop:hover {
    -webkit-box-shadow: 0 6px 10px 0 rgba(0,0,0,.16);
    -moz-box-shadow: 0 6px 10px 0 rgba(0,0,0,.16);
    box-shadow: 0 6px 10px 0 rgba(0,0,0,.16);
}


/* ==========================================================================
   11. Карточка товара (детальная страница запчасти)
   ========================================================================== */

.parts {
    margin-bottom: 30px;
}

/* Галерея / превью */
.parts__images .uk-thumbnav > * > :after {
    content: none;
}

.parts__images .uk-overlay-primary {
    background: rgba(0,0,0,.6);
}

.parts__images .uk-overlay {
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    color: #fff;
    padding: 10px !important;
}

.parts__images .uk-position-center-left,
.parts__images .uk-position-center-right {
    color: #fff;
    margin-top: 25px;
}

.parts__images .uk-position-center-left:hover,
.parts__images .uk-position-center-right:hover {
    color: rgba(255,255,255,.8);
}

/* Цена на карточке */
.parts__price .jbprice-value-price {
    font-size: 16px;
    font-weight: 700;
    color: rgba(0,0,0,.32);
    text-decoration: line-through;
}

.parts__price .jbprice-value-total {
    position: relative;
    font-size: 19px;
    font-weight: 700;
}

.parts__price .jbprice-value-total:has( > .jbprice-value-discount) {
    padding-right: 30px;
}

.parts__price .jbprice-value-discount {
    position: absolute;
    top: -9px;
    right: -20px;
}

.parts__price .uk-subnav {
    padding-right: 20px;
    margin-bottom: 0 !important;
}

.parts__favorite .uk-button {
    padding: 0 5px;
    line-height: 36px;
    width: 38px;
    height: 38px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.parts__favorite .uk-button-default {
    color: #E4E4E4;
    border: 1px solid #E4E4E4;
    background: 0 0;
}

.parts__favorite .uk-button-primary {
    border: 1px solid #F19101;
    color: #F19101;
    background: 0 0;
}

.parts__favorite_full .uk-button {
    line-height: 43px;
    width: 45px;
    height: 45px;
}

.parts__title {
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 0 !important;
}

.parts__description {
    margin-top: 35px;
}

/* Таблица характеристик */
.parts__props {
    margin-bottom: 35px;
}

.parts__props td:first-child {
    padding-left: 25px;
    color: rgba(0,0,0,.65);
    width: 26%;
    min-width: 4em;
    white-space: nowrap;
}

@media (max-width: 960px) {
    .parts__props td:first-child {
        padding-left: 15px;
    }
}

.parts__props td:last-child {
    color: #000;
}

/*.parts__props-link {*/
/*    font-size: 13px;*/
/*    line-height: 19px;*/
/*}*/

.parts__button .uk-button {
    font-size: 14px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

/* Блоки ниже: галерея, плюсы, похожие, видео */
.parts__gallery {
    margin-top: 70px;
}

.parts__gallery-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

.parts__gallery-link {
    margin-top: 20px;
}

.parts__gallery-link a {
    font-size: 14px;
    color: rgba(0,0,0,.66);
    text-decoration: underline;
}

.parts__gallery-link a:hover {
    color: #000;
}

.parts__plus {
    margin-top: 80px;
}

.parts__plus .uk-card {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.parts__related {
    margin-top: 80px;
}

.parts__related-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

.parts__video {
    margin-top: 80px;
}

.parts__video-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

.parts__video iframe {
    width: 100%;
}

.parts__link {
    margin-top: 30px;
}

.parts__drop {
    margin-top: 15px;
}

.parts__drop .uk-button-link {
    color: #000;
    font-size: 12px;
    text-decoration: underline;
}

.parts__drop .uk-button-link:hover {
    color: #f60;
}


/* ==========================================================================
   12. Корзина (cart) — доставка, оплата, оформление
   ========================================================================== */

.cart__table .jbcartvalue {
    font-size: 19px;
    font-weight: 700;
}

.cart .uk-card-badge {
    top: 20px;
    right: 20px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cart__order,
.cart__payment,
.cart__shipping {
    margin-top: 30px;
}

.cart__order-title,
.cart__payment-title,
.cart__shipping-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 30px;
}

/* Вариант доставки (опечатка в классе: shiping) */
.cart__shiping-field {
    background: #fff;
    color: #000;
    border: 1px solid #d8d8d8;
    -webkit-box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    -moz-box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

.cart__shiping-field.active {
    border: 1px solid #f60;
    background: rgba(255,102,0,.11);
}

/* Выбранный способ оплаты */
.cart__payment input:checked+.cart__payment-field {
    border: 1px solid #f60;
    background: rgba(255,102,0,.11);
}

.cart__payment-field {
    background: #fff;
    color: #000;
    border: 1px solid #d8d8d8;
    -webkit-box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    -moz-box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    box-shadow: 0 10px 10px 0 rgba(0,0,0,.11);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
}

/* Товар уже в корзине — скрыть «добавить»; нет в корзине — скрыть «удалить» */
.in-cart .jbprice-buttons-add {
    display: none;
    visibility: hidden;
}

.not-in-cart .jbprice-buttons-remove {
    display: none;
    visibility: hidden;
}


/* ==========================================================================
   13. Прочее: «читать далее», контакты в offcanvas
   ========================================================================== */

.more-content span {
    display: none;
}

.more-link {
    display: block;
    margin-top: 5px;
}

.offcanvas__contact ul li:first-child {
    margin-bottom: 15px;
    width: 100%;
}


/* ==========================================================================
   14. Адаптив
   ========================================================================== */

/* --- ≤1199px (ноутбуки / большие планшеты) --- */
@media (max-width:1199px) {
    /* Скрыть часть контактов в шапке, чтобы не ломать вёрстку */
    .header__right .uk-subnav li:nth-child(2),
    .header__right .uk-subnav li:nth-child(3),
    .header__right .uk-subnav li:nth-child(4) {
        display: none;
        visibility: hidden;
    }

    .header__right .uk-subnav a {
        font-size: 14px;
    }

    .header .uk-navbar-left .uk-navbar-nav > li > a {
        padding: 0 5px;
    }

}

/* --- ≤959px (планшеты) --- */
@media (max-width:959px) {
    /* Сайдбар сверху */
    #tm-sidebar {
        order: -1;
    }

    #module-130 .uk-width-auto\@m,
    #module-130 .uk-width-expand\@m {
        width: 50%;
    }

    /* Фильтры на главной: 2 колонки + нижний блок на 100% */
    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s {
        flex: auto;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:first-child {
        width: 50%;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:nth-child(2) {
        width: 50%;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:last-child {
        width: 100%;
    }

    /* Футер: 2 колонки */
    .footer-top > div {
        flex: auto;
    }

    .footer-top > div:first-child {
        text-align: center;
    }

    .footer-top > div:nth-child(2) {
        width: 50%;
    }

    .footer-top > div:last-child {
        width: 50%;
    }

    .footer-middle > div {
        flex: auto;
    }

    .footer-middle > div:first-child {
        text-align: center;
    }

    .footer-middle > div:nth-child(2) {
        width: 50%;
    }

    .footer-middle > div:last-child {
        width: 50%;
    }

    .footer-bottom > div {
        flex: auto;
    }

    .footer-bottom > div:first-child {
        width: 50%;
    }

    .footer-bottom > div:nth-child(2) {
        width: 50%;
    }

    .footer-bottom > div:last-child {
        text-align: center;
    }

}

/* --- ≤639px (мобильные) --- */
@media (max-width:639px) {
    #module-130 .uk-width-auto\@m,
    #module-130 .uk-width-expand\@m {
        width: 100%;
        text-align: center;
    }

    /* Фильтры главной — в одну колонку */
    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s {
        text-align: center;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:first-child {
        width: 100%;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:nth-child(2) {
        width: 100%;
    }

    .frontpage-filter > .uk-container > .uk-grid > .uk-width-expand\@s:last-child {
        width: 100%;
    }

    .frontpage-filter .uk-card {
        min-height: 332px !important;
    }

    /* Стрелки слайдеров дальше от края */
    .latest-auto .uk-position-center-right-out,
    .latest-parts .uk-position-center-right-out {
        margin-left: -80px;
    }

    .latest-auto .uk-position-center-left-out,
    .latest-parts .uk-position-center-left-out {
        margin-right: -80px;
    }

    .latest-news .uk-position-center-right-out {
        margin-left: -80px;
    }

    .latest-news .uk-position-center-left-out {
        margin-right: -80px;
    }

    .latest-news .uk-display-block img {
        object-fit: cover;
        width: 100%;
        height: 300px;
    }

    /* Футер — всё по центру, колонки 100% */
    .footer-top > div {
        text-align: center;
    }

    .footer-top > div:nth-child(2) {
        width: 100%;
    }

    .footer-top > div:last-child {
        width: 100%;
    }

    .footer-middle > div {
        text-align: center;
    }

    .footer-middle > div:nth-child(2) {
        width: 100%;
    }

    .footer-middle > div:last-child {
        width: 100%;
    }

    .footer-middle .uk-subnav {
        justify-content: center;
    }

    .footer-bottom > div {
        text-align: center;
    }

    .footer-bottom > div:first-child {
        width: 100%;
    }

    .footer-bottom > div:nth-child(2) {
        width: 100%;
    }

    .footer-bottom .uk-subnav {
        justify-content: center;
    }

    /* Контакты по центру */
    .contact {
        text-align: center;
    }

    .contact__info-block {
        display: inline-block;
        text-align: left;
    }

    /* Карточка / список запчастей на узком экране */
    .parts__item-group > li {
        width: 50%;
        flex: auto;
        box-sizing: border-box;
    }

    .parts__item-group > li:last-child {
        text-align: right;
    }

    .parts__drop,
    .parts__price {
        text-align: center;
    }

    .parts__description-top .uk-subnav {
        justify-content: center !important;
    }

    .parts__group > li {
        box-sizing: border-box;
    }

    .parts__group > li:last-child {
        text-align: right;
    }

    .parts__button {
        text-align: center;
    }

    .parts__list-favorite {
        padding-bottom: 50px;
    }

    .parts__list-favorite > span {
        right: inherit;
        left: 0;
    }

}


/* ==========================================================================
   15. Страница авторизации — login / logout (com_users login)
   ========================================================================== */

.com-users-login {
    max-width: 720px;
    margin: 0 auto;
}

.com-users-login__form fieldset,
.com-users-logout__form fieldset {
    border: none !important;
    padding: 0;
    margin: 0;
}

.com-users-login .login {
    box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}

.com-users-login .form-horizontal .control-group {
    margin-bottom: 20px;
}

.com-users-login .form-horizontal .control-group:before,
.com-users-login .form-horizontal .control-group:after {
    display: table;
    line-height: 0;
    content: "";
}

.com-users-login .form-horizontal .control-group:after {
    clear: both;
}

.com-users-login .form-horizontal .control-label {
    float: left;
    width: 160px;
    padding-top: 5px;
    text-align: left;
}

.com-users-login .form-horizontal .controls {
    margin-left: 180px;
}

.com-users-login .form-horizontal .controls input[type="text"],
.com-users-login .form-horizontal .controls input[type="password"] {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    height: 36px;
    padding: 4px 10px;
    border: 1px solid #d8d8d8;
    border-radius: 3px;
    background: #fff;
}

.com-users-login .password-group .input-group {
    display: flex;
    align-items: stretch;
    width: 100%;
}

.com-users-login .password-group .input-group input[type="password"],
.com-users-login .password-group .input-group input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.com-users-login .input-password-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-width: 40px;
    height: 36px;
    padding: 0;
    border: 1px solid #f60;
    border-left: none;
    border-radius: 0 3px 3px 0;
    background: #f60;
    color: #fff;
    cursor: pointer;
    line-height: 1;
}

.com-users-login .input-password-toggle:hover,
.com-users-login .input-password-toggle:focus {
    background: #e65c00;
    border-color: #e65c00;
    color: #fff;
}

.com-users-login .input-password-toggle .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.com-users-login .input-password-toggle [class^="icon-"] {
    display: inline-block;
    width: 18px;
    height: 18px;
    font-size: 0;
    line-height: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
}

.com-users-login .input-password-toggle [class^="icon-"]:before {
    content: none !important;
}

.com-users-login .input-password-toggle .icon-eye {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zm0 12.5a5 5 0 1 1 0-10 5 5 0 0 1 0 10zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E");
}

.com-users-login .input-password-toggle .icon-eye-slash {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 6.5c2.76 0 5.26 1.12 7.07 2.93l1.42-1.42A11.96 11.96 0 0 0 12 4.5c-2.87 0-5.47 1.02-7.5 2.72l1.46 1.46A9.9 9.9 0 0 1 12 6.5zM3.27 3 2 4.27l2.28 2.28A11.83 11.83 0 0 0 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84L20.73 21 22 19.73 3.27 3zM12 17c-2.76 0-5-2.24-5-5 0-.64.12-1.25.34-1.81l6.47 6.47A4.96 4.96 0 0 1 12 17zm3.53-9.47L9.47 17.53A4.96 4.96 0 0 1 7 12c0-2.76 2.24-5 5-5 .94 0 1.82.26 2.53.53z'/%3E%3C/svg%3E");
}

.com-users-login .com-users-login__submit .controls {
    margin-left: 180px;
}

.com-users-login .btn-primary {
    background-color: #f60;
    color: #fff;
    border: 1px solid transparent;
    padding: 6px 20px;
    border-radius: 3px;
    cursor: pointer;
}

.com-users-login .btn-primary:hover,
.com-users-login .btn-primary:focus {
    background-color: #e65c00;
    color: #fff;
    border-color: transparent;
}

.com-users-login > .uk-margin-top {
    text-align: center;
}

.com-users-login .uk-subnav {
    display: inline-flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 0;
}

.com-users-login .uk-subnav a {
    color: #000;
    text-decoration: none;
}

.com-users-login .uk-subnav a:hover {
    color: #f60;
    text-decoration: none;
}


/* ==========================================================================
   16. Сброс пароля — reset / confirm / complete (com_users reset)
   ========================================================================== */

.com-users-reset,
.com-users-reset-confirm,
.com-users-reset-complete {
    max-width: 720px;
    margin: 0 auto;
}

.com-users-reset__form fieldset,
.com-users-reset-confirm__form fieldset,
.com-users-reset-complete__form fieldset {
    border: none !important;
    padding: 0;
    margin: 0;
}

.com-users-reset .reset,
.com-users-reset-confirm .reset-confirm,
.com-users-reset-complete .reset-complete {
    box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
}

.com-users-reset .form-horizontal .control-group,
.com-users-reset-confirm .form-horizontal .control-group,
.com-users-reset-complete .form-horizontal .control-group {
    margin-bottom: 20px;
}

.com-users-reset .form-horizontal .control-group:before,
.com-users-reset .form-horizontal .control-group:after,
.com-users-reset-confirm .form-horizontal .control-group:before,
.com-users-reset-confirm .form-horizontal .control-group:after,
.com-users-reset-complete .form-horizontal .control-group:before,
.com-users-reset-complete .form-horizontal .control-group:after {
    display: table;
    line-height: 0;
    content: "";
}

.com-users-reset .form-horizontal .control-group:after,
.com-users-reset-confirm .form-horizontal .control-group:after,
.com-users-reset-complete .form-horizontal .control-group:after {
    clear: both;
}

.com-users-reset .form-horizontal .control-label,
.com-users-reset-confirm .form-horizontal .control-label,
.com-users-reset-complete .form-horizontal .control-label {
    float: left;
    width: 160px;
    padding-top: 5px;
    text-align: left;
}

.com-users-reset .form-horizontal .controls,
.com-users-reset-confirm .form-horizontal .controls,
.com-users-reset-complete .form-horizontal .controls {
    margin-left: 180px;
}

.com-users-reset .form-horizontal .controls input[type="text"],
.com-users-reset .form-horizontal .controls input[type="email"],
.com-users-reset-confirm .form-horizontal .controls input[type="text"],
.com-users-reset-complete .form-horizontal .controls input[type="password"] {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    height: 36px;
    padding: 4px 10px;
    border: 1px solid #d8d8d8;
    border-radius: 3px;
    background: #fff;
}

.com-users-reset-complete .password-group .input-group {
    display: flex;
    align-items: stretch;
    width: 100%;
}

.com-users-reset-complete .password-group .input-group input[type="password"],
.com-users-reset-complete .password-group .input-group input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.com-users-reset-complete .input-password-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-width: 40px;
    height: 36px;
    padding: 0;
    border: 1px solid #f60;
    border-left: none;
    border-radius: 0 3px 3px 0;
    background: #f60;
    color: #fff;
    cursor: pointer;
    line-height: 1;
}

.com-users-reset-complete .input-password-toggle:hover,
.com-users-reset-complete .input-password-toggle:focus {
    background: #e65c00;
    border-color: #e65c00;
    color: #fff;
}

.com-users-reset-complete .input-password-toggle .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.com-users-reset-complete .input-password-toggle [class^="icon-"] {
    display: inline-block;
    width: 18px;
    height: 18px;
    font-size: 0;
    line-height: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 18px;
}

.com-users-reset-complete .input-password-toggle [class^="icon-"]:before {
    content: none !important;
}

.com-users-reset-complete .input-password-toggle .icon-eye {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zm0 12.5a5 5 0 1 1 0-10 5 5 0 0 1 0 10zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E");
}

.com-users-reset-complete .input-password-toggle .icon-eye-slash {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 6.5c2.76 0 5.26 1.12 7.07 2.93l1.42-1.42A11.96 11.96 0 0 0 12 4.5c-2.87 0-5.47 1.02-7.5 2.72l1.46 1.46A9.9 9.9 0 0 1 12 6.5zM3.27 3 2 4.27l2.28 2.28A11.83 11.83 0 0 0 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84L20.73 21 22 19.73 3.27 3zM12 17c-2.76 0-5-2.24-5-5 0-.64.12-1.25.34-1.81l6.47 6.47A4.96 4.96 0 0 1 12 17zm3.53-9.47L9.47 17.53A4.96 4.96 0 0 1 7 12c0-2.76 2.24-5 5-5 .94 0 1.82.26 2.53.53z'/%3E%3C/svg%3E");
}

.com-users-reset .com-users-reset__submit .controls,
.com-users-reset-confirm .com-users-reset-confirm__submit .controls,
.com-users-reset-complete .com-users-reset-complete__submit .controls {
    margin-left: 180px;
}

.com-users-reset .btn-primary,
.com-users-reset-confirm .btn-primary,
.com-users-reset-complete .btn-primary {
    background-color: #f60;
    color: #fff;
    border: 1px solid transparent;
    padding: 6px 20px;
    border-radius: 3px;
    cursor: pointer;
}

.com-users-reset .btn-primary:hover,
.com-users-reset .btn-primary:focus,
.com-users-reset-confirm .btn-primary:hover,
.com-users-reset-confirm .btn-primary:focus,
.com-users-reset-complete .btn-primary:hover,
.com-users-reset-complete .btn-primary:focus {
    background-color: #e65c00;
    color: #fff;
    border-color: transparent;
}
