

/* Start:/local/templates/liderlada/components/bitrix/catalog/.default/style.css?17945192172082*/
/* Минимальная раскладка каталога: колонка сбоку и список. Цвета и шрифты
   наследуются от шаблона сайта. */

.shop-catalog {
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	gap: 32px;
	align-items: start;
}

.shop-catalog__side {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.shop-catalog__main {
	min-width: 0;
}

@media (max-width: 900px) {
	.shop-catalog {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* «Похожие товары» и «Вы недавно смотрели»: блоки внизу страницы, каждый
   отделён от содержимого сверху воздухом и линией. Кегль заголовка берётся
   от шаблона сайта — здесь задаётся только то, без чего блок слипается
   с тем, что выше. Цвет линии — как у остальных разделителей модуля
   (#e5e7eb). Правила общие: на карточке товара блоки стоят подряд и должны
   выглядеть одинаково. */

.shop-similar,
.shop-viewed {
	margin-top: 56px;
	padding-top: 32px;
	border-top: 1px solid #e5e7eb;
}

.shop-similar__title,
.shop-viewed__title {
	margin: 0 0 24px;
}

/* Ряд карточек блока заполняет ширину: auto-fit (в отличие от auto-fill
   в списке каталога) схлопывает пустые колонки, и четыре карточки не
   оставляют дыру справа на широком экране. Четыре — потому что столько
   влезает в один ряд почти на любой ширине, а ряд с одинокой карточкой
   в хвосте выглядит обрывом. */
.shop-similar .shop-catalog-grid,
.shop-viewed .shop-catalog-grid {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

/* End */


/* Start:/local/templates/liderlada/components/bitrix/catalog.section.list/chips/style.css?17945192171310*/
/* Плитки подразделов строкой: картинка и название. Цвета и шрифты —
   от шаблона сайта. */

/* Сетка: плитки одной ширины, столбцы выстраиваются один под другим.
   Неполный последний ряд не растягивается — плитки остаются того же
   размера, что и в полных рядах. */
.shop-section-chips {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 12px;
	margin-bottom: 24px;
}

.shop-section-chip {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 12px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	color: inherit;
	text-decoration: none;
}

.shop-section-chip:hover {
	border-color: #2d6cdf;
}

.shop-section-chip__pic {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
}

.shop-section-chip__pic img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.shop-section-chip__nopic {
	width: 100%;
	height: 100%;
	border-radius: 6px;
	background: #f3f4f6;
}

.shop-section-chip__name {
	min-width: 0;
}

.shop-section-chip__count {
	margin-left: auto;
	color: #9ca3af;
	font-size: 12px;
}

/* End */


/* Start:/local/templates/liderlada/components/bitrix/catalog.smart.filter/.default/style.css?17945192172288*/
/* Минимальное оформление фильтра. Цвета и шрифты — от шаблона сайта. */

.shop-filter__title {
	margin: 0 0 12px;
	font-size: 1em;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #6b7280;
}

.shop-filter__group {
	border-top: 1px solid #e5e7eb;
	padding: 8px 0;
}

.shop-filter__group-title {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	padding: 6px 0;
	border: 0;
	background: transparent;
	font: inherit;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
}

.shop-filter__angle {
	width: 8px;
	height: 8px;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.2s;
}

.shop-filter__group:not(.bx-active) .shop-filter__angle {
	transform: rotate(-45deg);
}

/* Видимость тела задаёт класс, а не инлайн-стиль: скрипт ядра в конце
   анимации стирает атрибут style вместе со своей height:0. */
.shop-filter__group:not(.bx-active) .shop-filter__group-body {
	display: none;
}

.shop-filter__values {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-height: 250px;
	overflow: auto;
}

.shop-filter__value {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.shop-filter__value.disabled {
	opacity: 0.45;
}

.shop-filter__value-text {
	flex: 1 1 auto;
}

.shop-filter__count {
	color: #9ca3af;
	font-size: 12px;
}

.shop-filter__range {
	display: flex;
	gap: 8px;
}

.shop-filter__range-field {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 1 1 0;
	min-width: 0;
	color: #6b7280;
}

.shop-filter__input {
	width: 100%;
	min-width: 0;
	padding: 6px 8px;
	border: 1px solid #c9ced6;
	border-radius: 4px;
	font: inherit;
}

.shop-filter__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
}

.shop-filter__apply {
	padding: 8px 16px;
	border: 0;
	border-radius: 4px;
	background: #2d6cdf;
	color: #fff;
	font: inherit;
	cursor: pointer;
}

.shop-filter__reset {
	color: #6b7280;
}

.shop-filter__found {
	margin-top: 8px;
	padding: 8px 10px;
	border: 1px solid #c9ced6;
	border-radius: 4px;
	background: #fff;
	font-size: 14px;
}

/* End */


/* Start:/local/templates/liderlada/components/bitrix/system.pagenavigation/.default/style.css?1794519217885*/
/* Минимальное оформление пагинации. Цвета и шрифты — от шаблона сайта. */

.shop-pager {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.shop-pager__pages {
	display: flex;
	align-items: center;
	gap: 4px;
}

.shop-pager__page,
.shop-pager__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 8px;
	border: 1px solid #e5e7eb;
	border-radius: 4px;
	color: inherit;
	text-decoration: none;
}

.shop-pager__page:hover,
.shop-pager__arrow:hover {
	border-color: #2d6cdf;
}

.shop-pager__page--current {
	border-color: #2d6cdf;
	background: #2d6cdf;
	color: #fff;
}

.shop-pager__arrow svg {
	width: 11px;
	height: 12px;
}

.shop-pager__arrow--disabled {
	opacity: 0.4;
}

.shop-pager__gap {
	padding: 0 4px;
	color: #9ca3af;
}

/* End */


/* Start:/local/templates/liderlada/components/bitrix/catalog.section/.default/style.css?179451921719730*/
/* Минимальное оформление списка товаров: сетка, карточка, кнопки поверх
   фото. Цвета и шрифты наследуются от шаблона сайта. */

/* Строка над списком: счётчик и сортировка слева, вид списка справа.
   Вид отжимается вправо своим отступом, а не распоркой строки: при
   выключенной сортировке распорка увела бы вправо счётчик. */
.shop-catalog-list__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 24px;
	margin-bottom: 20px;
}

.shop-catalog-view {
	margin-left: auto;
}

.shop-catalog-list__count {
	color: #6b7280;
}

/* Сортировка строкой признаков: подпись и ссылки-признаки со значками. */
.shop-catalog-sort {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
}

.shop-catalog-sort__label {
	color: #6b7280;
}

/* Стрелка и значок стоят вплотную — это одна группа, и зазор между ними
   разбивал бы её надвое; отступ появляется только перед подписью. */
.shop-catalog-sort__item {
	display: inline-flex;
	align-items: center;
	gap: 0;
	color: inherit;
	text-decoration: none;
}

.shop-catalog-sort__text {
	margin-left: 6px;
}

.shop-catalog-sort__item--active {
	font-weight: 600;
}

.shop-catalog-sort__icon {
	width: 18px;
	height: 18px;
	color: #9ca3af;
}

/* Значки, обрезанные по самому рисунку: поля у них нет вовсе, поэтому
   отступы до подписи одинаковые, а ширина считается по полю значка —
   так пропорции рисунка не трогаются. Высота у каждого своя: буквы идут
   в два этажа, рубль — в один, и одна высота на двоих сделала бы рубль
   вдвое крупнее букв. */
.shop-catalog-sort__icon--letters,
.shop-catalog-sort__icon--ruble {
	width: auto;
}

.shop-catalog-sort__icon--letters {
	height: 20px;
}

.shop-catalog-sort__icon--ruble {
	height: 16px;
}

.shop-catalog-sort__item--active .shop-catalog-sort__icon {
	color: inherit;
}

/* Стрелка направления стоит перед значком: у выбранного признака она
   показывает нынешний порядок, у остальных — тот, который включит щелчок,
   поэтому у невыбранных она приглушена. */
.shop-catalog-sort__arrow {
	width: 9px;
	height: 18px;
	color: #c9ced6;
}

/* Вверх — тот же контур, перевёрнутый. */
.shop-catalog-sort__arrow--up {
	transform: scaleY(-1);
}

.shop-catalog-sort__item--active .shop-catalog-sort__arrow {
	color: inherit;
}

/* Переключатель вида: две кнопки-значка. */
.shop-catalog-view {
	display: inline-flex;
	gap: 4px;
}

.shop-catalog-view__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid #e5e7eb;
	border-radius: 4px;
	color: #9ca3af;
}

.shop-catalog-view__item svg {
	width: 20px;
	height: 20px;
}

.shop-catalog-view__item:hover {
	color: inherit;
}

.shop-catalog-view__item--active {
	border-color: #c9ced6;
	color: inherit;
}

.shop-catalog-list__empty {
	padding: 32px 0;
	color: #6b7280;
}

/* Низ списка: номера страниц у левого края, «Показать ещё» по центру
   той же строки.

   Три колонки, а не flex с распорками: кнопка должна стоять по центру
   всей строки, а не по центру места, оставшегося от номеров, — иначе
   она ездит влево-вправо от числа страниц. Крайние колонки одинаковой
   доли, кнопка в средней. На узком экране строка складывается
   в столбик. */
.shop-catalog-list__bottom {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
	margin-top: 24px;
}

.shop-catalog-list__bottom .shop-catalog-list__pager {
	grid-column: 1;
	justify-self: start;
}

.shop-catalog-list__bottom .shop-catalog-list__more {
	grid-column: 2;
}

@media (max-width: 760px) {
	.shop-catalog-list__bottom {
		grid-template-columns: 1fr;
		justify-items: start;
	}

	.shop-catalog-list__bottom .shop-catalog-list__pager,
	.shop-catalog-list__bottom .shop-catalog-list__more {
		grid-column: 1;
	}
}

.shop-catalog-list__more {
	padding: 10px 24px;
	border: 1px solid #c9ced6;
	border-radius: 4px;
	background: #fff;
	font: inherit;
	cursor: pointer;
}

.shop-catalog-list__more:hover {
	border-color: #2d6cdf;
}

.shop-catalog-list__more[disabled] {
	opacity: 0.6;
	cursor: default;
}

/* Отступ сверху даёт строка низа списка, у самих номеров его нет. */
.shop-catalog-list__pager {
	margin-top: 0;
}

.shop-catalog-list__pager--top {
	margin: 0 0 24px;
}

.shop-catalog-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 24px 16px;
}

/* Лента: карточки в один ряд с прокруткой (параметр SLIDER). Сколько
   их помещается в ряд, задаёт --shop-slider-view, зазор — --shop-slider-gap:
   ширина карточки считается из них, и шаблон сайта может поменять и то,
   и другое, не переписывая расчёт.

   Прокрутка нативная: без скриптов лента листается жестом и колесом,
   стрелки их только дублируют. Полоса прокрутки убрана — её роль играют
   стрелки, а карточки с краю видно и так. */

.shop-catalog-slider {
	position: relative;
}

.shop-catalog-grid--slider {
	--shop-slider-view: 5;
	--shop-slider-gap: 16px;
	grid-template-columns: none;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - (var(--shop-slider-view) - 1) * var(--shop-slider-gap)) / var(--shop-slider-view));
	gap: var(--shop-slider-gap);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.shop-catalog-grid--slider::-webkit-scrollbar {
	display: none;
}

.shop-catalog-grid--slider > * {
	scroll-snap-align: start;
}

.shop-catalog-slider__arrow {
	position: absolute;
	/* По середине фото, а не ленты: внизу карточки стоят цена и кнопка,
	   и стрелка висела бы поверх них. */
	top: 28%;
	transform: translateY(-50%);
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid #e5e7eb;
	border-radius: 50%;
	background: #fff;
	color: inherit;
	cursor: pointer;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
}

/* Скрытая стрелка должна исчезать: атрибут `hidden` — это стиль браузера
   `display: none`, и авторский `display: flex` выше его перебивает. */
.shop-catalog-slider__arrow[hidden] {
	display: none;
}

.shop-catalog-slider__arrow:hover {
	border-color: currentColor;
}

/* Стрелки лежат поверх крайних карточек, а не снаружи ленты: лента идёт
   во всю ширину колонки, и вынесенная наружу стрелка на ноутбуке упиралась
   в край окна. */
.shop-catalog-slider__arrow--prev {
	left: 6px;
}

.shop-catalog-slider__arrow--next {
	right: 6px;
}

@media (max-width: 1100px) {
	.shop-catalog-grid--slider {
		--shop-slider-view: 3;
	}
}

@media (max-width: 760px) {
	.shop-catalog-grid--slider {
		--shop-slider-view: 2;
	}
}

/* Вид «списком»: карточка раскладывается в строку — фото, название
   с характеристиками, цена с кнопкой. Разметка та же, что и в плитке:
   два набора карточек разошлись бы поведением кнопок. */
.shop-catalog-grid--list {
	grid-template-columns: 1fr;
	gap: 16px;
}

.shop-catalog-grid--list .shop-catalog-card {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr) 240px;
	grid-template-rows: auto 1fr;
	grid-template-areas:
		"pic name buy"
		"pic props buy";
	gap: 8px 24px;
	align-items: start;
}

.shop-catalog-grid--list .shop-catalog-card__top { grid-area: pic; }
.shop-catalog-grid--list .shop-catalog-card__name { grid-area: name; }
.shop-catalog-grid--list .shop-catalog-card__props { grid-area: props; }

.shop-catalog-grid--list .shop-catalog-card__buy {
	grid-area: buy;
	margin-top: 0;
}

/* Узкий экран: строками не показываем — на 390px в строку всё равно
   ничего не помещается, и карточка возвращается к обычному виду. */
@media (max-width: 760px) {
	.shop-catalog-grid--list .shop-catalog-card {
		display: flex;
		flex-direction: column;
	}
}

/* Вид «списком без фото»: плотная таблица строк — название с кодами,
   наличие, цена с кнопкой, избранное и сравнение. Фото и плашки на фото
   шаблон в этом виде не выводит; кнопки и плашка наличия, которые в плитке
   лежат поверх фото, становятся обычными ячейками строки
   (`display: contents` у верхнего блока). */
.shop-catalog-grid--compact {
	grid-template-columns: 1fr;
	gap: 0;
	border-top: 1px solid #e5e7eb;
}

.shop-catalog-grid--compact .shop-catalog-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 130px 260px auto;
	grid-template-areas:
		"name stock buy act"
		"props stock buy act";
	align-items: center;
	gap: 2px 20px;
	padding: 10px 0;
	border-bottom: 1px solid #e5e7eb;
}

.shop-catalog-grid--compact .shop-catalog-card__top { display: contents; }
.shop-catalog-grid--compact .shop-catalog-card__name { grid-area: name; }
.shop-catalog-grid--compact .shop-catalog-card__props { grid-area: props; }

.shop-catalog-grid--compact .shop-catalog-card__badge {
	grid-area: stock;
	position: static;
	justify-self: start;
}

.shop-catalog-grid--compact .shop-catalog-card__buy {
	grid-area: buy;
	margin-top: 0;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.shop-catalog-grid--compact .shop-catalog-card__actions {
	grid-area: act;
	position: static;
	flex-direction: row;
}

.shop-catalog-grid--compact .shop-catalog-card__actions .g-fav-button__toggle,
.shop-catalog-grid--compact .shop-catalog-card__actions .shop-compare-button {
	width: 32px;
	height: 32px;
}

/* Кнопка корзины в строке не переносит подпись. */
.shop-catalog-grid--compact .shop-catalog-card__cart {
	white-space: nowrap;
}

/* Узкий экран: название и коды сверху, ниже наличие со значками, под ними
   цена с кнопкой — во всю ширину, иначе подписи ломаются на два этажа. */
@media (max-width: 760px) {
	.shop-catalog-grid--compact .shop-catalog-card {
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-areas:
			"name name"
			"props props"
			"stock act"
			"buy buy";
		gap: 6px 12px;
	}
}

.shop-catalog-card {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}

.shop-catalog-card__top {
	position: relative;
}

.shop-catalog-card__pic {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #fff;
}

.shop-catalog-card__pic img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.shop-catalog-card__nopic {
	display: block;
	width: 100%;
	height: 100%;
	background: #f3f4f6;
}

/* Несколько кадров: прозрачные зоны наведения поверх фото и чёрточки
   под ним. Чёрточки — указатель, а не кнопки: переключает наведение,
   поэтому на устройствах без курсора кадр остаётся первым. */
.shop-catalog-card__pic--multi {
	position: relative;
}

/* Скрытый кадр прячет АТРИБУТ hidden, но правило `img { display: block }`
   выше — авторское и сильнее стиля браузера, поэтому без этой строки
   на карточке видно сразу все кадры. */
.shop-catalog-card__pic img[hidden] {
	display: none;
}

.shop-catalog-card__zones {
	position: absolute;
	inset: 0;
	display: flex;
}

.shop-catalog-card__zone {
	flex: 1 1 0;
}

.shop-catalog-card__dashes {
	position: absolute;
	right: 10px;
	bottom: 8px;
	left: 10px;
	display: flex;
	gap: 4px;
	opacity: 0;
	transition: opacity .15s;
}

/* Чёрточки показываются при наведении на карточку: в покое они
   отвлекали бы от товара, как у образца. */
.shop-catalog-card:hover .shop-catalog-card__dashes,
.shop-catalog-card__pic--multi:focus-visible .shop-catalog-card__dashes {
	opacity: 1;
}

.shop-catalog-card__dash {
	flex: 1 1 0;
	height: 2px;
	border-radius: 2px;
	background: #d1d5db;
}

.shop-catalog-card__dash--active {
	background: #374151;
}

/* Кнопки избранного и сравнения — в правом верхнем углу поверх фото.
   В разметке они после ссылки: так порядок обхода с клавиатуры идёт
   сверху вниз, а внутри <a> кнопка невалидна. */
.shop-catalog-card__actions {
	position: absolute;
	top: 8px;
	right: 8px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.shop-catalog-card__actions .g-fav-button__toggle,
.shop-catalog-card__actions .shop-compare-button {
	width: 36px;
	height: 36px;
	padding: 0;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
}

.shop-compare-button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid #c9ced6;
	color: #6b7280;
	font: inherit;
	cursor: pointer;
}

.shop-compare-button:hover,
.shop-compare-button--active {
	color: #2d6cdf;
	border-color: #2d6cdf;
}

.shop-compare-button[disabled] {
	opacity: 0.6;
	cursor: default;
}

.shop-compare-button__icon {
	display: block;
	width: 20px;
	height: 20px;
	flex: none;
}

.shop-compare-button__sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* Плашки товара — в левом верхнем углу фотографии, столбиком, если их
   несколько. Правый верхний угол занят кнопками избранного и сравнения,
   нижний левый — плашкой наличия.

   Цвета взяты с сайта-образца по оттенку, но темнее: на его светло-зелёном
   белая надпись даёт контраст около 2:1 и на солнце с телефона не читается.
   Эти проходят AA для мелкого текста (4.5:1).

   Блок `shop-label` повторён в стилях карточки товара: шаблоны компонентов
   подключают свои CSS по отдельности, общего файла у модуля нет (так же
   живёт блок цены `shop-price`). */
.shop-labels {
	position: absolute;
	top: 8px;
	left: 8px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
	/* Поверх фотографии, но ниже кнопок: у карточки с длинной меткой
	   плашка не должна перехватывать щелчок по «отложить». */
	z-index: 1;
	pointer-events: none;
}

.shop-label {
	padding: 3px 8px;
	border-radius: 6px;
	background: #6b7280;
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.25;
	white-space: nowrap;
}

.shop-label--sale {
	background: #d32f2f;
}

.shop-label--discount {
	background: #d9480f;
}

.shop-label--new {
	background: #2b8a3e;
}

.shop-catalog-card__badge {
	position: absolute;
	left: 8px;
	bottom: 8px;
	padding: 3px 8px;
	border-radius: 4px;
	background: #e8f5e9;
	color: #2e7d32;
	font-size: 12px;
}

.shop-catalog-card__badge--out {
	background: #fdecea;
	color: #b3261e;
}

.shop-catalog-card__props {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	font-size: 12px;
	color: #6b7280;
}

.shop-catalog-card__name {
	color: inherit;
	text-decoration: none;
	font-weight: 600;
}

.shop-catalog-card__name:hover {
	text-decoration: underline;
}

.shop-catalog-card__buy {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.shop-catalog-card__price {
	margin: 0;
	font-weight: 600;
}

.shop-catalog-card__price--request {
	font-weight: 400;
	color: #6b7280;
}

.shop-catalog-card__old-price {
	margin-right: 8px;
	font-weight: 400;
	color: #9ca3af;
}

/* Блок цены: подпись «Цена за …» и сумма под ней. У товара со второй
   единицей подпись — переключатель радио-кнопок: видна цена выбранной
   единицы. Радио спрятаны, но остаются в фокусе: Tab приводит к группе,
   стрелки меняют единицу. Те же правила повторены в стилях карточки
   товара — страница товара список не подключает. */
.shop-price {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 10px;
	row-gap: 2px;
	margin: 0;
}

.shop-price__for,
.shop-price__unit {
	font-size: 12px;
	line-height: 18px;
	color: #6b7280;
}

.shop-price__unit {
	padding: 0 1px;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	user-select: none;
}

.shop-price__radio {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	opacity: 0;
	pointer-events: none;
}

.shop-price__radio:checked + .shop-price__unit {
	color: inherit;
	font-weight: 600;
	border-bottom-color: currentColor;
}

.shop-price__radio:focus-visible + .shop-price__unit {
	outline: 2px solid #2d6cdf;
	outline-offset: 2px;
	border-radius: 2px;
}

.shop-price__value {
	flex: 1 0 100%;
	margin: 0;
}

/* Единиц не больше двух: единица продажи и справочная. */
.shop-price--switch .shop-price__value {
	display: none;
}

.shop-price__radio:nth-of-type(1):checked ~ .shop-price__value[data-unit="0"],
.shop-price__radio:nth-of-type(2):checked ~ .shop-price__value[data-unit="1"] {
	display: block;
}

/* End */


/* Start:/local/components/giperium/shop.favorite.button/templates/.default/style.css?1794519217963*/
 

.g-fav-button {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.g-fav-button__toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid #c9ced6;
	border-radius: 4px;
	background: transparent;
	color: #6b7280;
	font: inherit;
	cursor: pointer;
}

.g-fav-button__toggle:hover {
	color: #c2185b;
	border-color: #c2185b;
}

.g-fav-button__toggle[disabled] {
	opacity: 0.6;
	cursor: default;
}



.g-fav-button__toggle--active {
	color: #c2185b;
	border-color: #c2185b;
}

.g-fav-button__toggle--active .g-fav-button__icon path {
	fill: currentColor;
}

.g-fav-button__icon {
	display: block;
	width: 20px;
	height: 20px;
	flex: none;
}



.g-fav-button__sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.g-fav-button__error {
	flex-basis: 100%;
	color: #c62828;
	font-size: 0.875em;
}

/* End */


/* Start:/local/components/giperium/shop.cart.button/templates/counter/style.css?17945192171703*/
 

.g-cart-button--counter {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.g-cart-button--counter .g-cart-button__price {
	font-weight: 600;
}

.g-cart-button--counter .g-cart-button__add {
	padding: 9px 18px;
	border: 0;
	border-radius: 4px;
	background: #2d6cdf;
	color: #fff;
	font: inherit;
	cursor: pointer;
}

.g-cart-button--counter .g-cart-button__add:hover {
	background: #255bbd;
}

.g-cart-button--counter .g-cart-button__add[disabled] {
	opacity: 0.6;
	cursor: default;
}

 
.g-cart-button__counter {
	display: flex;
	align-items: center;
	gap: 2px;
	border: 1px solid #2d6cdf;
	border-radius: 4px;
	padding: 1px;
}

.g-cart-button__step {
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 3px;
	background: transparent;
	color: #2d6cdf;
	font: inherit;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}

.g-cart-button__step:hover {
	background: #eef3fd;
}

.g-cart-button__value {
	flex: 1 1 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 0;
}




.g-cart-button__amount {
	max-width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-weight: 600;
	text-align: center;
}

.g-cart-button__amount:focus {
	outline: none;
}

.g-cart-button--counter .g-cart-button__measure {
	color: #6b7280;
}

.g-cart-button--counter .g-cart-button__error {
	flex-basis: 100%;
	color: #c62828;
	font-size: 0.875em;
}



.g-cart-button--counter .g-cart-button__error--notice {
	color: #7a5600;
}

 
.g-cart-button--counter .g-cart-button__out {
	padding: 9px 0;
	color: #6b7280;
	font-size: 0.9375em;
}



.g-cart-button--counter [hidden] {
	display: none;
}

/* End */
/* /local/templates/liderlada/components/bitrix/catalog/.default/style.css?17945192172082 */
/* /local/templates/liderlada/components/bitrix/catalog.section.list/chips/style.css?17945192171310 */
/* /local/templates/liderlada/components/bitrix/catalog.smart.filter/.default/style.css?17945192172288 */
/* /local/templates/liderlada/components/bitrix/system.pagenavigation/.default/style.css?1794519217885 */
/* /local/templates/liderlada/components/bitrix/catalog.section/.default/style.css?179451921719730 */
/* /local/components/giperium/shop.favorite.button/templates/.default/style.css?1794519217963 */
/* /local/components/giperium/shop.cart.button/templates/counter/style.css?17945192171703 */
