@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/barlow-400.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/barlow-500.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/barlow-600.woff2') format('woff2');}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/barlow-700.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/barlow-condensed-400.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/barlow-condensed-500.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/barlow-condensed-600.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/barlow-condensed-700.woff2') format('woff2');}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/barlow-condensed-900.woff2') format('woff2');}
@font-face{font-family:'Pridi';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/pridi-400.woff2') format('woff2');}

/* ==========================================================================
   BMF-Netzwerk – Design (Contao 5.7)
   Farben/Schriften aus dem bisherigen Elementor-Kit: Schwarz, Weiß, Grün #52CE47;
   Barlow Condensed (Headlines), Barlow (Text), Pridi (Akzent-Headline).
   Bänder = Contao-Artikel; Hooks per Artikel-ID (#start-hero …) und Klasse (.band-*).
   ========================================================================== */
:root {
    --bmf-black: #000;
    --bmf-white: #fff;
    --bmf-green: #52ce47;
    --bmf-grey: #f2f2f2;
    --bmf-line: rgba(0, 0, 0, .14);
    --bmf-font-head: 'Barlow Condensed', 'Arial Narrow', sans-serif;
    --bmf-font-text: 'Barlow', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --bmf-font-serif: 'Pridi', Georgia, serif;
    --bmf-gutter: clamp(20px, 5vw, 100px);
    --bmf-max: 1240px;
    --bmf-radius: 40px;
    --bmf-text: clamp(18px, 1.35vw + 6px, 25px);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    font: 400 var(--bmf-text)/1.5 var(--bmf-font-text);
    color: var(--bmf-black);
    background: var(--bmf-white);
    overflow-x: hidden;
}
img, svg { max-width: 100%; height: auto; }
a { color: inherit; text-decoration-color: var(--bmf-green); text-underline-offset: .18em; }
a:hover { color: var(--bmf-black); text-decoration-thickness: 2px; }
.invisible { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
:focus-visible { outline: 3px solid var(--bmf-green); outline-offset: 3px; }

h1, h2, h3, h4 {
    font-family: var(--bmf-font-head);
    font-weight: 700;
    line-height: 1.02;
    text-transform: uppercase;
    margin: 0 0 .4em;
    letter-spacing: .005em;
}
h1 { font-size: clamp(44px, 6.25vw, 90px); }
h2 { font-size: clamp(42px, 6.25vw, 90px); }
h3 { font-size: clamp(28px, 3.2vw, 45px); }
h4 { font-size: clamp(22px, 2vw, 30px); }
p { margin: 0 0 1em; }
ul, ol { margin: 0 0 1em; padding-left: 1.2em; }

/* ---- Buttons --------------------------------------------------------- */
.button, .more a, a.mehr, .widget-submit button, .submit, button[type="submit"] {
    display: inline-block;
    font: 500 clamp(21px, 1.95vw, 28px)/1 var(--bmf-font-head);
    text-transform: none;
    text-decoration: none;
    color: var(--bmf-black);
    background: var(--bmf-green);
    border: 0;
    border-radius: 999px;
    padding: .36em 1.07em .5em;
    cursor: pointer;
    transition: transform .15s ease, background-color .15s ease;
}
.button:hover, .more a:hover, a.mehr:hover, button[type="submit"]:hover { background: var(--bmf-black); color: var(--bmf-white); transform: translateY(-2px); }

/* ---- Kopf ------------------------------------------------------------ */
.bmf-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px var(--bmf-gutter);
    max-width: 1700px;
    margin: 0 auto;
}
.bmf-logo img { display: block; width: clamp(130px, 14vw, 200px); height: auto; }
.bmf-nav nav { margin: 0; }
.bmf-nav ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: clamp(14px, 2vw, 32px); }
.bmf-nav li { margin: 0; }
.bmf-nav a, .bmf-nav strong, .bmf-nav span.active {
    font: 600 clamp(19px, 1.5vw, 24px)/1 var(--bmf-font-head);
    text-decoration: none;
    color: var(--bmf-black);
    padding: .5em 0;
    border-bottom: 3px solid transparent;
    display: inline-block;
}
.bmf-nav a:hover, .bmf-nav strong.active { border-bottom-color: var(--bmf-green); }
@media (min-width: 1200px) { .bmf-nav a, .bmf-nav strong, .bmf-nav span.active { font-size: 28px; } }
/* letzter Menüpunkt (Transfermarkt) als grüner Button */
.bmf-nav li:last-child > a, .bmf-nav li:last-child > strong {
    background: var(--bmf-green);
    border: 0;
    border-radius: 999px;
    padding: .5em 1.1em .55em;
}
.bmf-nav li:last-child > a:hover { background: var(--bmf-black); color: var(--bmf-white); }

/* ---- Bänder (Artikel) -------------------------------------------------- */
main { display: block; }
/* Contao-Basis-CSS floatet #main (Spaltenlayout) – hier nicht gewünscht */
#main { float: none; width: auto; }
.bmf-footer { clear: both; }
.mod_article { position: relative; padding: clamp(48px, 7vw, 110px) var(--bmf-gutter); }
.mod_article > * { max-width: var(--bmf-max); margin-left: auto; margin-right: auto; width: 100%; }
.mod_article .rte > :last-child, .content-text > :last-child { margin-bottom: 0; }

/* Hero (Startseite): Text links, Video rechts, blasser Ball (Originalgröße) im Hintergrund */
#start-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 70px);
    align-items: center;
    max-width: none; margin: 0;
    padding: clamp(60px, 10.4vw, 150px) clamp(20px, 6.94vw, 100px) clamp(80px, 13.9vw, 200px);
    isolation: isolate;
}
#start-hero::before {
    content: ''; position: absolute; inset: 0; z-index: -1; opacity: .06; pointer-events: none;
    background: url('../img/BMF-Bildmarke.svg') no-repeat 31% 44%;
}
#start-hero > * { grid-row: 1; margin: 0; max-width: none; }
#start-hero .content-text { grid-column: 1; display: grid; align-content: center; }
#start-hero .content-text .rte { display: contents; }
#start-hero .kicker {
    order: -1; justify-self: start;
    font: 700 clamp(44px, 6.25vw, 90px)/1 var(--bmf-font-head);
    text-transform: uppercase; color: var(--bmf-white); background: var(--bmf-green);
    padding: 8px 21px 17px; margin: 0;
}
#start-hero h1 { font: 400 clamp(28px, 4.17vw, 60px)/.92 var(--bmf-font-serif); text-transform: none; margin: 20px 0 0; padding-left: 21px; }
#start-hero .content-player, #start-hero .content-image { grid-column: 2; }
#start-hero video, #start-hero .content-image img {
    display: block; width: 100%; height: 100%; min-height: min(521px, 60vw); object-fit: cover;
    border-radius: 20px; border: 3px solid #1b1b1b; background: var(--bmf-black);
}
#start-hero .content-player figure, #start-hero .content-image figure { margin: 0; }

/* Heimspiel: Stadionfoto, 75 % Schwarz-Overlay, Text ab 25 % von links, grüner Balken von der linken Kante */
#start-heimspiel {
    color: var(--bmf-white);
    min-height: 100vh; display: flex; flex-direction: column; justify-content: center;
    padding: 5% 0 5% 25%;
    background: linear-gradient(rgba(0,0,0,.75), rgba(0,0,0,.75)), url('../img/BMF-Netzwerk_Start_bg-image.jpg') center center / cover no-repeat;
}
#start-heimspiel > * { margin: 0; max-width: none; }
#start-heimspiel .content-text { width: 47%; max-width: none; position: relative; overflow: visible; }
#start-heimspiel h2 { position: relative; margin: 0 0 .5em; padding-bottom: .15em; }
#start-heimspiel h2::after { content: ''; position: absolute; left: -25vw; bottom: -.08em; width: 70vw; height: 8.8px; background: var(--bmf-green); }
#start-heimspiel p { margin-bottom: 1em; }
#start-heimspiel strong { font-family: inherit; font-weight: 400; font-size: inherit; }

/* Karten: 3 Ecken, 1 Elfer / Event-Formate */
.band-karten { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 32px); max-width: calc(var(--bmf-max) + 2 * var(--bmf-gutter)); margin: 0 auto; }
.band-karten > * { max-width: none; margin: 0; }
.band-karten > .content-text:first-child { grid-column: 1 / -1; text-align: center; }
.band-karten > .content-text:first-child h1, .band-karten > .content-text:first-child h2 { margin-bottom: .1em; }
.band-karten .untertitel { font: 700 1.4em/1.1 var(--bmf-font-head); text-transform: uppercase; margin: 0; }
.band-karten > .content-text:not(:first-child) {
    position: relative; border-radius: var(--bmf-radius); padding: clamp(22px, 2.4vw, 38px);
    background: var(--bmf-black); color: var(--bmf-white); border: 2px solid var(--bmf-black);
}
.band-karten > .content-text:nth-child(3) { background: var(--bmf-white); color: var(--bmf-black); }
.band-karten > .content-text:nth-child(4) { background: var(--bmf-green); color: var(--bmf-black); border-color: var(--bmf-green); }
.band-karten > .content-text:not(:first-child)::before {
    content: ''; display: block; width: 64px; height: 64px; border-radius: 50%; margin-bottom: 18px;
    background: var(--bmf-green) center / 62% no-repeat;
}
.band-karten > .content-text:nth-child(2)::before { background-image: url('../img/Heimspiel.svg'); }
.band-karten > .content-text:nth-child(3)::before { background-color: var(--bmf-black); background-image: url('../img/Trainingsspiel.svg'); }
.band-karten > .content-text:nth-child(4)::before { background-color: var(--bmf-black); background-image: url('../img/Auswaertsspiel.svg'); }
.band-karten .kicker { font: 500 .9em var(--bmf-font-text); text-transform: uppercase; letter-spacing: .08em; opacity: .75; margin: 0 0 .3em; }
.band-karten h3 { margin-bottom: .15em; }
.steilpaesse { list-style: none; padding: 0; margin: 1em 0; }
.steilpaesse li { padding: .5em 0; border-top: 1px solid currentColor; border-color: color-mix(in srgb, currentColor 30%, transparent); font-size: .92em; }
.steilpaesse strong { display: block; font: 600 1em var(--bmf-font-head); text-transform: uppercase; letter-spacing: .04em; }
a.mehr { font-size: 1em; padding: .4em 1em .45em; background: transparent; color: inherit; box-shadow: inset 0 0 0 2px currentColor; }
.band-karten > .content-text:nth-child(2) a.mehr:hover { background: var(--bmf-green); color: var(--bmf-black); }
/* Startseite: 3 Ecken, 1 Elfer (Karten mit Einklapp-Bereich, Deko-Icons hinter dem Titel) */
#start-ecken { position: relative; overflow: hidden; display: block; max-width: none; margin: 0; padding: clamp(80px, 13.9vw, 200px) 30px; isolation: isolate; }
#start-ecken::before, #start-ecken::after { content: ''; position: absolute; z-index: -1; opacity: .1; pointer-events: none; background-repeat: no-repeat; background-size: contain; }
#start-ecken::before { background-image: url('../img/connected-people.svg'); width: 400px; height: 400px; left: -28px; top: 65px; }
#start-ecken::after { background-image: url('../img/decentralized-network.svg'); width: 445px; height: 445px; right: -101px; top: 313px; }
#start-ecken > .content-text:first-child { max-width: var(--bmf-max); margin: 0 auto 50px; text-align: center; }
#start-ecken > .content-text:first-child h2 { margin: 0; }
#start-ecken > .content-text:first-child .untertitel { font: 400 clamp(26px, 4.17vw, 60px)/.92 var(--bmf-font-serif); text-transform: none; margin: .1em 0 0; opacity: 1; }
#start-ecken { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 50px; align-items: start; max-width: calc(var(--bmf-max) + 60px + 100px); margin: 0 auto; }
#start-ecken > .content-text:first-child { grid-column: 1 / -1; width: 100%; }
#start-ecken > .content-text:not(:first-child) {
    min-height: 305px; border-radius: 20px; padding: 50px 30px 30px; border: 0; position: relative;
    background: var(--bmf-black); color: var(--bmf-white);
}
#start-ecken > .content-text:not(:first-child)::before { display: none; }
#start-ecken > .content-text:nth-child(3) { background: var(--bmf-white); color: var(--bmf-black); border: 1px solid rgba(0,0,0,.22); box-shadow: 0 14px 40px rgba(0,0,0,.16); }
#start-ecken > .content-text:nth-child(4) { background: var(--bmf-green); color: var(--bmf-white); }
#start-ecken .kicker { font: 400 clamp(18px, 1.74vw, 25px)/1.2 var(--bmf-font-text); text-transform: none; letter-spacing: 0; opacity: 1; margin: 0 0 15px; }
#start-ecken h3.spiel { font: 700 clamp(46px, 4.5vw, 65px)/.82 var(--bmf-font-head); text-transform: uppercase; margin: 0 0 .32em; color: inherit; }
#start-ecken .untertitel { font: 700 clamp(19px, 1.74vw, 25px)/1.15 var(--bmf-font-head); text-transform: none; margin: 0; color: inherit; }
#start-ecken > .content-text:first-child .untertitel::after { display: none; }
#start-ecken .untertitel::after { content: ''; display: block; width: 20%; height: 8.8px; background: var(--bmf-green); margin: 35px 0 30px; }
#start-ecken > .content-text:nth-child(4) .untertitel::after { background: var(--bmf-black); }
#start-ecken details.steil summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
#start-ecken details.steil summary::-webkit-details-marker { display: none; }
#start-ecken details.steil summary::before { content: ''; flex: 0 0 70px; width: 70px; height: 70px; border-radius: 50%; background: var(--bmf-green) center / 62% no-repeat; }
#start-ecken > .content-text:nth-child(2) details summary::before { background-image: url('../img/Heimspiel.svg'); }
#start-ecken > .content-text:nth-child(3) details summary::before { background-color: var(--bmf-black); background-image: url('../img/Trainingsspiel.svg'); }
#start-ecken > .content-text:nth-child(4) details summary::before { background-color: var(--bmf-black); background-image: url('../img/Auswaertsspiel.svg'); }
#start-ecken details.steil summary span { display: inline-flex; align-items: center; gap: .5em; font: 500 clamp(19px, 1.74vw, 25px)/1 var(--bmf-font-head); text-transform: uppercase; }
#start-ecken details.steil summary span::before { content: ''; width: .5em; height: .5em; border: solid var(--bmf-green); border-width: 0 3px 3px 0; transform: translateY(-.12em) rotate(45deg); transition: transform .2s; }
#start-ecken > .content-text:nth-child(4) details summary span::before { border-color: var(--bmf-black); }
#start-ecken details.steil[open] summary span::before { transform: translateY(.1em) rotate(-135deg); }
#start-ecken .steilpaesse { list-style: none; margin: 0; padding: 24px 0 0; }
#start-ecken .steilpaesse li { border: 0; padding: 0 0 .8em; font-size: clamp(16px, 1.39vw, 20px); line-height: 1.45; }
#start-ecken .steilpaesse strong { display: flex; align-items: center; gap: 10px; font: 400 clamp(19px, 1.74vw, 25px)/1.2 var(--bmf-font-head); text-transform: uppercase; letter-spacing: 0; margin: 0 0 .15em; }
#start-ecken .steilpaesse strong::before { content: ''; flex: 0 0 .95em; width: .95em; height: .95em; border: 3px solid var(--bmf-green); border-radius: 50%; }
#start-ecken > .content-text:nth-child(4) .steilpaesse strong::before { border-color: var(--bmf-black); }

/* Logo-Band (Startseite): schwarz, Logos laufen langsam durch */
.band-logos { background: var(--bmf-black); padding: 80px 0; max-width: none; }
.band-logos > * { max-width: none; }
.logoband { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.logoleiste { list-style: none; margin: 0; padding: 0; display: flex; width: max-content; animation: bmf-logos 120s linear infinite; }
.logoband:hover .logoleiste { animation-play-state: paused; }
.logoleiste li { flex: 0 0 clamp(210px, 22vw, 330px); display: flex; align-items: center; justify-content: center; padding: 0 clamp(16px, 3vw, 50px); }
.logoleiste a { display: block; opacity: .9; transition: opacity .2s, transform .2s; }
.logoleiste a:hover, .logoleiste a:focus-visible { opacity: 1; transform: scale(1.06); }
.logoleiste img { display: block; height: clamp(46px, 5.2vw, 76px); width: auto; max-width: 100%; object-fit: contain; }
@keyframes bmf-logos { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .logoleiste { animation: none; flex-wrap: wrap; width: auto; justify-content: center; } .logoleiste li[aria-hidden] { display: none; } }

/* Gründe / Ablauf: schwarze Karte */
.band-gruende .content-text {
    max-width: 920px; background: var(--bmf-black); color: var(--bmf-white);
    border-radius: 60px; padding: clamp(28px, 4vw, 64px);
}
.band-gruende .kicker { font: 700 1.3em var(--bmf-font-head); text-transform: uppercase; color: var(--bmf-green); margin-bottom: .2em; }
.band-gruende h3 { color: var(--bmf-green); margin-top: 1.2em; }
/* Startseite „Über uns“: Karte mit überlappendem Foto oben rechts, Akkordeon */
#start-warum { position: relative; display: grid; grid-template-columns: minmax(0, 860px); justify-content: center; max-width: none; margin: 100px 0; padding: 360px 30px 200px; }
#start-warum > * { margin: 0; max-width: none; }
#start-warum .content-text { width: 100%; border-radius: 60px; padding: 120px 80px 80px; min-height: 179px; }
#start-warum h2.gross { font: 700 clamp(46px, 6.25vw, 90px)/.95 var(--bmf-font-head); text-transform: uppercase; color: var(--bmf-white); margin: 0 0 .35em; }
#start-warum .content-image { position: absolute; z-index: 2; top: 102px; left: calc(50% + 430px + 97px - 513px); width: 513px; height: 414px; border: 10px solid var(--bmf-white); border-radius: 40px; overflow: hidden; background: #ddd; box-shadow: 0 10px 40px rgba(0,0,0,.2); }
#start-warum .content-image figure { margin: 0; height: 100%; }
#start-warum .content-image img { display: block; width: 120%; max-width: none; height: auto; margin-left: -20%; }
#start-warum details.gruende-acc { margin: 0 0 1.2em; }
#start-warum details.gruende-acc summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; font: 400 clamp(18px, 1.74vw, 25px)/1.3 var(--bmf-font-text); padding: .3em 0; }
#start-warum details.gruende-acc summary::-webkit-details-marker { display: none; }
#start-warum details.gruende-acc summary::after { content: '+'; font: 700 1.3em/1 var(--bmf-font-text); }
#start-warum details.gruende-acc[open] summary::after { content: '\2212'; }
#start-warum .gruende { margin-top: .6em; }
#start-warum .button { background: var(--bmf-green); color: var(--bmf-black); }
@media (max-width: 1100px) {
    #start-warum { padding: 60px 20px 100px; margin: 40px 0; }
    #start-warum .content-text { padding: 36px 28px 40px; }
    #start-warum .content-image { position: static; width: min(100%, 513px); height: auto; margin: 0 0 -40px auto; }
}
.gruende, .schritte { list-style: none; padding: 0; counter-reset: g; margin: 1em 0; }
.gruende li, .schritte li { counter-increment: g; position: relative; padding: .85em 0 .85em 2.6em; border-top: 1px solid rgba(255,255,255,.22); }
.gruende li::before, .schritte li::before { content: counter(g); position: absolute; left: 0; top: .78em; font: 600 1.6em/1 var(--bmf-font-head); color: var(--bmf-green); }
.gruende strong, .schritte strong { display: block; font: 600 1.2em var(--bmf-font-head); text-transform: uppercase; }
.band-gruende a.mehr { color: var(--bmf-black); background: var(--bmf-green); box-shadow: none; }

/* ==========================================================================
   Seiten nach Original-Vorlage: Über uns, Kader, Events, Transfermarkt
   ========================================================================== */
.content-text .untertitel { font: 400 clamp(26px, 4.17vw, 60px)/.92 var(--bmf-font-serif); text-transform: none; margin: .15em 0 .45em; }
.band-text .content-text, .band-recht .content-text { max-width: 940px; }
.content-text, .content-image, .content-gallery { overflow: visible; }
.mod_article .rte p { margin-bottom: .9em; }

/* ---- Über uns ------------------------------------------------------------------------ */
#ueber-idee { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 6fr); gap: clamp(20px, 3vw, 50px); align-items: center; max-width: none; margin: 0; padding: clamp(24px, 3vw, 50px) clamp(20px, 6.94vw, 100px) clamp(24px, 3vw, 50px); background: none; }
#ueber-idee > * { margin: 0; max-width: none; grid-row: 1; }
#ueber-idee .content-text { grid-column: 1; position: relative; z-index: 2; }
#ueber-idee .content-image { grid-column: 2; }
#ueber-idee .content-image img { width: 100%; display: block; border-radius: 0; }
#ueber-idee h1 { margin: 0; }

#ueber-emotion { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 40px 100px; align-items: center; max-width: none; margin: 0; padding: clamp(40px, 6.94vw, 100px) clamp(20px, 8vw, 160px); }
#ueber-emotion > * { margin: 0; max-width: none; }
#ueber-emotion .content-text { grid-column: 1; grid-row: 1; }
#ueber-emotion .content-image { grid-column: 2; grid-row: 1; justify-self: center; align-self: center; }
#ueber-emotion .content-image img { width: clamp(100px, 12.5vw, 180px); display: block; }
#ueber-emotion h2, #ueber-spass h2 { margin-bottom: .3em; }
#ueber-emotion p:not(.untertitel), #ueber-spass p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#ueber-emotion .button, #ueber-teil .button { color: var(--bmf-white); }

#ueber-spass { background: var(--bmf-black) url('../img/Spielfeld.png') -23px 78px no-repeat; color: var(--bmf-white); display: flex; justify-content: flex-end; max-width: none; margin: 0; padding: clamp(40px, 6.94vw, 100px); overflow: hidden; }
#ueber-spass .content-text { width: min(100%, 48%); max-width: none; margin: 0 0 0 auto; }
#ueber-spass h2 { color: var(--bmf-white); }
#ueber-spass .button { color: var(--bmf-black); }

#ueber-kapitaen { max-width: none; margin: 0; padding: clamp(24px, 3.5vw, 50px) clamp(20px, 4vw, 60px) 0; }
#ueber-kapitaen .content-text { max-width: 1320px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 554px); column-gap: clamp(20px, 3vw, 60px); align-items: start; background: none; color: var(--bmf-black); border-radius: 0; padding: 0; }
#ueber-kapitaen .content-text > h2 { grid-column: 1; grid-row: 1; color: var(--bmf-black); margin: .3em 0 .35em; }
#ueber-kapitaen .content-text > .rte { grid-column: 1; grid-row: 2; padding-bottom: clamp(30px, 5vw, 80px); }
#ueber-kapitaen .content-text > .rte p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#ueber-kapitaen .content-text > figure { grid-column: 2; grid-row: 1 / span 2; align-self: end; margin: 0; }
#ueber-kapitaen .content-text > figure img { display: block; width: 100%; border-radius: 0; }

#ueber-faq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4.2vw, 60px); align-items: center; background: var(--bmf-black); color: var(--bmf-white); max-width: none; margin: 0; padding: clamp(60px, 13.9vw, 200px) clamp(20px, 6.94vw, 100px) clamp(60px, 15.3vw, 220px); }
#ueber-faq > * { margin: 0; max-width: none; }
#ueber-faq .content-image figure { margin: 0; }
#ueber-faq .content-image img { display: block; width: 100%; height: 100%; min-height: min(475px, 60vw); object-fit: cover; border-radius: 0; }
#ueber-faq h2 { color: var(--bmf-white); padding-left: 31px; }
details.faq-item { padding: .35em 0 .35em 31px; }
details.faq-item summary { list-style: none; cursor: pointer; display: flex; align-items: baseline; gap: 12px; font: 600 clamp(19px, 1.74vw, 25px)/1.25 var(--bmf-font-head); color: var(--bmf-white); }
details.faq-item summary::-webkit-details-marker { display: none; }
details.faq-item summary::before { content: '+'; font-weight: 700; flex: 0 0 .8em; }
details.faq-item[open] summary::before { content: '\2212'; }
details.faq-item summary:hover, details.faq-item[open] summary { color: var(--bmf-green); }
details.faq-item p { margin: .5em 0 .4em 1.45em; font-size: clamp(16px, 1.39vw, 20px); color: var(--bmf-white); }

#ueber-aussicht { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; background: none; max-width: none; margin: 0; padding: clamp(40px, 6.94vw, 100px) clamp(20px, 6.94vw, 100px); }
#ueber-aussicht > * { margin: 0; max-width: none; }
#ueber-aussicht .content-text { grid-column: 1; grid-row: 1; max-width: 700px; }
#ueber-aussicht .content-text p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#ueber-aussicht .content-image { grid-column: 2; grid-row: 1; justify-self: center; }
#ueber-aussicht .content-image img { width: clamp(150px, 20vw, 290px); display: block; }

#ueber-teil { text-align: center; max-width: none; margin: 0; padding: clamp(30px, 4vw, 60px) 30px clamp(70px, 10.4vw, 150px); }
#ueber-teil .content-text { margin: 0 auto; max-width: 1200px; }
#ueber-teil h2 { margin-bottom: .1em; }
#ueber-teil .untertitel { text-transform: uppercase; margin: 0 0 .5em; }

/* ---- Kader ---------------------------------------------------------------------------- */
#kader-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 60px); align-items: center; background: none; color: var(--bmf-black); text-align: left; max-width: none; margin: 0; padding: clamp(40px, 5.5vw, 80px) clamp(20px, 3.5vw, 50px) clamp(60px, 10.4vw, 150px); overflow: hidden; }
#kader-intro > * { margin: 0; max-width: none; grid-row: 1; }
#kader-intro .content-text { grid-column: 1; position: relative; padding-left: clamp(0px, .8vw, 10px); }
#kader-intro h1 { position: relative; padding-bottom: .2em; margin-bottom: .3em; }
#kader-intro h1::after { content: ''; position: absolute; left: calc(-1 * clamp(20px, 3.5vw, 50px)); bottom: 0; width: min(445px, 38vw); height: 8.8px; background: var(--bmf-green); }
#kader-intro .content-text p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#kader-intro .content-image { grid-column: 2; }
#kader-intro .content-image figure { margin: 0; }
#kader-intro .content-image img { display: block; width: 100%; height: 100%; min-height: min(475px, 60vw); object-fit: cover; border-radius: 60px; }

.band-liste { position: relative; overflow: hidden; background: var(--bmf-green); max-width: none; margin: 0; padding: clamp(60px, 10.4vw, 150px) 5%; isolation: isolate; }
.band-liste::before { content: ''; position: absolute; inset: 0; z-index: -1; background: url('../img/Mittellinie.svg') center / contain no-repeat; pointer-events: none; }
.band-liste::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: url('../img/Strafraum-oben.svg') top center / 55% auto no-repeat, url('../img/Strafraum-unten.svg') bottom center / 55% auto no-repeat; }
.band-liste .mod_newslist { max-width: 1240px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 4.2vw, 60px); }
.member-card { position: relative; display: flex; flex-direction: column; background: var(--bmf-white); border: 0; border-radius: clamp(36px, 4.2vw, 60px); padding: clamp(16px, 2.1vw, 30px); box-shadow: none; }
.member-card h2 a { text-decoration: none; color: inherit; }
.member-card h2 a::after { content: ''; position: absolute; inset: 0; }
.member-card figure a { display: block; height: 100%; }
.member-card:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(0,0,0,.18); }
.member-card figure { aspect-ratio: 3 / 2; border-radius: clamp(24px, 2.8vw, 40px); overflow: hidden; border: 1px solid rgba(0,0,0,.35); background: var(--bmf-white); }
.member-card figure img { display: block; width: 100%; height: 100%; object-fit: cover; }
.member-card__body { padding: 1em 0 0; }
.member-card h2 { font: 700 clamp(20px, 1.74vw, 25px)/1.1 var(--bmf-font-head); text-transform: uppercase; margin: 0 0 .1em; }
.member-card__slogan { font-size: clamp(16px, 1.39vw, 20px); margin: 0 0 .9em; opacity: 1; }
.member-card .more { margin: auto 0 0; padding-top: .7em; border-top: 1px solid rgba(0,0,0,.45); text-align: right; }
.member-card .more a { display: inline-flex; align-items: center; gap: .5em; background: none; padding: 0; font-size: 0; color: var(--bmf-black); pointer-events: none; }
.member-card .more a::before { content: ''; width: 1em; height: .8em; font-size: clamp(16px, 1.39vw, 20px); background: url('../img/Mehr-icon.svg') center / contain no-repeat; }
.member-card .more a::after { content: 'Mehr'; font: 400 clamp(16px, 1.39vw, 20px)/1 var(--bmf-font-text); }

#kader-cta { background: var(--bmf-black); max-width: none; margin: 0; padding: clamp(80px, 11vw, 160px) 20px 0; display: block; }
#kader-cta .content-text { position: relative; z-index: 3; max-width: 800px; margin: 0 auto -160px; background: var(--bmf-white); color: var(--bmf-black); text-align: center; border-radius: 60px; padding: 50px 50px 0; }
#kader-cta h2 { font: 400 clamp(30px, 4.17vw, 60px)/.92 var(--bmf-font-serif); text-transform: uppercase; margin: 0 0 .4em; }
#kader-cta p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#kader-cta .button { position: relative; margin-bottom: -1.1em; font-size: 25px; color: var(--bmf-black); }
#kader-cta .button:hover { color: var(--bmf-green); }
#kader-cta::after { content: ''; display: block; height: 700px; margin: 0 -20px; background: url('../img/BMF_Kader-footer.jpg') bottom center / cover no-repeat; position: relative; z-index: 1; }

/* Kader: Detail */
.mod_newsreader { max-width: 960px; }
.member-full h1 { font-size: clamp(38px, 5vw, 72px); margin-bottom: .1em; }
.member-full__slogan { font: 500 clamp(22px, 2.2vw, 32px)/1.15 var(--bmf-font-head); text-transform: uppercase; color: var(--bmf-black); margin: 0 0 1.2em; padding-left: .7em; border-left: 6px solid var(--bmf-green); }
.member-full figure { margin: 0 0 1.5em; }
.member-full img { width: 100%; max-height: 440px; object-fit: contain; background: var(--bmf-white); border: 2px solid var(--bmf-line); border-radius: 28px; display: block; }
.kontakt { list-style: none; margin: 0 0 1.6em; padding: 1em 1.2em; background: var(--bmf-black); color: var(--bmf-white); border-radius: 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: .35em 1.4em; font-size: .92em; }
.kontakt li { padding-left: 1.7em; position: relative; overflow-wrap: anywhere; }
.kontakt li::before { content: ''; position: absolute; left: 0; top: .32em; width: 1em; height: 1em; background: var(--bmf-green); border-radius: 50%; }
.kontakt a { color: var(--bmf-white); text-decoration-color: var(--bmf-green); }
.kontakt a:hover { color: var(--bmf-green); }
.mod_newsreader .back { margin: 2.4em 0 0; }
.mod_newsreader .back a, .mod_newsreader a.back { display: inline-block; font: 600 1.15em var(--bmf-font-head); text-transform: uppercase; text-decoration: none; padding: .5em 1.2em; border-radius: 999px; box-shadow: inset 0 0 0 2px var(--bmf-black); }
.mod_newsreader .back a:hover { background: var(--bmf-black); color: var(--bmf-white); }
.mod_newsreader .back a::before { content: '← '; }


/* ---- Events ----------------------------------------------------------------------------- */
.band-termine { background: url('../img/BMF_Kader-footer.jpg') center / cover no-repeat; color: var(--bmf-black); max-width: none; margin: 0; padding: clamp(60px, 7vw, 100px) clamp(14px, 3.5vw, 50px); }
.band-termine .mod_calendar { max-width: 1140px; margin: 0 auto; background: rgba(255,255,255,.76); border-radius: clamp(30px, 4.2vw, 60px); padding: clamp(16px, 2.2vw, 30px) clamp(12px, 1.6vw, 22px) clamp(18px, 2.2vw, 30px); overflow: hidden; }
table.calendar { width: 100%; margin: 0; border-collapse: separate; border-spacing: clamp(5px, .9vw, 12px); table-layout: fixed; }
table.calendar th.head.current { font: 700 clamp(30px, 6.25vw, 90px)/1.05 var(--bmf-font-head); text-transform: uppercase; text-align: center; padding: .1em 0 .35em; }
table.calendar th.head.current::before { content: 'Termine im '; }
table.calendar th.head.previous, table.calendar th.head.next { padding: 0; font-size: 0; }
table.calendar, table.calendar thead, table.calendar tbody { display: block; }
table.calendar tr { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: clamp(5px, .9vw, 12px); margin-bottom: clamp(5px, .9vw, 12px); }
table.calendar th.head.previous, table.calendar th.head.next { display: none; }
table.calendar th.head.current { display: block; grid-column: 1 / -1; }
table.calendar th, table.calendar td { min-width: 0; }
table.calendar th.label { font: 600 clamp(11px, 1.74vw, 25px)/1 var(--bmf-font-head); text-align: left; padding: 0 0 .2em .2em; }
table.calendar td { background: var(--bmf-white); border-radius: clamp(10px, 1.4vw, 20px); height: clamp(52px, 8.9vw, 128px); vertical-align: top; padding: clamp(5px, .9vw, 12px); }
table.calendar td .header { font: 600 clamp(13px, 1.74vw, 25px)/1 var(--bmf-font-head); }
table.calendar td.today .header { color: var(--bmf-green); }
table.calendar td.active { background: var(--bmf-green); }
table.calendar td.active .header { color: var(--bmf-black); }
table.calendar .event a { display: block; margin-top: .3em; font: 500 clamp(10px, 1.1vw, 16px)/1.15 var(--bmf-font-head); text-transform: uppercase; color: var(--bmf-black); text-decoration: none; overflow-wrap: anywhere; }
table.calendar .event a:hover { text-decoration: underline; }

.band-formate { background: var(--bmf-black); color: var(--bmf-white); max-width: none; margin: 0; display: block; padding: clamp(60px, 7vw, 100px) clamp(20px, 3.8vw, 55px) clamp(60px, 8vw, 120px); }
.band-formate > .content-text:first-child { max-width: 1100px; margin: 0 auto clamp(30px, 4vw, 60px); text-align: center; }
.band-formate > .content-text:first-child h1 { color: var(--bmf-white); margin: 0; }
.band-formate > .content-text:first-child .untertitel { font: 700 clamp(44px, 6.25vw, 90px)/1.02 var(--bmf-font-head); text-transform: uppercase; margin: 0; }
.band-formate .formate-spalten, .band-formate { }
.band-formate { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.band-formate > .content-text:first-child { grid-column: 1 / -1; width: 100%; }
.band-formate > .content-text:not(:first-child) { position: relative; padding: 0 clamp(16px, 2.4vw, 34px) 20px clamp(16px, 2.4vw, 34px); border-left: 1px solid rgba(255,255,255,.4); min-width: 0; }
.band-formate > .content-text:nth-child(2) { border-left: 0; padding-left: 0; }
.band-formate > .content-text:nth-child(4) { padding-right: 0; }
.band-formate > .content-text:not(:first-child)::before { content: ''; position: absolute; right: clamp(16px, 2.4vw, 34px); top: 0; width: clamp(40px, 3.6vw, 52px); height: clamp(40px, 3.6vw, 52px); background: var(--bmf-green); -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat; }
.band-formate > .content-text:nth-child(4)::before { right: 0; }
.band-formate > .content-text:nth-child(2)::before { -webkit-mask-image: url('../img/Heimspiel.svg'); mask-image: url('../img/Heimspiel.svg'); }
.band-formate > .content-text:nth-child(3)::before { -webkit-mask-image: url('../img/Trainingsspiel.svg'); mask-image: url('../img/Trainingsspiel.svg'); }
.band-formate > .content-text:nth-child(4)::before { -webkit-mask-image: url('../img/Auswaertsspiel.svg'); mask-image: url('../img/Auswaertsspiel.svg'); }
.band-formate h2 { font: 400 clamp(32px, 4.17vw, 60px)/.92 var(--bmf-font-serif); color: var(--bmf-white); margin: clamp(30px, 3.5vw, 50px) 0 .5em; }
.band-formate .untertitel { font: 700 clamp(18px, 1.74vw, 25px)/1.4 var(--bmf-font-head); text-transform: none; margin: 0 0 .9em; }
.band-formate .rte { font-size: clamp(15px, 1.39vw, 20px); line-height: 1.55; }
.band-formate .rte ol, .band-formate .rte ul { padding-left: 1.3em; margin: 0 0 1em; }
.band-formate .rte li { margin: .55em 0; }
.band-formate .rte strong { font-weight: 700; }

.band-ticket { background: linear-gradient(#000 calc(100% - clamp(150px, 14.3vw, 206px)), #fff 0); color: var(--bmf-white); text-align: center; max-width: none; margin: 0; padding: 0 20px clamp(50px, 5.5vw, 80px); }
.band-ticket > .content-text > .rte, .band-berichte > .content-text > .rte { order: -1; }
.band-ticket > .content-text { display: flex; flex-direction: column; max-width: 1340px; margin: 0 auto; }
.band-ticket hr.balken, hr.balken { order: -1; width: 100%; height: 10px; border: 0; margin: clamp(40px, 5vw, 70px) auto; background: var(--bmf-white); }
.band-ticket h2 { font: 400 clamp(26px, 4.17vw, 60px)/.95 var(--bmf-font-serif); text-transform: uppercase; color: var(--bmf-white); margin: 0 0 clamp(30px, 4vw, 60px); }
.band-ticket .mod_eventlist { max-width: 540px; margin: 0 auto; text-align: left; }
.band-ticket .mod_eventlist .header { display: none; }
.band-ticket .event { position: relative; color: var(--bmf-black); background: linear-gradient(rgba(255,255,255,.92), rgba(255,255,255,.92)), url('../img/Heimspiel_black.svg') 62% 70% / 37% auto no-repeat, var(--bmf-white); border: 0; border-radius: 20px; padding: clamp(22px, 1.95vw, 28px) 24px clamp(22px, 1.95vw, 28px) clamp(110px, 8.9vw, 128px); margin: 0; box-shadow: 0 10px 30px rgba(0,0,0,.35); min-height: clamp(200px, 19.8vw, 285px); }
.band-ticket .event::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: clamp(70px, 6.7vw, 96px); border-radius: 20px 0 0 20px; background: #000 url('../img/Barcode_white.svg') 23px 23px / 45px auto no-repeat; }
.band-ticket .event::after { content: ''; position: absolute; right: 14px; top: 14px; width: clamp(48px, 5vw, 72px); height: clamp(48px, 5vw, 72px); border-radius: 50%; background: #000 url('../img/Trainingsspiel.svg') center / 62% no-repeat; }
.band-ticket .event:hover { border: 0; }
.band-ticket .event h2 { font: 700 clamp(24px, 2.43vw, 35px)/1.1 var(--bmf-font-head); color: var(--bmf-black); margin: 0 0 .9em; text-transform: uppercase; }
.band-ticket .event h2 a { text-decoration: none; color: inherit; }
.band-ticket .event .location { position: relative; margin: 0 0 .7em; padding-left: 1.7em; font-size: clamp(14px, 1.25vw, 18px); line-height: 1.5; }
.band-ticket .event .location::before { content: ''; position: absolute; left: 0; top: .15em; width: 1em; height: 1.2em; background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 384 512%22%3E%3Cpath fill=%22%23000%22 d=%22M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z%22/%3E%3C/svg%3E") center / contain no-repeat; }
.band-ticket .event .location { background: none; color: var(--bmf-black); }
.band-ticket .event .location { font-size: clamp(16px, 1.74vw, 25px); line-height: 1.3; margin-bottom: .5em; }
.band-ticket .event { display: flex; flex-direction: column; }
.band-ticket .event h2 { order: 0; }
.band-ticket .event .location { order: 1; display: block; width: fit-content; max-width: 100%; margin: 0 0 .5em 1.7em; padding: .1em .4em; background: #000; color: #fff; }
.band-ticket .event .location::before { left: -1.7em; top: .25em; }
.band-ticket .event .time { order: 2; }
.band-ticket .event::before { bottom: -9px; }
.band-ticket .event .time { position: relative; margin: 0; padding-left: 1.7em; font: 400 clamp(16px, 1.74vw, 25px)/1.3 var(--bmf-font-text); text-transform: none; color: var(--bmf-black); }
.band-ticket .event .time::before { content: ''; position: absolute; left: 0; top: .2em; width: 1em; height: 1.1em; background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 448 512%22%3E%3Cpath fill=%22%23000%22 d=%22M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm320-196c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM192 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM64 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z%22/%3E%3C/svg%3E") center / contain no-repeat; }
.band-ticket .event .time time { background: var(--bmf-green); padding: 0 .35em; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.band-ticket .event .time time::after { content: ' Uhr'; }
.band-ticket .event .content-text, .band-ticket .event .ce_text { display: none; }

.band-berichte { max-width: none; margin: 0; padding: 0 clamp(14px, 1.4vw, 20px) clamp(60px, 8vw, 120px); }
.band-berichte > .content-text { max-width: 1200px; margin: 0 auto; display: flex; flex-direction: column; text-align: center; }
.band-berichte hr.balken { order: -1; width: 76%; background: var(--bmf-green); margin: clamp(30px, 4vw, 60px) auto clamp(40px, 6vw, 90px); }
.band-berichte h2 { margin: 0 0 clamp(24px, 3vw, 50px); }
.band-berichte .mod_newslist { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 3vw, 44px) clamp(20px, 2.8vw, 40px); max-width: none; margin: 0; }
.report { display: grid; grid-template-columns: 46% minmax(0, 1fr); grid-template-areas: "h h" "g t"; border: 0; padding: 0; margin: 0; align-items: stretch; }
.report h3 { grid-area: h; font: 700 clamp(16px, 1.74vw, 25px)/1.2 var(--bmf-font-head); text-transform: uppercase; margin: 0 0 .5em; text-align: left; }
.report > .content-text { grid-area: t; max-width: none; margin: 0; background: var(--bmf-black); color: var(--bmf-white); padding: clamp(16px, 1.7vw, 24px); font-size: clamp(14px, 1.2vw, 17px); line-height: 1.55; text-align: left; }
.report > .content-text a { color: var(--bmf-green); }
.report > .content-gallery { grid-area: g; background: var(--bmf-black); min-width: 0; overflow: hidden; }
.report .content-gallery ul { display: flex; grid-template-columns: none; gap: 0; height: 100%; margin: 0; padding: 0; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: var(--bmf-green) #000; }
.report .content-gallery li { flex: 0 0 100%; scroll-snap-align: start; min-width: 0; }
.report .content-gallery figure { height: 100%; margin: 0; }
.report .content-gallery img { width: 100%; height: 100%; min-height: 260px; aspect-ratio: auto; object-fit: cover; border-radius: 0; display: block; }

/* ---- Transfermarkt ---------------------------------------------------------------------- */
#transfer-intro { display: block; background: none; max-width: none; margin: 0; padding: clamp(40px, 6.94vw, 100px) clamp(20px, 3.8vw, 55px) 0; overflow: visible; }
#transfer-intro .content-text { max-width: 1330px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 554px); column-gap: clamp(20px, 3vw, 50px); align-items: end; }
#transfer-intro .content-text > h1 { grid-column: 1; grid-row: 1; align-self: end; margin: 0; }
#transfer-intro .content-text > .rte { grid-column: 1; grid-row: 2; align-self: start; padding-bottom: clamp(30px, 5vw, 80px); }
#transfer-intro .content-text > .rte p:not(.untertitel) { font-size: clamp(16px, 1.39vw, 20px); }
#transfer-intro .content-text > figure { grid-column: 2; grid-row: 1 / span 2; align-self: end; margin: 0; }
#transfer-intro .content-text > figure img { display: block; width: 100%; border-radius: 0; }

#transfer-warum { background: var(--bmf-black); color: var(--bmf-white); max-width: none; margin: 0; padding: clamp(50px, 5.5vw, 80px) 20px clamp(60px, 8vw, 110px); }
#transfer-warum .content-text { max-width: 1100px; margin: 0 auto; text-align: center; }
#transfer-warum h2 { color: var(--bmf-white); margin-bottom: .6em; }
.haken { list-style: none; max-width: 820px; margin: 0 auto; padding: 0; text-align: left; }
.haken li { position: relative; padding: .45em 0 .45em 2.2em; font-size: clamp(15px, 1.39vw, 20px); line-height: 1.5; }
.haken li::before { content: ''; position: absolute; left: 0; top: .75em; width: 1.2em; height: 1.2em; background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 512 512%22%3E%3Cpath fill=%22%2352ce47%22 d=%22M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z%22/%3E%3C/svg%3E") center / contain no-repeat; }

#transfer-ablauf { background: none; max-width: none; margin: 0; padding: clamp(50px, 6vw, 90px) 20px 0; }
#transfer-ablauf .content-text { max-width: 820px; margin: 0 auto; background: none; color: var(--bmf-black); border-radius: 0; padding: 0; }
#transfer-ablauf h2 { text-align: center; margin-bottom: .6em; }
#transfer-ablauf .schritte { list-style: decimal; counter-reset: none; padding-left: 1.4em; margin: 0 0 1.4em; font-size: clamp(15px, 1.39vw, 20px); }
#transfer-ablauf .schritte li { counter-increment: none; padding: 0 0 0 .3em; border: 0; margin: 0 0 .3em; }
#transfer-ablauf .schritte li::before { display: none; }
#transfer-ablauf .schritte strong { display: inline; font: 600 1em var(--bmf-font-text); text-transform: none; }
#transfer-ablauf .abschluss { text-align: center; font-size: clamp(15px, 1.39vw, 20px); }

#transfer-formular { position: relative; overflow: hidden; background: none; max-width: none; margin: 0; padding: clamp(40px, 5vw, 70px) 20px clamp(80px, 10vw, 150px); isolation: isolate; }
#transfer-formular::before, #transfer-formular::after { content: ''; position: absolute; z-index: -1; opacity: .1; pointer-events: none; background-repeat: no-repeat; background-size: contain; }
#transfer-formular::before { background-image: url('../img/connected-people.svg'); width: 420px; height: 420px; left: -40px; top: 36%; }
#transfer-formular::after { background-image: url('../img/decentralized-network.svg'); width: 470px; height: 470px; right: -90px; bottom: 6%; }
#transfer-formular .content-text { max-width: 1100px; margin: 0 auto clamp(30px, 4vw, 60px); text-align: center; }
#transfer-formular h2.serif { font: 400 clamp(28px, 4.17vw, 60px)/.95 var(--bmf-font-serif); text-transform: none; margin: 0; }
#transfer-formular .markiert { text-decoration: underline; text-decoration-color: var(--bmf-green); text-decoration-thickness: .1em; text-underline-offset: .12em; }
#transfer-formular .ce_form { max-width: 910px; margin: 0 auto; background: var(--bmf-black); color: var(--bmf-white); border-radius: clamp(30px, 4.2vw, 60px); padding: clamp(24px, 3vw, 40px) clamp(20px, 3.2vw, 46px) clamp(30px, 3.4vw, 46px); }
#transfer-formular .formbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 10px; }
#transfer-formular .widget { margin: 0; grid-column: 1 / -1; }
#transfer-formular .widget:nth-of-type(n+2):nth-of-type(-n+5) { grid-column: auto; }
#transfer-formular .widget-text label, #transfer-formular .widget-textarea label, #transfer-formular .widget-captcha label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#transfer-formular input.text, #transfer-formular textarea { width: 100%; font: 400 clamp(14px, 1.2vw, 17px)/1.3 var(--bmf-font-text); color: var(--bmf-black); background: var(--bmf-white); border: 0; border-radius: 0; padding: .6em .9em; }
#transfer-formular textarea { min-height: 7.5em; resize: vertical; }
#transfer-formular ::placeholder { color: #777; opacity: 1; }
#transfer-formular .widget-checkbox legend { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#transfer-formular .widget-checkbox fieldset { border: 0; padding: 0; margin: 0; }
#transfer-formular .widget-checkbox label { font: 400 clamp(12px, 1vw, 14px)/1.4 var(--bmf-font-text); text-transform: none; letter-spacing: 0; color: var(--bmf-white); }
#transfer-formular .widget-checkbox input { accent-color: var(--bmf-green); margin-right: .5em; }
#transfer-formular .widget-captcha { color: var(--bmf-white); font-size: clamp(13px, 1.1vw, 16px); }
#transfer-formular .widget-captcha input { width: 5em; }
#transfer-formular .widget-submit { text-align: center; margin-top: 6px; }
#transfer-formular button[type="submit"], #transfer-formular .submit { background: var(--bmf-green); color: var(--bmf-black); font-size: clamp(21px, 1.95vw, 28px); }
#transfer-formular button[type="submit"]:hover { background: var(--bmf-white); color: var(--bmf-black); }
#transfer-formular .error, #transfer-formular p.error { color: #ff8b8b; }

/* Rechtstexte */
.band-recht { padding-top: clamp(30px, 5vw, 70px); }
.band-recht h1 { font-size: clamp(38px, 5vw, 70px); }
.band-recht h2 { font-size: clamp(26px, 2.8vw, 40px); margin-top: 1.4em; }
.band-recht h3 { font-size: clamp(22px, 2vw, 28px); margin-top: 1.2em; }
.band-recht h4 { font-size: 1.1em; }
.band-recht .content-text { font-size: .85em; }
.band-recht .content-text > h1 { font-size: clamp(38px, 5vw, 70px); }

/* Footer */
.bmf-footer { background: var(--bmf-black); color: var(--bmf-white); border-bottom: 10px solid var(--bmf-green); }
.bmf-footer__inner { max-width: 1700px; margin: 0 auto; padding: clamp(36px, 4vw, 64px) var(--bmf-gutter); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: clamp(24px, 5vw, 90px); align-items: start; }
.bmf-footer__brand img { display: block; width: clamp(120px, 13.9vw, 200px); height: auto; }
@media (min-width: 981px) { .bmf-footer__inner { max-width: 1340px; column-gap: clamp(24px, 8vw, 120px); } }
.bmf-footer__brand p { font-size: .7em; margin: .8em 0 0; opacity: .8; }
.bmf-footer__label { font: 600 clamp(18px, 1.74vw, 25px)/1.1 var(--bmf-font-head); text-transform: uppercase; letter-spacing: .03em; margin: 0 0 .15em; }
.bmf-footer__line { margin: 0 0 1.1em; padding-left: 2em; position: relative; font-size: clamp(16px, 1.6vw, 23px); }
.bmf-footer__line::before { content: ''; position: absolute; left: 0; top: .02em; width: 1.35em; height: 1.35em; border-radius: 4px; background: var(--bmf-green) center / contain no-repeat; }
.bmf-footer__line--tel::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Crect width=%2224%22 height=%2224%22 rx=%224%22 fill=%22%2352ce47%22/%3E%3Csvg x=%225%22 y=%225%22 width=%2214%22 height=%2214%22 viewBox=%220 0 512 512%22%3E%3Cpath fill=%22%23000%22 d=%22M497.39 361.8l-112-48a24 24 0 0 0-28 6.9l-49.6 60.6A370.66 370.66 0 0 1 130.6 204.11l60.6-49.6a23.94 23.94 0 0 0 6.9-28l-48-112A24.16 24.16 0 0 0 122.6.61l-104 24A24 24 0 0 0 0 48c0 256.5 207.9 464 464 464a24 24 0 0 0 23.4-18.6l24-104a24.29 24.29 0 0 0-14.01-27.6z%22/%3E%3C/svg%3E%3C/svg%3E"); }
.bmf-footer__line--mail::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Crect width=%2224%22 height=%2224%22 rx=%224%22 fill=%22%2352ce47%22/%3E%3Csvg x=%225%22 y=%225%22 width=%2214%22 height=%2214%22 viewBox=%220 0 512 512%22%3E%3Cpath fill=%22%23000%22 d=%22M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z%22/%3E%3C/svg%3E%3C/svg%3E"); }
.bmf-footer a { color: inherit; text-decoration: none; }
.bmf-footer a:hover { color: var(--bmf-green); }
.bmf-footer__meta { display: grid; justify-items: end; gap: 22px; }
.bmf-social { display: flex; gap: 14px; list-style: none; margin: 0; padding: 0; }
.bmf-social a { display: block; transition: transform .15s; }
.bmf-social a:hover { transform: scale(1.12); }
.bmf-legal ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 0; flex-wrap: wrap; justify-content: flex-end; font-size: .85em; }
.bmf-legal li { padding: 0 .9em; border-left: 2px solid var(--bmf-green); }
.bmf-legal li:first-child { border-left: 0; }
.bmf-legal li:last-child { padding-right: 0; }
.bmf-legal strong, .bmf-legal a { font-weight: 400; }

/* ---- Responsiv ----------------------------------------------------------- */
@media (max-width: 1000px) {
    #start-hero, #ueber-idee { grid-template-columns: 1fr; }
    #start-hero > *, #ueber-idee > * { grid-column: 1 !important; grid-row: auto !important; }
    #start-hero .content-image { order: 2; }
    .band-karten { grid-template-columns: 1fr; }
    .band-person .content-text, #transfer-intro .content-text { grid-template-columns: 1fr; }
    .band-person .content-text > *, #transfer-intro .content-text > * { grid-column: 1 !important; grid-row: auto !important; }
    .bmf-footer__inner { grid-template-columns: 1fr; }
    .bmf-footer__meta { justify-items: start; }
    .bmf-legal ul { justify-content: flex-start; }
}
@media (max-width: 720px) {
    .bmf-header { flex-wrap: wrap; }
    .bmf-nav ul { flex-wrap: wrap; gap: 6px 14px; }
}
@media (max-width: 1000px) {
    #start-ecken { grid-template-columns: 1fr; gap: 20px; padding-top: 80px; padding-bottom: 80px; }
    #start-ecken::before, #start-ecken::after { opacity: .07; }
    #start-hero { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 800px) {
    #start-heimspiel { min-height: 0; padding: 70px 24px; }
    #start-heimspiel .content-text { width: 100%; }
    #start-heimspiel h2::after { left: -24px; width: calc(100% + 24px); }
    #start-ecken > .content-text:not(:first-child) { padding: 40px 22px 26px; }
}
@media (max-width: 1000px) {
    #ueber-idee, #ueber-emotion, #ueber-faq, #ueber-aussicht, #kader-intro { grid-template-columns: 1fr; }
    #ueber-idee > *, #ueber-emotion > *, #ueber-faq > *, #ueber-aussicht > *, #kader-intro > * { grid-column: 1 !important; grid-row: auto !important; }
    #ueber-spass { background-size: 60% auto; padding-top: 260px; } #ueber-spass .content-text { width: 100%; }
    #ueber-kapitaen .content-text, #transfer-intro .content-text { grid-template-columns: 1fr; }
    #ueber-kapitaen .content-text > *, #transfer-intro .content-text > * { grid-column: 1 !important; grid-row: auto !important; }
    .band-liste .mod_newslist, .band-berichte .mod_newslist { grid-template-columns: 1fr; }
    .band-formate { grid-template-columns: 1fr; }
    .band-formate > .content-text:not(:first-child) { border-left: 0; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.35); }
    .band-formate > .content-text:not(:first-child)::before { right: 0; top: 20px; }
    #kader-cta .content-text { padding: 36px 24px 0; }
    #transfer-formular .formbody { grid-template-columns: 1fr; }
    #transfer-formular .widget:nth-of-type(n+2):nth-of-type(-n+5) { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
    .report { grid-template-columns: 1fr; grid-template-areas: "h" "g" "t"; }
    .band-ticket .event { padding: 26px 20px 26px 112px; }
    .band-ticket .event::after { display: none; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; scroll-behavior: auto !important; } }

/* Abstaende Events (Original: Balken -> Ueberschrift ~175px, Ticket-Abstand ~55px, Berichte-Balken ~140px) */
.band-ticket hr.balken { margin: clamp(40px, 5vw, 70px) auto clamp(80px, 12vw, 175px); }
.band-ticket h2 { margin-bottom: clamp(30px, 3.8vw, 55px); }
.band-berichte hr.balken { margin: clamp(90px, 9vw, 130px) auto clamp(60px, 9.7vw, 140px); }
.band-ticket > .content-text > .rte { padding-bottom: clamp(80px, 12vw, 175px); }
.band-berichte > .content-text > .rte { padding-bottom: clamp(60px, 9.7vw, 140px); }

/* Ticket: Adresse zeilenweise hinterlegt mit Zeilenabstand wie im Original, Datum unten */
.band-ticket .event { display: block; padding-left: clamp(152px, 11.8vw, 170px); padding-bottom: clamp(64px, 6vw, 86px); }
.band-ticket .event h2 { margin-left: calc(clamp(110px, 8.9vw, 128px) - clamp(152px, 11.8vw, 170px)); }
.band-ticket .event .location { display: inline; width: auto; margin: 0; padding: .08em .4em; line-height: 1.55; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.band-ticket .event .location::before { left: -1.7em; top: .3em; }
.band-ticket .event .time { position: absolute; left: clamp(110px, 8.9vw, 128px); bottom: clamp(22px, 1.95vw, 28px); margin: 0; }

/* ---- Mitglieder-Detailseite nach Original (schwarzes Band mit Logo-Karte + Kontakt, weisser Textteil) ---- */
body:has(.member-full) #kader-intro, body:has(.member-full) #kader-cta { display: none; }
.band-liste:has(.member-full) { background: var(--bmf-white); padding: 0 clamp(20px, 3.5vw, 50px) clamp(60px, 9vw, 130px); overflow: visible; max-width: none; }
.band-liste:has(.member-full)::before, .band-liste:has(.member-full)::after { display: none; }
.band-liste:has(.member-full) .mod_newsreader { max-width: none; overflow: visible; }
.member-full { position: relative; isolation: isolate; overflow: visible; display: grid; grid-template-columns: minmax(0, 684px) minmax(0, 1fr); column-gap: clamp(30px, 4.2vw, 60px); max-width: 1300px; margin: 0 auto; padding-top: clamp(60px, 8.3vw, 120px); align-items: start; }
.member-full::before { content: ''; grid-column: 1 / -1; grid-row: 1; align-self: stretch; margin: calc(-1 * clamp(60px, 8.3vw, 120px)) 0 clamp(30px, 4.1vw, 59px); z-index: -1; background: #000; box-shadow: 0 0 0 100vmax #000; clip-path: inset(0 -100vmax); }
.member-full figure { grid-column: 1; grid-row: 1; margin: 0; }
.member-full img { width: 100%; height: auto; max-height: none; object-fit: contain; background: var(--bmf-white); border: 0; border-radius: clamp(24px, 2.8vw, 40px); box-shadow: 0 0 20px rgba(0,0,0,.3); }
.member-full__text, .member-full__text .content-text, .member-full__text .rte { display: contents; }
.member-full .kontakt { grid-column: 2; grid-row: 1; align-self: start; display: block; margin: 0; padding: 0; background: none; border-radius: 0; color: var(--bmf-white); font: 400 clamp(15px, 1.4vw, 20px)/1.35 var(--bmf-font-text); }
.member-full .kontakt li { position: relative; padding-left: 2em; margin: 0 0 .7em; }
.member-full .kontakt li::before { content: ''; position: absolute; left: 0; top: .1em; width: 1.15em; height: 1.15em; border-radius: 0; background: var(--bmf-green); -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat; }
.member-full .kontakt li.tel::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M497.39 361.8l-112-48a24 24 0 0 0-28 6.9l-49.6 60.6A370.66 370.66 0 0 1 130.6 204.11l60.6-49.6a23.94 23.94 0 0 0 6.9-28l-48-112A24.16 24.16 0 0 0 122.6.61l-104 24A24 24 0 0 0 0 48c0 256.5 207.9 464 464 464a24 24 0 0 0 23.4-18.6l24-104a24.29 24.29 0 0 0-14.01-27.6z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M497.39 361.8l-112-48a24 24 0 0 0-28 6.9l-49.6 60.6A370.66 370.66 0 0 1 130.6 204.11l60.6-49.6a23.94 23.94 0 0 0 6.9-28l-48-112A24.16 24.16 0 0 0 122.6.61l-104 24A24 24 0 0 0 0 48c0 256.5 207.9 464 464 464a24 24 0 0 0 23.4-18.6l24-104a24.29 24.29 0 0 0-14.01-27.6z'/%3E%3C/svg%3E"); }
.member-full .kontakt li.mail::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z'/%3E%3C/svg%3E"); }
.member-full .kontakt li.adresse::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z'/%3E%3C/svg%3E"); }
.member-full .kontakt li.web::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M2 12h20M12 2c3 3 4.5 6.5 4.5 10S15 19 12 22c-3-3-4.5-6.5-4.5-10S9 5 12 2z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M2 12h20M12 2c3 3 4.5 6.5 4.5 10S15 19 12 22c-3-3-4.5-6.5-4.5-10S9 5 12 2z'/%3E%3C/svg%3E"); }
.member-full .kontakt a { color: var(--bmf-white); text-decoration: none; }
.member-full__slogan { grid-column: 1 / -1; grid-row: 2; justify-self: start; margin: clamp(60px, 8.4vw, 121px) 0 0; padding: 8px; border: 0; background: #000; color: var(--bmf-white); font: 400 clamp(15px, 1.74vw, 25px)/1 var(--bmf-font-head); text-transform: uppercase; }
.member-full h1 { grid-column: 1 / -1; grid-row: 3; margin: 20px 0 clamp(40px, 4.9vw, 70px); font: 400 clamp(26px, 2.78vw, 40px)/1.35 var(--bmf-font-serif); text-transform: uppercase; color: var(--bmf-black); }
.member-full__text > :not(.kontakt):not(.rte), .member-full__text .rte > :not(.kontakt) { grid-column: 1 / -1; font: 400 clamp(16px, 1.6vw, 23px)/1.5 var(--bmf-font-text); color: var(--bmf-black); margin: 0 0 .65em; }
.member-full__text strong { font-family: var(--bmf-font-head); font-size: 1.2em; font-weight: 700; }
/* Zurueck-Link des Reader-Moduls (p.back) wie im Original: gruener Text mit Pfeil unter einer Linie */
.band-liste .mod_newsreader .back { max-width: 1300px; margin: 0 auto; padding-top: 30px; border-top: 1px solid #ccc; font: 400 clamp(18px, 1.74vw, 25px)/1 var(--bmf-font-head); }
.band-liste .mod_newsreader .back a { display: inline; padding: 0; border: 0; border-radius: 0; background: none; color: var(--bmf-green); text-decoration: none; font: inherit; text-transform: none; }
.band-liste .mod_newsreader .back a::before { content: '\2190'; margin-right: .5em; }
@media (max-width: 900px) {
    .member-full { grid-template-columns: 1fr; }
    .member-full .kontakt { grid-column: 1; grid-row: 2; margin-top: 24px; }
    .member-full__slogan { grid-row: 3; }
    .member-full h1 { grid-row: 4; }
    .member-full::before { grid-row: 1 / 3; }
}
.band-liste .mod_newsreader .back a, .band-liste .mod_newsreader .back a:hover { box-shadow: none; background: none; color: var(--bmf-green); }

/* Rechtsseiten nach Original: Spalte ab 100px, Titel 90px, Text 23px, Ueberschriften 40/32/28/24px Barlow 500 */
.band-recht { max-width: none; padding: clamp(40px, 6.94vw, 100px) clamp(20px, 6.94vw, 100px) clamp(60px, 7vw, 100px); }
.band-recht .content-text { max-width: 1240px; margin: 0; font-size: clamp(16px, 1.6vw, 23px); line-height: 1.5; }
.band-recht .content-text > h1:first-child, .band-recht > .content-text > h1:first-child { font-size: clamp(44px, 6.25vw, 90px); line-height: 1; margin: 0 0 .3em; }
.band-recht .rte h1, .band-recht .rte h2, .band-recht .rte h3, .band-recht .rte h4 { font-family: var(--bmf-font-text); font-weight: 500; text-transform: none; line-height: 1.2; margin: 8px 0 16px; }
.band-recht .rte h1 { font-size: clamp(26px, 2.78vw, 40px); }
.band-recht .rte h2 { font-size: clamp(22px, 2.2vw, 32px); }
.band-recht .rte h3 { font-size: clamp(20px, 1.95vw, 28px); }
.band-recht .rte h4 { font-size: clamp(18px, 1.67vw, 24px); }
.band-recht .rte strong { font-family: var(--bmf-font-head); font-size: 1.2em; font-weight: 700; }
