/*
 * News ticker.
 *
 * Values come from the site's Elementor global variables so the strip stays on
 * the same design tokens as the rest of the page; the fallbacks keep it intact
 * if a token is ever renamed.
 */

.nl-ticker {
	display: flex;
	overflow: hidden;
	border-block-start: var(--rule-thin, 1px) solid var(--color-ink, #3c472e);
	border-block-end: var(--rule-thick, 2px) solid var(--color-ink, #3c472e);
}

.nl-ticker__track {
	display: flex;
	flex-shrink: 0;
	gap: var(--ticker-item-gap, 12px);
	align-items: center;
	padding-block: var(--ticker-pad-y, 10px);
	padding-inline-end: var(--ticker-item-gap, 12px);
	white-space: nowrap;
	animation: nl-ticker-scroll var(--nl-ticker-duration, 60s) linear infinite;
}

/* The headlines are links, so hold still while they are being read or aimed at. */
.nl-ticker:hover .nl-ticker__track,
.nl-ticker:focus-within .nl-ticker__track {
	animation-play-state: paused;
}

.nl-ticker__item {
	display: flex;
	flex-shrink: 0;
	gap: var(--ticker-item-gap, 12px);
	align-items: center;
}

.nl-ticker__link {
	color: var(--color-ink, #3c472e);
	font-family: var(--font-sans, "Helvetica Neue", Arial, sans-serif);
	font-size: var(--text-ticker, 14px);
	font-weight: 400;
	line-height: var(--leading-tight, 20px);
	text-decoration: none;
}

.nl-ticker__link:hover,
.nl-ticker__link:focus-visible {
	text-decoration: underline;
}

/* A real element rather than a pseudo-element, as in the design. */
.nl-ticker__dot {
	flex-shrink: 0;
	width: var(--ticker-dot-size, 5px);
	height: var(--ticker-dot-size, 5px);
	background-color: var(--color-ink, #3c472e);
}

.nl-ticker--empty {
	padding: var(--ticker-pad-y, 10px);
	color: var(--color-ink, #3c472e);
	font-family: var(--font-sans, sans-serif);
	font-size: var(--text-ticker, 14px);
}

@keyframes nl-ticker-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-100%); }
}

@media (prefers-reduced-motion: reduce) {
	.nl-ticker__track {
		animation: none;
	}
}
