.product-selection,
.vendor-selection {
	width: 100%;
	float: left;
	padding-bottom: 20px;
	margin-bottom: 40px;
}
.product-selection-wrap,
.vendor-selection-wrap {
    width: calc(100% + 40px);
    overflow: hidden;
    padding-bottom: 20px;
    margin: 0 -20px;
}
.product-selection-header,
.vendor-selection-header {
    width: calc(100% - 40px);
    display: flex;
    margin: 0 20px 30px 20px;
    align-content: flex-end;
    justify-content: space-between;
}

.product-selection-title,
.vendor-selection-title {
	line-height: 46px;
	font-size: 20px;
	font-weight: 600;
	font-family: "Ubuntu Regular";
	padding-left: 20px;
}
.header-scroller {
    display: flex;
    flex-direction: row;
    align-content: flex-end;
    justify-content: center;
    flex-wrap: wrap;
	margin-right: 20px;
}
.product-selection-counter {
    display: inline-block;
    padding: 0 15px;
    line-height: 46px;
}
.product-selection-arrow {
	position: relative;
    background: #ffffff;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 46px;
    height: 46px;
    font-size: 1.5em;
    cursor: pointer;
    z-index: 3;
    outline: none;
    box-shadow: 0 10px 15px #00000020;
	transition: all 0.18s linear;
}
.product-selection-arrow:after {
    content: "\f053";
    display: block;
    position: absolute;
    width: 46px;
    height: 46px;
    left: 0px;
    top: 0px;
    text-align: center;
    line-height: 46px;
    font-family: "FontAwesome";
    font-size: 14px;
    color: #2e2f38;
}
.product-selection-arrow.right:after {
    content: "\f054";
}
.product-selection-arrow:hover {
    background: #a3bc1c;
}
.product-selection-arrow:hover:after {
    color: #ffffff;
}
	
.product-selection-slides {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    grid-gap: 20px;
    padding: 5px 20px 20px 20px;
}
form.product-selection-item {
	margin-right: 0px;
	background: #ffffff;
	box-shadow: 0 10px 15px #00000010;
	padding: 24px;
}
.product-selection-item-inner {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 214px;
}
.product-selection-item-top {
    position: relative;
}
form.product-selection-item .product-flags {
    position: absolute;
    left: 0;
    top: 0;
}
form.product-selection-item .product-flags > div {
    display: block;
    padding: 0 13px;
    line-height: 32px;
    border-radius: 16px;
    color: #ffffff;
    background: #a3bc1c;
	font-size: 15px;
}
form.product-selection-item > div .product-new {
    background: #ffa500;
    background: #274796;
    background: #a3bc1c;
}
form.product-selection-item > div .product-special {
    background: #274796;
    background: #ffa500;
}
form.product-selection-item .product-image {
	margin-bottom: 20px;
}
form.product-selection-item .product-image a {
	
}
form.product-selection-item .product-image a img {
    display: block;
    max-width: 100%;
    max-height: 100%;
}
.product-selection-item-center {
    height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: space-between;
    font-size: 15px;
    row-gap: 8px;
}
.product-selection-item-center .product-title {
	flex-grow: 1;
}
.product-selection-item-center .product-title a {
	color: #2e2f38;
	text-decoration: none;
    transition: all 0.18s linear;
    border-bottom: 1px solid transparent;
	line-height: 1.3;
}
.product-selection-item-center .product-title a:hover {
	border-bottom-color: #2e2f3880;
}

.product-selection-item-center  .product-rating {
	
}
.product-selection-item-center  .product-rating .star {
	display: inline-block;
	position: relative;
	width: 10px;
	height: 10px;
}
.product-selection-item-center  .product-rating .star:before {
	content: "\f005";
	font-family: "FontAwesome Regular";
	display: block;
	left: 0;
	top: 0;
	width: 10px;
	height: 10px;
	line-height: 10px;
	text-align: center;
	font-size: 10px;
	color: gold;
}
.product-selection-item-center  .vendor-title a {
	font-size: 14px;
	color: #274796;
	text-decoration: none;
	border-bottom: solid 1px transparent;
}
.product-selection-item-center  .vendor-title a:hover {
	border-bottom: solid 1px #274796;
}
.product-selection-item-center  .product-sku {
    color: #67697ecc;
    font-family: "Ubuntu Regular";
    font-size: 14px;
    font-weight: 100;
}
.product-selection-item-bottom {
    height: 155px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 15px;
}
.product-selection-item-bottom .product-warehouse {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.product-selection-item-bottom .product-price {
    font-size: 20px;
}
.product-selection-item-bottom .product-price span {
    font-size: 14px;
}
.product-selection-item-bottom .product-stock {
    display: block;
    width: auto;
    padding: 0 10px;
    border: solid 1px #b0cb1f;
    line-height: 24px;
    border-radius: 12px;
    color: #2e2f38d0;
    font-size: 13px;
}
.product-selection-item-bottom .product-basket {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    white-space: nowrap;
}
.product-selection-item-bottom .product-amount {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
	background: #f2f4f8cc;
	border-radius: 23px;
	box-shadow: inset 0 0 0 1px #d2d3e066;
}
.product-selection-item-bottom .amount-counter {
    width: 30px;
    height: 46px;
    border: none;
    background: none;
    line-height: 45px;
    font-size: 25px;
    font-weight: 600;
    color: #585858;
}
.product-selection-item-bottom .product-amount input[name="qty"] {
	line-height: 46px;
	background: transparent;
	color: #2e2f38b3;
	width: 40px;
	font-size: 16px;
	text-align: center;
}
.product-selection-item-bottom .add2basket {
    line-height: 46px;
    color: #ffa500;
    background: transparent;
    border: solid 1px #ffa500;
    padding: 0 15px 0 37px;
    border-radius: 23px;
    width: 70px;
    cursor: pointer;
    transition: all 0.18s linear;
    position: relative;
}
.product-selection-item-bottom .add2basket:before {
    content: "\f291";
    font-family: "FontAwesome";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 46px;
    line-height: 46px;
    text-align: center;
    font-size: 20px;
}
.product-selection-item-bottom .add2basket:hover {
	background: #ffa500;
	color: #ffffff;
}
.product-selection-item-bottom .add2basket:hover:after {
	color: #ffffff;
}
.product-selection-item-bottom .product-tools {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}
.product-selection-item-bottom .product-tools .icon {
    display: block;
    line-height: 25px;
    padding-left: 25px;
    position: relative;
    font-family: "Ubuntu Light";
    font-size: 13px;
    font-weight: 100;
    color: #67697ecc;
	cursor: pointer;
}
.product-selection-item-bottom .product-tools .icon:before{
	content: "\e473";
	font-family: "FontAwesome";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 25px;
	height: 25px;
	text-align: center;
	line-height: 25px;
	font-size: 16px;
	opacity: 0.6;
    transition: all 0.18s linear;
}
.product-selection-item-bottom .product-tools .icon.to-favorite:before {
	content: "\f004";
}
.product-selection-item-bottom .product-tools .icon:hover:before{
	opacity: 1;
}
.product-selection-item-bottom .product-tools .icon.to-compare:hover:before {
	color: #274796;
}
.product-selection-item-bottom .product-tools .icon.to-favorite:hover:before {
	color: #ff0000;
}



.product-selection-item.review {
    width: 550px;
	font-size: 15px;
	font-family: "Ubuntu Regular";
	font-weight: 100;
	border-top: none;
}
.product-selection-item.review .product-selection-item-inner {
    position: relative;
    width: 535px;
    padding: 30px 26px;
    background: #ffffff;
    box-shadow: 0 10px 15px #00000010;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.product-selection-item.review .symbol-quote {
	display: block;
	height: 20px;
}
.product-selection-item.review .symbol-quote:before {
	content: "\f10d";
	font-family: "FontAwesome";
	position: absolute;
	left: 20px;
	top: 20px;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	font-size: 20px;
	color: #d2d3e04d;
}
.product-selection-item.review .review-author {
	display: block;
	height: 20px;
	font-weight: 600;
	text-align: right;
}

.vendor-selection-slides {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    grid-gap: 20px;
    padding: 5px 20px 20px 20px;
}
.vendor-selection-item {
    margin-right: 0px;
    background: #ffffff;
    box-shadow: 0 10px 15px #00000010;
    padding: 0px;
    width: calc(16.66% - 22px);
    margin: 0 11px;
}
.vendor-selection-item-inner {
	position: relative;
    width: 100%;
}
.vendor-selection-item-inner a {
	display: block;
	float: left;
	width: 100%;
	height: 100%;
	position: relative;
    padding-top: 51.45%;
}
.vendor-selection-item-inner a img {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/****************************************************************************/
/* Карусели главной: макет карточки «Изображение» + флаги; кнопки зелёные.   */
/* Скрывается всё, что не вмещается (overflow), справа — градиент 200px.     */
/****************************************************************************/

.product-selection-wrap, .vendor-selection-wrap { position: relative; }
.product-selection-slides, .vendor-selection-slides {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	grid-gap: 16px;
	padding: 5px 20px 16px;
}
/* Кадровое окно - на внешней рамке карусели (лента движется без собственного клиппинга) */
.product-selection-wrap, .vendor-selection-wrap {
	overflow: hidden;
}
.carousel-fade {
	position: absolute;
	right: 0;
	top: 0;
	width: 200px;
	height: 100%;
	pointer-events: none;
	z-index: 3;
	background: linear-gradient(to right, rgba(248, 249, 251, 0), #f8f9fb);
}

/* Карточка как в виде «Изображение» */
form.product-selection-item {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 240px;
	flex-grow: 0;
	flex-shrink: 0;
	background: #ffffff;
	border: solid 1px #e8e8e8;
	border-radius: 8px;
	box-shadow: none;
	padding: 0;
	overflow: hidden;
	transition: box-shadow 0.18s linear;
}
form.product-selection-item:hover { box-shadow: 0 6px 18px #00000018; }
.product-selection-item-inner { width: 100%; padding: 0; }

/* Флаги поверх фото */
form.product-selection-item .product-flags {
	position: absolute;
	left: 8px;
	top: 8px;
	z-index: 2;
}
form.product-selection-item .product-flags > div {
	display: block;
	padding: 0 12px;
	line-height: 26px;
	border-radius: 13px;
	color: #ffffff;
	font-family: 'Ubuntu Regular';
	font-size: 12px;
}
form.product-selection-item .product-new { background: #a3bc1c; }
form.product-selection-item .product-special { background: #ffa500; }

/* Фото: высота как в виде «Изображение» */
.product-selection-item .selection-item-image {
	display: block;
	padding: 10px 0;
	background: #ffffff;
}
.product-selection-item .selection-item-image img {
	display: block;
	width: 100%;
	height: 180px;
	object-fit: contain;
}

/* Подпись */
.product-selection-item .selection-caption {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 6px 12px 12px;
	flex-grow: 1;
}
.product-selection-item .selection-item-title {
	font-family: 'Ubuntu Light';
	font-size: 13px;
	line-height: 18px;
	color: #2e2f38;
	text-decoration: none;
	font-weight: 600;
	height: calc(18px * 3); /* ровно 3 строки — карточки в ряд ровные */
	min-height: calc(18px * 3); /* минимум 3 строки */
	overflow: hidden;
}
.product-selection-item .selection-item-title:hover { color: #274796; height: auto; } /* при наведении — авторазмер */
.product-selection-item .vendor-title a {
	font-family: 'Ubuntu Light';
	font-size: 12px;
	color: #274796;
	text-decoration: none;
}
.product-selection-item .vendor-title a:hover { text-decoration: underline; }

/* Склад: строка (тема зелёная) */
.product-selection-item .selection-stock {
	display: flex;
	align-items: baseline;
	gap: 2px;
	white-space: nowrap;
}
.product-selection-item .selection-stock .stock-head,
.product-selection-item .selection-stock .stock-unit {
	font-family: 'Ubuntu Light';
	font-size: 11px;
	color: #8a94a0;
}
.product-selection-item .selection-stock .stock-num {
	background: #b0cb1f;
	color: #ffffff;
	padding: 0 4px;
	border-radius: 3px;
	margin: 0 6px;
	font-family: 'Ubuntu Light';
	font-weight: 700;
	font-size: 13px;
}
.product-selection-item .selection-stock .stock-note {
	font-family: 'Ubuntu Light';
	font-size: 11px;
	color: #707070;
}
.product-selection-item .selection-stock .stock-note.none { color: #c9403c; }

/* Цена + звёзды в строке (равные промежутки — как в виде «Изображение») */
.product-selection-item .selection-price-line {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-evenly;
	margin: 5px 0;
}
.product-selection-item .product-price {
	font-family: 'Ubuntu Light';
	font-size: 16px;
	font-weight: 600;
	color: #2e2f38;
	white-space: nowrap;
}
.product-selection-item .product-price > span:after {
	content: "\f158";
	font-family: 'FontAwesome';
	font-size: 14px;
	margin-left: 4px;
}
.product-selection-item .product-rating .star {
	display: inline-block;
	position: relative;
	width: 12px;
	height: 12px;
}
.product-selection-item .product-rating .star:before {
	content: "\f005";
	font-family: "FontAwesome Regular";
	display: block;
	width: 12px;
	height: 12px;
	line-height: 12px;
	text-align: center;
	font-size: 11px;
	color: #b6b6b6;
}
.product-selection-item .product-rating .star.gold:before { font-family: "FontAwesome"; color: #ffd700; }

/* Счётчик + кнопка «В корзину» (зелёная тема, как в категории) */
.product-selection-item .selection-cart {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 7px;
}
.product-selection-item .product-amount {
	background: #f2f4f8cc;
	border-radius: 17px;
	box-shadow: none;
}
.product-selection-item .amount-counter { width: 26px; height: 26px; line-height: 26px; font-size: 14px; }
.product-selection-item .product-amount input[name="qty"] { width: 30px; height: 26px; line-height: 26px; font-size: 13px; }
.product-selection-item .add2basket {
	display: inline-flex;
	align-items: center;
	background: #b0cb1f;
	border: none;
	border-radius: 23px;
	color: #ffffff;
	font-family: 'Ubuntu Light';
	font-weight: 400;
	font-size: 13px;
	padding: 8px 12px 8px 12px;
	cursor: pointer;
	white-space: nowrap;
	text-indent: 14px;
	transition: background 0.18s linear;
}
.product-selection-item .add2basket:before {
	content: "\f291";
	font-family: 'FontAwesome';
	margin-left: -14px;
	margin-right: 6px;
}
.product-selection-item .add2basket:hover { background: #b0cb1fe0; }
.product-selection-item .add2basket:active { background: #a3bc1c; }
/* Момент успеха — как на странице категории (.cat-add-to-basket.added):
   затемнение фона зелёной схемы, текст «Добавлено ✓» держится 1.4 с */
.product-selection-item .add2basket.added,
.product-selection-item .add2basket.added:hover,
.product-selection-item .add2basket.added:active { background: #a3bc1c; }

/* Действия внизу карточки */
.product-selection-item .selection-tools {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	gap: 6px;
	opacity: 0.85;
	margin-top: auto;
	padding-top: 6px;
}
.product-selection-item .selection-tools .icon {
	cursor: pointer;
	font-size: 11px;
	color: #707070;
	transition: color 0.15s linear;
}
.product-selection-item .selection-tools .icon:hover { color: #b0cb1f; }

/* Карточка карусели не отображает состояние избранного/сравнения по товару -
   кнопки убраны из карточки за неработающий синхрон-контекст */

/* Заголовки каруселей */
.product-selection-title, .vendor-selection-title {
	font-family: 'Ubuntu Light';
	font-weight: 600;
}

/* Счётчик количества в каруселях: пилюля по стандарту (flex + сброс кнопок) */
.product-selection-item .product-amount {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	background: #f2f4f8cc;
	border-radius: 17px;
}
.product-selection-item .amount-counter {
	width: 26px;
	height: 26px;
	line-height: 26px;
	border: none;
	background: none;
	padding: 0;
	font-size: 14px;
	font-weight: 600;
	color: #585858;
	cursor: pointer;
	font-family: 'Ubuntu Regular';
}
.product-selection-item .amount-counter:active { color: #a3bc1c; }
.product-selection-item .product-amount input[name="qty"] {
	width: 30px;
	height: 26px;
	line-height: 26px;
	border: none;
	background: transparent;
	padding: 0;
	color: #2e2f38b3;
	font-size: 13px;
	text-align: center;
	outline: none;
}
