/* ============================================================
   DAL'ALU — Carrousel des partenaires, code court [dalalu_partenaires]
   Titre souligné de rouge, flèches (classes .dal-arrow du thème, visibles
   seulement s'il y a plus de logos que de places), logos posés sur le
   fond : 4 par rangée, puis 3 et 2.
   ============================================================ */

.dal-partenaires {
	padding: 60px 0;
}

/* Dans une section "Autre section (code court)" : déjà dans un container */
.dal-blocs__code .dal-partenaires {
	padding: 0;
}

.dal-blocs__code .dal-partenaires .dal-container {
	width: auto;
	padding-left: 0;
	padding-right: 0;
}

.dal-partenaires__entete {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 36px;
}

/* Titre et trait rouge dessous */
.dal-partenaires__titre {
	margin: 0;
	color: #000;
	font-size: clamp(1.5rem, 2.2vw, 32px);
	font-weight: 800;
	line-height: 1.2;
}

.dal-partenaires__titre::after {
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin-top: 18px;
	background: var(--dal-red, #DC0D15);
	border-radius: 20px;
}

/* Flèches rouges sur fond clair (géométrie dans global.css .dal-arrow) */
.dal-partenaires__fleches {
	display: flex;
	flex: none;
	gap: 12px;
	margin-left: auto;
	--dal-arrow-color: var(--dal-red, #DC0D15);
	--dal-arrow-hover-bg: rgba(220, 13, 21, .08);
}

/* Tous les logos tiennent à l'écran : pas de flèches (posé par le JS) */
.dal-partenaires.is-statique .dal-partenaires__fleches {
	display: none;
}

/* ── Piste : défilement horizontal, un logo par cran ── */
.dal-partenaires__piste {
	--dal-partenaires-n: 4;
	--dal-partenaires-gap: 40px;
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - (var(--dal-partenaires-n) - 1) * var(--dal-partenaires-gap)) / var(--dal-partenaires-n));
	gap: var(--dal-partenaires-gap);
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}

.dal-partenaires__piste::-webkit-scrollbar {
	display: none;
}

.dal-partenaire {
	margin: 0;
	scroll-snap-align: start;
}

/* Logo centré dans sa place, sans cadre */
.dal-partenaire__case {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 140px;
	padding: 8px;
	box-sizing: border-box;
}

.dal-partenaire__logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	transition: transform .2s ease;
}

a.dal-partenaire__case:hover .dal-partenaire__logo,
a.dal-partenaire__case:focus-visible .dal-partenaire__logo {
	transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
	.dal-partenaire__logo {
		transition: none;
	}

	a.dal-partenaire__case:hover .dal-partenaire__logo,
	a.dal-partenaire__case:focus-visible .dal-partenaire__logo {
		transform: none;
	}
}

@media (max-width: 900px) {
	.dal-partenaires__piste {
		--dal-partenaires-n: 3;
		--dal-partenaires-gap: 28px;
	}

	.dal-partenaire__case {
		height: 110px;
	}
}

@media (max-width: 560px) {
	.dal-partenaires {
		padding: 40px 0;
	}

	.dal-partenaires__piste {
		--dal-partenaires-n: 2;
		--dal-partenaires-gap: 20px;
	}

	.dal-partenaires__entete {
		margin-bottom: 24px;
	}

	.dal-partenaire__case {
		height: 90px;
	}
}
