/* ── Seminar Details — Layout „PSH Layout 01" ───────────────────────────
 *
 * Wie beim Übersichts-Widget sind die Selektoren doppelt geklassifiziert:
 * Hellos `theme.css` unterstreicht über `.page-content a` jeden Link, und
 * Elementors `reset.css` bringt eigene Listen-/Abstandsregeln mit.
 * ------------------------------------------------------------------- */

.wpsm-det2 {
	--wpsm-det2-surface: #fff;
	--wpsm-det2-border: #e6ecea;
	--wpsm-det2-divider: #eef2f1;
	--wpsm-det2-accent: #0e847f;
	--wpsm-det2-accent-hover: #0b6b67;
	--wpsm-det2-title: #1b2422;
	--wpsm-det2-muted: #6b7674;
	--wpsm-det2-band: #f6f9f8;
	--wpsm-det2-radius: 12px;

	width: 100%;
}

/* ── Karte ────────────────────────────────────────────────────────── */

.wpsm-det2 .wpsm-det2__card {
	background-color: var( --wpsm-det2-surface );
	border: 1px solid var( --wpsm-det2-border );
	border-radius: var( --wpsm-det2-radius );
	overflow: hidden;
}

.wpsm-det2 .wpsm-det2__head {
	padding: 1.15rem 1.35rem;
	border-bottom: 1px solid var( --wpsm-det2-divider );
	background-color: var( --wpsm-det2-band );
	color: var( --wpsm-det2-title );
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
}

/* ── Zeilen ───────────────────────────────────────────────────────── */

.wpsm-det2 .wpsm-det2__rows {
	margin: 0;
	padding: 0;
}

.wpsm-det2 .wpsm-det2__row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1.5rem;
	padding: 0.95rem 1.35rem;
	border-bottom: 1px solid var( --wpsm-det2-divider );
}

.wpsm-det2 .wpsm-det2__row:last-child {
	border-bottom: 0;
}

.wpsm-det2 .wpsm-det2__label {
	flex: 0 0 auto;
	margin: 0;
	color: var( --wpsm-det2-muted );
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.4;
}

.wpsm-det2 .wpsm-det2__right {
	flex: 1 1 auto;
	margin: 0;
	min-width: 0;
	text-align: right;
}

.wpsm-det2 .wpsm-det2__value {
	display: block;
	color: var( --wpsm-det2-title );
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.4;
}

.wpsm-det2 .wpsm-det2__value--accent { color: var( --wpsm-det2-accent ); }
.wpsm-det2 .wpsm-det2__value--green  { color: #17803d; }
.wpsm-det2 .wpsm-det2__value--yellow { color: #a16207; }
.wpsm-det2 .wpsm-det2__value--red    { color: #b91c1c; }

.wpsm-det2 .wpsm-det2__sub {
	display: block;
	margin-top: 0.2rem;
	color: var( --wpsm-det2-muted );
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 1.4;
}

.wpsm-det2 .wpsm-det2__maps {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgba( 14, 132, 127, 0.35 );
}

.wpsm-det2 .wpsm-det2__maps:hover,
.wpsm-det2 .wpsm-det2__maps:focus-visible {
	color: var( --wpsm-det2-accent );
	border-bottom-color: var( --wpsm-det2-accent );
	text-decoration: none;
}

/* ── Anmelde-Button ───────────────────────────────────────────────── */

.wpsm-det2 .wpsm-det2__cta-wrap {
	padding: 1.15rem 1.35rem 1.35rem;
	border-top: 1px solid var( --wpsm-det2-divider );
	background-color: var( --wpsm-det2-band );
}

/* Ohne Anmelde-Button uebernimmt die letzte Datenzeile den Abschluss. */
.wpsm-det2 .wpsm-det2__card > .wpsm-det2__rows:last-child .wpsm-det2__row:last-child {
	background-color: var( --wpsm-det2-band );
}

.wpsm-det2 .wpsm-det2__cta {
	display: block;
	padding: 0.95rem 1.25rem;
	border: 0;
	border-radius: 9999px;
	background-color: var( --wpsm-det2-accent );
	color: #fff;
	font-size: 0.95rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s;
}

.wpsm-det2 .wpsm-det2__cta:hover,
.wpsm-det2 .wpsm-det2__cta:focus-visible {
	background-color: var( --wpsm-det2-accent-hover );
	color: #fff;
	text-decoration: none;
}

.wpsm-det2 .wpsm-det2__cta-arrow {
	margin-left: 0.2rem;
}

/* ── Fußtexte ─────────────────────────────────────────────────────── */

.wpsm-det2 .wpsm-det2__footnote,
.wpsm-det2 .wpsm-det2__footer {
	margin: 1rem 0 0;
	color: var( --wpsm-det2-muted );
	font-size: 0.82rem;
	line-height: 1.55;
}

.wpsm-det2 .wpsm-det2__footer p {
	margin: 0 0 0.5rem;
}

.wpsm-det2 .wpsm-det2__footer p:last-child {
	margin-bottom: 0;
}

.wpsm-det2 .wpsm-det2__footer a {
	color: var( --wpsm-det2-accent );
	font-weight: 600;
	text-decoration: none;
}

.wpsm-det2 .wpsm-det2__footer a:hover,
.wpsm-det2 .wpsm-det2__footer a:focus-visible {
	text-decoration: underline;
}

/* ── Responsiv ────────────────────────────────────────────────────── */

@media ( max-width: 480px ) {
	.wpsm-det2 .wpsm-det2__row {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.15rem;
	}

	.wpsm-det2 .wpsm-det2__right {
		text-align: left;
	}
}
