/**
 * Événements à inscription (Matinales RH) : cartes du programme et choix des
 * dates du formulaire. Charte Ebrioo : violet #501E96, magenta #E5239C,
 * orange #ED7720 (repris du flyer). Le reste du formulaire vient de forms.css.
 */

.eb-evts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}
.eb-evt {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 1.5rem;
	align-items: start;
	background: #fff;
	border-radius: 18px;
	padding: 1.5rem 1.75rem;
	box-shadow: 0 10px 30px rgba(50, 53, 50, .08);
	border-left: 5px solid #501E96;
}
.eb-evt--passe { opacity: .6; }
.eb-evt__visuel { position: relative; width: 120px; height: 120px; }
.eb-evt__photo {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid #501E96;
}
.eb-evt__num {
	position: absolute;
	right: -4px;
	bottom: -4px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #501E96;
	color: #fff;
	font-weight: 700;
	display: grid;
	place-items: center;
	border: 3px solid #fff;
}
.eb-evt__corps > * { margin: 0; }
.eb-evt__date {
	font-weight: 700;
	color: #501E96;
	font-size: 1.05rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5rem;
}
.eb-evt__badge {
	font-size: .75rem;
	font-weight: 600;
	background: #EDEEF2;
	color: #323532;
	border-radius: 999px;
	padding: .15rem .6rem;
}
.eb-evt__sur {
	margin-top: .35rem !important;
	color: #ED7720;
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.eb-evt__titre {
	margin-top: .35rem !important;
	font-size: 1.25rem;
	line-height: 1.3;
	color: #323532;
}
.eb-evt__resume { margin-top: .5rem !important; }
.eb-evt__qui { margin-top: .6rem !important; font-size: .92rem; color: #501E96; }

@media (max-width: 640px) {
	.eb-evt { grid-template-columns: 1fr; padding: 1.25rem; gap: 1rem; }
	.eb-evt__visuel, .eb-evt__photo { width: 88px; height: 88px; }
}

/* Choix des dates dans le formulaire */
.eb-inscr__dates { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; }
.eb-inscr__date {
	display: flex;
	gap: .85rem;
	align-items: flex-start;
	padding: .9rem 1rem;
	border: 1px solid #d4d8d9;
	border-radius: 12px;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease;
}
.eb-inscr__date:hover { border-color: var(--ebf-focus); }
.eb-inscr__date:has(input:checked) { border-color: #501E96; background: #f5f1fb; }
.eb-inscr__date input {
	margin-top: .2rem;
	width: 1.15rem;
	height: 1.15rem;
	flex: 0 0 auto;
	accent-color: #501E96;
}
.eb-inscr__date > span { display: flex; flex-direction: column; gap: .15rem; }
.eb-inscr__date strong { color: #501E96; }
.eb-inscr__date-titre { font-weight: 600; color: #323532; }
.eb-inscr__date-lieu { font-size: .88rem; color: var(--ebf-muted); }
.eb-inscr__date.is-complet { cursor: not-allowed; opacity: .6; }
.eb-inscr__complet {
	align-self: flex-start;
	margin-top: .2rem;
	font-size: .75rem;
	font-weight: 700;
	color: #fff;
	background: #829696;
	border-radius: 999px;
	padding: .1rem .6rem;
}
.eb-inscr__clos { line-height: 1.6; }
.eb-evt__accueil { font-size: .85rem; font-weight: 600; color: #829696; }

/* Accompagnants : la liste n'apparaît que si la case est cochée */
.eb-inscr__accomp-choix { margin: 0 0 .75rem; }
.eb-inscr__accomp-choix label { display: flex; gap: .6rem; align-items: flex-start; cursor: pointer; }
.eb-inscr__accomp-choix input { margin-top: .2rem; width: 1.05rem; height: 1.05rem; accent-color: #501E96; }
.eb-inscr__accomp-liste { display: none; }
.eb-inscr__accomp:has(#ei-accomp:checked) .eb-inscr__accomp-liste { display: block; }
.eb-inscr__accomp-aide { font-size: .88rem; color: var(--ebf-muted); margin: 0 0 1rem; }
.eb-inscr__accomp-ligne { padding: 1rem 0; border-top: 1px dashed #d4d8d9; }
.eb-inscr__accomp-fonction { grid-column: 1 / -1; }
.eb-evt__note { margin-top: .4rem !important; font-size: .9rem; font-weight: 600; color: #E5239C; }

/* Bandeau d'annonce sur l'accueil du hub : fond clair, accent orange du flyer */
.eb-bandeau {
	background: #FFF5EC; color: #323532; padding: 1.75rem 1.5rem;
	border-top: 4px solid #ED7720; border-bottom: 1px solid #F6DCC4;
	margin-top: 0 !important; margin-bottom: 0 !important; max-width: none !important;
}
.eb-bandeau__inner {
	max-width: 1100px; margin: 0 auto;
	display: flex; gap: 1.5rem 2.5rem; align-items: center; justify-content: space-between; flex-wrap: wrap;
}
.eb-bandeau__texte { flex: 1 1 520px; }
.eb-bandeau__texte > * { margin: 0; }
.eb-bandeau__badge {
	display: inline-block; padding: .25rem .75rem; border-radius: 999px;
	background: #ED7720; color: #fff; font-size: .72rem; font-weight: 700;
	letter-spacing: 1.5px; text-transform: uppercase;
}
.eb-bandeau__titre { margin-top: .6rem !important; color: #501E96; font-size: clamp(1.25rem, 2.4vw, 1.6rem); line-height: 1.25; }
.eb-bandeau__prochaine { margin-top: .5rem !important; color: #4a4d4a; font-size: .95rem; line-height: 1.5; }
.eb-bandeau__prochaine span { display: block; font-size: .78rem; text-transform: uppercase; letter-spacing: 1px; color: #C55F12; font-weight: 700; }
.eb-bandeau__prochaine strong { display: block; color: #323532; font-size: 1.05rem; }
.eb-bandeau__prochaine em { font-style: normal; }
.eb-bandeau__actions { display: flex; flex-direction: column; align-items: center; gap: .6rem; flex: 0 0 auto; }
.eb-bandeau__cta {
	display: inline-block; padding: .85rem 1.6rem; border-radius: 999px;
	background: #E5239C; color: #fff !important; font-weight: 700; text-decoration: none;
	min-height: 44px; box-sizing: border-box;
}
.eb-bandeau__cta:hover, .eb-bandeau__cta:focus-visible { background: #501E96; }
.eb-bandeau__titre a { color: inherit !important; text-decoration: none; }
.eb-bandeau__titre a:hover, .eb-bandeau__titre a:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 640px) {
	.eb-bandeau__actions { width: 100%; align-items: stretch; text-align: center; }
}
