/*! Blue Note Pros — Logo Slider widget styles */

.bnp-logo-slider {
	/* Local vars so Elementor selectors can override cleanly. */
	--bnp-ls-gap: 64px;
	width: 100%;
	background: #ffffff;
	padding: 14px 0;
	overflow: hidden;
	font-family: var(--bnp-font-roboto);
}

/* Pull the strip up so it sits flush against / behind the hero above it.
   The exact amount is set by the "Overlap Section Above" control; this is a
   sensible baseline that also survives when that control is left at default. */
.elementor-widget-bnp-logo-slider {
	position: relative;
	z-index: 0 !important;
	margin-top: -130px;
}

/* Make sure the strip is never clipped by a parent container's overflow. */
.elementor-widget-bnp-logo-slider,
.elementor-widget-bnp-logo-slider .elementor-widget-container {
	overflow: visible;
}

.bnp-logo-slider__viewport {
	width: 100%;
	overflow: hidden;
}

.bnp-logo-slider__track {
	display: flex;
	align-items: center;
}

/* Static (no auto-scroll): spread across the row */
.bnp-logo-slider__track--static {
	justify-content: space-between;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 40px;
	flex-wrap: wrap;
	row-gap: 16px;
}

.bnp-logo-slider__track--static .bnp-logo-slider__item {
	margin-right: 0;
}

/* Marquee: spacing lives on each item as margin-right (NOT flex gap) so the
   duplicated set is exactly 2x wide and translateX(-50%) loops seamlessly. */
.bnp-logo-slider__track--marquee {
	width: max-content;
	animation-name: bnp-logo-slider-scroll;
	animation-duration: 30s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	will-change: transform;
}

.bnp-logo-slider--animated:hover .bnp-logo-slider__track--marquee {
	animation-play-state: paused;
}

.bnp-logo-slider__item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.bnp-logo-slider__track--marquee .bnp-logo-slider__item {
	margin-right: var(--bnp-ls-gap);
}

.bnp-logo-slider__item img {
	display: block;
	height: 46px;
	width: auto;
	object-fit: contain;
	opacity: 0.55;
}

.bnp-logo-slider__item a {
	display: block;
	line-height: 0;
}

@keyframes bnp-logo-slider-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
	.bnp-logo-slider__track--marquee {
		animation: none;
		width: 100%;
		justify-content: center;
		flex-wrap: wrap;
		row-gap: 16px;
	}
}

@media (max-width: 767px) {
	.bnp-logo-slider {
		--bnp-ls-gap: 28px;
	}

	.bnp-logo-slider__track--static {
		justify-content: center;
		padding: 0 20px;
	}

	.bnp-logo-slider__item img {
		height: 32px;
	}
	.elementor-widget-bnp-logo-slider{
		padding-top: 50px;
	}
}
