/* Попапы карточки товара: вне .sku, не участвуют в потоке (Swiper даёт transform у предков) */
.product-page-popups {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
	border: 0;
	pointer-events: none;
}

.product-page-popups .fancybox-is-hidden {
	position: fixed !important;
	left: -9999px !important;
	top: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/*
 * Тема: .swiper-horizontal-slides { height: 67rem } — лишний вертикальный зазор между
 * основным фото и полосой миниатюр. Для блока товара высота по контенту.
 */
.sku__horizontal-slides .swiper-horizontal-slides {
	height: auto !important;
	min-height: 0;
}

.sku__horizontal-slides .swiper-horizontal-slides .swiper-wrapper {
	height: auto;
}

.sku__horizontal-slides .swiper-horizontal-slides .swiper-slide {
	height: auto;
}

/* Карточка товара: главный слайдер — без полей вокруг картинки, заполнение блока */
.sku__slide {
	display: block;
	position: relative;
	overflow: hidden;
	padding: 0;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.sku__slide picture {
	display: block;
	width: 100%;
	height: auto;
}

.sku__slide img {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
	max-height: none;
	vertical-align: top;
}

/* Карточка товара: полоса миниатюр (стрелки поверх, без колонки 12rem из темы) */
.sku__horizontal-control {
	padding: 0.8rem 0 0 0 !important;
}

@media (max-width: 767px) {
	.sku__slide {
		height: 34.4rem;
		min-height: 0;
	}

	.sku__slide img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}
}

@media (max-width: 480px) {
	.sku__slide {
		min-height: 0;
	}
}

/* Миниатюры товара: стрелки по краям полосы, не «колонка» справа
   (иначе .swiper-horizontal .swiper-prev ломает вёрстку — position:relative + flex:1) */

.sku__horizontal-thumbs {
	position: relative;
}

.sku__horizontal-nav {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	height: auto;
	display: block;
	border: none;
	pointer-events: none;
	z-index: 110;
}

.sku__horizontal-nav .swiper-prev,
.sku__horizontal-nav .swiper-next {
	position: absolute !important;
	top: 50% !important;
	left: auto;
	right: auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 3rem !important;
	height: 3rem !important;
	min-width: 3rem;
	min-height: 3rem;
	-ms-flex: 0 0 auto !important;
	flex: 0 0 auto !important;
	margin: 0;
	padding: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 0.1rem 0.4rem rgba(0, 0, 0, 0.12);
	pointer-events: auto;
	display: -ms-flexbox !important;
	display: flex !important;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.sku__horizontal-nav .swiper-prev {
	left: 0.4rem !important;
}

.sku__horizontal-nav .swiper-next {
	right: 0.4rem !important;
}

.sku__horizontal-nav > * {
	border: none !important;
}

.sku__horizontal-nav .swiper-prev svg,
.sku__horizontal-nav .swiper-next svg {
	width: 1.4rem;
	height: 1.4rem;
}

.sku__horizontal-nav .swiper-prev:hover,
.sku__horizontal-nav .swiper-next:hover {
	background: #fff;
}

/* Край слайда: не блеклить стрелку (app.css: .swiper-horizontal … opacity 0.1 + pointer-events none) */
.swiper-horizontal .sku__horizontal-nav .swiper-prev.swiper-button-disabled,
.swiper-horizontal .sku__horizontal-nav .swiper-next.swiper-button-disabled {
	pointer-events: auto;
	cursor: default;
}
.swiper-horizontal .sku__horizontal-nav .swiper-prev.swiper-button-disabled svg,
.swiper-horizontal .sku__horizontal-nav .swiper-next.swiper-button-disabled svg {
	opacity: 1;
}

.swiper-vertical .sku__vertical-nav .swiper-prev.swiper-button-disabled,
.swiper-vertical .sku__vertical-nav .swiper-next.swiper-button-disabled {
	pointer-events: auto;
	cursor: default;
}
.swiper-vertical .sku__vertical-nav .swiper-prev.swiper-button-disabled svg,
.swiper-vertical .sku__vertical-nav .swiper-next.swiper-button-disabled svg {
	opacity: 1;
}

/* Полоса миниатюр: фиксированная высота темы (11rem), иначе wrapper height:100% схлопывается в 0 */
.sku__horizontal .swiper-horizontal-thumbs {
	width: 100% !important;
	height: 11rem !important;
}

.sku__horizontal .swiper-horizontal-thumbs .swiper-wrapper {
	height: 100% !important;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.sku__horizontal .swiper-horizontal-thumbs .swiper-slide {
	position: relative;
	height: 100% !important;
	background: #fff;
}

.sku__horizontal .sku__thumb {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	display: block;
	overflow: hidden;
	width: auto;
	height: auto;
	min-height: 0;
	padding: 0.35rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.sku__horizontal .sku__thumb img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
	-o-object-fit: contain;
	object-fit: contain;
	object-position: center;
	max-width: none !important;
	max-height: none !important;
	mix-blend-mode: normal;
}

.sku__horizontal .sku__thumb:hover img {
	-webkit-transform: none !important;
	transform: none !important;
}

/* Тема красит активный слайд в #F7F7FB — убираем серую полосу в конце / при прокрутке */
.sku__horizontal .swiper-horizontal-thumbs .swiper-slide-thumb-active {
	background: #fff !important;
	border: 2px solid #27AE60;
}

/* Текущая миниатюра — тонкая рамка (вместо заливки) */
.sku__horizontal .swiper-horizontal-thumbs .swiper-slide-thumb-active .sku__thumb {
	-webkit-box-shadow: inset 0 0 0 2px rgba(32, 178, 102, 0.95);
	box-shadow: inset 0 0 0 2px rgba(32, 178, 102, 0.95);
}

/* Отзывы о товаре (вкладка): фото и видео в одну линию, компактно */
.product-showcase-reviews__media-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 0.5rem;
	margin-top: 0.75rem;
}

.product-showcase-reviews__thumb {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	display: block;
	width: 7.5rem;
	height: 7.5rem;
	border-radius: 0.4rem;
	overflow: hidden;
	background: #f5f5f7;
}

.product-showcase-reviews__thumb img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.product-showcase-reviews__thumb--video {
	width: 13.5rem;
	height: 7.5rem;
	position: relative;
	background: #111;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

.product-showcase-reviews__thumb--video img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.product-showcase-reviews__video-fallback {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0.35rem;
	text-align: center;
	font-size: 0.8rem;
	line-height: 1.25;
	color: #fff;
	background: #2a2a2e;
}

.product-showcase-reviews__play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 3rem;
	height: 3rem;
	margin: -1.5rem 0 0 -1.5rem;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.55);
	-webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.35);
	box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.35);
	pointer-events: none;
}

.product-showcase-reviews__play::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 0;
	height: 0;
	margin: -0.45rem 0 0 -0.25rem;
	border-style: solid;
	border-width: 0.45rem 0 0.45rem 0.75rem;
	border-color: transparent transparent transparent #fff;
}

.product-showcase-reviews__thumb--link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 13.5rem;
	min-height: 7.5rem;
	padding: 0.5rem;
	text-align: center;
	font-size: 0.9rem;
	border: 1px solid #ededf9;
	border-radius: 0.4rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.product-showcase-reviews__sep {
	margin: 1.25rem 0;
	border: 0;
	border-top: 1px solid #ededf9;
}

/* Product instructions (tab) */
.product-instructions__grid {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 0.5rem;
}

.product-instructions__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 10rem;
	max-width: 100%;
	padding: 0.75rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	color: inherit;
	border: 1px solid #ededf9;
	border-radius: 0.4rem;
	-webkit-transition: border-color 0.2s, box-shadow 0.2s;
	transition: border-color 0.2s, box-shadow 0.2s;
}

.product-instructions__item--pdf {
	min-width: 11rem;
	width: auto;
}

.product-instructions__item:hover {
	border-color: #c5c5d9;
	-webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.product-instructions__item--img img {
	width: 7.5rem;
	height: 7.5rem;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
	border-radius: 0.25rem;
}

.product-instructions__name {
	margin-top: 0.5rem;
	font-size: 1.8rem;
	line-height: 1.3;
	text-align: center;
	word-break: break-word;
}

.product-instructions__item--pdf .product-instructions__pdf-icon {
	display: block;
	width: 6rem;
	height: 7.5rem;
	margin: 0.35rem 0;
	background: linear-gradient(145deg, #e74c3c 0%, #c0392b 100%);
	border-radius: 0.25rem;
	position: relative;
	-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.product-instructions__item--pdf .product-instructions__pdf-icon::after {
	content: 'PDF';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0.5rem;
	text-align: center;
	font-size: 1.1rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.05em;
}

.product-instructions__hint {
	margin-top: 0.35rem;
	font-size: 1.75rem;
	color: #5a5a7a;
}
