
@font-face {
	font-family: "Ubuntu";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/ubuntu-400.ttf") format("truetype");
}

@font-face {
	font-family: "Ubuntu";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../fonts/ubuntu-500.ttf") format("truetype");
}

@font-face {
	font-family: "Ubuntu";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/ubuntu-700.ttf") format("truetype");
}

/* Keep the waitlist section edge-to-edge without creating horizontal overflow. */
.elementor-11 .elementor-element.elementor-element-c8bb588 {
	width: 100%;
	max-width: 100%;
	--content-width: 100%;
	--padding-left: 0;
	--padding-right: 0;
	overflow: hidden;
}

.elementor-11 .elementor-element.elementor-element-c8bb588 > .e-con-inner {
	width: 100%;
	max-width: 100%;
	padding-right: 0;
	padding-left: 0;
}

.elementor-widget-shopr_waitlist_hero {
	width: 100%;
	max-width: 100%;
	margin-right: 0;
	margin-left: 0;
}

.elementor-widget-shopr_waitlist_hero > .elementor-widget-container {
	padding-right: 0;
	padding-left: 0;
}

.shopr-waitlist-hero {
	box-sizing: border-box;
	width: 100%;
	padding: 64px 24px;
	background: #F8F8F8;
	color: var(--e-global-color-text, #232440);
	font-family: "Ubuntu", "Segoe UI", Arial, sans-serif;
	text-align: center;
}

.shopr-waitlist-hero *,
.shopr-waitlist-hero *::before,
.shopr-waitlist-hero *::after {
	box-sizing: border-box;
}

.shopr-waitlist-hero__inner {
	width: 100%;
	max-width: 760px;
	margin: 0 auto;
}

.shopr-waitlist-hero__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 48px;
	margin: 0 0 32px;
	padding: 10px 28px;
	border-radius: 999px;
	background: #eadcf8;
	color: #4f3db8;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.2;
}

.shopr-waitlist-hero__badge-dot {
	display: block;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--e-global-color-primary, #6d5bd8);
	box-shadow: 0 0 0 7px rgba(109, 91, 216, 0.18), 0 0 20px rgba(109, 91, 216, 0.74), 0 0 42px rgba(226, 191, 255, 0.82);
	animation: shopr-waitlist-dot-glow 2.4s ease-in-out infinite;
	flex: 0 0 auto;
}


@keyframes shopr-waitlist-dot-glow {
	0%, 100% {
		box-shadow: 0 0 0 6px rgba(109, 91, 216, 0.14), 0 0 18px rgba(109, 91, 216, 0.6), 0 0 34px rgba(226, 191, 255, 0.7);
		transform: scale(1);
	}

	50% {
		box-shadow: 0 0 0 10px rgba(109, 91, 216, 0.08), 0 0 28px rgba(109, 91, 216, 0.9), 0 0 56px rgba(226, 191, 255, 0.95);
		transform: scale(1.08);
	}
}

.shopr-waitlist-hero__title {
	max-width: 760px;
	margin: 0 auto 22px;
	color: #232440;
	font-size: clamp(42px, 4.2vw, 64px);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: 0;
}

.shopr-waitlist-hero__copy {
	max-width: 720px;
	margin: 0 auto 34px;
	color: var(--e-global-color-text, #232440);
	font-size: 24px;
	font-weight: 400;
	line-height: 30px;
}

.shopr-waitlist-hero__copy p {
	margin: 0;
}

.shopr-waitlist-hero__intro {
	margin: 0 0 14px;
}

.shopr-waitlist-hero__bonus strong {
	font-weight: 700;
}

.shopr-waitlist-hero__form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	width: 100%;
	max-width: 660px;
	min-width: 0;
	margin: 0 auto 30px;
}

.shopr-waitlist-hero__input {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 62px;
	padding: 0 24px;
	border: 1px solid #C7C1D4;
	border-radius: 8px;
	background: #ffffff;
	color: var(--e-global-color-text, #232440);
	font: inherit;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.2;
	outline: none;
}

.shopr-waitlist-hero__input::placeholder {
	color: rgba(35, 36, 64, 0.72);
	opacity: 1;
}

.shopr-waitlist-hero__input:focus {
	border-color: var(--e-global-color-primary, #6d5bd8);
	box-shadow: 0 0 0 3px rgba(109, 91, 216, 0.14);
}

.shopr-waitlist-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 68px;
	padding: 14px 28px;
	border: 0;
	border-radius: 999px;
	background: var(--e-global-color-primary, #6d5bd8);
	color: #ffffff;
	cursor: pointer;
	font: inherit;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
	overflow-wrap: anywhere;
	transition: transform 160ms ease, filter 160ms ease;
}

.shopr-waitlist-hero__button:hover,
.shopr-waitlist-hero__button:focus {
	color: #ffffff;
	filter: brightness(1.03);
	transform: translateY(-1px);
}

.shopr-waitlist-hero__button-icon {
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.shopr-waitlist-hero__button-icon svg,
.shopr-waitlist-hero__button-icon i {
	display: block;
	width: 0.85em;
	height: 0.85em;
	color: #ffffff;
	fill: #ffffff;
}

.shopr-waitlist-hero__button-icon svg,
.shopr-waitlist-hero__button-icon svg path {
	fill: #ffffff;
}

.shopr-waitlist-hero__proof {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	color: var(--e-global-color-text, #232440);
}

.shopr-waitlist-hero__avatars {
	display: flex;
	align-items: center;
}

.shopr-waitlist-hero__avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin-left: -6px;
	border: 2px solid #f8efff;
	border-radius: 50%;
	background: #c9c6f6;
	color: #ffffff;
	font-size: 20px;
	line-height: 1;
}

.shopr-waitlist-hero__avatar:first-child {
	margin-left: 0;
}

.shopr-waitlist-hero__avatar:nth-child(2) {
	background: #aaa5ef;
}

.shopr-waitlist-hero__avatar:nth-child(3) {
	background: #7f74df;
}

.shopr-waitlist-hero__avatar--plus {
	background: var(--e-global-color-primary, #6d5bd8);
}

.shopr-waitlist-hero__proof-text {
	display: flex;
	align-items: baseline;
	gap: 6px;
	font-size: 20px;
	line-height: 1.2;
}

.shopr-waitlist-hero__proof-text strong {
	font-weight: 700;
}

@media (max-width: 1024px) {
	.shopr-waitlist-hero {
		padding: 56px 22px;
	}

	.shopr-waitlist-hero__title {
		font-size: 46px;
	}

	.shopr-waitlist-hero__copy {
		font-size: 22px;
		line-height: 28px;
	}
}

@media (max-width: 767px) {
	.shopr-waitlist-hero__form {
		width: 100%;
		max-width: 100%;
	}

	.shopr-waitlist-hero__input,
	.shopr-waitlist-hero__button {
		width: 100%;
		max-width: 100%;
	}

	.shopr-waitlist-hero {
		padding: 48px 18px;
	}

	.shopr-waitlist-hero__badge {
		gap: 10px;
		min-height: 46px;
		margin-bottom: 30px;
		padding: 10px 24px;
		font-size: 18px;
	}

	.shopr-waitlist-hero__badge-dot {
		width: 16px;
		height: 16px;
	}

	.shopr-waitlist-hero__title {
		margin-bottom: 20px;
		font-size: 36px;
		line-height: 1.16;
	}

	.shopr-waitlist-hero__copy {
		margin-bottom: 28px;
		font-size: 18px;
		line-height: 24px;
	}

	.shopr-waitlist-hero__intro {
		margin-bottom: 12px;
	}

	.shopr-waitlist-hero__form {
		gap: 18px;
		margin-bottom: 28px;
	}

	.shopr-waitlist-hero__input {
		min-height: 56px;
		padding: 0 18px;
		font-size: 18px;
	}

	.shopr-waitlist-hero__button {
		min-height: 56px;
		padding: 14px 22px;
		font-size: clamp(15px, 4.15vw, 19px);
		white-space: nowrap;
		overflow-wrap: normal;
	}

	.shopr-waitlist-hero__button span {
		white-space: nowrap;
	}

	.shopr-waitlist-hero__proof {
		gap: 12px;
	}

	.shopr-waitlist-hero__avatar {
		width: 34px;
		height: 34px;
		margin-left: -6px;
		font-size: 18px;
	}

	.shopr-waitlist-hero__proof-text {
		font-size: 18px;
	}
}

@media (max-width: 480px) {
	.shopr-waitlist-hero__badge {
		max-width: 320px;
		font-size: 17px;
	}

	.shopr-waitlist-hero__title {
		font-size: 32px;
	}

	.shopr-waitlist-hero__copy {
		font-size: 17px;
	}

	.shopr-waitlist-hero__proof {
		flex-wrap: wrap;
	}
}

.shopr-waitlist-hero__button:disabled {
	cursor: wait;
	opacity: 0.78;
	transform: none;
}

.shopr-waitlist-hero__status {
	margin: -6px 0 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 22px;
	text-align: center;
}

.shopr-waitlist-hero__status--success {
	color: var(--e-global-color-text, #232440);
}

.shopr-waitlist-hero__status--error {
	color: #b42318;
}

.elementor-widget-shopr_waitlist_hero .shopr-waitlist-hero__title {
	color: #232440 !important;
	font-family: "Ubuntu", "Segoe UI", Arial, sans-serif !important;
	font-style: normal !important;
	letter-spacing: 0 !important;
}

.elementor-widget-shopr_waitlist_hero .shopr-waitlist-hero__input {
	border-color: #C7C1D4 !important;
}

.shopr-waitlist-hero--callback .shopr-waitlist-hero__badge {
	margin-bottom: 34px;
}

.shopr-waitlist-hero__success-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 118px;
	height: 118px;
	margin: 0 auto 34px;
	border-radius: 50%;
	background: rgba(75, 195, 101, 0.16);
	box-shadow: 0 0 0 18px rgba(75, 195, 101, 0.10);
}

.shopr-waitlist-hero__success-icon::before {
	content: "";
	position: absolute;
	inset: 20px;
	border-radius: 50%;
	background: #4bc365;
}

.shopr-waitlist-hero__success-icon svg {
	position: relative;
	z-index: 1;
	width: 52px;
	height: 52px;
	fill: #ffffff;
}

.shopr-waitlist-hero__success-dot {
	position: absolute;
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #4bc365;
}

.shopr-waitlist-hero__success-dot--one {
	top: 6px;
	left: 22px;
}

.shopr-waitlist-hero__success-dot--two {
	top: 20px;
	right: -3px;
	width: 10px;
	height: 10px;
}

.shopr-waitlist-hero__success-dot--three {
	bottom: 10px;
	left: -6px;
	width: 18px;
	height: 18px;
}

.shopr-waitlist-hero__success-dot--four {
	right: 16px;
	bottom: 8px;
	width: 9px;
	height: 9px;
}

.shopr-waitlist-hero__title--callback {
	margin-bottom: 24px;
	font-size: clamp(46px, 5vw, 72px);
	line-height: 1.05;
}

.shopr-waitlist-hero__copy--callback {
	max-width: 650px;
	margin-bottom: 0;
	font-size: 34px;
	line-height: 1.35;
}

.shopr-waitlist-hero__copy--callback strong {
	font-weight: 700;
}

@media (max-width: 767px) {
	.shopr-waitlist-hero--callback .shopr-waitlist-hero__badge {
		margin-bottom: 30px;
	}

	.shopr-waitlist-hero__success-icon {
		width: 92px;
		height: 92px;
		margin-bottom: 28px;
		box-shadow: 0 0 0 14px rgba(75, 195, 101, 0.10);
	}

	.shopr-waitlist-hero__success-icon::before {
		inset: 16px;
	}

	.shopr-waitlist-hero__success-icon svg {
		width: 40px;
		height: 40px;
	}

	.shopr-waitlist-hero__title--callback {
		font-size: 38px;
		line-height: 1.08;
	}

	.shopr-waitlist-hero__copy--callback {
		font-size: 24px;
		line-height: 1.38;
	}
}

.shopr-waitlist-hero--callback .shopr-waitlist-hero__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.shopr-waitlist-hero--callback .shopr-waitlist-hero__success-icon,
.shopr-waitlist-hero--callback .shopr-waitlist-hero__badge,
.shopr-waitlist-hero--callback .shopr-waitlist-hero__title,
.shopr-waitlist-hero--callback .shopr-waitlist-hero__copy {
	flex: 0 0 auto;
}

/* Shopr How It Works widget */
.shopr-how-it-works {
	--shopr-hiw-color-heading: var(--e-global-color-primary, #18132d);
	--shopr-hiw-color-text: var(--e-global-color-text, #232440);
	--shopr-hiw-purple: #6c5dd4;
	width: 100%;
	font-family: var(--e-global-typography-text-font-family, "Ubuntu", "Segoe UI", Arial, sans-serif);
	color: var(--shopr-hiw-color-text);
}

.shopr-how-it-works__inner {
	width: 100%;
	margin: 0 auto;
}

.shopr-how-it-works__header {
	text-align: center;
}

.shopr-how-it-works__title {
	margin: 0;
	color: var(--shopr-hiw-color-heading);
	font-family: var(--e-global-typography-primary-font-family, "Ubuntu", "Segoe UI", Arial, sans-serif);
	font-size: clamp(30px, 3vw, 42px);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.02em;
}

.shopr-how-it-works__intro {
	max-width: 680px;
	margin: 14px auto 0;
	font-size: 18px;
	line-height: 1.45;
}

.shopr-how-it-works__body {
	display: grid;
	grid-template-columns: minmax(220px, .9fr) minmax(320px, 1fr);
	align-items: center;
	justify-content: center;
}

.shopr-how-it-works--image-right .shopr-how-it-works__media {
	order: 2;
}

.shopr-how-it-works--image-right .shopr-how-it-works__steps {
	order: 1;
}

.shopr-how-it-works__media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 360px;
	overflow: visible;
}

.shopr-how-it-works__decor {
	position: absolute;
	z-index: 2;
	display: block;
	width: clamp(92px, 34%, 210px);
	max-width: none !important;
	height: auto !important;
	pointer-events: none;
	user-select: none;
	animation: shopr-hiw-decor-float 7s ease-in-out infinite;
	will-change: transform;
}

.shopr-how-it-works__decor--linksboven {
	top: 2%;
	left: 0;
	--shopr-hiw-decor-transform: translate(-48%, -8%);
	transform: var(--shopr-hiw-decor-transform);
}

.shopr-how-it-works__decor--rechtsboven {
	top: 12%;
	right: 0;
	width: clamp(84px, 30%, 182px);
	--shopr-hiw-decor-transform: translate(54%, -4%);
	transform: var(--shopr-hiw-decor-transform);
	animation-delay: -1.8s;
}

.shopr-how-it-works__decor--linksbeneden {
	z-index: 0;
	bottom: 6%;
	left: 2%;
	width: clamp(98px, 36%, 220px);
	--shopr-hiw-decor-transform: translate(-42%, 6%);
	transform: var(--shopr-hiw-decor-transform);
	animation-delay: -3.1s;
}

.shopr-how-it-works__decor--rechtsonder {
	right: 0;
	bottom: 12%;
	width: clamp(98px, 36%, 220px);
	--shopr-hiw-decor-transform: translate(52%, 8%);
	transform: var(--shopr-hiw-decor-transform);
	animation-delay: -4.5s;
}

@keyframes shopr-hiw-decor-float {
	0%, 100% {
		transform: var(--shopr-hiw-decor-transform) translate3d(0, 0, 0) rotate(0deg);
	}

	45% {
		transform: var(--shopr-hiw-decor-transform) translate3d(0, -10px, 0) rotate(1.6deg);
	}

	70% {
		transform: var(--shopr-hiw-decor-transform) translate3d(0, 4px, 0) rotate(-0.8deg);
	}
}

.shopr-how-it-works__visual {
	position: relative;
	display: none;
	width: var(--shopr-hiw-image-width, 280px) !important;
	max-width: 100%;
	aspect-ratio: 1922 / 3929;
	overflow: visible;
	z-index: 1;
}

.shopr-how-it-works__visual.is-active {
	display: block;
}

.shopr-how-it-works__image {
	display: block;
	width: 100% !important;
	max-width: 100%;
	height: 100% !important;
	object-fit: contain;
}

.shopr-how-it-works__overlay {
	position: absolute;
	z-index: 2;
	top: var(--shopr-hiw-overlay-y, 50%);
	left: var(--shopr-hiw-overlay-x, 50%);
	display: block;
	width: var(--shopr-hiw-overlay-width, 112%) !important;
	max-width: none !important;
	height: auto !important;
	pointer-events: none;
	transform: translate(-50%, -50%);
}

.shopr-how-it-works__steps {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin: 0;
	padding: 0;
}

.shopr-how-it-works__step {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 16px;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	font: inherit;
	text-align: left;
	color: inherit;
}

button.shopr-how-it-works__step {
	cursor: default;
}

button.shopr-how-it-works__step:focus-visible {
	outline: 3px solid rgba(108, 93, 212, .28);
	outline-offset: 8px;
	border-radius: 18px;
}

.shopr-how-it-works__number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	font-family: var(--e-global-typography-primary-font-family, "Ubuntu", "Segoe UI", Arial, sans-serif);
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	box-shadow: 0 8px 22px rgba(35, 36, 64, .10);
	transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.shopr-how-it-works__step.is-active .shopr-how-it-works__number {
	box-shadow: 0 10px 24px rgba(108, 93, 212, .28);
}

.shopr-how-it-works__step-copy,
.shopr-how-it-works__mobile-step-copy {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.shopr-how-it-works__step-title {
	display: block;
	font-family: var(--e-global-typography-primary-font-family, "Ubuntu", "Segoe UI", Arial, sans-serif);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.22;
}

.shopr-how-it-works__step-text {
	display: block;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.28;
}

.shopr-how-it-works__mobile-copy {
	display: none;
}

.shopr-giftcards-host {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	overflow: hidden;
}

.shopr-giftcards {
	--shopr-giftcard-gap: 14px;
	--shopr-giftcard-width: clamp(142px, calc((100vw - (var(--shopr-giftcard-gap) * 5)) / 6), 190px);
	--shopr-giftcard-speed: 42s;
	display: flex;
	flex-direction: column;
	gap: var(--shopr-giftcard-gap);
	width: 100vw;
	padding: 8px 0 18px;
	overflow: hidden;
}

.shopr-giftcards__row {
	width: 100vw;
	overflow: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	overflow-anchor: none;
}

.shopr-giftcards__row::-webkit-scrollbar {
	display: none;
}

.shopr-giftcards__track {
	display: flex;
	width: max-content;
	gap: var(--shopr-giftcard-gap);
	transform: none !important;
	animation: none;
	will-change: margin-left;
}

.shopr-giftcards__row--right .shopr-giftcards__track {
	animation: none;
}

.shopr-giftcards__set {
	flex: 0 0 auto;
	display: flex;
	gap: var(--shopr-giftcard-gap);
	padding-right: var(--shopr-giftcard-gap);
}

.shopr-giftcards__card {
	flex: 0 0 var(--shopr-giftcard-width);
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 420 / 263;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(35, 36, 64, .09);
}

.shopr-giftcards__image {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

@keyframes shopr-giftcards-scroll-left {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(calc(var(--shopr-giftcards-distance, 25%) * -1), 0, 0);
	}
}

@keyframes shopr-giftcards-scroll-right {
	from {
		transform: translate3d(calc(var(--shopr-giftcards-distance, 25%) * -1), 0, 0);
	}

	to {
		transform: translate3d(0, 0, 0);
	}
}

@media (max-width: 767px) {
	.elementor-element-a441e0b {
		margin-top: -86px !important;
	}

	.gallery-btn-click .elementor-button {
		display: inline-flex !important;
		justify-content: center;
		width: min(360px, calc(100vw - 44px)) !important;
		max-width: none !important;
		padding-right: 24px !important;
		padding-left: 24px !important;
	}

	.gallery-btn-click .elementor-button-content-wrapper {
		justify-content: center;
		width: 100%;
		white-space: nowrap !important;
	}

	.gallery-btn-click .elementor-button-text {
		font-size: clamp(15px, 4.15vw, 19px) !important;
		line-height: 1.1 !important;
		white-space: nowrap !important;
	}

	.gallery-btn-click.elementor-widget,
	.gallery-btn-click.elementor-widget.elementor-widget-button {
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.shopr-how-it-works__header {
		margin-bottom: 28px !important;
	}

	.shopr-how-it-works__title {
		font-size: 28px;
	}

	.shopr-how-it-works__body {
		display: flex;
		flex-direction: column;
		gap: 20px !important;
	}

	.shopr-how-it-works--image-right .shopr-how-it-works__media,
	.shopr-how-it-works--image-right .shopr-how-it-works__steps {
		order: initial;
	}

	.shopr-how-it-works__media {
		width: 100%;
		min-height: min(139vw, 500px);
	}

	.shopr-how-it-works__decor {
		display: block;
		width: clamp(58px, 18vw, 82px);
	}

	.shopr-how-it-works__decor--linksboven {
		top: 7%;
		left: 5%;
		--shopr-hiw-decor-transform: translate(-70%, 0);
		transform: var(--shopr-hiw-decor-transform);
	}

	.shopr-how-it-works__decor--rechtsboven {
		top: 10%;
		right: 6%;
		width: clamp(52px, 16vw, 74px);
		--shopr-hiw-decor-transform: translate(68%, 0);
		transform: var(--shopr-hiw-decor-transform);
	}

	.shopr-how-it-works__decor--linksbeneden {
		z-index: 0;
		bottom: 10%;
		left: 6%;
		width: clamp(60px, 18vw, 84px);
		--shopr-hiw-decor-transform: translate(-66%, 0);
		transform: var(--shopr-hiw-decor-transform);
	}

	.shopr-how-it-works__decor--rechtsonder {
		right: 6%;
		bottom: 13%;
		width: clamp(60px, 18vw, 84px);
		--shopr-hiw-decor-transform: translate(58%, 0);
		transform: var(--shopr-hiw-decor-transform);
	}

	.shopr-how-it-works__visual {
		width: min(51vw, 184px, calc(var(--shopr-hiw-image-width, 280px) * .75)) !important;
		max-height: none;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__mobile-copy {
		display: block;
		width: 100%;
		max-width: 100%;
		text-align: center;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__mobile-step-copy {
		align-items: center;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__mobile-step-copy {
		display: none;
	}

	.shopr-giftcards {
		--shopr-giftcard-gap: 10px;
		--shopr-giftcard-width: clamp(104px, calc((100vw - (var(--shopr-giftcard-gap) * 2)) / 3), 148px);
		--shopr-giftcard-speed: 34s;
		padding: 4px 0 12px;
	}

	.shopr-giftcards__card {
		border-radius: 7px;
		box-shadow: 0 6px 16px rgba(35, 36, 64, .08);
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__mobile-step-copy.is-active {
		display: flex;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__steps {
		display: grid;
		grid-template-columns: repeat(var(--shopr-hiw-step-count, 4), minmax(0, 1fr));
		align-items: center;
		justify-content: center;
		justify-items: center;
		gap: 0 !important;
		width: min(100%, 320px);
		max-width: 100%;
		margin: 0 auto;
		padding: 10px 14px;
		border-radius: 999px;
		background: rgba(248, 239, 255, .55);
		overflow: visible;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__step {
		display: flex;
		justify-content: center;
		width: 100%;
		min-width: 0;
		gap: 0;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__step-copy {
		display: none;
	}

	.shopr-how-it-works--mobile-slider .shopr-how-it-works__number {
		width: 44px !important;
		height: 44px !important;
		flex: 0 0 44px;
		font-size: 16px;
	}

	.shopr-how-it-works--mobile-list .shopr-how-it-works__steps {
		gap: 20px !important;
	}

	.shopr-how-it-works--mobile-list .shopr-how-it-works__step {
		align-items: flex-start;
	}

	.shopr-how-it-works--mobile-list .shopr-how-it-works__number {
		width: 44px !important;
		height: 44px !important;
		font-size: 18px;
	}
}

/* Keep how-it-works steps visually static; Elementor global button hover must not style these. */
button.shopr-how-it-works__step,
button.shopr-how-it-works__step:hover,
button.shopr-how-it-works__step:focus,
button.shopr-how-it-works__step:active {
	background: transparent !important;
	background-color: transparent !important;
	color: inherit !important;
	box-shadow: none !important;
	transform: none !important;
}

button.shopr-how-it-works__step:hover .shopr-how-it-works__number,
button.shopr-how-it-works__step:focus .shopr-how-it-works__number,
button.shopr-how-it-works__step:active .shopr-how-it-works__number,
button.shopr-how-it-works__step:hover .shopr-how-it-works__step-title,
button.shopr-how-it-works__step:focus .shopr-how-it-works__step-title,
button.shopr-how-it-works__step:active .shopr-how-it-works__step-title,
button.shopr-how-it-works__step:hover .shopr-how-it-works__step-text,
button.shopr-how-it-works__step:focus .shopr-how-it-works__step-text,
button.shopr-how-it-works__step:active .shopr-how-it-works__step-text {
	transform: none !important;
}

/* Keep every phone image in the how-it-works widget on the same configured width. */
.shopr-how-it-works__visual {
	width: var(--shopr-hiw-image-width, 280px) !important;
	max-width: 100%;
}

.shopr-how-it-works__image {
	width: 100% !important;
	max-width: 100%;
	height: auto !important;
	max-height: none !important;
}

@media (max-width: 767px) {
	.shopr-how-it-works__visual {
		width: min(51vw, 184px, calc(var(--shopr-hiw-image-width, 280px) * .75)) !important;
	}
}
