/**
 * SVVW Header & Footer – Skin für die globalen Divi-Theme-Builder-Layouts.
 *
 * Die importierbaren Layouts (divi-library/*.json) tragen die CSS-Klassen
 * .svvw-topbar, .svvw-header und .svvw-footer. Alle Farben kommen aus den
 * CSS-Variablen (tokens.css bzw. Customizer „Vereins-Branding“) – dadurch
 * folgen Header und Footer automatisch dem Branding anderer Vereine.
 *
 * Hinweis: Wer eine Farbe stattdessen direkt im Divi Builder pflegen will,
 * entfernt einfach die jeweilige CSS-Klasse am Modul/der Section.
 */

/* ── Topbar ────────────────────────────────────────────────── */
.svvw-topbar.et_pb_section {
	background-color: var(--svvw-footer-bg) !important;
}

.svvw-topbar .et_pb_text,
.svvw-topbar .et_pb_text p {
	color: rgba(255, 255, 255, 0.85);
	font-family: var(--svvw-font-body);
	font-size: var(--svvw-font-size-sm);
}

.svvw-topbar .et_pb_social_media_follow li a.icon {
	background-color: transparent !important;
}

.svvw-topbar .et_pb_social_media_follow li a.icon::before {
	color: #ffffff;
	transition: color var(--svvw-transition-fast);
}

.svvw-topbar .et_pb_social_media_follow li a.icon:hover::before {
	color: var(--svvw-green-brand);
}

/* ── Haupt-Header ──────────────────────────────────────────── */
.svvw-header.et_pb_section {
	background-color: var(--svvw-white) !important;
	box-shadow: var(--svvw-shadow-sm);
}

.svvw-header .et_pb_menu .et-menu > li > a {
	font-family: var(--svvw-font-body);
	font-weight: var(--svvw-font-weight-medium);
	color: var(--svvw-text-primary) !important;
	transition: color var(--svvw-transition-fast);
}

.svvw-header .et_pb_menu .et-menu > li > a:hover,
.svvw-header .et_pb_menu .et-menu > li.current-menu-item > a,
.svvw-header .et_pb_menu .et-menu > li.current-menu-ancestor > a {
	color: var(--svvw-green-interactive) !important;
	opacity: 1;
}

.svvw-header .et_pb_menu .et-menu > li.current-menu-item > a {
	box-shadow: inset 0 -2px 0 var(--svvw-green-brand);
}

/* Dropdowns (Desktop) */
.svvw-header .et_pb_menu .sub-menu {
	border-top: 3px solid var(--svvw-green-brand);
	box-shadow: var(--svvw-shadow-md);
}

.svvw-header .et_pb_menu .sub-menu li a {
	color: var(--svvw-text-primary) !important;
}

.svvw-header .et_pb_menu .sub-menu li a:hover {
	color: var(--svvw-green-interactive) !important;
	background-color: var(--svvw-green-light);
	opacity: 1;
}

/* Logo */
.svvw-header .svvw-header-logo img {
	max-height: 70px;
	width: auto;
}

/* ── Footer ────────────────────────────────────────────────── */
.svvw-footer.et_pb_section {
	background-color: var(--svvw-footer-bg) !important;
}

.svvw-footer,
.svvw-footer .et_pb_text,
.svvw-footer .et_pb_text p,
.svvw-footer .et_pb_text li {
	color: var(--svvw-footer-text);
	font-family: var(--svvw-font-body);
}

.svvw-footer h1,
.svvw-footer h2,
.svvw-footer h3,
.svvw-footer h4 {
	color: var(--svvw-footer-heading);
	font-family: var(--svvw-font-heading);
	font-weight: var(--svvw-font-weight-bold);
}

.svvw-footer a {
	color: var(--svvw-footer-text);
	text-decoration: none;
	transition: color var(--svvw-transition-fast);
}

.svvw-footer a:hover,
.svvw-footer a:focus-visible {
	color: var(--svvw-green-brand);
}

.svvw-footer .et_pb_social_media_follow li a.icon {
	background-color: transparent !important;
}

.svvw-footer .et_pb_social_media_follow li a.icon::before {
	color: var(--svvw-footer-text);
	transition: color var(--svvw-transition-fast);
}

.svvw-footer .et_pb_social_media_follow li a.icon:hover::before {
	color: var(--svvw-green-brand);
}

/* Copyright-Zeile: leicht abgesetzt */
.svvw-footer-bottom.et_pb_row {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.svvw-footer-bottom .et_pb_text,
.svvw-footer-bottom .et_pb_text p {
	font-size: var(--svvw-font-size-sm);
	color: var(--svvw-footer-text);
}
