/* [acad1_partner_schools]. A slow logo carousel: each tile is a logo over the school's name.
   The track holds the list twice and slides by half its own width, so the loop has no seam.
   Hovering or focusing inside it pauses the slide, and the edges fade so tiles do not hit a hard cut.
   Reduced motion stops the slide and wraps the first copy into a centred grid. */
.a1-schools { position: relative; overflow: hidden; padding-block: var(--a1-s-2);
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent); }
.a1-schools__track { display: flex; width: max-content; animation: a1-schools-slide var(--a1-schools-s, 40s) linear infinite; will-change: transform; }
.a1-schools:hover .a1-schools__track,
.a1-schools:focus-within .a1-schools__track { animation-play-state: paused; }
.a1-schools__set { display: flex; flex: none; gap: var(--a1-s-4); margin: 0; padding: 0 var(--a1-s-4) 0 0; list-style: none; }
.a1-schools__item { flex: none; width: clamp(180px, 20vw, 232px); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--a1-s-3);
	min-height: 168px; padding: var(--a1-s-5) var(--a1-s-4); text-align: center;
	background: var(--a1-contrast, #fff); border: 1px solid var(--a1-border, #E0DCD7); border-radius: var(--a1-r-card, 14px); }
.a1-schools__link { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--a1-s-3); width: 100%; height: 100%; color: inherit; text-decoration: none; border-radius: inherit; }
.a1-schools__link:hover .a1-schools__name,
.a1-schools__link:focus-visible .a1-schools__name { text-decoration: underline; text-underline-offset: 3px; }
.a1-schools__logo { display: block; max-width: 100%; max-height: 72px; width: auto; height: auto; object-fit: contain; }
.a1-schools__name { font-weight: 600; font-size: var(--a1-meta, 0.875rem); line-height: 1.35; overflow-wrap: anywhere; text-wrap: balance;
	display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

@keyframes a1-schools-slide { from { transform: translateX(0); } to { transform: translateX(-50%); } }

@media (prefers-reduced-motion: reduce) {
	.a1-schools { overflow: visible; -webkit-mask-image: none; mask-image: none; }
	.a1-schools__track { width: auto; animation: none; will-change: auto; }
	.a1-schools__set { flex-wrap: wrap; justify-content: center; padding-right: 0; }
	.a1-schools__dup { display: none; }
	.a1-schools__item[aria-hidden="true"] { display: none; }
}
