/* Speaker Card — carte sombre à grande photo. */
.epm-plist.epm-pt-speaker-card .epm-sp {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--epm-pp-radius, 22px);
	background: var(--epm-pp-card, #0f172a);
	box-shadow: var(--epm-pp-shadow, 0 20px 40px -24px rgba(15, 23, 42, .7));
	color: var(--epm-pp-text, #cbd5e1);
	transition: transform .3s ease, box-shadow .3s ease;
}

.epm-plist.epm-pt-speaker-card .epm-sp:hover {
	transform: translateY(-6px);
}

.epm-plist.epm-pt-speaker-card .epm-sp__visual {
	position: relative;
}

.epm-plist.epm-pt-speaker-card .epm-sp__visual::after {
	content: "";
	position: absolute;
	inset: 55% 0 0;
	z-index: 1;
	background: linear-gradient(180deg, transparent, var(--epm-pp-card, #0f172a));
	pointer-events: none;
}

.epm-plist.epm-pt-speaker-card :is(.epm-pp__badges--bottom-left, .epm-pp__badges--overlay) {
	z-index: 2;
}

.epm-plist.epm-pt-speaker-card .epm-pp__badges--top-right {
	top: 64px;
}

.epm-plist.epm-pt-speaker-card .epm-pp__media {
	--epm-pp-media-radius: 0;
	background: #1e293b;
}

.epm-plist.epm-pt-speaker-card .epm-sp__logo {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 3;
	width: auto;
	max-width: 42%;
	max-height: 38px;
	padding: 6px 10px;
	border-radius: 10px;
	background: #fff;
	object-fit: contain;
}

.epm-plist.epm-pt-speaker-card .epm-sp__body {
	display: grid;
	flex: 1;
	align-content: start;
	gap: 4px;
	padding: 6px 22px 22px;
}

.epm-plist.epm-pt-speaker-card .epm-sp__name {
	color: var(--epm-pp-name, #fff);
	font-size: var(--epm-pp-name-size, 21px);
	font-weight: 800;
	line-height: 1.2;
}

.epm-plist.epm-pt-speaker-card .epm-sp__role {
	color: var(--epm-pp-role, var(--epm-pp-accent));
	font-size: var(--epm-pp-role-size, 15px);
	font-weight: 600;
}

.epm-plist.epm-pt-speaker-card .epm-sp__org {
	color: var(--epm-pp-org, var(--epm-pp-text, #94a3b8));
	font-size: 14px;
}

.epm-plist.epm-pt-speaker-card .epm-sp__more {
	justify-self: start;
	margin-top: 12px;
	border-color: color-mix(in srgb, var(--epm-pp-accent) 70%, #fff);
	color: #fff;
}
