.pumpup-sommaire {
	box-sizing: border-box;
	--pumpup-sommaire-color: #F2F2F2;
	--pumpup-sommaire-weight: 300;
	--pumpup-sommaire-hover-color: #F2F2F2;
	--pumpup-sommaire-hover-weight: 600;
	--pumpup-sommaire-active-color: var(--pumpup-color-accent, #E8FE8A);
	--pumpup-sommaire-active-weight: 600;
	--pumpup-sommaire-gap: 12px;
	--pumpup-sommaire-top: 32px;
}

.pumpup-sommaire--sticky {
	position: -webkit-sticky;
	position: sticky;
	top: var(--pumpup-sommaire-top);
	align-self: flex-start;
}

/**
 * La marge de déplacement d'un élément sticky est donnée par son PARENT
 * DIRECT, pas par un ancêtre lointain. Il faut donc faire descendre la
 * hauteur de la colonne à travers chaque wrapper Elementor intermédiaire
 * (.elementor-widget-pumpup-sommaire puis .elementor-widget-container)
 * jusqu'au <nav>, sinon celui-ci reste enfermé dans une boîte qui ne fait
 * que sa propre hauteur et ne peut pas "voyager" avant de se détacher.
 */
.e-con:has(.pumpup-sommaire--sticky),
.elementor-column:has(.pumpup-sommaire--sticky) {
	align-self: stretch;
}

.e-con:has(.pumpup-sommaire--sticky) > .elementor-widget-pumpup-sommaire {
	display: flex;
	flex: 1 1 auto;
	min-height: 0;
}

.elementor-widget-pumpup-sommaire:has(.pumpup-sommaire--sticky) > .elementor-widget-container {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.pumpup-sommaire--hidden {
	display: none;
}

.pumpup-sommaire__title {
	margin: 0 0 var(--pumpup-sommaire-gap);
	font-family: "Instrument Serif", sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 24px;
	line-height: 24px;
	color: rgb(242, 242, 242);
}

.pumpup-sommaire__list {
	margin: 0;
	padding-left: 12px;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: var(--pumpup-sommaire-gap);
}

/**
 * Spécificité renforcée (.pumpup-sommaire + .pumpup-sommaire__link) : le Kit
 * Elementor du site définit une règle globale `a { color: ... }` sur la
 * classe du kit, plus spécifique qu'un simple `.pumpup-sommaire__link` seul.
 * Sans ce renfort, seul l'état .is-active (déjà 2 classes) gagnait face au
 * Kit, et l'état par défaut/hover se faisait écraser par la couleur globale.
 */
.pumpup-sommaire .pumpup-sommaire__link {
	display: block;
	font-family: var(--pumpup-font-body, sans-serif);
	font-size: 16px;
	line-height: 24px;
	color: var(--pumpup-sommaire-color);
	font-weight: var(--pumpup-sommaire-weight);
	text-decoration: none;
	transition: color 0.2s ease;
}

.pumpup-sommaire .pumpup-sommaire__link:hover {
	color: var(--pumpup-sommaire-hover-color);
	font-weight: var(--pumpup-sommaire-hover-weight);
}

.pumpup-sommaire .pumpup-sommaire__link.is-active {
	color: var(--pumpup-sommaire-active-color);
	font-weight: var(--pumpup-sommaire-active-weight);
}
