/* Sponsors & Partners — logo slider (โหลดไฟล์นี้หลัง style.css, slick.css และไฟล์ breakpoint ทั้งหมด) */
.sps-section {
	--sps-main: #5e64a8;
	--sps-rgb: 94, 100, 168;
	--sps-accent: #feb713;
	--sps-ink: #1f2133;
	--sps-muted: #6b6e80;
	position: relative;
	padding: clamp(2.25rem, 2.5vw, 3.75rem) 0 clamp(2rem, 4vw, 3rem);
	overflow: hidden;
	background: linear-gradient(180deg, #f6f7fc 0%, #fff 100%);
	border-top: 1px solid rgba(var(--sps-rgb), .08);
}
.sps-section .ico { display: inline-block; flex-shrink: 0; width: 1em; height: 1em; fill: currentColor; }
/* Heading */
.sps-head { margin-bottom: clamp(1.25rem, 2.5vw, 2rem); text-align: center; }
.sps-eyebrow { display: inline-block; margin-bottom: .6rem; padding: .3rem .85rem; border-radius: 999px; font-size: .78rem; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--sps-main); background: rgba(var(--sps-rgb), .1); }
.sps-title { position: relative; margin: 0; padding-bottom: .7rem; font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); font-weight: 600; line-height: 1.2; color: var(--sps-ink); }
.sps-title::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 56px; height: 4px; border-radius: 4px; background: linear-gradient(90deg, var(--sps-accent), var(--sps-main)); transform: translateX(-50%); }
/* Track: ขอบซ้ายขวาจางลง */
.sps-track-wrap { position: relative; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
#id_sponsor.sps-slider { display: block; margin: 0 -.6rem; opacity: 0; transition: opacity .6s ease; }
#id_sponsor.sps-slider.is-ready { opacity: 1; }
#id_sponsor.sps-slider:not(.slick-initialized) { display: flex; overflow: hidden; }
#id_sponsor.sps-slider:not(.slick-initialized) .sps-slide { flex: 0 0 20%; }
#id_sponsor .slick-list { padding: .75rem 0 1.25rem; }
#id_sponsor .slick-track { display: flex; }
#id_sponsor .sps-slide { display: flex; height: auto; padding: 0 .6rem; }
/* Logo tile */
#id_sponsor .sps-logo {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	height: clamp(96px, 9vw, 120px);
	padding: 1rem 1.25rem;
	border: 1px solid rgba(var(--sps-rgb), .1);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 26px -20px rgba(var(--sps-rgb), .6);
	transition: transform .3s, box-shadow .3s, border-color .3s;
}
#id_sponsor .sps-logo img { display: block; width: auto; max-width: 100%; height: auto; max-height: 100%; object-fit: contain; opacity: .88; transition: opacity .3s, transform .3s; }
#id_sponsor .sps-logo:hover, #id_sponsor .sps-logo:focus-visible { border-color: rgba(var(--sps-rgb), .3); transform: translateY(-4px); box-shadow: 0 20px 34px -20px rgba(var(--sps-rgb), .6); }
#id_sponsor .sps-logo:hover img { opacity: 1; transform: scale(1.04); }
#id_sponsor .sps-logo:focus-visible { outline: 3px solid rgba(var(--sps-rgb), .3); outline-offset: 2px; }
/* CTA */
.sps-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .5rem .9rem; margin-top: .5rem; font-size: .95rem; color: var(--sps-muted); }
.sps-cta a { display: inline-flex; align-items: center; gap: .45rem; padding: .45rem 1rem; border-radius: 999px; font-weight: 500; color: var(--sps-main); background: rgba(var(--sps-rgb), .08); transition: background .2s, color .2s; }
.sps-cta a .ico { font-size: .85em; transition: transform .2s; }
.sps-cta a:hover { color: #fff; background: var(--sps-main); }
.sps-cta a:hover .ico { transform: translateX(3px); }
/* Responsive */
@media (max-width: 1199.98px) {
	#id_sponsor.sps-slider:not(.slick-initialized) .sps-slide { flex-basis: 25%; }
}
@media (max-width: 575.98px) {
	#id_sponsor.sps-slider { margin: 0 -.35rem; }
	#id_sponsor .sps-slide { padding: 0 .35rem; }
	#id_sponsor.sps-slider:not(.slick-initialized) .sps-slide { flex-basis: 50%; }
	#id_sponsor .sps-logo { padding: .75rem; border-radius: 14px; }
	.sps-track-wrap { -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent); mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent); }
}
@media (prefers-reduced-motion: reduce) {
	.sps-section *, #id_sponsor.sps-slider { transition: none !important; }
}