/* DRC GAMES WEEK — Partenaires. Téléphone d'abord ; sélecteurs préfixés pour primer sur Elementor. */

/* ===== Bande défilante, juste avant le pied de page ===== */
.dgwp-bande {
	position: relative; overflow: hidden; padding: 26px 0 30px;
	background: #fff; color: #0D0B16;
	font-family: var(--police, 'Outfit', system-ui, sans-serif);
}
.dgwp-bande::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--violet, #7C3AED), var(--cyan, #22D3EE)); }
.dgwp-bande .dgwp-bande-titre {
	margin: 0 0 16px; padding: 0 16px; text-align: center;
	font-size: 12px; font-weight: 600; line-height: 1.3; letter-spacing: .16em; text-transform: uppercase; color: var(--violet, #7C3AED);
}
.dgwp-bande .dgwp-defile {
	display: flex; overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.dgwp-bande .dgwp-piste {
	flex: none; display: flex; align-items: center; justify-content: space-around; gap: 36px;
	min-width: 100%; margin: 0; padding: 0 18px; list-style: none;
	animation: dgwp-defiler var(--dgwp-duree, 36s) linear infinite;
}
.dgwp-bande .dgwp-piste li { flex: none; display: flex; align-items: center; margin: 0; padding: 0; }
.dgwp-bande .dgwp-lien { display: flex; align-items: center; padding: 6px; border-radius: 10px; text-decoration: none; transition: transform .2s ease; }
.dgwp-bande a.dgwp-lien:hover { transform: scale(1.07); }
.dgwp-bande a.dgwp-lien:focus-visible { outline: 2px solid var(--violet, #7C3AED); outline-offset: 2px; }
.dgwp-bande .dgwp-logo { display: block; width: auto; height: calc(var(--h, 56px) * .74); max-width: 160px; object-fit: contain; border: 0; border-radius: 0; box-shadow: none; }
.dgwp-bande .dgwp-defile:hover .dgwp-piste,
.dgwp-bande .dgwp-defile:focus-within .dgwp-piste { animation-play-state: paused; }
@keyframes dgwp-defiler { to { transform: translateX(-100%); } }

/* ===== Section « Partenaires » (page À propos) ===== */
.dgwp-section {
	position: relative; isolation: isolate; padding: 72px 0;
	background: var(--violet-profond, #22005B); color: var(--blanc, #F5F3FA);
	font-family: var(--police, 'Outfit', system-ui, sans-serif);
}
.dgwp-section::before {
	content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: radial-gradient(60% 50% at 0% 0%, rgba(124, 58, 237, .45), transparent 70%),
		radial-gradient(50% 40% at 100% 100%, rgba(34, 211, 238, .12), transparent 70%);
}
.dgwp-section .dgwp-env { width: 100%; max-width: calc(var(--max, 1200px) + 2 * var(--gouttiere, 16px)); margin: 0 auto; padding: 0 var(--gouttiere, 16px); }
.dgwp-section .dgwp-surtitre { margin: 0 0 12px; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--violet-clair, #A78BFA); }
.dgwp-section .dgwp-titre { margin: 0; max-width: 760px; font-size: clamp(28px, 7vw, 56px); font-weight: 700; line-height: 1.08; letter-spacing: -.015em; color: var(--blanc, #F5F3FA); text-wrap: balance; }
.dgwp-section .dgwp-texte { margin: 16px 0 0; max-width: 640px; font-size: 16px; line-height: 1.6; color: rgba(245, 243, 250, .72); }
.dgwp-section .dgwp-grille { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 32px 0 0; padding: 0; list-style: none; }
.dgwp-section .dgwp-grille li { display: flex; flex: 0 1 calc(50% - 6px); margin: 0; padding: 0; }
.dgwp-section .dgwp-carte {
	position: relative; display: flex; flex-direction: column; width: 100%; overflow: hidden;
	border-radius: 16px; background: #fff; color: #0D0B16; text-decoration: none;
	box-shadow: 0 22px 44px -26px rgba(8, 6, 15, .9); transition: transform .25s ease, box-shadow .25s ease;
}
.dgwp-section .dgwp-carte-logo { display: grid; place-items: center; aspect-ratio: 4 / 3; padding: 16px; }
.dgwp-section .dgwp-carte .dgwp-logo { display: block; width: 100%; height: 100%; max-height: 88px; object-fit: contain; border: 0; border-radius: 0; box-shadow: none; }
.dgwp-section .dgwp-carte-nom {
	display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 8px 12px;
	border-top: 1px solid rgba(13, 11, 22, .08); font-size: 13px; font-weight: 600; line-height: 1.3; color: #4A4462;
}
.dgwp-section .dgwp-carte-nom svg { flex: none; color: var(--violet, #7C3AED); }
.dgwp-section a.dgwp-carte:hover { transform: translateY(-4px); box-shadow: 0 0 0 2px var(--violet-clair, #A78BFA), 0 28px 50px -24px rgba(124, 58, 237, .9); }
.dgwp-section a.dgwp-carte:focus-visible { outline: 3px solid var(--cyan, #22D3EE); outline-offset: 3px; }

@media (min-width: 600px) {
	.dgwp-section .dgwp-grille li { flex-basis: calc(33.333% - 8px); }
}
@media (min-width: 760px) {
	.dgwp-bande { padding: 34px 0 38px; }
	.dgwp-bande .dgwp-piste { gap: 60px; padding: 0 30px; }
	.dgwp-bande .dgwp-logo { height: var(--h, 56px); max-width: 220px; }
}
@media (min-width: 1000px) {
	.dgwp-section { padding: 120px 0; }
	.dgwp-section .dgwp-grille { gap: 20px; margin-top: 48px; }
	.dgwp-section .dgwp-grille li { flex-basis: calc(20% - 16px); }
	.dgwp-section .dgwp-carte-nom { padding: 10px 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.dgwp-bande .dgwp-defile { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
	.dgwp-bande .dgwp-piste { animation: none; }
	.dgwp-bande .dgwp-piste[aria-hidden] { display: none; }
	.dgwp-section .dgwp-carte, .dgwp-bande .dgwp-lien { transition: none; }
}
