/*
 * Seiten-Chrome des Theme: Header, Navigation, Footer, Typografie und
 * generische Inhaltsseiten. Die Vereinsbausteine selbst (Match Center,
 * Spiele, Tabelle, News-Grid, …) sind im Core-Plugin gestylt (assets/css/
 * front.css), damit sie unabhängig vom aktiven Theme funktionieren.
 *
 * Ab 1.2.0 an das Startseiten-Mockup angelehnt: kräftige, groß ausgestellte
 * Headline-Schrift (Anton, wird vom Core-Plugin bzw. hier geladen), klare
 * Rot/Schwarz-Optik, aktiver Menüpunkt als rote Fläche.
 */

:root {
	--svmb-primary: #d40000;
	--svmb-dark: #0c0c0c;
	--svmb-light: #f3f2ee;
	/* Eigene Textfarbe für Header/Menüleiste (Einstellung "Header/Menü:
	   Textfarbe" unter Design & Einstellungen) – bisher war die Header-Schrift
	   fest auf Weiß gesetzt, unabhängig vom (frei wählbaren) Header-
	   Hintergrund "Schwarz/Dunkel". Wurde dieser hell gewählt, verschwand die
	   weiße Schrift (Vereinsname, Menüpunkte) komplett, weil Hintergrund und
	   Schrift dieselbe Farbe hatten. Jetzt beides unabhängig einstellbar. */
	--svmb-header-text: #fff;
	--svmb-font-display: "Anton", "Arial Narrow", Arial, sans-serif;
	/* Eigene, breitere Schrift für die Menüpunkte im Header (schmalere
	   Großbuchstaben-Optik als die normale Fließschrift, passend zur
	   kräftigen Headline-Schrift "Anton"). */
	--svmb-font-nav: "Bebas Neue", "Arial Narrow", Arial, sans-serif;
	--shell: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: Inter, Arial, sans-serif;
	color: #111;
	background: var(--svmb-light);
}
a { color: inherit; }
.shell { width: min(var(--shell), calc(100% - 40px)); margin: auto; }

/* ---------- Header ---------- */

.site-header {
	position: sticky;
	top: 0;
	z-index: 40;
	background: var(--svmb-dark);
	color: var(--svmb-header-text, #fff);
}
.topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 12px 0;
}
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--svmb-header-text, #fff); }
/* !important als zusätzliche Absicherung: das Logo darf nie größer werden
   als der Header selbst, unabhängig von der hochgeladenen Bildgröße. */
.brand img, .site-header img.custom-logo { max-height: 52px !important; width: auto !important; height: auto !important; }
.brand span { display: grid; line-height: 1; }
.brand b {
	font-family: var(--svmb-font-display);
	font-weight: 400;
	font-size: 20px;
	letter-spacing: .01em;
	text-transform: uppercase;
}
.brand small { font-weight: 800; letter-spacing: .18em; color: var(--svmb-primary); font-size: 11px; }
.topbar-right { display: flex; align-items: center; gap: 18px; }
.tagline {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	font-style: italic;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--svmb-header-text, #fff);
	opacity: .75;
	text-align: right;
	max-width: 280px;
	line-height: 1.4;
}
.socials { display: flex; gap: 8px; }
.svmb-social {
	display: inline-flex;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, .1);
	color: var(--svmb-header-text, #fff);
	text-decoration: none;
}
.svmb-social svg { width: 15px; height: 15px; fill: currentColor; }
.svmb-social:hover { background: var(--svmb-primary); }

.nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 64px;
	border-top: 1px solid rgba(255, 255, 255, .08);
}
.primary-nav ul { display: flex; list-style: none; margin: 0; padding: 0; height: 100%; }
.primary-nav li { display: flex; align-items: center; }
.primary-nav a {
	display: inline-flex;
	align-items: center;
	height: 100%;
	padding: 0 22px;
	text-decoration: none;
	color: var(--svmb-header-text, #fff);
	font-family: var(--svmb-font-nav);
	font-weight: 400;
	font-size: 19px;
	letter-spacing: .03em;
	text-transform: uppercase;
}
.primary-nav a:hover { color: var(--svmb-primary); }
/*
 * WordPress vergibt je nach Menüpunkt-Typ unterschiedliche "aktiv"-Klassen:
 * "current-menu-*" (Bindestrich) für die meisten Fälle, aber "current_page_*"
 * (Unterstrich, historisch gewachsen) speziell für Menüpunkte, die auf eine
 * normale Seite verlinken. Vorher wurden nur zwei der möglichen Klassen
 * berücksichtigt, wodurch der rote Kasten bei manchen Menüpunkten (je nachdem
 * worauf sie verlinken) nicht erschien. Jetzt werden alle von WordPress
 * vergebenen Varianten abgedeckt.
 */
.primary-nav li.current-menu-item a,
.primary-nav li.current-menu-parent a,
.primary-nav li.current-menu-ancestor a,
.primary-nav li.current_page_item a,
.primary-nav li.current_page_parent a,
.primary-nav li.current_page_ancestor a {
	background: var(--svmb-primary);
	color: #fff;
}
.menu-toggle, .search-toggle {
	background: none;
	border: 0;
	color: var(--svmb-header-text, #fff);
	font-size: 20px;
	cursor: pointer;
	line-height: 1;
}
.menu-toggle { display: none; }
/*
 * Seit WordPress 6.1 liefert der Core bei Bedarf eigene, minimale
 * "Classic Theme Styles" für Formulare/Suchfelder mit (u. a. eigene
 * Rahmen-/Hintergrundfarben) – diese können sich mit der eigenen Optik
 * hier überschneiden, je nach Ladereihenfolge. Die Regeln unten setzen
 * deshalb Rahmen/Hintergrund/Schatten an Eingabe- und Button-Element
 * bewusst explizit zurück, statt sich auf die Kaskade zu verlassen, damit
 * das Suchfeld zuverlässig in der eigenen, dunklen Optik erscheint und
 * nicht unstyled/Standard-Browser-Optik durchschlägt.
 */
.search-panel {
	max-height: 0;
	overflow: hidden;
	background: var(--svmb-dark);
	transition: max-height .2s ease;
	width: 100%;
}
.search-open .search-panel { max-height: 90px; }
.search-panel form {
	width: 100%;
	max-width: var(--shell);
	margin: 0 auto;
	padding: 20px;
	display: flex;
	gap: 10px;
	box-sizing: border-box;
}
.search-panel form label { flex: 1; display: flex; margin: 0; }
.search-panel input[type="search"] {
	flex: 1;
	width: 100%;
	padding: 12px 16px;
	margin: 0;
	border: 0;
	border-radius: 6px;
	background: #fff;
	color: #111;
	font-size: 15px;
	box-shadow: none;
	appearance: none;
}
.search-panel input[type="submit"] {
	padding: 0 22px;
	margin: 0;
	border: 0;
	border-radius: 6px;
	background: var(--svmb-primary);
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	cursor: pointer;
	box-shadow: none;
	appearance: none;
}
.search-panel input[type="submit"]:hover { background: #fff; color: var(--svmb-dark); }

/* ---------- Seiten-Banner (Einzelseiten/Archive der Vereins-Inhaltstypen) ---------- */

.svmb-page-header {
	position: relative;
	background: var(--svmb-dark);
	color: var(--svmb-header-text, #fff);
	padding: 54px 0 44px;
	overflow: hidden;
	border-bottom: 3px solid var(--svmb-primary);
}
.svmb-page-header:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, transparent 0 55%, rgba(212, 0, 0, .85) 55.2% 56%, transparent 56.2% 72%, rgba(255, 255, 255, .04) 72.2% 100%);
	mix-blend-mode: screen;
	opacity: .7;
}
.svmb-page-header .shell { position: relative; z-index: 1; }
.svmb-page-header .svmb-eyebrow { color: var(--svmb-header-text, #fff); opacity: .8; }
.svmb-page-header h1 {
	font-family: var(--svmb-font-display);
	font-weight: 400;
	text-transform: uppercase;
	font-size: clamp(32px, 5vw, 58px);
	margin: 10px 0 6px;
	line-height: 1;
}
.svmb-page-header p { margin: 0; color: var(--svmb-header-text, #fff); opacity: .75; font-size: 15px; max-width: 640px; }

/* ---------- Sections / Layout ---------- */

.section { padding: 70px 0; }
.section.dark { background: var(--svmb-dark); color: var(--svmb-header-text, #fff); }
.section.dark h2 { color: var(--svmb-header-text, #fff); }
.section.paper { background: var(--svmb-light); }
.section-head { margin-bottom: 24px; }
.section-head h2 {
	font-family: var(--svmb-font-display);
	font-weight: 400;
	text-transform: uppercase;
	font-size: clamp(28px, 4vw, 44px);
	margin: 6px 0;
}
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.three-col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.card { background: #fff; border: 1px solid #e6e4df; padding: 24px; border-radius: 10px; }
.card h3 { font-size: 18px; margin-top: 0; }
.svmb-facts { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.svmb-facts li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid #eee; font-size: 14px; }
.svmb-facts li b { color: #888; font-weight: 700; text-transform: uppercase; font-size: 11px; letter-spacing: .04em; }

/* ---------- Einzelseiten / Beiträge ---------- */

.single-content, .page-content { padding: 60px 0; }
.prose { max-width: 820px; margin: 0 auto; font-size: 17px; line-height: 1.75; }
.prose img { border-radius: 10px; }
.post-card { background: #fff; padding: 16px; border-radius: 10px; margin-bottom: 18px; box-shadow: 0 4px 18px rgba(0, 0, 0, .06); }
.post-card a { text-decoration: none; color: inherit; }
.post-card img { width: 100%; height: auto; border-radius: 8px; }

/* ---------- Footer ---------- */

.footer { background: #080808; color: #999; padding: 50px 0 22px; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 30px; padding-bottom: 30px; }
.footer-brand h3 {
	color: #fff;
	margin: 0 0 8px;
	font-family: var(--svmb-font-display);
	font-weight: 400;
	text-transform: uppercase;
	font-size: 22px;
}
.footer-brand p { font-style: italic; color: #888; font-size: 13px; margin: 0; }
.footer-menu ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.footer-menu a, .footer-legal a { color: #999; text-decoration: none; }
.footer-menu a:hover, .footer-legal a:hover { color: #fff; }
.footer-follow { text-align: right; }
.footer-follow .socials { justify-content: flex-end; margin-bottom: 10px; }
.footer-follow b { color: var(--svmb-primary); letter-spacing: .08em; font-size: 13px; }
.footer-legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 12px;
	padding-top: 18px;
	border-top: 1px solid #1c1c1c;
	font-size: 12px;
}
.footer-legal ul { list-style: none; display: flex; gap: 18px; margin: 0; padding: 0; }

/* ---------- Responsive ---------- */

@media (max-width: 850px) {
	.menu-toggle { display: block; }
	.primary-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: var(--svmb-dark); padding: 10px 20px; }
	.menu-open .primary-nav { display: block; }
	.primary-nav ul { display: grid; gap: 4px; height: auto; }
	.primary-nav li { height: auto; }
	.primary-nav a { height: auto; padding: 10px 8px; }
	.tagline { display: none; }
	.two-col, .three-col, .footer-grid { grid-template-columns: 1fr; }
	.footer-follow { text-align: left; }
	.footer-follow .socials { justify-content: flex-start; }
	.section { padding: 50px 0; }
}

/* ========================================================================
   PREMIUM THEME 2.0.0 · Header/Footer refresh passend zum 2026 Mockup
   ======================================================================== */
body{background:#f4f2ed;color:#101010}
.site-header{background:#090909;border-top:4px solid var(--svmb-primary);box-shadow:0 5px 20px rgba(0,0,0,.18)}
.topbar{min-height:76px;padding:10px 0}
.brand{gap:13px}.brand img,.site-header img.custom-logo{max-height:58px!important}.brand b{font-size:24px}.brand small{font-size:10px;letter-spacing:.25em;margin-top:4px}
.topbar-right{gap:14px}.tagline{font-family:var(--svmb-font-nav);font-size:15px;font-style:normal;letter-spacing:.05em;max-width:360px;opacity:.92}
.nav{height:58px;border-top:1px solid #1f1f1f}.primary-nav{height:100%}.primary-nav a{font-size:18px;padding:0 20px;position:relative}
.primary-nav a:hover{background:#151515;color:#fff}.primary-nav li.current-menu-item a,.primary-nav li.current-menu-parent a,.primary-nav li.current-menu-ancestor a,.primary-nav li.current_page_item a,.primary-nav li.current_page_parent a,.primary-nav li.current_page_ancestor a{background:var(--svmb-primary)}
.search-toggle{width:48px;height:48px;border-left:1px solid #232323}
.footer{position:relative;padding-top:62px;background:#060606;border-top:5px solid var(--svmb-primary)}
.footer:before{content:"";position:absolute;top:0;right:0;width:38%;height:5px;background:#fff;opacity:.14;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}
.footer-brand h3{font-size:30px}.footer-brand p{font-size:14px;max-width:420px}.footer-menu a{font-family:var(--svmb-font-nav);font-size:17px;text-transform:uppercase;letter-spacing:.04em}.footer-follow b{font-family:var(--svmb-font-display);font-size:21px;font-weight:400}
.svmb-page-header{padding:75px 0 60px}.svmb-page-header h1{font-size:clamp(44px,6vw,76px)}
@media(max-width:850px){.site-header{position:sticky}.topbar{min-height:66px}.brand b{font-size:20px}.nav{height:52px}.primary-nav{top:100%;padding:10px 20px 18px;box-shadow:0 18px 30px rgba(0,0,0,.28)}.primary-nav a{font-size:22px;padding:11px 12px}.topbar-right .socials{display:none}.footer{padding-top:45px}}

/* 2.1 – News-Archiv als klare redaktionelle Liste */
.svmb-news-archive{padding-top:46px;padding-bottom:70px}.svmb-news-archive-list{max-width:1080px;margin:0 auto}.svmb-news-row{display:grid;grid-template-columns:minmax(280px,38%) 1fr;background:#fff;border-bottom:1px solid #ddd7cf;min-height:245px}.svmb-news-row:first-child{border-top:1px solid #ddd7cf}.svmb-news-row-image{display:block;min-height:245px;background:#111;overflow:hidden}.svmb-news-row-image img{width:100%;height:100%;min-height:245px;object-fit:cover;display:block;transition:transform .35s ease}.svmb-news-row:hover .svmb-news-row-image img{transform:scale(1.025)}.svmb-news-row-placeholder{height:100%;min-height:245px;display:flex;align-items:end;padding:22px;color:rgba(255,255,255,.35);font-family:var(--svmb-font-display);font-size:28px}.svmb-news-row-content{padding:30px 34px;display:flex;flex-direction:column;justify-content:center}.svmb-news-row-content time{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--svmb-primary);font-weight:900}.svmb-news-row-content h2{margin:8px 0 12px;font-family:var(--svmb-font-display);font-weight:400;text-transform:uppercase;font-size:clamp(27px,3vw,40px);line-height:1.02}.svmb-news-row-content h2 a{color:#111;text-decoration:none}.svmb-news-row-content p{margin:0 0 18px;color:#5f5f5f;line-height:1.62;font-size:15px}.svmb-news-readmore{width:max-content;color:#111;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:.08em;border-bottom:2px solid var(--svmb-primary);padding-bottom:4px}.svmb-news-readmore span{color:var(--svmb-primary)}.svmb-news-pagination{margin-top:34px}.svmb-news-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.svmb-news-pagination .page-numbers{padding:10px 14px;background:#fff;border:1px solid #ddd7cf;color:#111;text-decoration:none}.svmb-news-pagination .current{background:#111;color:#fff;border-color:#111}@media(max-width:760px){.svmb-news-row{grid-template-columns:1fr}.svmb-news-row-image,.svmb-news-row-image img,.svmb-news-row-placeholder{min-height:210px;height:210px}.svmb-news-row-content{padding:24px 20px 28px}.svmb-news-row-content h2{font-size:30px}}

/* ========================================================================
   THEME 2.2 · Premium-Seitenleisten
   ======================================================================== */
.svmb-content-sidebar{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:start}.svmb-sidebar{display:grid;gap:18px}.svmb-sidebar.is-sticky{position:sticky;top:118px}.svmb-sidebar-widget{background:#fff;border:1px solid #e5e0d7;padding:20px;box-shadow:0 8px 26px rgba(0,0,0,.045);overflow:hidden}.svmb-sidebar-widget.widget_svmb_widget_live_match{border-top:4px solid var(--svmb-primary)}.svmb-sidebar-widget.widget_svmb_widget_member{padding:0;border:0;background:transparent}.svmb-sidebar-widget.widget_svmb_widget_social{padding:0;border:0;background:transparent}.svmb-sidebar-widget.widget_svmb_widget_partners{padding:16px}.svmb-sidebar-widget.widget_svmb_widget_sponsor_week{background:#faf9f6}.svmb-sidebar-note{font-size:12px;color:#777}.single-content.has-sidebar{max-width:1240px}.svmb-news-archive.has-sidebar{max-width:1240px}.svmb-news-archive.has-sidebar .svmb-news-archive-list{max-width:none;margin:0}.svmb-news-archive.has-sidebar .svmb-news-row{grid-template-columns:minmax(220px,36%) 1fr}.svmb-page-main{min-width:0}.svmb-team-main .two-col{grid-template-columns:1fr}.svmb-team-layout{margin-top:36px}
@media(max-width:1040px){.svmb-content-sidebar{grid-template-columns:minmax(0,1fr) 290px;gap:26px}.svmb-sidebar.is-sticky{top:105px}}
@media(max-width:850px){.svmb-content-sidebar{grid-template-columns:1fr}.svmb-sidebar{margin-top:26px}.svmb-sidebar.is-sticky{position:static}.svmb-sidebar-widget{padding:18px}.svmb-news-archive.has-sidebar .svmb-news-row{grid-template-columns:1fr}}

/* 2.3.0: aufgeräumter Mannschafts-Hub */
.svmb-team-page{padding-top:38px;padding-bottom:72px}.svmb-team-layout-full{display:block}.svmb-team-intro-card{background:#fff;border:1px solid #e7e2da;box-shadow:0 12px 34px rgba(0,0,0,.05);overflow:hidden}.svmb-team-intro-image{aspect-ratio:16/7;background:#111}.svmb-team-intro-image img{display:block;width:100%;height:100%;object-fit:cover}.svmb-team-intro-copy{padding:28px 30px}.svmb-team-intro-copy h2{font-family:var(--svmb-font-display);font-size:42px;line-height:1;margin:5px 0 18px;text-transform:uppercase;font-weight:400}.svmb-team-intro-copy .prose{margin:0;max-width:850px}.svmb-team-facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px}.svmb-team-facts-grid>div{background:#f3f1ed;border-left:4px solid var(--svmb-primary);padding:14px 16px}.svmb-team-facts-grid small{display:block;font-size:9px;font-weight:900;letter-spacing:.12em;color:#777;margin-bottom:4px}.svmb-team-facts-grid strong{font-size:13px;line-height:1.35}.svmb-team-sports{margin-top:44px}.svmb-team-sports .section-head{margin-bottom:18px}.svmb-team-sports-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px}.svmb-team-sports-tabs button{appearance:none;border:1px solid #dcd6cd;background:#f3f1ed;color:#111;padding:13px 16px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.svmb-team-sports-tabs button:hover,.svmb-team-sports-tabs button.is-active{background:#111;color:#fff;border-color:#111;box-shadow:inset 0 -4px 0 var(--svmb-primary)}.svmb-team-sports-panel{background:#fff;border:1px solid #e7e2da;padding:20px}.svmb-team-sports-panel[hidden]{display:none!important}.svmb-team-sports-panel .svmb-game-list{max-width:none}.svmb-team-sports-panel .svmb-table{overflow-x:auto}.svmb-team-roster{margin-top:48px}.svmb-team-roster .svmb-person-card{text-decoration:none;color:inherit}.svmb-team-layout .svmb-sidebar{margin-top:0}
@media(max-width:850px){.svmb-team-page{padding-top:24px}.svmb-team-intro-copy{padding:22px 20px}.svmb-team-intro-copy h2{font-size:34px}.svmb-team-facts-grid{grid-template-columns:1fr}.svmb-team-sports-tabs{grid-template-columns:1fr}.svmb-team-sports-panel{padding:14px}.svmb-team-intro-image{aspect-ratio:16/9}}

/* Mehrere Verantwortliche pro Mannschaft */
.svmb-team-contact-list{display:grid;gap:4px}.svmb-team-contact-list strong{display:block}.svmb-widget-contact-list{display:grid;gap:5px}


/* 2.3.2 – mehrere Trainingszeiten auf Mannschaftsseiten */
.svmb-team-training-list{display:grid;gap:6px;margin-top:4px}
.svmb-team-training-list strong{display:block;line-height:1.35}

/* ========================================================================
   THEME 2.3.3 · Mobile Navigation & Startseiten-Rhythmus
   ======================================================================== */
@media (max-width:850px){
  /* Das mobile Menü ist eine vollständig deckende Ebene. Hero-Bilder und
     Startseiten-Inhalte können dadurch nicht mehr durch die Navigation
     hindurchscheinen. Die Oberkante wird in theme.js exakt unter dem Header
     gesetzt, auch wenn Logo/Headerhöhe später geändert werden. */
  body.menu-open{overflow:hidden}
  body.menu-open .site-header{z-index:10000}
  .site-header .primary-nav{
    display:none;
  }
  body.menu-open .site-header .primary-nav{
    display:block;
    position:fixed;
    top:var(--svmb-mobile-menu-top,118px);
    left:0;
    right:0;
    bottom:0;
    width:100vw;
    height:auto;
    margin:0;
    padding:18px 20px 32px;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:#090909;
    color:#fff;
    z-index:10001;
    box-shadow:none;
  }
  body.menu-open .site-header .primary-nav ul{display:grid;width:min(100%,620px);height:auto;margin:0 auto;padding:0;gap:3px}
  body.menu-open .site-header .primary-nav li{display:block;width:100%;height:auto;border-bottom:1px solid rgba(255,255,255,.09)}
  body.menu-open .site-header .primary-nav a{display:flex;width:100%;height:auto;min-height:50px;padding:13px 14px;color:#fff;background:transparent;font-size:23px}
  body.menu-open .site-header .primary-nav li.current-menu-item>a,
  body.menu-open .site-header .primary-nav li.current-menu-parent>a,
  body.menu-open .site-header .primary-nav li.current-menu-ancestor>a,
  body.menu-open .site-header .primary-nav li.current_page_item>a,
  body.menu-open .site-header .primary-nav li.current_page_parent>a,
  body.menu-open .site-header .primary-nav li.current_page_ancestor>a{background:var(--svmb-primary);color:#fff}
  body.menu-open .menu-toggle{position:relative;z-index:10002}

  /* Auf der Startseite brauchen die gestapelten Bereiche auf kleinen Displays
     bewusst mehr Luft. */
  .home .svmb-home-content>.vc_row.svmb-row-paper,
  .home .svmb-home-content>.vc_row.svmb-row-white{padding-top:72px;padding-bottom:72px}
  .home .svmb-home-content>.vc_row.svmb-row-paper .wpb_column+.wpb_column,
  .home .svmb-home-content>.vc_row.svmb-row-white .wpb_column+.wpb_column{margin-top:52px}
}

/* ========================================================================
   THEME 2.3.6 · Hierarchische Premium-Navigation
   ======================================================================== */
@media (min-width:851px){
  .primary-nav{position:relative;overflow:visible}
  .primary-nav>ul.svmb-primary-menu{display:flex;align-items:stretch;height:100%;margin:0;padding:0;list-style:none}
  .primary-nav>ul.svmb-primary-menu>li{position:relative;display:flex;align-items:stretch;height:100%}
  .primary-nav>ul.svmb-primary-menu>li>a{display:flex;align-items:center;white-space:nowrap}
  .primary-nav .svmb-submenu-toggle{display:none}
  .primary-nav ul.svmb-sub-menu{
    display:none;
    position:absolute;
    z-index:1200;
    top:100%;
    left:0;
    width:260px;
    height:auto;
    margin:0;
    padding:8px 0;
    list-style:none;
    background:#0b0b0b;
    border-top:3px solid var(--svmb-primary);
    box-shadow:0 16px 36px rgba(0,0,0,.32);
  }
  .primary-nav li:hover>ul.svmb-sub-menu,
  .primary-nav li:focus-within>ul.svmb-sub-menu{display:block}
  .primary-nav ul.svmb-sub-menu li{position:relative;display:block;width:100%;height:auto;border-bottom:1px solid rgba(255,255,255,.08)}
  .primary-nav ul.svmb-sub-menu li:last-child{border-bottom:0}
  .primary-nav ul.svmb-sub-menu a{
    display:flex;
    align-items:center;
    width:100%;
    min-height:44px;
    height:auto;
    padding:10px 16px;
    font-size:17px;
    line-height:1.15;
    color:#fff;
    background:transparent;
    white-space:normal;
  }
  .primary-nav ul.svmb-sub-menu a:hover,
  .primary-nav ul.svmb-sub-menu a:focus{background:#1a1a1a;color:#fff}
  .primary-nav ul.svmb-sub-menu li.current-menu-item>a{background:var(--svmb-primary);color:#fff}
  .primary-nav ul.svmb-sub-menu ul.svmb-sub-menu{top:-8px;left:100%;border-top-width:0;border-left:3px solid var(--svmb-primary)}
  .primary-nav li.svmb-has-children>a{padding-right:34px}
  .primary-nav>ul.svmb-primary-menu>li.svmb-has-children>a:after{
    content:"";
    position:absolute;
    right:16px;
    top:50%;
    width:7px;
    height:7px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:translateY(-65%) rotate(45deg);
    opacity:.8;
  }
  .primary-nav ul.svmb-sub-menu li.svmb-has-children>a:after{
    content:"";
    margin-left:auto;
    width:7px;
    height:7px;
    border-right:2px solid currentColor;
    border-top:2px solid currentColor;
    transform:rotate(45deg);
  }
  /* Nur die oberste aktive Sektion bekommt die rote Hauptnavigation. */
  .primary-nav>ul.svmb-primary-menu>li.current-menu-item>a,
  .primary-nav>ul.svmb-primary-menu>li.current-menu-parent>a,
  .primary-nav>ul.svmb-primary-menu>li.current-menu-ancestor>a,
  .primary-nav>ul.svmb-primary-menu>li.current_page_item>a,
  .primary-nav>ul.svmb-primary-menu>li.current_page_parent>a,
  .primary-nav>ul.svmb-primary-menu>li.current_page_ancestor>a{background:var(--svmb-primary);color:#fff}
}

@media (max-width:850px){
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu{display:grid;width:min(100%,620px);height:auto;margin:0 auto;padding:0;gap:3px;list-style:none}
  body.menu-open .site-header .primary-nav li{position:relative}
  body.menu-open .site-header .primary-nav li.svmb-has-children>a{padding-right:62px}
  .primary-nav .svmb-submenu-toggle{
    display:none;
    appearance:none;
    position:absolute;
    top:4px;
    right:2px;
    width:48px;
    height:46px;
    margin:0;
    padding:0;
    border:0;
    border-left:1px solid rgba(255,255,255,.12);
    background:transparent;
    color:#fff;
    cursor:pointer;
    z-index:3;
  }
  body.menu-open .primary-nav .svmb-submenu-toggle{display:block}
  .primary-nav .svmb-submenu-toggle span{
    position:absolute;
    left:50%;
    top:50%;
    width:9px;
    height:9px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:translate(-50%,-65%) rotate(45deg);
    transition:transform .2s ease;
  }
  .primary-nav li.submenu-open>.svmb-submenu-toggle span{transform:translate(-50%,-35%) rotate(225deg)}
  body.menu-open .site-header .primary-nav ul.svmb-sub-menu{
    display:none;
    width:100%;
    height:auto;
    margin:0;
    padding:4px 0 8px 16px;
    list-style:none;
    background:#111;
    border-left:3px solid var(--svmb-primary);
  }
  body.menu-open .site-header .primary-nav li.submenu-open>ul.svmb-sub-menu{display:block}
  body.menu-open .site-header .primary-nav ul.svmb-sub-menu li{border-bottom:1px solid rgba(255,255,255,.06)}
  body.menu-open .site-header .primary-nav ul.svmb-sub-menu a{min-height:44px;padding:10px 12px;font-size:19px;background:transparent;color:#e9e9e9}
  body.menu-open .site-header .primary-nav ul.svmb-sub-menu li.current-menu-item>a{background:rgba(213,0,0,.20);color:#fff;box-shadow:inset 3px 0 0 var(--svmb-primary)}
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current-menu-item>a,
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current-menu-parent>a,
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current-menu-ancestor>a,
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current_page_item>a,
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current_page_parent>a,
  body.menu-open .site-header .primary-nav>ul.svmb-primary-menu>li.current_page_ancestor>a{background:var(--svmb-primary);color:#fff}
}

/* 2.3.7 – Hauptbereich auf CPT-Einzelseiten dauerhaft rot markieren. */
.primary-nav>ul.svmb-primary-menu>li.svmb-section-current>a{
  background:var(--svmb-primary)!important;
  color:#fff!important;
}

/* 2.4.0 – Kader & Spieler-Saisonstatistik */
.svmb-roster-18 .section-head p{margin:7px 0 0;color:#777;font-size:14px}.svmb-player-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.svmb-player-profile{background:#fff;border:1px solid #e5dfd7;box-shadow:0 12px 34px rgba(0,0,0,.05);overflow:hidden}.svmb-player-profile summary{display:block;cursor:pointer;list-style:none}.svmb-player-profile summary::-webkit-details-marker{display:none}.svmb-player-photo{aspect-ratio:4/5;background:linear-gradient(145deg,#111,#292929);overflow:hidden;display:grid;place-items:center}.svmb-player-photo img{width:100%;height:100%;object-fit:cover;display:block}.svmb-player-photo>span{font-family:var(--svmb-font-display);font-size:64px;color:#fff;opacity:.18}.svmb-player-head{min-height:102px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:4px solid var(--svmb-primary)}.svmb-player-head h3{margin:3px 0 4px;font-size:20px;line-height:1.1}.svmb-player-head p{margin:0;color:#777;font-size:13px}.svmb-player-number{font-weight:950;color:var(--svmb-primary);font-size:12px;letter-spacing:.08em}.svmb-player-open{width:34px;height:34px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:700;flex:0 0 auto;transition:.2s}.svmb-player-profile[open] .svmb-player-open{transform:rotate(45deg);background:var(--svmb-primary)}.svmb-player-details{padding:0 20px 20px;border-top:1px solid #eee}.svmb-player-statgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:16px}.svmb-player-statgrid>div{background:#f3f1ed;padding:12px 8px;text-align:center}.svmb-player-statgrid b{display:block;color:#111;font-size:24px;line-height:1}.svmb-player-statgrid span{display:block;margin-top:6px;font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#777}.svmb-player-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.svmb-player-meta>span{border:1px solid #e8e2da;padding:11px 12px}.svmb-player-meta small{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:#999}.svmb-player-meta strong{font-size:13px}.svmb-staff-block{margin-top:34px}.svmb-staff-block>h3{font-family:var(--svmb-font-display);font-size:28px;text-transform:uppercase}.svmb-staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.svmb-staff-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e5dfd7;padding:10px}.svmb-staff-card img{width:58px;height:58px;object-fit:cover}.svmb-staff-card strong,.svmb-staff-card span{display:block}.svmb-staff-card span{font-size:12px;color:#777;margin-top:3px}.svmb-person-season-stats{margin-top:20px}.svmb-person-season-stats h3{margin:0 0 10px}
@media(max-width:980px){.svmb-player-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svmb-staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.svmb-player-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.svmb-player-head{min-height:88px;padding:13px 12px}.svmb-player-head h3{font-size:16px}.svmb-player-open{width:28px;height:28px;font-size:18px}.svmb-player-details{padding:0 10px 12px}.svmb-player-statgrid{gap:4px}.svmb-player-statgrid>div{padding:10px 4px}.svmb-player-statgrid b{font-size:20px}.svmb-player-statgrid span{font-size:7px}.svmb-player-meta{grid-template-columns:1fr}.svmb-staff-grid{grid-template-columns:1fr}.svmb-player-photo>span{font-size:44px}}

/* 2.4.2 – News-Karten mit identischer Höhe + einfache Beitragsgalerie */
@media(min-width:851px){
  .svmb-news-archive .svmb-news-row{height:310px;min-height:310px;max-height:310px;overflow:hidden}
  .svmb-news-archive .svmb-news-row-image{height:310px;min-height:310px}
  .svmb-news-archive .svmb-news-row-image img{width:100%;height:310px;min-height:310px;object-fit:cover;object-position:center;display:block}
  .svmb-news-archive .svmb-news-row-placeholder{height:310px;min-height:310px}
  .svmb-news-archive .svmb-news-row-content{height:310px;box-sizing:border-box;overflow:hidden}
  .svmb-news-archive .svmb-news-row-content h2{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .svmb-news-archive .svmb-news-row-content p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}
.svmb-article-gallery{margin-top:48px;padding-top:32px;border-top:1px solid #ddd7cf}.svmb-article-gallery-head{margin-bottom:20px}.svmb-article-gallery-head span{display:block;color:var(--svmb-primary);font-size:11px;font-weight:900;letter-spacing:.12em}.svmb-article-gallery-head h2{margin:4px 0 0;font-family:var(--svmb-font-display);font-size:42px;line-height:1;text-transform:uppercase;font-weight:400}.svmb-article-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.svmb-article-gallery-item{display:block;aspect-ratio:4/3;overflow:hidden;background:#111}.svmb-article-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.svmb-article-gallery-item:hover img{transform:scale(1.035)}
@media(max-width:850px){.svmb-news-archive .svmb-news-row{height:auto;max-height:none}.svmb-article-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svmb-article-gallery-head h2{font-size:34px}}
@media(max-width:520px){.svmb-article-gallery-grid{grid-template-columns:1fr 1fr;gap:6px}}


/* 2.4.4 – globaler Zurück-Link unterhalb der Hauptnavigation */
.svmb-backbar{background:#f5f3ef;border-bottom:1px solid #e3ded6}
.svmb-backbar .shell{min-height:48px;display:flex;align-items:center}
.svmb-backlink{display:inline-flex;align-items:center;gap:8px;padding:8px 0;color:#242424;text-decoration:none;font-size:13px;font-weight:900;letter-spacing:.035em;text-transform:uppercase;transition:color .18s ease,transform .18s ease}
.svmb-backlink-arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#111;color:#fff;font-size:18px;line-height:1;transition:background .18s ease,transform .18s ease}
.svmb-backlink:hover,.svmb-backlink:focus-visible{color:var(--svmb-primary)}
.svmb-backlink:hover .svmb-backlink-arrow,.svmb-backlink:focus-visible .svmb-backlink-arrow{background:var(--svmb-primary);transform:translateX(-2px)}
.svmb-backlink:focus-visible{outline:2px solid var(--svmb-primary);outline-offset:4px}
@media(max-width:850px){.svmb-backbar .shell{min-height:44px}.svmb-backlink{font-size:12px}.svmb-backlink-arrow{width:26px;height:26px}}
