/**
 * Products Carousel: exact 20px safe padding + no horizontal overflow
 * Scoped to .block-products-carousel only.
 * Single source of truth: container inside this block gets exactly 20px left/right.
 * stagePadding is set to 0 in JS so Owl does not add extra gap.
 */

/* --- Single source of truth: 20px from viewport/container edge --- */
.block-products-carousel > .container {
	padding-left: 20px;
	padding-right: 20px;
}

/* --- Block: no extra horizontal space, prevent overflow --- */
.block-products-carousel {
	overflow-x: hidden;
	max-width: 100%;
	box-sizing: border-box;
}

.block-products-carousel *,
.block-products-carousel *::before,
.block-products-carousel *::after {
	box-sizing: border-box;
}

/* Slider: never exceed container content width */
.block-products-carousel__slider {
	max-width: 100%;
	overflow: hidden;
}

/* Owl viewport: constrain width; parent overflow clips any fractional escape */
.block-products-carousel .owl-stage-outer {
	overflow: hidden !important;
	width: 100% !important;
	max-width: 100%;
}

.block-products-carousel .owl-stage {
	max-width: none;
}

.block-products-carousel .owl-item {
	min-width: 0;
}

.block-products-carousel .owl-item img {
	display: block;
	max-width: 100%;
	height: auto;
}

.block-products-carousel .product-card__image img,
.block-products-carousel .product-card__image a {
	max-width: 100%;
}

/* ============================================
   Disable hover effects on product cards in carousel only
   (no zoom/overlay/shadow/translate/opacity transitions on hover)
   ============================================ */

/* No transitions on card and children */
.block-products-carousel__slider .product-card,
.block-products-carousel__slider .product-card *,
.block-products-carousel__slider .product-card *::before,
.block-products-carousel__slider .product-card *::after {
	transition: none !important;
}

/* Card: no box-shadow change on hover */
.block-products-carousel__slider .product-card:hover,
.block-products-carousel__slider .product-card:hover::before {
	transform: none !important;
	box-shadow: inset 0 0 0 1px #ededed !important;
}

/* Quickview: keep default look (no background/color change on card hover) */
.block-products-carousel__slider .product-card:hover .product-card__quickview,
.block-products-carousel__slider .product-card:hover .product-card__quickview:hover {
	background: transparent !important;
	color: #ccc !important;
}

/* Image: no transform/filter on hover */
.block-products-carousel__slider .product-card:hover .product-card__image img,
.block-products-carousel__slider .product-card .product-card__image img {
	transform: none !important;
	filter: none !important;
}

/* Buttons list / wishlist / compare: no visibility/opacity toggle; no lift on hover */
.block-products-carousel__slider .product-card__quickview,
.block-products-carousel__slider .product-card__buttons-list,
.block-products-carousel__slider .product-card__buttons {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.block-products-carousel__slider .product-card:hover .product-card__buttons,
.block-products-carousel__slider .product-card:hover .product-card__buttons-list,
.block-products-carousel__slider .product-card:hover .product-card__quickview {
	opacity: 1 !important;
	visibility: visible !important;
}

/* No card "lift" (margin-bottom / z-index) on hover in carousel */
.block-products-carousel__slider .product-card:hover {
	position: relative !important;
	z-index: 1 !important;
	margin-bottom: 0 !important;
}

/* Button hover: no translateY / box-shadow change */
.block-products-carousel__slider .product-card__buttons .btn:hover,
.block-products-carousel__slider .product-card__buttons .button:hover,
.block-products-carousel__slider .product-card__buttons a:hover {
	transform: none !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.block-products-carousel__slider .product-card__buttons .btn:active,
.block-products-carousel__slider .product-card__buttons .button:active,
.block-products-carousel__slider .product-card__buttons a:active {
	transform: none !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
