/**
 * Public webinar referents component (pc-webinar-overview-referents).
 * Always grid layout, max 4 referents, equal card sizes.
 * Sibling markup: protected/TS/src/ExtraComponents/WebinarReferents.ts
 */

pc-webinar-overview-referents {
	display: block;
	background: linear-gradient(90deg, #F3FAE7 0%, #FDF2FA 48.01%, #F4F7FB 96.02%);
	padding: var(--rd-spacing-xx-lg) var(--rd-spacing-x-lg);
	margin: var(--rd-spacing-x-huge) 0 0;
	width: 100%;
	box-sizing: border-box;
}

.rd-webinar-referents {
	max-width: 1440px;
	margin: 0 auto;
}

.rd-webinar-referents--loading {
	padding: var(--rd-spacing-lg);
	text-align: center;
	color: var(--rd-font-dark);
}

/* ---------- Heading ---------- */

.rd-webinar-referents__head {
	text-align: center;
	margin-bottom: var(--rd-spacing-x-big);
}

.rd-webinar-referents__label {
	display: inline-block;
	color: var(--rd-primary-active);
	font-weight: var(--rd-fontweights-open-sans-0);
	font-size: var(--rd-fontsize-6);
	line-height: 16px;
	margin-bottom: var(--rd-spacing-x-sm);
}

.rd-webinar-referents__headline {
	font-size: var(--rd-fontsize-11);
	font-weight: var(--rd-fontweights-open-sans-0);
	letter-spacing: 0.28px;
	color: var(--rd-font-dark);
	margin-bottom: var(--rd-spacing-lg);
}

/* ---------- Track ---------- */

.rd-webinar-referents__track {
	display: flex;
	gap: var(--rd-spacing-x-big);
	justify-content: center;
	flex-wrap: nowrap;
}

/* ---------- Card ---------- */

.rd-webinar-referents__card {
	position: relative;
	flex: 1 1 0;
	min-width: 0;
	max-width: 453px;
	margin: 0;
}

.rd-webinar-referents__photo {
	position: relative;
	width: 100%;
	    height: 329px;
	border-radius: 20px;
	overflow: hidden;
	background-color: #e8e8e8;
	background-size: cover;
	background-position: center top;
	display: flex;
	align-items: flex-end;
}

.rd-webinar-referents__photo::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(1, 1, 1, 0.85) 0%, rgba(13, 17, 48, 0.35)20%, rgba(13, 17, 48, 0) 40%);
}

.rd-webinar-referents__initials {
	margin: auto;
	position: relative;
	z-index: 1;
	color: white;
	font-size: 2.5rem;
	font-weight: 800;
}

.rd-webinar-referents__caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	padding: var(--rd-spacing-md);
	display: flex;
	flex-direction: column;
	gap: 2px;
	text-align: left;
}

.rd-webinar-referents__name {
	color: var(--rd-font-light);
	font-weight: var(--rd-fontweights-open-sans-0);
	font-size: var(--rd-fontsize-6);
	line-height: 1.2;
	text-align: left;
}

.rd-webinar-referents__role {
	color: rgba(255, 255, 255, 0.9);
	font-size: var(--rd-fontsize-5);
	line-height: 1.25;
		text-align: left;

}

.rd-webinar-overview-detail__meta .rd-webinar-overview-card__load {
	display: none;
}

/* ---------- Responsive ---------- */

/* Duplicate cards (aria-hidden): always in DOM for seamless loop, styled identically */
.rd-webinar-referents__card[aria-hidden="true"] {
	/* same layout as real cards — JS scrollLeft handles the loop */
}

/* Above 1400px: static 4-column grid, no scroll */
@media (min-width: 1400px) {
	.rd-webinar-referents__card[aria-hidden="true"] {
		display: none;
	}

	.rd-webinar-referents__track {
		justify-content: center;
		flex-wrap: wrap;
	}
}

/* Below 1400px: horizontally scrollable, scrollbar hidden, JS drives scrollLeft */
@media (max-width: 1399px) {
	pc-webinar-overview-referents {
		overflow: hidden;
	}

	.rd-webinar-referents__track {
		overflow-x: scroll;
		scrollbar-width: none;
		-ms-overflow-style: none;
		flex-wrap: nowrap;
		justify-content: flex-start;
		cursor: default;
	}

	.rd-webinar-referents__track::-webkit-scrollbar {
		display: none;
	}
}

/* Fixed card sizes — same proportions as messe-altenpflege referent boxes */
.rd-webinar-referents__card {
	flex: 0 0 307px;
	min-width: 0;
	max-width: none;
}

.rd-webinar-referents__photo {
	width: 307px;
	height: 380px;
}

@media (max-width: 768px) {
	pc-webinar-overview-referents {
		padding: var(--rd-spacing-x-lg) var(--rd-spacing-md);
	}

	.rd-webinar-referents__card {
		flex: 0 0 307px;
	}

	.rd-webinar-referents__photo {
		width: 307px;
		height: 380px;
	}
}

@media (max-width: 480px) {
	pc-webinar-overview-referents {
		padding: var(--rd-spacing-x-lg) var(--rd-spacing-sm);
	}

	.rd-webinar-referents__card {
		flex: 0 0 307px;
	}

	.rd-webinar-referents__photo {
		width: 307px;
		height: 380px;
	}
}
