/* Rhenus Team Slider — Editorial-Split, scoped unter .rh-team-slider */

.rh-team-slider {
	--rh-ts-accent: var(--e-global-color-accent, #ffcc01);
	--rh-ts-ink: #1d1d1f;
	--rh-ts-muted: #86868b;
	position: relative;
	width: 100%;
	margin: 0 auto;
	font-family: inherit;
}

/* Viewport + Track */
.rh-team-slider .rh-ts__viewport {
	overflow: hidden;
	touch-action: pan-y;
	cursor: grab;
}
.rh-team-slider.is-dragging .rh-ts__viewport { cursor: grabbing; }

.rh-team-slider .rh-ts__track {
	display: flex;
	align-items: stretch;
	transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: transform;
}
.rh-team-slider.is-dragging .rh-ts__track { transition: none; }

/* Slide = zentrierte Einheit aus Bild + Body */
.rh-team-slider .rh-ts__slide {
	flex: 0 0 100%;
	width: 100%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: clamp(32px, 4vw, 64px);
	padding: 0;                 /* Bild linksbuendig andocken, volle Breite nutzen */
	text-align: left;
}

/* Portrait links (linksbuendig angedockt) */
.rh-team-slider .rh-ts__media {
	flex: 0 0 auto;
}
.rh-team-slider .rh-ts__photo {
	display: block;
	width: clamp(260px, 27vw, 340px);
	aspect-ratio: 4 / 5;
	height: auto;
	object-fit: cover;
	object-position: center;
	border-radius: 0.7rem !important;
}

/* Body fuellt die restliche Breite */
.rh-team-slider .rh-ts__body {
	flex: 1 1 auto;
	min-width: 0;
}

.rh-team-slider .rh-ts__mark {
	display: block;
	margin-bottom: 10px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 3.25rem;
	line-height: 0.3;
	color: var(--rh-ts-accent);
}

.rh-team-slider .rh-ts__quote {
	display: inline-block;
	margin: 0 0 1.75rem;
	padding: 0 0 0.08em !important;   /* Theme-Reset + Descender nicht clippen */
	border: 0 !important;
	quotes: none;
	font-size: clamp(1.1rem, calc(0.95rem + 0.55vw), 1.45rem);
	line-height: 1.3;
	font-weight: 700;
	font-style: normal;
	letter-spacing: -0.01em;
	text-wrap: pretty;
	/* Grau-Gradient als Text (wie die Headings) */
	color: var(--e-global-color-button-hintergrund);
	background-color: transparent !important;
	background-image: linear-gradient(45deg, rgb(83, 83, 83), #202020 50%, rgb(86, 86, 86) 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

.rh-team-slider .rh-ts__meta {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}
.rh-team-slider .rh-ts__name {
	font-weight: 600;
	font-size: 1.1rem;
	color: var(--rh-ts-ink);
}
.rh-team-slider .rh-ts__position {
	font-size: 0.95rem;
	color: var(--rh-ts-muted);
	margin-top: 4px;
}

/* Controls (Pfeile + Dots) — zentriert unter der Einheit */
.rh-team-slider .rh-ts__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.rh-team-slider .rh-ts__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	padding: 0;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 50%;
	background: #fff;
	color: var(--rh-ts-ink);
	cursor: pointer;
	transition: background 0.2s, color 0.2s, border-color 0.2s, opacity 0.2s;
	-webkit-appearance: none;
	appearance: none;
}
.rh-team-slider .rh-ts__arrow svg { width: 20px; height: 20px; }
.rh-team-slider .rh-ts__arrow:hover {
	background: var(--rh-ts-accent);
	border-color: transparent;
	color: #412402;
}
.rh-team-slider .rh-ts__arrow:disabled { opacity: 0.35; cursor: default; }

.rh-team-slider .rh-ts__dots {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin: 0 4px;
}
.rh-team-slider .rh-ts__dot {
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.16);
	cursor: pointer;
	transition: background 0.2s, transform 0.2s;
	-webkit-appearance: none;
	appearance: none;
}
.rh-team-slider .rh-ts__dot:hover { background: rgba(0, 0, 0, 0.3); }
.rh-team-slider .rh-ts__dot.is-active {
	background: var(--rh-ts-accent);
	transform: scale(1.3);
}

/* Mobile: stapeln, Bild oben mittig */
@media (max-width: 760px) {
	.rh-team-slider .rh-ts__slide {
		flex-direction: column;
		align-items: center;
		gap: 24px;
		text-align: center;
	}
	.rh-team-slider .rh-ts__photo { width: clamp(220px, 62vw, 280px); }
	.rh-team-slider .rh-ts__body { flex-basis: auto; }
	.rh-team-slider .rh-ts__meta { align-items: center; }
}
