/*
 * Komponente: Timeline (.timeline) – siehe CLAUDE.md Abschnitt 11.4. Neu seit
 * der Seite "Unsere Geschichte" (page-geschichte.php), erstes chronologisches
 * Listenmuster des Projekts (bisherige Komponenten wie Info-Row/News-Item
 * kennen kein Zeitstrahl-Konzept). Nur dort geladen (siehe functions.php),
 * daher trotz Ablage in components/ analog zu map.css/form.css bedingt statt
 * global enqueued.
 *
 * Aufbau: zwei parallele Spalten aus .timeline-item-Kacheln (.timeline-row),
 * verbunden durch eine mittige, durchgehende Linie (.timeline::before) mit
 * einem Punkt (.timeline-dot) je Zeile. Auf Mobile (siehe Breakpoint 900px)
 * rückt die Linie an den linken Rand, beide Spalten fallen auf eine Spalte
 * zusammen.
 */
.timeline {
	position: relative;
	margin-top: 8px;
}

.timeline::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 2px;
	background: var(--line);
	transform: translateX(-50%);
}

.timeline-row {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	margin-bottom: 36px;
}

.timeline-row:last-child {
	margin-bottom: 0;
}

.timeline-dot {
	position: absolute;
	top: 44px;
	left: 50%;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--green-dark);
	border: 3px solid var(--cream2);
	transform: translate(-50%, -50%);
	z-index: 2;
}

.timeline-item {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-sm);
}

.timeline-media {
	position: relative;
	height: 150px;
	background-size: cover;
	background-position: center;
}

.timeline-icon {
	position: absolute;
	top: 14px;
	left: 14px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	color: var(--green-dark);
	display: grid;
	place-items: center;
	box-shadow: var(--shadow-sm);
}

.timeline-icon svg {
	width: 20px;
	height: 20px;
}

.timeline-body {
	padding: 18px 20px 20px;
}

.timeline-year {
	display: inline-block;
	background: var(--green-dark);
	color: #fff;
	font-weight: 800;
	font-size: 13px;
	padding: 5px 14px;
	border-radius: 999px;
	margin-bottom: 10px;
}

.timeline-body h3 {
	font-family: var(--font-serif);
	font-size: 19px;
	margin: 0 0 8px;
}

.timeline-body p {
	color: var(--muted);
	font-size: 14px;
	margin: 0;
}

/* Breakpoint 900px – siehe CLAUDE.md Abschnitt 11.3 */
@media (max-width: 900px) {
	.timeline::before {
		left: 20px;
	}

	.timeline-row {
		grid-template-columns: 1fr;
		gap: 24px;
		padding-left: 46px;
	}

	.timeline-dot {
		left: 20px;
		top: 24px;
	}
}
