/*
 * Product carousel alignment
 *
 * Scoped to WoodMart product carousels so grids, carousel widths, navigation,
 * external spacing, breakpoints and animations keep their original behavior.
 */
.wd-products-element .wd-carousel-wrap {
	display: flex;
	align-items: stretch;
}

.wd-products-element .wd-carousel-item {
	height: auto;
	display: flex;
	align-items: stretch;
}

.wd-products-element .wd-carousel-item > .wd-product,
.wd-products-element .wd-carousel-item > .wd-product > .product-wrapper {
	height: 100%;
}

.wd-products-element .wd-carousel-item > .wd-product {
	flex: 1 1 auto;
	min-width: 0;
}

.wd-products-element .wd-carousel-item > .wd-product > .product-wrapper {
	display: flex;
	flex-direction: column;
}

.wd-products-element .wd-carousel-item .product-element-top {
	flex: 0 0 auto;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.wd-products-element .wd-carousel-item .product-image-link {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wd-products-element .wd-carousel-item .product-image-link img {
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
}

.wd-products-element .wd-carousel-item .product-element-bottom {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.wd-products-element .wd-carousel-item .wd-product-header {
	flex: 0 0 calc(2 * 1.4em);
	height: calc(2 * 1.4em);
	min-height: calc(2 * 1.4em);
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
	overflow: hidden;
}

.wd-products-element .wd-carousel-item .wd-entities-title {
	width: 100%;
	margin: 0;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.wd-products-element .wd-carousel-item .wrap-price {
	flex: 0 0 auto;
	width: 100%;
	margin-top: auto;
}

.wd-products-element .wd-carousel-item .swap-wrapp,
.wd-products-element .wd-carousel-item .swap-elements {
	width: 100%;
}

.wd-products-element .wd-carousel-item .price {
	display: flex;
	align-items: baseline;
	flex-wrap: nowrap;
	width: 100%;
}

.wd-products-element .wd-carousel-item .wd-price-unit {
	display: inline-flex;
	align-items: baseline;
	white-space: nowrap;
}

.wd-products-element .wd-carousel-item .wd-add-btn {
	min-height: 0;
}

.sv-price-on-request {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 7px 11px;
	border: 1px solid rgba(18, 103, 199, .18);
	border-radius: 10px;
	background: rgba(18, 103, 199, .07);
	color: #164f9e;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
}

.sv-product-no-price .wrap-price {
	min-height: 40px;
}

.sv-product-no-price .swap-wrapp {
	height: auto;
	min-height: 34px;
	overflow: visible;
}

.sv-product-no-price .swap-elements {
	position: static;
	transform: none;
}

.sv-product-no-price .sv-price-on-request {
	max-width: 100%;
	box-sizing: border-box;
	white-space: nowrap;
}
