/**
 * INFAP promo ticker — full-width bar above the main navbar.
 */

.infap-promo-ticker {
	--infap-promo-bg: #152747;
	--infap-promo-color: #ffffff;
	--infap-promo-link: #9bc67c;
	--infap-promo-link-hover: #ffffff;
	--infap-promo-speed: 40s;
	background: var(--infap-promo-bg);
	color: var(--infap-promo-color);
	overflow: hidden;
	width: 100%;
	line-height: 1.35;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	z-index: 100;
	position: relative;
}

.infap-promo-ticker__viewport {
	overflow: hidden;
	width: 100%;
	padding: 8px 0;
	mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
}

.infap-promo-ticker__track {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	width: max-content;
	animation: infap-promo-scroll var(--infap-promo-speed) linear infinite;
	will-change: transform;
	color: var(--infap-promo-color);
}

.infap-promo-ticker:hover .infap-promo-ticker__track,
.infap-promo-ticker:focus-within .infap-promo-ticker__track {
	animation-play-state: paused;
}

.infap-promo-ticker__item {
	display: inline-block;
	padding: 0 0.35em;
	color: var(--infap-promo-color);
}

/* Force readable link color: theme `a` styles otherwise paint navy on navy */
.infap-promo-ticker__item a,
.infap-promo-ticker a {
	color: var(--infap-promo-link) !important;
	text-decoration: underline !important;
	text-underline-offset: 2px;
	text-decoration-thickness: 1px;
	font-weight: 700;
	transition: color 0.18s ease, opacity 0.18s ease;
}

.infap-promo-ticker__item a:hover,
.infap-promo-ticker__item a:focus,
.infap-promo-ticker a:hover,
.infap-promo-ticker a:focus {
	color: var(--infap-promo-link-hover) !important;
	opacity: 1;
}

.infap-promo-ticker__item a:focus-visible,
.infap-promo-ticker a:focus-visible {
	outline: 2px solid var(--infap-promo-link);
	outline-offset: 2px;
}

.infap-promo-ticker__sep {
	display: inline-block;
	padding: 0 1.25em;
	opacity: 0.55;
	font-weight: 400;
}

.infap-promo-ticker__clone {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
}

@keyframes infap-promo-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.infap-promo-ticker__track {
		animation: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		white-space: normal;
		width: 100%;
		padding: 0 12px;
		gap: 0.35rem 1rem;
	}

	.infap-promo-ticker__clone,
	.infap-promo-ticker__sep {
		display: none !important;
	}
}

/* Legacy TopBar leftovers (now hidden in Elementor; belt-and-suspenders) */
body.infap-promo-ticker-on .elementor-14400 .elementor-element-7aed193,
body.infap-promo-ticker-on .elementor-14400 .elementor-element-7def79f,
body.infap-promo-ticker-on .elementor-14400 .elementor-element-e25a3b7 {
	display: none !important;
}

body.infap-ticker-above .infap-promo-ticker {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
}
