/* Self & System — Logo Strip
 * Desktop (default): title inline-left + logos in a row.
 * .ss-is-slider is toggled on by JS at/below the chosen breakpoint:
 *   title stacks & centres above, logos become a Swiper slider.
 */

.ss-logo-strip {
	display: flex;
	align-items: center;
	gap: 40px;
	width: 100%;
}

.ss-logo-strip__title-wrap {
	flex: 0 0 auto;
}

.ss-logo-strip__title {
	margin: 0;
}

.ss-logo-strip__wrapper {
	flex: 1 1 auto;
	min-width: 0;
}

/* The image itself */
.ss-logo-strip__img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 55px;
	object-fit: contain;
	transition: filter 0.25s ease, opacity 0.25s ease;
}

.ss-logo-strip__item {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

.ss-logo-strip__link {
	display: inline-flex;
	align-items: center;
	line-height: 0;
}

/* ------------------------------------------------------------------ *
 *  DESKTOP / non-slider state — static row, no Swiper transforms
 * ------------------------------------------------------------------ */
.ss-logo-strip:not(.ss-is-slider) .ss-logo-strip__swiper {
	overflow: visible;
}

.ss-logo-strip:not(.ss-is-slider) .swiper-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	/* neutralise any Swiper transform if it was ever initialised then destroyed */
	transform: none !important;
}

.ss-logo-strip:not(.ss-is-slider) .swiper-slide {
	width: auto !important;
	flex: 0 0 auto;
	margin: 0 !important;
}

/* ------------------------------------------------------------------ *
 *  SLIDER state (small screens)
 * ------------------------------------------------------------------ */
.ss-logo-strip.ss-is-slider {
	flex-direction: column;
	align-items: stretch;
	gap: 20px;
}

.ss-logo-strip.ss-is-slider .ss-logo-strip__title-wrap {
	width: 100%;
	text-align: center;
}

.ss-logo-strip.ss-is-slider .ss-logo-strip__wrapper {
	width: 100%;
}

.ss-logo-strip.ss-is-slider .ss-logo-strip__swiper {
	overflow: hidden;
	padding-bottom: 30px; /* room for pagination */
}

.ss-logo-strip.ss-is-slider .swiper-slide {
	height: auto;
}

/* Pagination */
.ss-logo-strip .swiper-pagination {
	bottom: 0;
}

/* Arrows */
.ss-logo-strip .swiper-button-next,
.ss-logo-strip .swiper-button-prev {
	color: #4E1B3D;
}
.ss-logo-strip .swiper-button-next:after,
.ss-logo-strip .swiper-button-prev:after {
	font-size: 22px;
}
