/* RSF Phönix – Zusatz-Design */

/* ------------------------------------------------------------------
   Mobiles Menü: weiß, lesbar, kompakt
   ------------------------------------------------------------------ */
@media (max-width: 768px) {
	.main-navigation,
	.main-navigation.toggled,
	.main-navigation .inside-navigation { background-color: #ffffff; }

	.main-navigation .main-nav ul li > a,
	.main-navigation.toggled .main-nav ul li > a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		line-height: 1.2 !important;
		min-height: 52px;
		padding: 12px 20px !important;
		background-color: transparent !important;
		color: #10291f !important;
		font-size: 17px;
		font-weight: 600;
	}
	.main-navigation .main-nav ul li:hover > a,
	.main-navigation .main-nav ul li.sfHover > a,
	.main-navigation .main-nav ul li[class*="current-menu-"] > a,
	.main-navigation .main-nav ul li > a:focus {
		background-color: #f5f4ef !important;
		color: #10291f !important;
	}
	.main-navigation .main-nav ul li[class*="current-menu-"] > a { box-shadow: inset 4px 0 0 #2fae47; }

	.main-navigation .main-nav ul ul,
	.main-navigation .main-nav ul ul li {
		position: static;
		width: 100%;
		background-color: #f5f4ef !important;
		box-shadow: none;
		border-radius: 0;
		padding: 0;
	}
	.main-navigation .main-nav ul ul li > a {
		padding-left: 36px !important;
		min-height: 46px;
		font-size: 16px;
		font-weight: 500;
		color: #10291f !important;
		background-color: transparent !important;
	}
	.main-navigation .main-nav ul ul li:hover > a,
	.main-navigation .main-nav ul ul li > a:focus { background-color: #d5e2d9 !important; }
	.main-navigation .dropdown-menu-toggle { color: #10291f; }

	.main-navigation .main-nav > ul > li.ph-cta-item { padding: 12px 20px 20px; }
	.main-navigation .main-nav ul li.ph-cta-item > a.ph-cta {
		display: flex;
		justify-content: center;
		margin: 0;
		min-height: 48px;
		height: auto;
		background-color: #c8161d !important;
		color: #ffffff !important;
		border-radius: 999px;
	}
}

/* ------------------------------------------------------------------
   Trainer-Karten
   ------------------------------------------------------------------ */
.ph-trainer-raster {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.ph-trainer {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 16px 16px 28px;
	border-radius: 28px;
	background: #ffffff;
	color: #10291f;
}
.ph-trainer__foto {
	margin: 0;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: 20px;
	background: #e4e2da;
}
.ph-trainer__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ph-trainer__gruppe {
	margin: 4px 8px 0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #1d7a33;
}
.ph-trainer__gruppe--rot { color: #c8161d; }
.ph-trainer__name {
	margin: 0 8px;
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-weight: 800;
	font-size: 40px;
	line-height: 0.95;
	text-transform: uppercase;
}
.ph-trainer__text { margin: 0 8px; font-size: 17px; line-height: 1.55; color: #4a5a52; }
.ph-trainer__motto { margin: 0 8px; font-size: 18px; font-weight: 600; line-height: 1.4; }

/* Zitat / persönliche Worte */
.ph-zitat {
	margin: 0;
	padding: 48px;
	border-radius: 28px;
	background: #10291f;
	color: #ffffff;
}
.ph-zitat__text {
	margin: 0;
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-weight: 800;
	font-size: clamp(34px, 5vw, 64px);
	line-height: 0.98;
	text-transform: uppercase;
}
.ph-zitat__text mark { background: none; color: #2fae47; }
.ph-zitat__quelle {
	margin: 20px 0 0;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #7fd18f;
}
.ph-zitat__fliess { margin: 24px 0 0; max-width: 760px; font-size: 18px; line-height: 1.65; color: #d5e2d9; }
.ph-zitat__fliess p + p { margin-top: 1em; }

@media (max-width: 900px) { .ph-trainer-raster { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) {
	.ph-trainer-raster { grid-template-columns: 1fr; }
	.ph-zitat { padding: 28px; }
	.ph-trainer__name { font-size: 34px; }
}
