/*
Theme Name: Triptastic Child
Template: triptastic
Version: 1.3
*/

/* =========================================================
   1. NEUE STARTSEITE (nur auf der Startseite aktiv: .emg-home)
   ========================================================= */

body.home { overflow-x: hidden; }

/* Startseite: Innenabstände und Kasten des alten Themes aufheben */
body.home #main.emg-home {
	padding: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
body.home .emg-hero { margin: 0 !important; }
body.home #masthead { margin-bottom: 0 !important; }
body.home #content {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.emg-home {
	--emg-dark: #1d1d1b;
	--emg-grey: #666;
	--emg-line: #e5e5e5;
	--emg-gap: 24px;
	display: block;
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: 100vw;
	margin-left: -50vw;
	background: #fff;
	color: var(--emg-dark);
}
.emg-home img { max-width: 100%; height: auto; }
.emg-home .emg-hero .emg-hero__media { width: 100%; height: 100%; max-width: none; }

.emg-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 var(--emg-gap);
}
.emg-section-title {
	text-align: center;
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 700;
	line-height: 1.1;
	margin: 0 0 48px;
	color: var(--emg-dark);
}

/* ---------- Buttons (alle Seiten) ---------- */
.emg-btn {
	display: inline-block;
	padding: 0.9em 1.8em;
	background: #fff;
	color: var(--emg-dark);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	text-decoration: none;
	border-radius: 2px;
	transition: background 0.2s, color 0.2s;
}
.emg-btn:hover,
.emg-btn:focus { background: var(--emg-dark); color: #fff; text-decoration: none; }
.emg-btn--dark { background: #1d1d1b; color: #fff; }
.emg-btn--dark:hover,
.emg-btn--dark:focus { background: #444; color: #fff; }
a.emg-btn--dark,
a.emg-btn--dark:hover,
a.emg-btn--dark:focus {
	color: #fff !important;
	text-decoration: none !important;
}

/* ---------- Hero ---------- */
.emg-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 85vh;
	overflow: hidden;
	background: #2b2f33;
	color: #fff;
}
.emg-hero__media {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.emg-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.15) 60%, rgba(0, 0, 0, 0) 100%);
}
.emg-hero__content {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 var(--emg-gap) 10vh;
}
.emg-hero__kicker {
	margin: 0 0 1rem;
	font-size: 0.95rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #fff;
}
.emg-hero__title {
	max-width: 14ch;
	margin: 0 0 2rem;
	font-size: clamp(2.4rem, 6vw, 5rem);
	font-weight: 700;
	line-height: 1.02;
	color: #fff;
}
/* ---------- Big-5-Badge auf dem Titelbild ---------- */
.emg-hero .emg-big5-badge {
	position: absolute;
	right: clamp(24px, 5vw, 80px);
	bottom: 10vh;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: rgba(169, 173, 55, 0.94);
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
	transform: rotate(-8deg);
	transition: transform 0.3s ease, background 0.3s ease;
}
.emg-hero .emg-big5-badge:hover,
.emg-hero .emg-big5-badge:focus {
	background: #1d1d1b;
	color: #fff;
	text-decoration: none;
	transform: rotate(0deg) scale(1.05);
}
.emg-big5-badge__small {
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.12em;
}
.emg-big5-badge__big {
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}
.emg-big5-badge__dots { display: flex; gap: 6px; margin: 8px 0 6px; }
.emg-big5-badge__dots i {
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #fff;
}
.emg-big5-badge__cta {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

/* Handy: kleiner und oben rechts, damit die Headline frei bleibt */
@media (max-width: 600px) {
	.emg-hero .emg-big5-badge {
		top: 24px;
		bottom: auto;
		right: 24px;
		width: 118px;
		height: 118px;
	}
	.emg-big5-badge__small { font-size: 0.55rem; }
	.emg-big5-badge__big { font-size: 2rem; }
	.emg-big5-badge__dots { gap: 4px; margin: 5px 0 4px; }
	.emg-big5-badge__dots i { width: 5px; height: 5px; }
	.emg-big5-badge__cta { font-size: 0.6rem; }
}
@media (prefers-reduced-motion: reduce) {
	.emg-hero .emg-big5-badge { transition: none; }
}
/* ---------- Badge-Bereich im Titelbild (Lexikon + Big 5) ---------- */
.emg-hero .emg-hero__badges {
	position: absolute;
	right: clamp(24px, 5vw, 80px);
	bottom: 10vh;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 24px;
}
/* Big 5 sitzt jetzt im gemeinsamen Bereich statt frei positioniert */
.emg-hero .emg-hero__badges .emg-big5-badge {
	position: static !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
}

/* ---------- Lexikon-Badge ---------- */
.emg-hero .emg-badge-lexikon {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 180px;
	height: 180px;
	padding: 0 18px;
	border-radius: 50%;
	background: rgba(29, 29, 27, 0.92);
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
	transform: rotate(6deg);
	transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease;
}
.emg-hero .emg-badge-lexikon:hover,
.emg-hero .emg-badge-lexikon:focus {
	background: #fff;
	color: #1d1d1b;
	text-decoration: none;
	transform: rotate(0deg) scale(1.05);
}
.emg-badge-lexikon__icon { width: 46px; height: 46px; margin-bottom: 6px; }
.emg-badge-lexikon__big {
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}
/* Langes Wort (englisch "Encyclopedia") kleiner, damit es in den Kreis passt */
.emg-badge-lexikon__big--long {
	font-size: 1rem;
	letter-spacing: 0;
}
/* Englische Seite: "Encyclopedia" kleiner (funktioniert auch ohne Zusatzklasse) */
html[lang^="en"] .emg-hero .emg-badge-lexikon__big {
	font-size: 1rem;
	letter-spacing: 0;
}
.emg-badge-lexikon__sub {
	margin-top: 6px;
	font-size: 0.72rem;
	line-height: 1.25;
	letter-spacing: 0.03em;
	opacity: 0.85;
}

/* Handy: beide Badges kleiner oben rechts */
@media (max-width: 600px) {
	.emg-hero .emg-hero__badges {
		top: 24px;
		bottom: auto;
		right: 24px;
		gap: 10px;
	}
	.emg-hero .emg-badge-lexikon {
		width: 118px;
		height: 118px;
		padding: 0 10px;
	}
	.emg-badge-lexikon__icon { width: 28px; height: 28px; margin-bottom: 3px; }
	.emg-badge-lexikon__big { font-size: 1.15rem; }
	.emg-badge-lexikon__sub { margin-top: 3px; font-size: 0.55rem; }
}
@media (prefers-reduced-motion: reduce) {
	.emg-hero .emg-badge-lexikon { transition: none; }
}
/* ---------- Badges auf dem Handy: kompakt ---------- */
@media (max-width: 600px) {
	.emg-hero .emg-hero__badges {
		top: 16px;
		right: 16px;
		gap: 8px;
	}

	/* Lexikon: nur Buch und Wort */
	.emg-hero .emg-badge-lexikon {
		width: 82px;
		height: 82px;
		padding: 0 6px;
	}
	.emg-badge-lexikon__icon { width: 24px; height: 24px; margin-bottom: 2px; }
	.emg-badge-lexikon__big { font-size: 0.85rem; }
	.emg-badge-lexikon__big--long { font-size: 0.5rem; }
html[lang^="en"] .emg-hero .emg-badge-lexikon__big { font-size: 0.5rem; }
	.emg-badge-lexikon__sub { display: none; }

	/* Big 5: nur Schriftzug und Punkte */
	.emg-hero .emg-big5-badge {
		width: 82px !important;
		height: 82px !important;
	}
	.emg-big5-badge__big { font-size: 1.4rem; }
	.emg-big5-badge__dots { gap: 3px; margin: 4px 0 0; }
	.emg-big5-badge__dots i { width: 4px; height: 4px; }
	.emg-big5-badge__small,
	.emg-big5-badge__cta { display: none; }

	/* Titelschrift nie unter den Badges */
	.emg-hero { min-height: 78vh; }
	.emg-hero__content { padding-top: 120px; }
}
/* ---------- Banner Guide-Tipp (falls eingebaut) ---------- */
.emg-home .emg-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px 12px;
	padding: 12px var(--emg-gap);
	background: var(--emg-dark);
	color: #fff;
	font-size: 0.95rem;
	letter-spacing: 0.03em;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s;
}
.emg-home .emg-banner:hover { background: #333; color: #fff; text-decoration: none; }
.emg-banner__date { opacity: 0.75; }
.emg-banner__arrow { transition: transform 0.2s; }
.emg-banner:hover .emg-banner__arrow { transform: translateX(4px); }
.emg-banner__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #7ed957;
	animation: emg-pulse 2s infinite;
}
@keyframes emg-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(126, 217, 87, 0.7); }
	70%  { box-shadow: 0 0 0 8px rgba(126, 217, 87, 0); }
	100% { box-shadow: 0 0 0 0 rgba(126, 217, 87, 0); }
}
@media (prefers-reduced-motion: reduce) {
	.emg-banner__dot { animation: none; }
}

/* ---------- Aktuelle Kurse & Touren ---------- */
.emg-courses { padding: 100px 0 20px; }

/* ---------- Jetzt aktuell (Karussell) ---------- */
.emg-news { padding: 80px 0; }
.emg-slider { position: relative; }
.emg-slider__track {
	display: flex;
	gap: var(--emg-gap);
	margin: 0;
	padding: 0 var(--emg-gap);
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding: 0 var(--emg-gap);
	scrollbar-width: none;
}
.emg-slider__track::-webkit-scrollbar { display: none; }

.emg-card {
	flex: 0 0 calc((100% - 2 * var(--emg-gap)) / 3);
	scroll-snap-align: start;
	margin: 0;
}
.emg-card a { display: block; color: inherit; text-decoration: none; }
.emg-card__img {
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #eee;
}
.emg-card__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}
.emg-card a:hover .emg-card__img img { transform: scale(1.04); }
.emg-card h3 {
	margin: 24px 0 8px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--emg-dark);
}
.emg-card p { margin: 0; line-height: 1.6; color: var(--emg-grey); }

.emg-slider__btn {
	position: absolute;
	top: 22%;
	z-index: 2;
	width: 48px;
	height: 64px;
	border: 0;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
}
.emg-slider__btn:hover { background: rgba(0, 0, 0, 0.85); }
.emg-slider__btn--prev { left: var(--emg-gap); }
.emg-slider__btn--next { right: var(--emg-gap); }
.emg-news__more { margin: 48px 0 0; text-align: center; }

/* Karussell: Aufzählungspunkte des alten Themes entfernen */
body.home .emg-slider__track,
body.home .emg-card {
	list-style: none !important;
	padding-left: 0 !important;
}
body.home .emg-slider__track { padding: 0 var(--emg-gap) !important; }
body.home .emg-card::before,
body.home .emg-card::marker {
	content: none !important;
	display: none !important;
}

/* ---------- Instagram ---------- */
.emg-insta { padding: 80px 0; }
.emg-insta__follow { margin: 40px 0 0; text-align: center; }

/* ---------- Kontakt ---------- */
.emg-contact {
	padding: 100px 0;
	border-top: 1px solid var(--emg-line);
	text-align: center;
}
.emg-contact__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
	max-width: 760px;
	margin: 0 auto;
}
.emg-contact h3 {
	margin: 0 0 12px;
	font-size: 1.25rem;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--emg-dark);
}
.emg-contact p { margin: 0; line-height: 1.7; color: var(--emg-grey); }
.emg-contact a { color: var(--emg-dark); }
.emg-contact .emg-btn--dark,
.emg-contact .emg-btn--dark:hover { color: #fff; text-decoration: none; }
.emg-contact .emg-contact__cta {
	display: table;
	margin: -16px auto 64px !important;
}

/* ---------- Startseite: Tablet & Handy ---------- */
@media (max-width: 900px) {
	.emg-hero { min-height: 70vh; }
	.emg-card { flex-basis: 80%; }
	.emg-slider__btn { display: none; } /* auf Touch wird gewischt */
	.emg-courses { padding-top: 60px; }
	.emg-news,
	.emg-insta,
	.emg-contact { padding: 60px 0; }
}
@media (max-width: 600px) {
	.emg-contact__grid { grid-template-columns: 1fr; gap: 24px; }
}


/* =========================================================
   2. BEITRAGSSEITE "Aktuelles" / "News"
   ========================================================= */
.emg-posts {
	--emg-dark: #1d1d1b;
	--emg-grey: #666;
	--emg-gap: 24px;
	padding: 40px 0 20px;
	color: var(--emg-dark);
}
.emg-posts .emg-section-title { margin-bottom: 40px; }

.emg-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 48px var(--emg-gap);
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.emg-grid > li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.emg-grid > li::before,
.emg-grid > li::marker {
	content: none !important;
	display: none !important;
}
.emg-card__date {
	display: block;
	margin-top: 16px;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--emg-grey);
}
.emg-posts .emg-card h3 { margin-top: 6px; }

.emg-posts .navigation.pagination { margin-top: 60px; text-align: center; }
.emg-posts .nav-links .page-numbers {
	display: inline-block;
	margin: 0 2px;
	padding: 8px 14px;
	border: 1px solid #e5e5e5;
	color: var(--emg-dark);
	text-decoration: none;
}
.emg-posts .nav-links .page-numbers.current {
	background: var(--emg-dark);
	border-color: var(--emg-dark);
	color: #fff;
}
.emg-posts__empty { text-align: center; color: var(--emg-grey); }


/* =========================================================
   3. TEAM-SEITE: Foto-Raster mit Name im Bild
   ========================================================= */
.emg-team {
	--emg-dark: #1d1d1b;
	--emg-grey: #666;
	color: var(--emg-dark);
}
.emg-team__lead {
	max-width: 760px;
	margin: 0 0 16px;
	font-size: 1.1rem;
	line-height: 1.7;
}
.emg-team__group {
	margin: 56px 0 24px;
	font-size: 1.5rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-dark);
}

/* Raster: 3 Spalten, auf dem Handy 1 */
.emg-team__grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 40px 24px;
}
.emg-team__card { margin: 0 !important; }

/* Foto mit Name unten im Bild */
.emg-team__photo {
	position: relative;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	background: #e9eaea;
}
.emg-team__photo img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
	transition: transform 0.6s ease;
}
.emg-team__card:hover .emg-team__photo img { transform: scale(1.04); }
.emg-team__name {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 56px 16px 14px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
	color: #fff;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.15;
}
/* Ohne Foto: Initialen als Platzhalter */
.emg-team__initials {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 40px;
	font-size: 3rem;
	letter-spacing: 0.05em;
	color: #b9bbbb;
}

/* Angaben unter dem Bild */
.emg-team__card figcaption { padding-top: 14px; }
.emg-team__card figcaption p { margin: 0 0 6px; line-height: 1.5; }
.emg-team__role {
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-grey);
}
.emg-team__motto { font-style: italic; }
.emg-team__best,
.emg-team__contact { font-size: 0.95rem; color: var(--emg-grey); }
.emg-team__contact a { color: var(--emg-dark); }

@media (max-width: 700px) {
	.emg-team__grid {
		grid-template-columns: 1fr !important;
		gap: 36px;
		max-width: 420px;
		margin: 0 auto;
	}
}


/* =========================================================
   4. LAYOUT ALLE SEITEN: breit, weiss, ohne Box und Seitenleiste
   ========================================================= */
#page {
	max-width: none !important;
	width: 100% !important;
}
#content {
	max-width: 1400px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
}
#content .container {
	max-width: none !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
#content .row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Seitenleisten ausblenden, Inhalt auf volle Breite */
#content #secondary,
#content .sidebar-primary,
#content .sidebar-secondary,
#content #sidebar-primary,
#content #sidebar-secondary {
	display: none !important;
}
#content #primary {
	float: none !important;
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Durchgehend weiss, keine Box */
html,
body,
body.custom-background,
#page,
#content,
#content #primary,
#content #main,
#content article,
#content .hentry {
	background: #fff !important;
	background-image: none !important;
}
#content,
#content #primary,
#content #main,
#content article,
#content .hentry {
	border: 0 !important;
	box-shadow: none !important;
}


/* =========================================================
   5. HEADER (alle Seiten)
   ========================================================= */

/* Weisse Streifen oben und unten entfernen */
#masthead,
#masthead .top-panel,
#masthead .header-container,
#masthead .header-container_wrap {
	border-top: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
}
#masthead .top-panel { margin-bottom: 0 !important; }
#masthead .header-container { margin-top: 0 !important; }
#masthead { margin-bottom: 0 !important; }

/* Sticky Header (Desktop): weisser Rand darunter entfernen */
#masthead .isStuck,
#masthead .isStuck .header-container_wrap,
#masthead .isStuck .main-navigation,
#masthead .isStuck .main-navigation > ul {
	border-bottom: 0 !important;
	box-shadow: none !important;
}
#masthead .isStuck {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

/* Suchbalken oben */
#masthead .top-panel {
	padding: 10px 24px !important;
	background: #418fde;
}
#masthead .top-panel .search-form {
	position: relative;
	display: flex;
	align-items: center;
	max-width: none;
	margin: 0;
}
#masthead .top-panel .search-field {
	-webkit-appearance: none;
	flex: 1;
	height: 40px;
	padding: 0 44px 0 18px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.2) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: 'Abel', sans-serif;
	font-size: 16px;
	letter-spacing: 0.04em;
	transition: background 0.2s;
}
#masthead .top-panel .search-field::placeholder { color: rgba(255, 255, 255, 0.85); }
#masthead .top-panel .search-field:focus {
	background: rgba(255, 255, 255, 0.32) !important;
	outline: none;
}
#masthead .top-panel .search-submit {
	position: absolute;
	top: 50%;
	right: 6px;
	width: 34px;
	height: 34px;
	padding: 0 !important;
	transform: translateY(-50%);
	border: 0 !important;
	background: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
}

/* Menü: "Buchen / Booking" als blauer Button */
#masthead .menu-item.emg-menu-cta > a {
	display: inline-block;
	margin-left: 0.5em;
	padding: 0.55em 1.2em !important;
	background: #418fde !important;
	color: #fff !important;
	border-radius: 2px;
	text-shadow: none !important;
	transition: background 0.2s;
}
#masthead .menu-item.emg-menu-cta > a:hover,
#masthead .menu-item.emg-menu-cta > a:focus,
#masthead .menu-item.emg-menu-cta.current-menu-item > a {
	background: #2f74bb !important;
	color: #fff !important;
}

/* =========================================================
   6. HEADER AUF DEM HANDY (alle Seiten)
   Aufbau: .header-container > .header-container_wrap
           > .container-fluid > .row > .site-branding + Menü
   ========================================================= */
@media (max-width: 767px) {

	/* Sticky: Suchbalken scrollt weg, grüner Balken bleibt oben.
	   Höhe des Suchbalkens (--emg-tp) kommt per Skript aus functions.php */
	#masthead {
		position: -webkit-sticky !important;
		position: sticky !important;
		top: calc(-1 * var(--emg-tp, 0px));
		z-index: 1000;
	}

	/* Sticky-Logo des Themes ausblenden */
	#masthead img[src*="EMG_Logo_Linie"] { display: none !important; }

	/* Äussere Hüllen ohne Abstände */
	#masthead .header-container,
	#masthead .header-container_wrap {
		max-width: none !important;
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Einziger Rand: 24 px, gleich wie die Startseite */
	#masthead .header-container_wrap > .container-fluid {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	/* Logo und Menü in eine Zeile */
	#masthead .container-fluid > .row {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		flex-wrap: nowrap;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Logo-Bereich: nur so breit wie das Logo, Inhalt links */
	#masthead .site-branding {
		display: block !important;
		flex: 0 1 auto !important;
		width: auto !important;
		max-width: 70% !important;
		float: none !important;
		margin: 0 !important;
		padding: 0 !important;
		text-align: left !important;
	}
	#masthead .site-branding * {
		text-align: left !important;
		justify-content: flex-start !important;
		margin-left: 0 !important;
		float: none !important;
	}
	#masthead .site-branding img {
		display: block !important;
		margin: 0 !important;
	}

	/* Menü-Striche rechts */
	#masthead .main-navigation {
		flex: 0 0 auto;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		position: static;
	}
	#masthead .menu-toggle { margin: 0 !important; }

	/* Aufgeklapptes Menü über die ganze Breite, eigenes Scrollen.
	   Höhe des grünen Balkens (--emg-hh) kommt per Skript aus functions.php */
	#masthead .main-navigation > ul,
	#masthead .main-navigation > div > ul {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 999;
		background: #a9ad37;
		max-height: calc(100vh - var(--emg-hh, 80px));
		max-height: calc(100dvh - var(--emg-hh, 80px));
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
	}

	/* Button "Privat Guide Buchen" im aufgeklappten Menü */
	#masthead .menu-item.emg-menu-cta > a {
		display: block;
		margin: 12px 24px;
		text-align: center;
	}
}
/* =========================================================
   7. BIG 5 SEITE
   ========================================================= */
.emg-big5 {
	--emg-dark: #1d1d1b;
	--emg-grey: #666;
	--emg-green: #a9ad37;
	max-width: 1200px;
	margin: 0 auto;
	color: var(--emg-dark);
}
.emg-big5__kicker {
	margin: 0 0 8px;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--emg-grey);
}
.emg-big5 h1 {
	margin: 0 0 20px;
	font-size: clamp(2.4rem, 5vw, 4rem);
	line-height: 1.05;
}
.emg-big5__lead {
	max-width: 820px;
	margin: 0 0 56px;
	font-size: 1.2rem;
	line-height: 1.7;
}

/* Übersicht */
.emg-big5__overview-title {
	margin: 0 0 16px;
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-grey);
}
.emg-big5__overview {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 40px;
}
.emg-big5__chip {
	display: block;
	padding: 18px 16px;
	border: 1px solid #e5e5e5;
	color: var(--emg-dark) !important;
	text-decoration: none !important;
	transition: border-color 0.2s, background 0.2s;
}
.emg-big5__chip:hover { border-color: var(--emg-dark); background: #fafaf7; }
.emg-big5__chip-num { display: block; font-size: 0.8rem; color: var(--emg-green); font-weight: 700; }
.emg-big5__chip-name { display: block; margin: 4px 0; font-size: 1.4rem; font-weight: 700; }
.emg-big5__chip-meta { display: block; font-size: 0.85rem; color: var(--emg-grey); }

/* Einzelne Abfahrten */
.emg-big5__run {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 48px;
	align-items: start;
	padding: 64px 0;
	border-top: 1px solid #e5e5e5;
	scroll-margin-top: 120px;
}
.emg-big5__run:nth-of-type(even) .emg-big5__media { order: 2; }
.emg-big5__img {
	display: block;
	width: 100% !important;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	margin: 0 !important;
}
.emg-big5__img--empty {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #e9eaea;
	color: #999;
	font-size: 1.1rem;
}
.emg-big5__num {
	margin: 0 0 6px;
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-green);
}
.emg-big5__body h2 {
	margin: 0 0 12px;
	font-size: clamp(2rem, 3.5vw, 2.8rem);
	line-height: 1.1;
}
.emg-big5__intro { margin: 0 0 24px; font-size: 1.15rem; line-height: 1.6; }
.emg-big5__body p { line-height: 1.7; }

/* Eckdaten */
.emg-big5__facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 24px;
	margin: 0 0 24px;
	border-top: 1px solid #e5e5e5;
}
.emg-big5__facts > div {
	padding: 10px 0;
	border-bottom: 1px solid #e5e5e5;
	font-weight: 700;
}
.emg-big5__facts span {
	display: block;
	font-size: 0.75rem;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-grey);
}
.emg-big5__note {
	padding: 14px 18px;
	border-left: 3px solid var(--emg-green);
	background: #f6f6f2;
	font-size: 0.95rem;
}

/* Sicherheit */
.emg-big5__safety {
	margin: 32px 0 0;
	padding: 48px;
	background: var(--emg-dark);
	color: #fff;
}
.emg-big5__safety h2 { margin: 0 0 20px; color: #fff; }
.emg-big5__safety-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 40px;
}
.emg-big5__safety-list p {
	margin: 0;
	padding-left: 22px;
	position: relative;
	line-height: 1.6;
	color: #ddd;
}
.emg-big5__safety-list p::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.6em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--emg-green);
}

/* Aufruf zum Buchen */
.emg-big5__cta { padding: 72px 0 24px; text-align: center; }
.emg-big5__cta h2 { margin: 0 0 12px; }
.emg-big5__cta p { max-width: 640px; margin: 0 auto 24px; line-height: 1.7; }

/* Tablet & Handy */
@media (max-width: 900px) {
	.emg-big5__overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.emg-big5__run { grid-template-columns: 1fr; gap: 24px; padding: 48px 0; }
	.emg-big5__run:nth-of-type(even) .emg-big5__media { order: 0; }
	.emg-big5__safety { padding: 32px 24px; }
	.emg-big5__safety-list { grid-template-columns: 1fr; }
}
/* =========================================================
   8. BEITRAGSBILD AUF SEITEN: breites Format statt riesig
   ========================================================= */
#content article.page .wp-post-image {
	display: block;
	width: 100% !important;
	height: clamp(220px, 30vw, 420px) !important;
	max-width: none !important;
	object-position: center top;
	object-fit: cover;
	margin: 0 0 32px !important;
}
/* Team-Fotos davon ausnehmen */
#content .emg-team__photo img.wp-post-image {
	height: 100% !important;
	margin: 0 !important;
}
/* =========================================================
   9. Lexikon TOURENFÜHRER & WISSEN
   ========================================================= */
.emg-wissen {
	--emg-dark: #1d1d1b;
	--emg-grey: #666;
	--emg-green: #a9ad37;
	color: var(--emg-dark);
}

/* Suche und Filter */
.emg-wissen__tools { margin: 0 0 24px; }
.emg-wissen__search {
	-webkit-appearance: none;
	display: block;
	width: 100%;
	max-width: 560px;
	height: 48px;
	margin: 0 0 20px;
	padding: 0 18px !important;
	border: 1px solid #d5d5d5 !important;
	border-radius: 999px !important;
	background: #fff;
	font-size: 16px;
	box-shadow: none !important;
}
.emg-wissen__search:focus { border-color: var(--emg-dark) !important; outline: none; }

.emg-wissen__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 10px;
}
.emg-wissen__filters button {
	padding: 8px 16px;
	border: 1px solid #d5d5d5;
	border-radius: 999px;
	background: #fff;
	color: var(--emg-dark);
	font-size: 0.9rem;
	line-height: 1.2;
	cursor: pointer;
	transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.emg-wissen__filters button:hover { border-color: var(--emg-dark); }
.emg-wissen__filters button.is-active {
	background: var(--emg-dark);
	border-color: var(--emg-dark);
	color: #fff;
}
/* Knopf-Stil des alten Themes übersteuern */
.emg-wissen .emg-wissen__filters button {
	background: #fff !important;
	color: #1d1d1b !important;
	text-shadow: none !important;
	box-shadow: none !important;
	text-transform: none !important;
	font-weight: 400 !important;
}
.emg-wissen .emg-wissen__filters button:hover {
	border-color: #1d1d1b !important;
}
.emg-wissen .emg-wissen__filters button.is-active {
	background: #1d1d1b !important;
	border-color: #1d1d1b !important;
	color: #fff !important;
}
.emg-wissen .emg-wissen__filters--season button.is-active {
	background: #a9ad37 !important;
	border-color: #a9ad37 !important;
}
.emg-wissen__filters--season button.is-active {
	background: var(--emg-green);
	border-color: var(--emg-green);
}
.emg-wissen__count {
	margin: 0 0 20px;
	font-size: 0.9rem;
	color: var(--emg-grey);
}

/* Kacheln */
.emg-wissen__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px 24px;
}
.emg-wissen__card {
	display: block;
	color: var(--emg-dark) !important;
	text-decoration: none !important;
}
.emg-wissen__card[hidden],
.emg-wissen__empty[hidden] { display: none !important; }

.emg-wissen__img {
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #e9eaea;
}
.emg-wissen__img img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
	transition: transform 0.6s ease;
}
.emg-wissen__card:hover .emg-wissen__img img { transform: scale(1.04); }

.emg-wissen__body { padding-top: 14px; }
.emg-wissen__label {
	display: block;
	margin-bottom: 4px;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--emg-green);
}
.emg-wissen__body h3 {
	margin: 0 0 6px;
	font-size: 1.3rem;
	line-height: 1.2;
	color: var(--emg-dark);
}
.emg-wissen__body p {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.55;
	color: var(--emg-grey);
}
.emg-wissen__empty { margin: 32px 0; text-align: center; color: var(--emg-grey); }

/* Tablet & Handy */
@media (max-width: 900px) {
	.emg-wissen__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.emg-wissen__grid { grid-template-columns: 1fr; gap: 28px; }
	.emg-wissen__filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
	.emg-wissen__filters button { flex: 0 0 auto; }
}
/* Sticky-Logo als klickbar kennzeichnen */
#masthead img[src*="EMG_Logo_Linie"] { cursor: pointer; }
/* =========================================================
   11. SUCHE: Lupe im grünen Menü, kein blauer Balken
   ========================================================= */
#masthead .top-panel { display: none !important; }

/* Lupe */
#masthead .emg-search-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50%;
	background: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background 0.2s;
}
#masthead .emg-search-btn:hover,
#masthead .emg-search-btn:focus { background: rgba(255, 255, 255, 0.2) !important; }
#masthead .emg-search-item { display: inline-flex; align-items: center; margin-left: 0.5em; }
#masthead .emg-search-item::before,
#masthead .emg-search-item::after { display: none !important; }
#masthead .emg-search-btn--mobile { display: none; }

/* Aufklappendes Suchfeld unter dem grünen Balken */
.emg-search {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 1001;
	padding: 16px 24px;
	background: #a9ad37;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}
.emg-search[hidden] { display: none !important; }
.emg-search form {
	display: flex;
	align-items: center;
	gap: 10px;
	max-width: 900px;
	margin: 0 auto;
}
.emg-search input[type="search"] {
	-webkit-appearance: none;
	flex: 1;
	height: 46px;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #fff !important;
	color: #1d1d1b !important;
	font-family: 'Abel', sans-serif;
	font-size: 16px;
	box-shadow: none !important;
}
.emg-search input[type="search"]:focus { outline: 2px solid #1d1d1b; }
.emg-search .emg-search__go {
	height: 46px;
	padding: 0 22px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #1d1d1b !important;
	color: #fff !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
}
.emg-search .emg-search__close {
	width: 40px;
	height: 40px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #fff !important;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
	box-shadow: none !important;
}

/* Handy: Lupe links neben den drei Strichen */
@media (max-width: 767px) {
	#masthead .emg-search-item { display: none !important; }
	#masthead .emg-search-btn--mobile { display: inline-flex; }
	#masthead .main-navigation {
		display: flex !important;
		align-items: center;
		gap: 4px;
	}
	.emg-search { padding: 12px 16px; }
	.emg-search .emg-search__go { padding: 0 16px !important; }
}
/* =========================================================
   12. SUCHERGEBNISSE: kompakte Kacheln
   ========================================================= */
.emg-results { color: #1d1d1b; padding: 24px 0 40px; }
.emg-results__kicker {
	margin: 0 0 6px;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #666;
}
.emg-results__title { margin: 0 0 24px; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.1; }

/* Suchfeld zum Verfeinern */
.emg-results__form { display: flex; gap: 10px; max-width: 640px; margin: 0 0 16px; }
.emg-results__form input[type="search"] {
	-webkit-appearance: none;
	flex: 1;
	height: 46px;
	padding: 0 20px !important;
	border: 1px solid #d5d5d5 !important;
	border-radius: 999px !important;
	background: #fff !important;
	font-size: 16px;
	box-shadow: none !important;
}
.emg-results__form button {
	height: 46px;
	padding: 0 22px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #1d1d1b !important;
	color: #fff !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
}
.emg-results__count { margin: 0 0 24px; font-size: 0.9rem; color: #666; }

/* Raster: 3 Spalten, Tablet 2, Handy 1 */
.emg-results__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 32px 24px;
}
.emg-results__card { display: block; color: #1d1d1b !important; text-decoration: none !important; }
.emg-results__img {
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #e9eaea;
}
.emg-results__img img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover;
	transition: transform 0.6s ease;
}
.emg-results__card:hover .emg-results__img img { transform: scale(1.04); }
.emg-results__body { padding-top: 12px; }
.emg-results__label {
	display: block;
	margin-bottom: 4px;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #a9ad37;
}
.emg-results__body h2 { margin: 0 0 6px; font-size: 1.3rem; line-height: 1.2; color: #1d1d1b; }
.emg-results__body p { margin: 0; font-size: 0.95rem; line-height: 1.55; color: #666; }
.emg-results__empty { margin: 32px 0; color: #666; }

/* Seitennavigation */
.emg-results .navigation.pagination { margin-top: 48px; text-align: center; }
.emg-results .nav-links .page-numbers {
	display: inline-block;
	margin: 0 2px;
	padding: 8px 14px;
	border: 1px solid #e5e5e5;
	color: #1d1d1b;
	text-decoration: none;
}
.emg-results .nav-links .page-numbers.current { background: #1d1d1b; border-color: #1d1d1b; color: #fff; }

@media (max-width: 900px) {
	.emg-results__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.emg-results__grid { grid-template-columns: 1fr; gap: 28px; }
	.emg-results__form button { padding: 0 16px !important; }
}
/* Lexikon-Badge in Website-Blau */
.emg-hero .emg-badge-lexikon {
	background: rgba(65, 143, 222, 0.94) !important;
	color: #fff !important;
}
.emg-hero .emg-badge-lexikon:hover,
.emg-hero .emg-badge-lexikon:focus {
	background: #1d1d1b !important;
	color: #fff !important;
}
/* Big-5-Seite: zwei blaue Buttons nebeneinander, mittig */
.emg-big5 .emg-btn-group {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center !important;
	align-items: center;
	gap: 20px;
	width: 100%;
	margin: 32px auto !important;
	text-align: center;
}
.emg-big5 .emg-btn-group a.emg-btn,
.emg-big5 .emg-btn-group a.emg-btn:focus {
	margin: 0 !important;
	background: #418fde !important;
	color: #fff !important;
	text-decoration: none !important;
}
.emg-big5 .emg-btn-group a.emg-btn:hover {
	background: #2f74bb !important;
	color: #fff !important;
}
@media (max-width: 600px) {
	.emg-big5 .emg-btn-group { gap: 12px; }
	.emg-big5 .emg-btn-group .emg-btn { width: 100%; text-align: center; }
}
}
/* ---------- Google-Bewertungen (Startseite) ---------- */
.emg-reviews {
	padding: 80px 0;
	border-top: 1px solid var(--emg-line);
}
@media (max-width: 900px) {
	.emg-reviews { padding: 60px 0; }
}
/* Startseite: "Alle Beiträge" und "Tour anfragen" in Website-Blau */
.emg-home .emg-news__more a.emg-btn,
.emg-home .emg-contact a.emg-contact__cta {
	background: #418fde !important;
	color: #fff !important;
	text-decoration: none !important;
}
.emg-home .emg-news__more a.emg-btn:hover,
.emg-home .emg-news__more a.emg-btn:focus,
.emg-home .emg-contact a.emg-contact__cta:hover,
.emg-home .emg-contact a.emg-contact__cta:focus {
	background: #2f74bb !important;
	color: #fff !important;
}
/* Titelbild/Video: unteren Bildteil zeigen, oben wird abgeschnitten */
.emg-hero .emg-hero__media {
	object-position: 65% bottom;
}
/* ---------- Badges oben rechts, damit das Logo im Video frei bleibt ---------- */
@media (min-width: 601px) {
	.emg-hero .emg-hero__badges {
		top: clamp(24px, 6vh, 64px);
		bottom: auto;
		right: 2.6vw;
	}
}
/* Big 5: von WordPress eingefügte Zeilenumbrüche zwischen den Kacheln ignorieren */
.emg-big5__overview > br,
.emg-big5__overview > p:empty { display: none !important; }
/* Big 5: Foto so hoch wie der Text, endet bündig mit "Gut zu wissen" (nur ab Tablet-Breite) */
@media (min-width: 901px) {
	.emg-big5__run { align-items: stretch; }
	.emg-big5__media { position: relative; min-height: 320px; }
	.emg-big5__media .emg-big5__img {
		position: absolute;
		inset: 0;
		height: 100% !important;
		aspect-ratio: auto;
	}
	.emg-big5__body > *:last-child,
	.emg-big5__body .emg-big5__note { margin-bottom: 0 !important; }
}
/* =========================================================
   13. TRANSPARENTER HEADER ÜBER DEM VIDEO (nur Startseite, ab Tablet)
   Beim Scrollen (Sticky, .isStuck) wird der Balken wieder grün.
   ========================================================= */
@media (min-width: 768px) {
	body.home #masthead {
		position: absolute !important;
		top: 0;
		left: 0;
		right: 0;
		z-index: 100;
		background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%) !important;
	}
	body.home.admin-bar #masthead { top: 32px; }

	body.home #masthead .header-container,
	body.home #masthead .header-container_wrap,
	body.home #masthead .header-container_wrap > .container-fluid,
	body.home #masthead .main-navigation,
	body.home #masthead .main-navigation > ul,
	body.home #masthead .main-navigation > div > ul {
		background: transparent !important;
	}

	/* Beim Scrollen: wieder grüner Balken */
	body.home #masthead .isStuck,
	body.home #masthead .isStuck .header-container_wrap {
		background: #a9ad37 !important;
	}

	/* Platz für den Header im Titelbild */
	body.home .emg-hero { min-height: 92vh; }
	body.home .emg-hero .emg-hero__badges { top: 130px !important; }
}
/* Untermenüs: weisse Trennlinien entfernen */
#masthead .main-navigation .sub-menu,
#masthead .main-navigation .sub-menu li,
#masthead .main-navigation .sub-menu a {
	border: 0 !important;
	box-shadow: none !important;
}
#masthead .main-navigation .sub-menu li::before,
#masthead .main-navigation .sub-menu li::after,
#masthead .main-navigation .sub-menu a::before,
#masthead .main-navigation .sub-menu a::after {
	display: none !important;
}
/* =========================================================
   14. VERTRAUENSLEISTE unter dem Video
   Icon oben, Text darunter, alles zentriert, feine Trennlinien
   ========================================================= */
.emg-trust {
	background: #fff;
	border-bottom: 1px solid #e5e5e5;
}
.emg-trust ul.emg-trust__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: start;
	gap: 0;
	max-width: 1200px;
	margin: 0 auto !important;
	padding: 36px 24px !important;
	list-style: none !important;
}
.emg-trust li.emg-trust__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	margin: 0 !important;
	padding: 0 20px !important;
	border-left: 1px solid #e5e5e5;
	background: none !important;
	list-style: none !important;
	text-align: center;
	font-size: 0.85rem;
	line-height: 1.4;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #1d1d1b;
}
.emg-trust li.emg-trust__item:first-child { border-left: 0; }
.emg-trust li.emg-trust__item::before,
.emg-trust li.emg-trust__item::after { display: none !important; content: none !important; }
.emg-trust__item span { display: block; max-width: 22ch; }
.emg-trust__icon {
	display: block;
	width: 30px;
	height: 30px;
	margin: 0;
	fill: none;
	stroke: #a9ad37;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
@media (max-width: 767px) {
	.emg-trust ul.emg-trust__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 28px;
		padding: 28px 12px !important;
	}
	.emg-trust li.emg-trust__item {
		padding: 0 10px !important;
		font-size: 0.75rem;
		letter-spacing: 0.06em;
	}
	.emg-trust li.emg-trust__item:nth-child(odd) { border-left: 0; }
	.emg-trust__icon { width: 26px; height: 26px; }
}
/* =========================================================
   15. STARTSEITE RUHIG: einheitliche Abstände, Abschnitte abwechselnd hell
   Reihenfolge: Video · Vertrauensleiste · Kurse · News (grau) ·
                Instagram · Bewertungen (grau) · Kontakt
   ========================================================= */
.emg-home { --emg-soft: #f5f5f2; }

.emg-home .emg-courses,
.emg-home .emg-news,
.emg-home .emg-insta,
.emg-home .emg-reviews,
.emg-home .emg-contact {
	padding: 96px 0 !important;
	border-top: 0 !important;
	border-bottom: 0 !important;
	background: #fff;
}
.emg-home .emg-news,
.emg-home .emg-reviews { background: var(--emg-soft); }

/* Titel ruhiger: etwas kleiner, mehr Luft */
.emg-home .emg-section-title {
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	letter-spacing: 0.01em;
	margin-bottom: 40px;
}
.emg-home .emg-news__more { margin-top: 40px; }
.emg-home .emg-contact .emg-contact__cta { margin: -8px auto 56px !important; }

@media (max-width: 900px) {
	.emg-home .emg-courses,
	.emg-home .emg-news,
	.emg-home .emg-insta,
	.emg-home .emg-reviews,
	.emg-home .emg-contact { padding: 64px 0 !important; }
	.emg-home .emg-section-title { margin-bottom: 28px; }
}
/* Startseite: Button im Video blau */
.emg-hero .emg-hero__content .emg-btn {
	background: #418fde;
	color: #fff !important;
}
.emg-hero .emg-hero__content .emg-btn:hover,
.emg-hero .emg-hero__content .emg-btn:focus {
	background: #2f74bb;
	color: #fff !important;
}
/* Handy-Menü: weisse Trennlinien zwischen den Hauptpunkten entfernen */
@media (max-width: 767px) {
	#masthead .main-navigation ul,
	#masthead .main-navigation li,
	#masthead .main-navigation li > a {
		border: 0 !important;
		box-shadow: none !important;
	}
	#masthead .main-navigation li::before,
	#masthead .main-navigation li::after,
	#masthead .main-navigation li > a::before,
	#masthead .main-navigation li > a::after {
		border: 0 !important;
		box-shadow: none !important;
	}
}
/* =========================================================
   16. MENÜ-SCHRIFT MODERN: ohne Schatten, Grossbuchstaben wie Buttons/Kicker
   ========================================================= */
#masthead .main-navigation a,
#masthead .main-navigation a * {
	text-shadow: none !important;
}
#masthead .main-navigation > ul > li > a,
#masthead .main-navigation > div > ul > li > a {
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #fff !important;
	text-decoration: none;
	text-underline-offset: 6px;
	text-decoration-thickness: 1px;
}
#masthead .main-navigation > ul > li:not(.emg-menu-cta) > a:hover,
#masthead .main-navigation > div > ul > li:not(.emg-menu-cta) > a:hover,
#masthead .main-navigation > ul > li.current-menu-item:not(.emg-menu-cta) > a,
#masthead .main-navigation > div > ul > li.current-menu-item:not(.emg-menu-cta) > a {
	text-decoration: underline;
}
/* Untermenüs: normale Schreibweise, ruhig */
#masthead .main-navigation .sub-menu a {
	font-size: 0.95rem !important;
	text-transform: none;
	letter-spacing: 0.02em;
}
/* =========================================================
   17. TITELBILD: zwei schlanke Link-Kacheln unten in der Mitte
   (ersetzt die runden Badges Lexikon / Big 5)
   ========================================================= */
.emg-hero .emg-hero__content { padding-bottom: max(10vh, 120px); }

.emg-hero__links {
	position: absolute;
	left: 50%;
	bottom: 28px;
	z-index: 3;
	display: flex;
	gap: 12px;
	transform: translateX(-50%);
}
.emg-hero .emg-hero-link {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 230px;
	padding: 12px 18px;
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: 2px;
	background: rgba(29, 29, 27, 0.35);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	color: #fff !important;
	text-decoration: none !important;
	transition: background 0.2s, border-color 0.2s;
}
.emg-hero .emg-hero-link:hover,
.emg-hero .emg-hero-link:focus {
	background: #418fde;
	border-color: #418fde;
}
.emg-hero-link__icon {
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	fill: none;
	stroke: #fff;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.emg-hero-link__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.2;
	text-align: left;
}
.emg-hero-link__text strong {
	font-size: 0.95rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.emg-hero-link__text small {
	font-size: 0.8rem;
	letter-spacing: 0.03em;
	opacity: 0.85;
}
.emg-hero-link__arrow {
	margin-left: auto;
	padding-left: 8px;
	transition: transform 0.2s;
}
.emg-hero .emg-hero-link:hover .emg-hero-link__arrow { transform: translateX(3px); }

@media (max-width: 1100px) {
	.emg-hero .emg-hero-link { min-width: 0; padding: 10px 14px; gap: 10px; }
}
/* Handy: beide Kacheln nebeneinander über die ganze Breite */
@media (max-width: 767px) {
	.emg-hero .emg-hero__content { padding-bottom: 104px; }
	.emg-hero__links {
		left: 16px;
		right: 16px;
		bottom: 16px;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		transform: none;
	}
	.emg-hero .emg-hero-link { padding: 10px 12px; gap: 8px; }
	.emg-hero-link__icon { flex-basis: 22px; width: 22px; height: 22px; }
	.emg-hero-link__text small,
	.emg-hero-link__arrow { display: none; }
	.emg-hero-link__text strong { font-size: 0.85rem; }
}

/* Lupe im Menü auf Schrifthöhe */
@media (min-width: 768px) {
	#masthead .emg-search-btn {
		position: relative;
		top: 4px;
	}
}
/* Link-Kacheln im Titelbild: Lexikon blau, Big 5 grün, leicht transparent */
.emg-hero .emg-hero-link--blue {
	background: rgba(65, 143, 222, 0.82);
	border-color: transparent;
}
.emg-hero .emg-hero-link--green {
	background: rgba(169, 173, 55, 0.85);
	border-color: transparent;
}
.emg-hero .emg-hero-link--blue:hover,
.emg-hero .emg-hero-link--blue:focus {
	background: #2f74bb;
	border-color: transparent;
}
.emg-hero .emg-hero-link--green:hover,
.emg-hero .emg-hero-link--green:focus {
	background: #878a2b;
	border-color: transparent;
}
/* Kacheln (Bild + blauer Titel): Bilder immer im Format 16:9 */
.su-column-inner > div:has(+ .offer-title-1) img {
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
/* =========================================================
   18. BIG-5-HINWEIS IM TITELBILD (Pill über dem Titel)
   Erscheint, solange das Lexikon nicht veröffentlicht ist.
   ========================================================= */
.emg-hero:not(:has(.emg-hero__links)) .emg-hero__content { padding-bottom: max(10vh, 72px); }

.emg-hero .emg-hero-pill {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 28px;
	padding: 6px 18px 6px 6px;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	background: rgba(29, 29, 27, 0.45);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	color: #fff !important;
	font-size: 0.9rem;
	letter-spacing: 0.03em;
	text-decoration: none !important;
	transition: background 0.25s, border-color 0.25s;
}
.emg-hero-pill__tag {
	padding: 5px 14px;
	border-radius: 999px;
	background: #a9ad37;
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}
.emg-hero-pill__dots { display: inline-flex; gap: 4px; }
.emg-hero-pill__dots i {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #fff;
	opacity: 0.35;
	animation: emgDots 2.5s infinite;
}
.emg-hero-pill__dots i:nth-child(2) { animation-delay: 0.2s; }
.emg-hero-pill__dots i:nth-child(3) { animation-delay: 0.4s; }
.emg-hero-pill__dots i:nth-child(4) { animation-delay: 0.6s; }
.emg-hero-pill__dots i:nth-child(5) { animation-delay: 0.8s; }
@keyframes emgDots { 0%, 60%, 100% { opacity: 0.35; } 30% { opacity: 1; } }

.emg-hero-pill__arrow { transition: transform 0.25s; }
.emg-hero .emg-hero-pill:hover,
.emg-hero .emg-hero-pill:focus {
	background: rgba(169, 173, 55, 0.92);
	border-color: transparent;
}
.emg-hero .emg-hero-pill:hover .emg-hero-pill__tag { background: #1d1d1b; }
.emg-hero .emg-hero-pill:hover .emg-hero-pill__arrow { transform: translateX(4px); }

@media (max-width: 600px) {
	.emg-hero .emg-hero-pill { gap: 8px; padding-right: 14px; font-size: 0.78rem; margin-bottom: 20px; }
	.emg-hero-pill__dots { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.emg-hero-pill__dots i { animation: none; opacity: 0.8; }
}