/* ==========================================================================
   Brand slider ([tech_ae_brand_slider])
   Cards per view: 1 · 2 from 451px · 3 from 551px · 4 from 768px · 6 from 1024px · 7 from 1400px
   ========================================================================== */
.tech-ae-tslider {
	--tech-ae-ts-view: 1;
	--tech-ae-ts-gap: 14px;
	min-width: 0;
}
@media (min-width: 451px) { .tech-ae-tslider { --tech-ae-ts-view: 2; } }
@media (min-width: 551px) { .tech-ae-tslider { --tech-ae-ts-view: 3; } }
@media (min-width: 768px) { .tech-ae-tslider { --tech-ae-ts-view: 4; --tech-ae-ts-gap: 18px; } }
@media (min-width: 1024px) { .tech-ae-tslider { --tech-ae-ts-view: 6; } }
@media (min-width: 1400px) { .tech-ae-tslider { --tech-ae-ts-view: 7; --tech-ae-ts-gap: 20px; } }

.tech-ae-tslider__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - (var(--tech-ae-ts-view) - 1) * var(--tech-ae-ts-gap)) / var(--tech-ae-ts-view));
	gap: var(--tech-ae-ts-gap);
	min-width: 0;
	margin: 0;
	padding: 6px 0 10px; /* Room for the hover lift / shadow. */
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	list-style: none;
}
.tech-ae-tslider__track::-webkit-scrollbar { display: none; }
.tech-ae-tslider__track > li { min-width: 0; scroll-snap-align: start; }
.tech-ae-tslider.is-static [data-slider-prev],
.tech-ae-tslider.is-static [data-slider-next] { display: none; }

/* Heading: centred title, short blue line, subtitle */
.tech-ae-tslider__head { max-width: 640px; margin: 0 auto 26px; text-align: center; }
.tech-ae-tslider__title { margin: 0; font-size: clamp(1.35rem, 1.1rem + 1vw, 1.9rem); }
.tech-ae-tslider__title::after {
	content: "";
	display: block;
	width: 48px;
	height: 3px;
	margin: 12px auto 0;
	border-radius: 3px;
	background: var(--tech-ae-primary);
}
.tech-ae-tslider__subtitle { margin: 12px 0 0; color: var(--tech-ae-grey); }

/* ==========================================================================
   Brand slider — logo tiles, round arrows on the sides
   ========================================================================== */
.tech-ae-bslider__stage { position: relative; }

.tech-ae-bcard__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border: 1px solid var(--tech-ae-border);
	border-radius: var(--tech-ae-radius-lg);
	background: var(--tech-ae-white);
	transition: border-color var(--tech-ae-ease), box-shadow var(--tech-ae-ease), transform var(--tech-ae-ease);
}
.tech-ae-bcard__logo {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: center;
	height: 104px;
	min-height: 104px;
	padding: 18px;
}
.tech-ae-bcard__logo img {
	max-width: 100%;
	max-height: 85px;
	width: auto;
	height: auto;
	object-fit: cover;
	filter: grayscale(1);
	opacity: .75;
	transition: filter .3s ease, opacity .3s ease, transform .3s ease;
}
.tech-ae-bcard__link:hover,
.tech-ae-bcard__link:focus-visible {
	border-color: var(--tech-ae-primary);
	box-shadow: 0 10px 24px -16px rgba(11, 81, 153, .55);
	transform: translateY(-3px);
}
.tech-ae-bcard__link:hover img,
.tech-ae-bcard__link:focus-visible img { filter: none; opacity: 1; transform: scale(1.06); }

.tech-ae-bslider__btn {
	position: absolute;
	z-index: 2;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--tech-ae-white);
	box-shadow: 0 4px 14px rgba(34, 34, 34, .18);
	color: var(--tech-ae-dark);
	cursor: pointer;
	transform: translateY(-50%);
	transition: background var(--tech-ae-ease), color var(--tech-ae-ease);
}
.tech-ae-bslider__btn:hover { background: var(--tech-ae-primary); color: var(--tech-ae-white); }
.tech-ae-bslider__btn--prev { left: -8px; }
.tech-ae-bslider__btn--next { right: -8px; }
@media (min-width: 1500px) {
	.tech-ae-bslider__btn--prev { left: -20px; }
	.tech-ae-bslider__btn--next { right: -20px; }
}

@media (prefers-reduced-motion: reduce) {
	.tech-ae-tslider__track { scroll-behavior: auto; }
	.tech-ae-bcard__link { transition: none; }
	.tech-ae-bcard__link:hover { transform: none; }
}
