.sep-motion-headline {
	--sep-static-gap: 0.22em;
	--sep-caret-gap: 0.06em;
	--sep-wave-distance: 0.18em;
	position: relative;
}

.sep-motion-headline__link {
	color: inherit;
	text-decoration: inherit;
}

.sep-motion-headline__inner {
	display: inline-flex;
	width: max-content;
	max-width: none;
	align-items: baseline;
	justify-content: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

.sep-motion-headline--nowrap .sep-motion-headline__inner {
	width: max-content;
	max-width: none;
	flex-wrap: nowrap;
	white-space: nowrap;
}

.sep-motion-headline--wrap-desktop-nowrap .sep-motion-headline__inner {
	width: max-content;
	max-width: none;
	flex-wrap: nowrap;
	white-space: nowrap;
}

.sep-motion-headline--segments .sep-motion-headline__inner {
	width: fit-content;
	max-width: 100%;
	flex-wrap: wrap;
	white-space: normal;
}

.sep-motion-headline--wrap-desktop-segments .sep-motion-headline__inner {
	width: fit-content;
	max-width: 100%;
	flex-wrap: wrap;
	white-space: normal;
}

.sep-motion-headline__static,
.sep-motion-headline__rotator,
.sep-motion-headline__item {
	white-space: nowrap;
}

.sep-motion-headline__before:not(:empty) {
	margin-inline-end: var(--sep-static-gap);
}

.sep-motion-headline__after:not(:empty) {
	margin-inline-start: var(--sep-static-gap);
}

.sep-motion-headline__rotator {
	display: inline-grid;
	width: max-content;
	min-width: max-content;
	max-width: none;
	align-items: baseline;
	vertical-align: baseline;
}

.sep-motion-headline__item {
	grid-area: 1 / 1;
	display: inline-block;
	width: max-content;
	max-width: none;
	padding: 0.16em 0.12em;
	margin: -0.16em -0.12em;
	visibility: hidden;
	transform-origin: 50% 50%;
}

.sep-motion-headline--effect-flip .sep-motion-headline__item {
	backface-visibility: hidden;
}

.sep-motion-headline__unit {
	display: inline;
	white-space: pre;
	opacity: 0;
}

.sep-motion-headline__caret {
	display: inline-block;
	margin-inline-start: var(--sep-caret-gap);
	font-family: inherit;
	font-weight: 300;
	line-height: 1;
	animation: sep-motion-caret 720ms steps(1, end) infinite;
}

.sep-motion-headline--cursor-off .sep-motion-headline__caret {
	display: none;
}

.sep-motion-headline--pause:hover .sep-motion-headline__item,
.sep-motion-headline--pause:hover .sep-motion-headline__unit,
.sep-motion-headline--pause:hover .sep-motion-headline__caret {
	animation-play-state: paused;
}

.sep-motion-headline--overflow-hidden {
	overflow: visible;
	clip-path: inset(-0.35em 0 -0.35em 0);
}

.sep-motion-headline--overflow-visible,
.sep-motion-headline--overflow-desktop-visible {
	overflow: visible;
	clip-path: none;
}

.sep-motion-headline--overflow-desktop-hidden {
	overflow: visible;
	clip-path: inset(-0.35em 0 -0.35em 0);
}

.sep-motion-headline--effect-wave .sep-motion-headline__unit {
	display: inline-block;
	opacity: 1;
	animation: sep-motion-wave 900ms ease-in-out infinite alternate;
	animation-delay: calc(var(--sep-unit-index, 0) * 45ms);
}

.sep-motion-headline__sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@keyframes sep-motion-caret {
	0%, 48% { opacity: 1; }
	49%, 100% { opacity: 0; }
}

@keyframes sep-motion-wave {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(0, calc(-1 * var(--sep-wave-distance)), 0); }
}

@media (max-width: 1024px) {
	.sep-motion-headline--wrap-tablet-nowrap .sep-motion-headline__inner {
		width: max-content;
		max-width: none;
		flex-wrap: nowrap;
		white-space: nowrap;
	}

	.sep-motion-headline--wrap-tablet-segments .sep-motion-headline__inner {
		width: fit-content;
		max-width: 100%;
		flex-wrap: wrap;
		white-space: normal;
	}

	.sep-motion-headline--overflow-tablet-visible {
		overflow: visible;
		clip-path: none;
	}

	.sep-motion-headline--overflow-tablet-hidden {
		overflow: visible;
		clip-path: inset(-0.35em 0 -0.35em 0);
	}
}

@media (max-width: 767px) {
	.sep-motion-headline--wrap-mobile-nowrap .sep-motion-headline__inner {
		width: max-content;
		max-width: none;
		flex-wrap: nowrap;
		white-space: nowrap;
	}

	.sep-motion-headline--wrap-mobile-segments .sep-motion-headline__inner {
		width: fit-content;
		max-width: 100%;
		flex-wrap: wrap;
		white-space: normal;
	}

	.sep-motion-headline--overflow-mobile-visible {
		overflow: visible;
		clip-path: none;
	}

	.sep-motion-headline--overflow-mobile-hidden {
		overflow: visible;
		clip-path: inset(-0.35em 0 -0.35em 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.sep-motion-headline__item,
	.sep-motion-headline__unit,
	.sep-motion-headline__caret {
		animation: none !important;
	}

	.sep-motion-headline__item {
		visibility: hidden !important;
		opacity: 0 !important;
		transform: none !important;
		filter: none !important;
		clip-path: none !important;
	}

	.sep-motion-headline__item:first-child,
	.sep-motion-headline__item:first-child .sep-motion-headline__unit {
		visibility: visible !important;
		opacity: 1 !important;
	}

	.sep-motion-headline__caret {
		display: none !important;
	}
}