@charset "UTF-8";
/***!  /templates/cassiopeia_cassiopeia_brk/brk.css?232b7b  !***/

@font-face {src: url(https://portal.bund-ruhr-karneval.com/templates/cassiopeia_cassiopeia_brk/fonts/outfit.woff2) format('woff2'); font-family: 'Outfit'; font-style: normal; font-weight: 100 900; font-display: swap}
@font-face {src: url(https://portal.bund-ruhr-karneval.com/templates/cassiopeia_cassiopeia_brk/fonts/inter.woff2) format('woff2'); font-family: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap}
:root {
  --brk-green: #009036;
  --brk-green-dark: #006128;
  --brk-red: #E2001A;
  --brk-red-dark: #A3000F;
  --brk-gold: #CDAA18;
  --brk-gold-text: #8A7110;
  --brk-ink: #333333;
  --brk-surface: #f7f6f1;
  --brk-link: #007C34;
  --brk-radius: 12px;
  --brk-radius-pill: 24px;
  --brk-border: 0.5px solid rgba(0,0,0,.12);
  --brk-shadow: 0 2px 12px rgba(0,0,0,.10);
  --brk-font-head: 'Outfit', system-ui, sans-serif;
  --brk-font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --brk-font: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* Base */
body { font-family: var(--brk-font-body) !important; color: var(--brk-ink); background: #fff; margin: 0; }
h1, h2, h3, h4, h5, h6, .navbar-brand, nav, .brk-eyebrow { font-family: var(--brk-font-head); font-weight: 600; }
html, body { overflow-x: hidden; }
a { color: var(--brk-link); }
a:hover { color: var(--brk-green-dark); }

/* NRW Ribbon */
.brk-ribbon { height: 6px; background: linear-gradient(90deg, var(--brk-green) 0%, #ffffff 50%, var(--brk-red) 100%); width: 100%; }

/* Layout grid */
.site-grid { display: grid; grid-template-columns: 1fr; max-width: 1200px; margin: 0 auto; padding: 0 16px; box-sizing: border-box; }
.container-component { min-width: 0; }

/* Header */
.container-header.full-width { background: var(--brk-green); color: #fff; width: 100%; }
.container-header .grid-child { max-width: 1200px; margin: 0 auto; padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.brand-logo { text-decoration: none; display: flex; align-items: center; gap: 10px; }
.brand-logo img { height: 52px; width: auto; }
.site-title { color: #fff; font-size: 1.3rem; font-weight: 700; }

/* Navigation */
.mod-menu, .nav-item { list-style: none; margin: 0; padding: 0; }
.mod-menu { display: flex; flex-wrap: wrap; gap: 4px; }
.mod-menu .nav-link, .mod-menu a { color: #fff !important; text-decoration: none; padding: 6px 12px; border-radius: var(--brk-radius-pill); font-size: .9rem; transition: background .15s; }
.mod-menu .nav-link:hover, .mod-menu a:hover, .mod-menu .active > .nav-link, .mod-menu .current > a { background: rgba(255,255,255,.2); }

/* Hamburger (mobile) */
.brk-hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 8px; }
.brk-hamburger span { display: block; width: 24px; height: 2px; background: #fff; border-radius: 2px; }
@media (max-width: 991px) {
  .brk-hamburger { display: flex; }
  .mod-menu { display: none; flex-direction: column; width: 100%; background: var(--brk-green-dark); border-radius: var(--brk-radius); padding: 8px; }
  .mod-menu.is-open { display: flex; }
  .container-header .grid-child { flex-wrap: wrap; }
}

/* Content area */
.container-component { padding: 24px 0; }
h1, h2 { color: var(--brk-ink); }
.page-header h1, .page-header h2 { color: var(--brk-green); }

/* Cards */
.card { border: var(--brk-border); border-radius: var(--brk-radius); box-shadow: var(--brk-shadow); overflow: hidden; }
.card-body { padding: 16px; }
.card-title { color: var(--brk-green); }

/* Buttons */
.btn-primary, .readmore a, a.readmore { display: inline-block; background: var(--brk-green); color: #fff !important; padding: 8px 20px; border-radius: var(--brk-radius-pill); text-decoration: none; font-weight: 600; border: none; cursor: pointer; transition: background .15s; }
.btn-primary:hover, .readmore a:hover, a.readmore:hover { background: var(--brk-green-dark); color: #fff !important; }
.btn-secondary { background: var(--brk-gold); color: var(--brk-ink) !important; }
.btn-secondary:hover { background: #b8960f; }

/* Blog / News */
.items-leading .item, .items-row .item { margin-bottom: 24px; padding-bottom: 24px; border-bottom: var(--brk-border); }
hr#system-readmore { display: none; }
.blog-featured h2 a, .blog h2 a { color: var(--brk-green); text-decoration: none; }
.blog-featured h2 a:hover, .blog h2 a:hover { color: var(--brk-green-dark); }

/* Pagination */
.pagination { display: flex; flex-wrap: wrap; gap: 4px; list-style: none; padding: 16px 0; margin: 0; }
.pagination .page-item .page-link { display: inline-block; padding: 6px 12px; border: var(--brk-border); border-radius: var(--brk-radius-pill); color: var(--brk-link); text-decoration: none; }
.pagination .page-item.active .page-link { background: var(--brk-green); color: #fff; border-color: var(--brk-green); }
.pagination .page-item .page-link:hover { background: var(--brk-surface); }

/* Sidebar (H2 / Variante B: volle Breite unter Inhalt) */
.container-sidebar-right { padding: 8px 0 24px; min-width: 0; max-width: none; margin-top: 8px; }
@media (min-width: 768px) {
  .container-sidebar-right { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; align-items: start; }
}
.itemid-146 .container-sidebar-right { display: none !important; }

/* Footer */
.container-footer.full-width { background: var(--brk-ink); color: #ccc; width: 100%; margin-top: 32px; }
.container-footer .grid-child { max-width: 1200px; margin: 0 auto; padding: 24px 16px; font-size: .85rem; }
.container-footer a { color: #ddd; }
.container-footer a:hover { color: #fff; }

/* jDownloads */
.jd_file_over_box { border: var(--brk-border); border-radius: var(--brk-radius); padding: 16px; margin-bottom: 12px; }
.jd_header_box, .jd_category_header_box { background: var(--brk-green); color: #fff; padding: 10px 16px; border-radius: var(--brk-radius) var(--brk-radius) 0 0; }
.jd_download_button_box a { background: var(--brk-green); color: #fff; padding: 8px 16px; border-radius: var(--brk-radius-pill); text-decoration: none; }
.jd_powered_by { display: none; }

/* Responsive tables */
@media (max-width: 768px) {
  table { width: 100%; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .container-sidebar-right { min-width: 100%; max-width: 100%; padding: 16px 0 0; }
}

/* HERO (mod-custom104) */
#mod-custom104 { background: linear-gradient(135deg, var(--brk-green) 0%, var(--brk-green-dark) 100%); color: #fff; padding: 36px 32px 40px; border-radius: var(--brk-radius); margin-bottom: 28px; position: relative; overflow: hidden; }
#mod-custom104::before { content: ''; position: absolute; top: -40px; right: -40px; width: 180px; height: 180px; background: rgba(205,170,24,.18); border-radius: 50%; }
#mod-custom104 h1, #mod-custom104 .brk-h1 { color: #fff !important; font-size: clamp(1.6rem, 4vw, 2.4rem); font-weight: 700; margin: 0 0 12px; text-shadow: 0 1px 3px rgba(0,0,0,.2); }
#mod-custom104 p { color: rgba(255,255,255,.92); font-size: 1.05rem; margin: 0 0 20px; max-width: 55ch; }

/* Nav-Dropdown */
#brk-nav .mod-menu__sub { position: absolute; top: 100%; left: 0; min-width: 220px; background: var(--brk-green-dark); border-radius: 0 0 var(--brk-radius) var(--brk-radius); box-shadow: var(--brk-shadow); display: none; z-index: 999; padding: 6px 0; list-style: none; margin: 0; }
#brk-nav .nav-item.deeper { position: relative; }
#brk-nav .nav-item.deeper:hover > .mod-menu__sub, #brk-nav .nav-item.deeper:focus-within > .mod-menu__sub { display: block; }
#brk-nav .mod-menu__sub .nav-item a { display: block; padding: 8px 16px; color: rgba(255,255,255,.9) !important; white-space: nowrap; font-size: .88rem; text-decoration: none; }
#brk-nav .mod-menu__sub .nav-item a:hover { background: rgba(255,255,255,.15); }
@media (max-width: 991px) {
  #brk-nav .mod-menu__sub { position: static; display: block; box-shadow: none; background: rgba(0,0,0,.15); border-radius: var(--brk-radius); margin: 4px 0 4px 12px; }
}

/* Praesidium / Avatar (Modul 150) */
.brk-president-wrap { overflow: hidden; }
.brk-president-photo img, .brk-person-photo img { border-radius: 50%; object-fit: cover; }
.brk-ehrenpraesident { border-top: 3px solid var(--brk-gold); padding-top: 24px; margin-top: 32px; }

/* Prinzenpaare Filter (mobil einklappbar) */
#brk-pp-filter-toggle { display: none; width: 100%; background: var(--brk-green); color: #fff; border: none; border-radius: var(--brk-radius-pill); padding: 10px 20px; font-size: 1rem; cursor: pointer; margin-bottom: 12px; }
@media (max-width: 768px) {
  #brk-pp-filter-toggle { display: block; }
  #brk-pp-filter-form { display: none; }
  #brk-pp-filter-form.is-open { display: block; }
}

/* aero.png 404 unterdruecken */
[style*="aero.png"] { background-image: none !important; }
/* Schema/JSON-LD Modul unsichtbar */
#mod-custom148 { display: none !important; }
/* Readmore-Trenner */
hr#system-readmore, .readmore-sep { display: none !important; }
/* Weiterlesen-Links gruen */
.items-more a, .read-more a, a.btn.btn-secondary.btn-sm { background: var(--brk-green) !important; color: #fff !important; border-color: var(--brk-green) !important; border-radius: var(--brk-radius-pill); padding: 6px 16px; text-decoration: none; }

/* Breadcrumbs (H1-Fix: keine Nummernliste) */
.mod-breadcrumbs, nav[aria-label="breadcrumb"], .breadcrumb { background: transparent; margin: 0; padding: 6px 0; font-size: .85rem; }
ol.breadcrumb, ul.breadcrumb, .breadcrumb { list-style: none !important; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding-left: 0; }
.breadcrumb li, .breadcrumb-item { display: inline-flex; align-items: center; }
.breadcrumb-item + .breadcrumb-item::before, .breadcrumb li + li::before { content: "›"; color: var(--brk-green); margin-right: 6px; font-weight: 700; }
.breadcrumb a, .breadcrumb-item a { color: var(--brk-link); text-decoration: none; }
.breadcrumb a:hover { color: var(--brk-green-dark); }
.breadcrumb .active, .breadcrumb-item.active, .breadcrumb [aria-current] { color: #888; }

/* BRK-KLASSEN (Modul 104 Hero-System) */
.brk-eyebrow { font-size: .8rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; color: var(--brk-gold); margin-bottom: 8px; }
.brk-nrwband { height: 4px; width: 60px; background: linear-gradient(90deg, var(--brk-green) 0%, #ffffff 50%, var(--brk-red) 100%); border-radius: 2px; margin-bottom: 16px; }
.brk-btn { display: inline-block; padding: 10px 24px; border-radius: var(--brk-radius-pill); font-weight: 700; font-size: .95rem; text-decoration: none !important; cursor: pointer; border: none; transition: background .15s, transform .1s; margin: 4px 6px 4px 0; }
.brk-btn:hover { transform: translateY(-1px); }
.brk-btn--primary { background: #fff; color: var(--brk-green) !important; }
.brk-btn--primary:hover { background: rgba(255,255,255,.9); }
.brk-btn--gold { background: var(--brk-gold); color: #000 !important; }
.brk-btn--gold:hover { background: #b8960f; }
.brk-btn--green { background: var(--brk-green); color: #fff !important; }
.brk-btn--green:hover { background: var(--brk-green-dark); }
.brk-card { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.3); border-radius: var(--brk-radius); padding: 18px 20px; backdrop-filter: blur(6px); color: #fff; }
.container-component .brk-card, main .brk-card:not(#mod-custom104 .brk-card) { background: #fff; border: var(--brk-border); box-shadow: var(--brk-shadow); color: var(--brk-ink); }
#mod-custom104 .brk-stats { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 16px; }
#mod-custom104 .brk-stats strong { display: block; font-size: 1.4rem; font-weight: 800; color: var(--brk-gold); }
#mod-custom104 .brk-stats span { font-size: .78rem; color: rgba(255,255,255,.8); text-transform: uppercase; letter-spacing: .06em; }
#mod-custom104 img { max-width: 100%; border-radius: var(--brk-radius); box-shadow: 0 8px 32px rgba(0,0,0,.25); }
.com-content-category-blog .items-leading .item, .com-content-category-blog .items-row .item { background: #fff; border: var(--brk-border); border-radius: var(--brk-radius); box-shadow: var(--brk-shadow); padding: 20px 24px; margin-bottom: 20px; }
.com-content-category-blog h2 a, .com-content-category-blog h2 { color: var(--brk-green); }
.com-content-category-blog h2 a:hover { color: var(--brk-green-dark); }
.com-content-category-blog .article-info { color: #888; font-size: .82rem; }
@media (max-width: 767px) {
  #mod-custom104 { padding: 24px 20px 28px; }
  #mod-custom104 .col-md-5 { margin-top: 20px; }
  .brk-btn { padding: 9px 18px; font-size: .88rem; }
}

/* OVERRIDES — mod161-Konflikte */
#mod-custom104 .brk-btn--primary, #mod-custom104 a.brk-btn--primary { background: rgba(255,255,255,.95) !important; color: var(--brk-green-dark) !important; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
#mod-custom104 .brk-btn--primary:hover, #mod-custom104 a.brk-btn--primary:hover { background: #fff !important; color: var(--brk-green-dark) !important; }
#mod-custom104 .brk-card { background: rgba(255,255,255,.12) !important; border: 1px solid rgba(255,255,255,.35) !important; color: #fff !important; box-shadow: none; }
#mod-custom104 .brk-stats, #mod-custom104 [class*="stat"] { display: flex; gap: 24px; flex-wrap: wrap; margin-top: 20px; }
#mod-custom104 .brk-stats strong { color: var(--brk-gold); font-size: 1.5rem; display: block; }
.com-content-category-blog .items-leading > div, .com-content-category-blog .items-row > div { background: #fff; border: var(--brk-border); border-radius: var(--brk-radius); box-shadow: var(--brk-shadow); padding: 20px 24px; margin-bottom: 20px; }

/* M1 — Hero-Kontraste (Inline-Styles in Modul 104 ueberschreiben) */
#mod-custom104 div[style*="brk-surface"] { color: var(--brk-ink) !important; }
#mod-custom104 div[style*="brk-surface"] strong, #mod-custom104 div[style*="brk-surface"] b { color: var(--brk-green-dark) !important; }
#mod-custom104 .brk-card div[style*="gold-text"], #mod-custom104 .brk-card [style*="gold-text"] { color: #ffe08a !important; }
#mod-custom104 .brk-card strong { color: #fff !important; }
#mod-custom104 .brk-card small { color: rgba(255,255,255,.92) !important; }

/* FOOTER-LESBARKEIT: heller Text auf dunklem Footer (überschreibt Modul-149-Inline-Dunkel) */
.container-footer, .container-footer .grid-child, .container-footer p, .container-footer span, .container-footer li, .container-footer div { color: #ededed !important; }
.container-footer a { color: #ffffff !important; font-weight: 600; text-decoration: none; }
.container-footer a:hover { color: var(--brk-gold) !important; text-decoration: underline; }


/* ===========================================================
   Nachtraege 2026-06-16 (User-Feedback)
   =========================================================== */
/* 1) Doppelter Seitentitel: die modul-eigene H2 (.brk-head-title) dupliziert
   die Joomla-.page-header-H1 auf Vereine & Prinzenpaare. Modul-H2 ausblenden,
   Untertitel (.brk-head-sub) bleibt als Lead-in stehen. */
#brk-vereine .brk-head-title,
#brk-pp .brk-head-title { display: none !important; }

/* 2) Volle Breite ohne Sidebar (Praesidium u.a.): die innere Content-Row
   <div class="site-grid"> ist ein Grid-Item von <body> und schrumpft durch
   das geerbte margin:0 auto auf Inhaltsbreite (Praesidium-Board kollabierte
   auf 571px). width:100% zwingt sie auf die volle Body-Spalte. */
.site-grid .site-grid { width: 100%; margin-left: 0; margin-right: 0; }

/* 3) Prinzenpaare-Filter: nicht verfuegbare Chips DIMMEN statt ausblenden
   (Kaskaden-Add-on-Modul toggelt .chip-unavailable). */
#brk-pp .chip.chip-unavailable {
  opacity: .3 !important;
  filter: grayscale(.4);
  pointer-events: none;
  cursor: default;
}

/* Artikel-Info-Block (dl.article-info): nur dezentes Datum, Rest weg
   (User-Wunsch 2026-06-16). Praefix "Veroeffentlicht:" via Sprach-Override entfernt. */
dl.article-info > dt.article-info-term,
dl.article-info dd.createdby,
dl.article-info dd.category-name,
dl.article-info dd.hits { display: none !important; }
dl.article-info { margin: 0 0 1rem; padding: 0; font-size: .8rem; line-height: 1.4; }
dl.article-info dd.published { margin: 0; color: #777; font-weight: 400; }
dl.article-info dd.published .icon-calendar { display: none; }

/* ===========================================================
   Audit-Quick-Wins 2026-06-16 (Kontrast/UX)
   =========================================================== */
/* Flickr-Consent-Bar: Gold #CDAA18 auf Weiss (CR 2,24) unlesbar
   -> dunkles Marken-Gold (Hausregel: Gold nie hell auf Weiss). */
#flickr-bar strong { color: var(--brk-gold-text, #8A7110) !important; }
.flickr-ph:hover { color: #007C34 !important; }

/* GA-Consent-Banner (#brk-consent) verdeckte mobil Inhalt -> kompakter */
@media (max-width: 600px) {
  #brk-consent { padding: 8px 12px !important; font-size: 12px !important; gap: 8px !important; line-height: 1.35 !important; }
  #brk-consent p { margin: 0 !important; }
}

/* Blog-Liste-H1 (News, Itemid 105): Modul-H1 nur auf der Listenansicht.
   Auf Artikel-Einzelansicht (Titel ist dort H1) per :has() ausblenden. */
body:has(.com-content-article) .brk-blog-h1 { display: none !important; }
.brk-blog-h1 { margin: 0 0 .4em; }

/* === Aktiver Menüpunkt: Gold-Unterstrich === */
.mod-menu .active > a, .mod-menu .current > a {
  border-bottom: 2px solid #CDAA18;
  font-weight: 600;
}

/* === Roster-Grid: letzte unvollständige Reihe zentrieren === */
.roster-grid { justify-content: center; }

/* ===== BRK-AUDIT-2026-06-16B — Fixes ===== */
@media (max-width: 767.98px) {
  body.site-grid,
  body.site-grid > .site-grid,
  body.site-grid .site-grid{
    display: block !important;
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
dl.article-info > dt.article-info-term,
dl.article-info > dd.createdby,
dl.article-info > dd.category-name,
dl.article-info > dd.hits,
dl.article-info > dd.modified,
dl.article-info > dd.create{ display: none !important; }


/* BRK-AUDIT-2026-06-16B-MENU: 404 weg — Allrounder-Menü-Sprites direkt auf den Menü-Elementen blanken */
ul.mod-menu,
ul.mod-menu li,
ul.mod-menu a,
ul.mod-menu a:hover,
ul.mod-menu .mod-menu__sub,
.container-nav ul.mod-menu a{ background-image: none !important; }


/* ===== BRK-AUDIT-P1-LAYOUT: Cassiopeia-Child Layout (Grid->Block + horizontale Nav) ===== */
/* Grid komplett auf Block: Header/Nav/Content/Footer stapeln in DOM-Reihenfolge, volle Breite */
body.site-grid,
body.site-grid > .site-grid,
body.site-grid .site-grid{
  display:block !important;
  grid-template-columns:none !important;
  max-width:none !important;
  margin-left:0 !important; margin-right:0 !important;
}
/* Inhaltsbreite begrenzen + zentrieren */
.container-component{ max-width:1180px; margin:0 auto; padding:1.5rem 1rem; }
.container-top-a .grid-child,.container-top-b .grid-child,.container-bottom-a .grid-child,.container-bottom-b .grid-child{ max-width:1180px; margin:0 auto; }

/* Header als volle grüne Leiste, Marke links */
header#sp-header.container-header{ background:#009036; }
header#sp-header .grid-child{ max-width:1180px; margin:0 auto; padding:.5rem 1rem; }
header#sp-header .navbar-brand .brand-logo,
header#sp-header .navbar-brand .brand-logo span{ color:#fff !important; background:transparent !important; font-weight:600; font-size:1.5rem; text-decoration:none; }

/* Horizontale Hauptnavigation (Menü id 1 in position-1) */
.container-nav{ background:#007C34; }
.container-nav > .grid-child{ max-width:1180px; margin:0 auto; padding:0 .5rem; }
.container-nav ul.mod-menu{
  display:flex !important; flex-direction:row !important; flex-wrap:wrap;
  align-items:stretch; gap:0; list-style:none; margin:0; padding:0;
}
.container-nav ul.mod-menu > li{ position:relative; list-style:none; }
.container-nav ul.mod-menu > li > a{ display:block; padding:.75rem 1rem; color:#fff !important; text-decoration:none; font-weight:500; white-space:nowrap; }
.container-nav ul.mod-menu > li > a:hover,
.container-nav ul.mod-menu > li.current > a,
.container-nav ul.mod-menu > li.active > a{ background:rgba(0,0,0,.18); }
/* Dropdown-Untermenüs */
.container-nav ul.mod-menu .mod-menu__sub{
  position:absolute; top:100%; left:0; display:none; flex-direction:column;
  min-width:220px; background:#fff; box-shadow:0 6px 18px rgba(0,0,0,.18); z-index:1200; padding:.25rem 0; margin:0;
}
.container-nav ul.mod-menu > li:hover > .mod-menu__sub{ display:flex; }
.container-nav ul.mod-menu .mod-menu__sub li{ list-style:none; }
.container-nav ul.mod-menu .mod-menu__sub li a{ display:block; padding:.55rem 1.1rem; color:#333E47 !important; text-decoration:none; white-space:nowrap; }
.container-nav ul.mod-menu .mod-menu__sub li a:hover{ background:#eef4ee; color:#009036 !important; }

/* Mobil: Nav vertikal aufklappen, Untermenüs inline */
@media (max-width:767.98px) {
  .container-nav ul.mod-menu{ flex-direction:column !important; flex-wrap:nowrap; }
  .container-nav ul.mod-menu .mod-menu__sub{ position:static; display:flex; box-shadow:none; background:rgba(255,255,255,.12); min-width:0; }
  .container-nav ul.mod-menu .mod-menu__sub li a{ color:#fff !important; padding-left:2rem; }
  header#sp-header .navbar-brand .brand-logo span{ font-size:1.15rem; }
}


/* BRK-AUDIT-P1-SEP: Trennzeichen-/Heading-Menüpunkte (z.B. Service, künftig Der BRK) als normale Nav-Optik */
.container-nav ul.mod-menu > li > .mod-menu__separator,
.container-nav ul.mod-menu > li > .mod-menu__heading{
  display:block; padding:.75rem 1rem; color:#fff !important; font-weight:500; white-space:nowrap; cursor:default;
  background:transparent; border:0;
}
.container-nav ul.mod-menu > li.parent:hover > .mod-menu__separator,
.container-nav ul.mod-menu > li.parent:hover > .mod-menu__heading{ background:rgba(0,0,0,.18); }


/* BRK-AUDIT-P1-NAV2: Dropdown-Menüs einheitlich — kein Gold-Unterstrich, aktiver Punkt = sauberer grüner Vollbreiten-Streifen (wie Hover) */
.container-nav ul.mod-menu .mod-menu__sub li > a{
  border-bottom: 0 !important;
  border-radius: 0 !important;
}
.container-nav ul.mod-menu .mod-menu__sub li.current > a,
.container-nav ul.mod-menu .mod-menu__sub li.active > a,
.container-nav ul.mod-menu .mod-menu__sub li > a:hover{
  background:#eef4ee !important;
  color:#009036 !important;
  font-weight:500 !important;
}


/* BRK-AUDIT-P1-NAV3: Trennzeichen-Parents (z.B. Service) optisch identisch zu Nav-Links */
.container-nav ul.mod-menu > li > .mod-menu__separator,
.container-nav ul.mod-menu > li > .mod-menu__heading{
  font-size:.9rem !important;
  border-radius:24px;
}
.container-nav ul.mod-menu > li:hover > .mod-menu__separator,
.container-nav ul.mod-menu > li.active > .mod-menu__separator,
.container-nav ul.mod-menu > li.current-ancestor > .mod-menu__separator{
  background:rgba(0,0,0,.18);
}


/* BRK-AUDIT-P1-WAPPEN: Wappen im Header (sitewide) + größeres Hero-Wappen */
header#sp-header .navbar-brand .brand-logo{ display:flex; align-items:center; gap:12px; text-decoration:none; }
.brk-header-wappen{ height:48px; width:auto; flex:0 0 auto; }
.container-component img[alt="BRK-Wappen"]{ height:120px !important; width:auto !important; }
@media (max-width:767.98px) {
  .brk-header-wappen{ height:40px; }
  .container-component img[alt="BRK-Wappen"]{ height:96px !important; }
}


/* === BRK-AUDIT-BURGER: Mobiles Burger-Menü === */
.brk-burger{ display:none; }
@media (max-width:767.98px) {
  header#sp-header .navbar-brand{ display:flex; align-items:center; width:100%; }
  header#sp-header .navbar-brand .brand-logo{ min-width:0; flex:1 1 auto; }
  .brk-burger{
    display:flex; flex-direction:column; justify-content:center; gap:5px;
    margin-left:auto; flex:0 0 auto; width:46px; height:46px; padding:11px;
    box-sizing:border-box; border:0; background:transparent; cursor:pointer;
  }
  .brk-burger span{ display:block; height:3px; width:100%; background:#fff; border-radius:2px; transition:transform .25s ease, opacity .2s ease; }
  .brk-burger.is-open span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
  .brk-burger.is-open span:nth-child(2){ opacity:0; }
  .brk-burger.is-open span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }
  .container-nav{ display:none !important; }
  .container-nav.nav-open{ display:block !important; }
}

/* BRK-RESTPLAN-A */
.breadcrumb{font-size:.95rem}
#sp-component,.com-content-article{font-size:15.5px;line-height:1.65}
.com-content-article__body,.item-page{max-width:72ch}
#sp-footer .footer-logo img,footer .brand-logo img{height:56px}
/* /BRK-RESTPLAN-A */


/* BRK-RESTPLAN-D2 */
/* Session-Modus: body.brk-session = 11.11. bis Aschermittwoch */
.brk-countdown{display:none;background:var(--brk-green);color:#fff;text-align:center;padding:8px 16px;font-size:.9rem;font-weight:600;border-radius:var(--brk-radius-pill);margin:8px auto;}
body.brk-session .brk-countdown{display:inline-block;}
.brk-session-banner{display:none;background:var(--brk-gold);color:#000;text-align:center;padding:6px 12px;font-size:.85rem;font-weight:700;width:100%;}
body.brk-session .brk-session-banner{display:block;}
/* /BRK-RESTPLAN-D2 */

/* BRK-RESTPLAN-D3 */
/* Konfetti-Farbband + Skyline-Platzhalter im Footer */
.brk-confetti-bar{height:5px;background:repeating-linear-gradient(90deg,var(--brk-gold) 0 8px,var(--brk-green) 8px 16px,var(--brk-red) 16px 24px,transparent 24px 30px);opacity:.7;width:100%;display:block;margin:12px 0 0;}
.brk-footer-skyline{display:block;width:100%;height:36px;overflow:hidden;opacity:.2;margin-bottom:8px;}
.brk-footer-skyline svg{width:100%;height:100%;}
/* /BRK-RESTPLAN-D3 */

/* BRK-RESTPLAN-D5 */
/* Jugendbereich accent */
#brk-praesidium-jugend h1,#brk-praesidium-jugend h2{color:var(--brk-green);}
#brk-praesidium-jugend .brk-ehrenpraesident{border-top-color:var(--brk-green);}
/* /BRK-RESTPLAN-D5 */

/* BRK-RESTPLAN-D1 */
/* Branded 404 */
.brk-404{text-align:center;padding:3rem 1rem;}
.brk-404-code{display:block;font-size:clamp(4rem,15vw,8rem);font-weight:900;color:var(--brk-gold);line-height:1;}
.brk-404 h1{color:var(--brk-green);font-size:clamp(1.4rem,4vw,2rem);}
.brk-404 p{color:#666;max-width:42ch;margin:1rem auto;font-size:1.05rem;}
/* /BRK-RESTPLAN-D1 */

/* BRK-RESTPLAN-E */
/* CTA-Boxen fuer Artikel-Enden */
.brk-cta-box{display:block;margin-top:2rem;padding:1.2rem 1.5rem;background:var(--brk-green);color:#fff;border-radius:var(--brk-radius);text-align:center;}
.brk-cta-box strong{font-size:1.05rem;display:block;margin-bottom:.4rem;}
.brk-cta-btn{display:inline-block;margin-top:.6rem;background:#fff;color:var(--brk-green)!important;font-weight:700;padding:.5rem 1.4rem;border-radius:var(--brk-radius-pill);text-decoration:none!important;}
.brk-cta-btn:hover{background:rgba(255,255,255,.9);color:var(--brk-green-dark)!important;}
/* /BRK-RESTPLAN-E */

/* BRK-RESTPLAN-POLISH 2026-06-17 :: Mikro-Interaktions-Politur (Emil-Lens) */
:root{
  --brk-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --brk-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
}
/* 1) Press-Feedback: Buttons antworten auf den Druck */
.brk-btn, .btn-primary, .readmore a, a.readmore, .btn-secondary, .brk-cta-btn, .brk-cta-box a, .pagination .page-item .page-link, .jd_download_button_box a{ transition: background .15s ease, color .15s ease, transform .14s var(--brk-ease-out), box-shadow .18s var(--brk-ease-out); }
.brk-btn:active, .btn-primary:active, .readmore a:active, a.readmore:active, .btn-secondary:active, .brk-cta-btn:active, .brk-cta-box a:active, .pagination .page-item .page-link:active, .jd_download_button_box a:active{ transform: scale(.97); }
/* 2) Link-Farbwechsel weich statt hart */
a{ transition: color .15s ease; }
/* 3) Klickbare Karten: dezenter Lift signalisiert Klickbarkeit (nur Maus) */
@media (hover:hover) and (pointer:fine) {
  .com-content-category-blog .items-leading .item, .com-content-category-blog .items-row .item, .com-content-category-blog .items-leading > div, .com-content-category-blog .items-row > div{ transition: transform .18s var(--brk-ease-out), box-shadow .18s var(--brk-ease-out); }
  .com-content-category-blog .items-leading .item:hover, .com-content-category-blog .items-row .item:hover, .com-content-category-blog .items-leading > div:hover, .com-content-category-blog .items-row > div:hover{ transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.12); }
}
/* 4) Touch: klebrigen Hover-Lift neutralisieren */
@media (hover:none) { .brk-btn:hover{ transform: none; } }
/* 5) Sichtbarer Tastatur-Fokus (WCAG) */
a:focus-visible, button:focus-visible, .brk-btn:focus-visible, .btn-primary:focus-visible, .readmore a:focus-visible, a.readmore:focus-visible, .brk-cta-btn:focus-visible, .pagination .page-link:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{ outline: 2px solid var(--brk-green); outline-offset: 2px; border-radius: 4px; }
.container-header a:focus-visible, .container-nav a:focus-visible, #mod-custom104 a:focus-visible, .container-footer a:focus-visible, #brk-nav a:focus-visible{ outline-color: #fff; }
/* 6) Burger-Morph sauberer (ease-in-out) */
.brk-burger span{ transition: transform .22s var(--brk-ease-in-out), opacity .18s ease; }
/* 7) Reduced Motion: Bewegung raus, Farbe/Opacity bleibt */
@media (prefers-reduced-motion: reduce) {
  .brk-btn:active, .btn-primary:active, .readmore a:active, a.readmore:active, .btn-secondary:active, .brk-cta-btn:active, .brk-cta-box a:active, .pagination .page-item .page-link:active, .jd_download_button_box a:active, .brk-btn:hover, .com-content-category-blog .items-leading .item:hover, .com-content-category-blog .items-row .item:hover, .com-content-category-blog .items-leading > div:hover, .com-content-category-blog .items-row > div:hover{ transform: none !important; }
  .brk-burger span{ transition: none !important; }
}
/* /BRK-RESTPLAN-POLISH */

/* BRK-RESTPLAN-GAP 2026-06-17 :: Technik-Module (script/style/meta, Stil none) in der Component-Spalte
   erzeugen je ~15px Margin -> große Lücke zwischen Nav und Titel. Margin entfernen.
   Sichtbare Module (Hero #mod-custom104 etc.) haben ID-basierte Abstände und bleiben unberührt. */
.container-component > .mod-custom{ margin-top:0; margin-bottom:0; }
/* /BRK-RESTPLAN-GAP */

/* BRK-RESTPLAN-WIDTH 2026-06-17 :: Einzelartikel-Spalte (max-width 72ch) zentrieren statt linksbündig */
.item-page, .com-content-article__body{ margin-left:auto; margin-right:auto; }
/* /BRK-RESTPLAN-WIDTH */

/* BRK-RESTPLAN-WIDTH2 2026-06-17 :: Vereine (123) + Prinzenpaare (288) volle Breite (Karten-/Filter-Raster) */
body.itemid-123 .item-page, body.itemid-123 .com-content-article__body,
body.itemid-288 .item-page, body.itemid-288 .com-content-article__body{ max-width:none; }
/* /BRK-RESTPLAN-WIDTH2 */

