.hpas-section {
	background-repeat: no-repeat;
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.hpas-overlay {
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.hpas-stage-outer {
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 100%;
	z-index: 1;
}

.hpas-stage {
	position: relative;
	transform-origin: top left;
}

.hpas-layer {
	box-sizing: border-box;
	overflow: hidden;
	position: absolute;
}

.hpas-layer h1,
.hpas-layer h2,
.hpas-layer h3,
.hpas-layer h4,
.hpas-layer h5,
.hpas-layer h6,
.hpas-layer p,
.hpas-layer span,
.hpas-layer div {
	margin: 0;
}

.hpas-content-frame {
	box-sizing: border-box;
	display: flex;
	font-size: inherit;
	font-weight: inherit;
	height: 100%;
	line-height: 1.15;
	overflow: hidden;
	overflow-wrap: anywhere;
	width: 100%;
}

.hpas-content-inner {
	display: block;
	max-height: 100%;
	max-width: 100%;
	overflow: hidden;
}

.hpas-content-inner p {
	margin: 0;
}

.hpas-content-h-left {
	justify-content: flex-start;
	text-align: left;
}

.hpas-content-h-center {
	justify-content: center;
	text-align: center;
}

.hpas-content-h-right {
	justify-content: flex-end;
	text-align: right;
}

.hpas-content-v-top {
	align-items: flex-start;
}

.hpas-content-v-middle {
	align-items: center;
}

.hpas-content-v-bottom {
	align-items: flex-end;
}

.hpas-layer img,
.hpas-layer video {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.hpas-button {
	align-items: center;
	box-sizing: border-box;
	color: inherit;
	display: flex;
	height: 100%;
	justify-content: center;
	text-decoration: none;
	width: 100%;
}

.hpas-button:hover,
.hpas-button:focus {
	color: inherit;
	filter: brightness(.96);
	text-decoration: none;
}

.hpas-layer-shape span {
	display: block;
	height: 100%;
	width: 100%;
}

.hpas-products-unavailable {
	align-items: center;
	background: #f3f4f6;
	border: 1px solid #d1d5db;
	box-sizing: border-box;
	display: flex;
	height: 100%;
	justify-content: center;
	padding: 18px;
	text-align: center;
}

.hpas-product-slider {
	height: 100%;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.hpas-product-track {
	display: flex;
	height: 100%;
	transition: transform .35s ease;
	will-change: transform;
}

.hpas-product-card {
	background: #fff;
	border: 1px solid rgba(17, 24, 39, .1);
	box-sizing: border-box;
	color: inherit;
	display: flex;
	flex: 0 0 33.333%;
	flex-direction: column;
	gap: 10px;
	height: 100%;
	justify-content: flex-start;
	padding: 14px;
	text-decoration: none;
}

.hpas-product-card:hover,
.hpas-product-card:focus {
	color: inherit;
	text-decoration: none;
}

.hpas-product-image {
	aspect-ratio: 1 / 1;
	background: #f6f7f7;
	display: block;
	overflow: hidden;
	width: 100%;
}

.hpas-product-image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.hpas-product-title,
.hpas-product-price {
	display: block;
	font-size: 15px;
	line-height: 1.35;
}

.hpas-product-title {
	font-weight: 700;
}

.hpas-product-price {
	color: #475467;
}

.hpas-slider-prev,
.hpas-slider-next {
	align-items: center;
	background: rgba(17, 24, 39, .86);
	border: 0;
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: 26px;
	height: 38px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 38px;
	z-index: 2;
}

.hpas-slider-prev {
	left: 8px;
}

.hpas-slider-next {
	right: 8px;
}

.hpas-product-slider.is-single-page .hpas-slider-prev,
.hpas-product-slider.is-single-page .hpas-slider-next {
	display: none;
}

.hpas-animate {
	opacity: 0;
}

.hpas-animate.is-visible {
	animation-fill-mode: both;
	opacity: 1;
}

.hpas-anim-fadeIn.is-visible { animation-name: hpasFadeIn; }
.hpas-anim-fadeInUp.is-visible { animation-name: hpasFadeInUp; }
.hpas-anim-fadeInDown.is-visible { animation-name: hpasFadeInDown; }
.hpas-anim-fadeInLeft.is-visible { animation-name: hpasFadeInLeft; }
.hpas-anim-fadeInRight.is-visible { animation-name: hpasFadeInRight; }
.hpas-anim-zoomIn.is-visible { animation-name: hpasZoomIn; }
.hpas-anim-zoomOut.is-visible { animation-name: hpasZoomOut; }
.hpas-anim-slideInUp.is-visible { animation-name: hpasSlideInUp; }
.hpas-anim-slideInDown.is-visible { animation-name: hpasSlideInDown; }
.hpas-anim-slideInLeft.is-visible { animation-name: hpasSlideInLeft; }
.hpas-anim-slideInRight.is-visible { animation-name: hpasSlideInRight; }
.hpas-anim-bounceIn.is-visible { animation-name: hpasBounceIn; }
.hpas-anim-flipInX.is-visible { animation-name: hpasFlipInX; }
.hpas-anim-rotateIn.is-visible { animation-name: hpasRotateIn; }
.hpas-anim-pulse.is-visible { animation-name: hpasPulse; animation-iteration-count: 2; }

@keyframes hpasFadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes hpasFadeInUp {
	from { opacity: 0; transform: var(--hpas-rotation) translate3d(0, 35px, 0); }
	to { opacity: 1; transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasFadeInDown {
	from { opacity: 0; transform: var(--hpas-rotation) translate3d(0, -35px, 0); }
	to { opacity: 1; transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasFadeInLeft {
	from { opacity: 0; transform: var(--hpas-rotation) translate3d(-45px, 0, 0); }
	to { opacity: 1; transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasFadeInRight {
	from { opacity: 0; transform: var(--hpas-rotation) translate3d(45px, 0, 0); }
	to { opacity: 1; transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasZoomIn {
	from { opacity: 0; transform: var(--hpas-rotation) scale3d(.82, .82, .82); }
	to { opacity: 1; transform: var(--hpas-rotation) scale3d(1, 1, 1); }
}

@keyframes hpasZoomOut {
	from { opacity: 0; transform: var(--hpas-rotation) scale3d(1.12, 1.12, 1.12); }
	to { opacity: 1; transform: var(--hpas-rotation) scale3d(1, 1, 1); }
}

@keyframes hpasSlideInUp {
	from { transform: var(--hpas-rotation) translate3d(0, 100%, 0); visibility: visible; }
	to { transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasSlideInDown {
	from { transform: var(--hpas-rotation) translate3d(0, -100%, 0); visibility: visible; }
	to { transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasSlideInLeft {
	from { transform: var(--hpas-rotation) translate3d(-100%, 0, 0); visibility: visible; }
	to { transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasSlideInRight {
	from { transform: var(--hpas-rotation) translate3d(100%, 0, 0); visibility: visible; }
	to { transform: var(--hpas-rotation) translate3d(0, 0, 0); }
}

@keyframes hpasBounceIn {
	0%, 20%, 40%, 60%, 80%, 100% { animation-timing-function: cubic-bezier(.215, .61, .355, 1); }
	0% { opacity: 0; transform: var(--hpas-rotation) scale3d(.3, .3, .3); }
	20% { transform: var(--hpas-rotation) scale3d(1.1, 1.1, 1.1); }
	40% { transform: var(--hpas-rotation) scale3d(.9, .9, .9); }
	60% { opacity: 1; transform: var(--hpas-rotation) scale3d(1.03, 1.03, 1.03); }
	80% { transform: var(--hpas-rotation) scale3d(.97, .97, .97); }
	100% { opacity: 1; transform: var(--hpas-rotation) scale3d(1, 1, 1); }
}

@keyframes hpasFlipInX {
	from { opacity: 0; transform: var(--hpas-rotation) perspective(400px) rotate3d(1, 0, 0, 90deg); }
	40% { transform: var(--hpas-rotation) perspective(400px) rotate3d(1, 0, 0, -20deg); }
	60% { opacity: 1; transform: var(--hpas-rotation) perspective(400px) rotate3d(1, 0, 0, 10deg); }
	80% { transform: var(--hpas-rotation) perspective(400px) rotate3d(1, 0, 0, -5deg); }
	to { opacity: 1; transform: var(--hpas-rotation) perspective(400px); }
}

@keyframes hpasRotateIn {
	from { opacity: 0; transform: var(--hpas-rotation) rotate3d(0, 0, 1, -200deg); transform-origin: center; }
	to { opacity: 1; transform: var(--hpas-rotation); transform-origin: center; }
}

@keyframes hpasPulse {
	from { transform: var(--hpas-rotation) scale3d(1, 1, 1); }
	50% { transform: var(--hpas-rotation) scale3d(1.05, 1.05, 1.05); }
	to { transform: var(--hpas-rotation) scale3d(1, 1, 1); }
}

@media (prefers-reduced-motion: reduce) {
	.hpas-animate,
	.hpas-animate.is-visible {
		animation: none !important;
		opacity: 1;
	}

	.hpas-product-track {
		transition: none;
	}
}
