.catalog-section {
	display: flex;
	flex-direction: column;
	gap: var(--sl-card-gap, 1.25rem);
}

.sl-catalog-sections {
	margin-bottom: 1.25rem;
}

.catalog-section .row {
	align-items: stretch;
	margin-inline: calc(-1 * var(--sl-card-gap-half, 0.625rem));
	row-gap: var(--sl-card-gap, 1.25rem);
}

.catalog-section .row > [class*="col"] {
	display: flex;
	min-width: 0;
	padding-inline: var(--sl-card-gap-half, 0.625rem);
}

.catalog-section .row > [class*="col"] > .product-item-container {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	height: 100%;
	max-width: 100%;
	min-height: 0;
	min-width: 0;
	width: 100%;
}

.catalog-section .row > [class*="col"] > .product-item-container > .product-item {
	flex: 1 1 auto;
	height: 100%;
	min-height: 0;
	min-width: 0;
	width: 100%;
}

.sl-catalog[data-view="grid"] .catalog-section .product-item-small-card {
	align-self: stretch;
}

.sl-catalog[data-view="grid"] .catalog-section .product-item-small-card > .product-item-container {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	width: 100%;
}

.sl-catalog[data-view="grid"] .catalog-section .row.sl-grid-custom-row > .product-item-small-card > .product-item-container {
	flex: 1 1 auto;
	width: 100%;
}

.sl-catalog[data-view="grid"] .catalog-section .product-item-small-card > .product-item-container > .product-item {
	flex: 1 1 auto;
	height: 100%;
	min-height: 0;
}

.sl-catalog[data-view="grid"] .catalog-section .sl-catalog-grid-banner-cell > .qbe-banner {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	min-height: 0;
}

.sl-catalog[data-view="grid"] .catalog-section .sl-catalog-grid-banner-cell {
	overflow: hidden;
	border-radius: var(--sl-card-radius, 1.25rem);
}

.sl-catalog-section-empty {
	align-items: center;
	border-radius: var(--sl-card-radius, 1.25rem);
	color: var(--sl-color-dark);
	display: flex;
	flex-direction: column;
	gap: 1rem;
	justify-content: center;
	min-height: 18rem;
	padding: 3rem 1.5rem;
	text-align: center;
	width: 100%;
}

.sl-catalog-section-empty__icon {
	align-items: center;
	color: var(--sl-color-link);
	display: flex;
	height: 4.5rem;
	justify-content: center;
	opacity: 0.75;
	width: 4.5rem;
}

.sl-catalog-section-empty__title {
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
}

.sl-catalog-section-empty__text {
	font-size: 0.9375rem;
	line-height: 1.5;
	margin: 0;
	max-width: 30rem;
	opacity: 0.65;
}

.sl-catalog-section-empty__reset {
	align-items: center;
	background: transparent;
	border: 1px solid currentColor;
	border-radius: 6.25rem;
	color: var(--sl-color-link);
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 500;
	justify-content: center;
	line-height: 1;
	margin-top: 0.5rem;
	padding: 0.8125rem 1.5rem;
	text-decoration: none;
	transition: opacity 200ms ease;
}

.sl-catalog-section-empty__reset:hover {
	color: var(--sl-color-link-hover);
	opacity: 1;
	text-decoration: none;
}

.sl-catalog-section-empty__reset:focus-visible {
	outline: 2px solid var(--sl-color-link);
	outline-offset: 0.1875rem;
}

.bx-no-touch .product-item-container.hover .product-item:not(.sl-list-card):not(.sl-line-card) {
	border: none !important;
	box-shadow: 0 0.25rem 1rem 0 rgba(var(--sl-color-dark-rgb), .08) !important;
	left: 0 !important;
	padding: var(--sl-product-card-padding);
	right: 0 !important;
	transition: none;
	width: 100%;
}

@media (min-width: 1025px) {
	.sl-catalog[data-view="grid"] .catalog-section.sl-catalog-section--wide .row.sl-grid-custom-row {
		align-items: stretch;
		display: grid;
		grid-template-columns: repeat(var(--sl-catalog-grid-columns, 6), minmax(0, 1fr));
		gap: var(--sl-card-gap, 1.25rem);
		margin-inline: 0;
	}

	.sl-catalog[data-view="grid"] .catalog-section.sl-catalog-section--wide .row.sl-grid-custom-row > [class*="col"] {
		display: flex;
		flex: none;
		max-width: none;
		padding-inline: 0;
		width: auto;
	}

	.sl-catalog[data-view="grid"] .catalog-section .product-item-small-card > .product-item-container.hover > .product-item.sl-card {
		flex: none;
		height: auto;
		min-height: 100%;
	}

	.sl-catalog[data-view="grid"] .catalog-section .product-item-container.hover .sl-card__content {
		flex: none;
		overflow: visible;
	}

	.sl-catalog[data-view="grid"] .catalog-section .product-item-container.hover .product-item-title {
		flex-shrink: 0;
	}
}

@media (min-width: 1025px) and (hover: hover) and (pointer: fine) {
	.sl-catalog.sl-catalog--section[data-view="grid"]
	.catalog-section
	.row.sl-grid-custom-row[data-entity="items-row"]
	> .product-item-small-card:not(.sl-catalog-grid-banner-cell)[data-sl-safari-grid-cell-pending="Y"] {
		pointer-events: none;
	}

	.sl-catalog.sl-catalog--section[data-view="grid"][data-sl-safari-grid-card-lock="Y"]
	.catalog-section
	.row.sl-grid-custom-row[data-entity="items-row"]
	> .product-item-small-card:not(.sl-catalog-grid-banner-cell)[data-sl-safari-grid-cell-lock="Y"] {
		height: var(--sl-safari-grid-rest-height) !important;
		max-height: var(--sl-safari-grid-rest-height) !important;
		min-height: 0 !important;
	}
}

.bx-no-touch .product-item-container.hover .sl-list-card {
	border: 1px solid transparent !important;
	box-shadow: none !important;
	height: auto !important;
	overflow: visible !important;
	padding: 1.8125rem 1.875rem !important;
	position: static !important;
	transform: none !important;
}

.bx-no-touch .product-item-container.hover .sl-line-card {
	border: 1px solid transparent !important;
	box-shadow: none !important;
	height: auto !important;
	overflow: visible !important;
	padding: 1.875rem !important;
	position: static !important;
	transform: none !important;
}

.product-item-container.hover .product-item:not(.sl-list-card):not(.sl-line-card)::after {
	opacity: 0;
}

.product-item-title {
	white-space: normal !important;
}

.product-item-title a {
	font-size: inherit;
	font-style: normal;
	font-weight: 400;
	line-height: inherit;
}

.sl-catalog-section__pager-row {
	align-items: center;
	display: flex;
	gap: 2.5rem;
	justify-content: center;
	margin-bottom: 1.5rem;
}

.sl-catalog-section__pager-nav {
	text-align: center;
}

.sl-catalog-section__pager-row .sl-pagination__item--show-more {
	display: none;
}

.sl-catalog-section__lazy-load {
	flex-shrink: 0;
}

.sl-catalog-section__show-more {
	align-items: center;
	background: var(--sl-color-white);
	border: none;
	border-radius: 0.625rem;
	color: var(--sl-color-link-hover);
	cursor: pointer;
	display: inline-flex;
	font-size: var(--sl-text-sm, 0.875rem);
	font-weight: 500;
	justify-content: center;
	line-height: 1;
	padding: 0.625rem 1.25rem;
	transition: background-color 200ms ease, color 200ms ease;
	white-space: nowrap;
}

.sl-catalog-section__show-more:hover {
	background: var(--sl-color-link-hover);
	color: var(--sl-color-white);
}

.sl-catalog-section__show-more.disabled,
.sl-catalog-section__show-more:disabled {
	cursor: wait;
	pointer-events: none;
}

.sl-catalog-section__show-more--loading::after {
	animation: sl-catalog-section-show-more-dots 1.2s steps(1, end) infinite;
	clip-path: inset(0 1em 0 0);
	content: '...';
	display: inline-block;
	margin-left: 0.125rem;
	overflow: hidden;
	text-align: left;
	vertical-align: bottom;
	width: 1em;
}

@keyframes sl-catalog-section-show-more-dots {
	0% {
		clip-path: inset(0 1em 0 0);
	}

	25% {
		clip-path: inset(0 0.67em 0 0);
	}

	50% {
		clip-path: inset(0 0.34em 0 0);
	}

	75%,
	100% {
		clip-path: inset(0 0 0 0);
	}
}

@media (max-width: 1024px) {
	.bx-no-touch .product-item-container.hover .product-item:not(.sl-list-card):not(.sl-line-card) {
		padding: var(--sl-product-card-padding);
	}
}

@media (max-width: 768px) {
	.sl-catalog:is([data-view="grid"], [data-view="list"], [data-view="line"]) .catalog-section > .row {
		display: contents;
	}

	.sl-catalog:is([data-view="grid"], [data-view="list"], [data-view="line"]) .catalog-section .product-item-small-card {
		display: flex;
		align-self: stretch;
	}

	.sl-catalog:is([data-view="grid"], [data-view="list"], [data-view="line"]) .catalog-section .product-item-small-card > .product-item-container {
		display: flex;
		flex: 1 1 auto;
		flex-direction: column;
		min-height: 0;
		min-width: 0;
		width: 100%;
	}

	.sl-catalog:is([data-view="grid"], [data-view="list"], [data-view="line"]) .catalog-section .product-item-small-card > .product-item-container > .product-item {
		flex: 1 1 auto;
		height: 100%;
		min-height: 0;
	}

	.bx-no-touch .product-item-container.hover .sl-list-card {
		padding: 1.25rem !important;
	}

	.bx-no-touch .product-item-container.hover .sl-line-card {
		padding: 0.9375rem 0.9375rem 0.9375rem calc(4.5rem + 1.875rem) !important;
	}

	.sl-catalog-section__pager-row {
		flex-direction: column;
		gap: 1.25rem;
	}
}

@media (max-width: 480px) {
	.sl-catalog-section-empty {
		min-height: 15rem;
		padding: 2rem 1rem;
	}

	.sl-catalog-section-empty__icon {
		height: 4rem;
		width: 4rem;
	}

	.sl-catalog-section-empty__title {
		font-size: 1.125rem;
	}

	.sl-catalog-section-empty__text,
	.sl-catalog-section-empty__reset {
		font-size: 0.875rem;
	}

	.bx-no-touch .product-item-container.hover .sl-line-card,
	.bx-no-touch .product-item-container.hover .sl-list-card {
		padding: 0.625rem !important;
	}

	.bx-no-touch .product-item-container.hover .product-item:not(.sl-list-card):not(.sl-line-card) {
		padding: var(--sl-product-card-padding);
	}
}

@media (prefers-reduced-motion: reduce) {
	.sl-catalog-section-empty__reset {
		transition: none;
	}

	.sl-catalog-section__show-more {
		transition: none;
	}

	.sl-catalog-section__show-more--loading::after {
		animation: none;
		clip-path: none;
	}
}
