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

: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: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --brk-font: system-ui, -apple-system, 'Segoe UI', sans-serif;
}

/* Base */
body { font-family: var(--brk-font-body); 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(to right, var(--brk-green) 33.33%, #fff 33.33% 66.66%, var(--brk-red) 66.66%); 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(to right, var(--brk-green) 33%, #fff 33% 66%, var(--brk-red) 66%); 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; }

