/* ===================================================
   STADTGEMEINDE GÜSSING – Cassiopeia user.css FINAL v6
   =================================================== */

/* Google Font: Roboto */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

:root {
  --guessing-gruen:        #8dc63f;
  --guessing-gruen-aktiv:  #829E25;
  --guessing-gruen-dark:   #6ab023;
  --guessing-anthrazit:    #434953;
  --guessing-weiss:        #ffffff;
  --guessing-grau:         #333333;
  --cassiopeia-color-primary: #8dc63f;
  --cassiopeia-color-link:    #829E25;
  --cassiopeia-color-hover:   #6ab023;
  --cassiopeia-navbar-bg:     #ffffff;
  --cassiopeia-navbar-color:  #333333;
}

/* ===== GLOBALE SCHRIFTART ===== */
body,
.navbar,
.mod-menu,
.moduletable,
.item-page,
.blog,
article,
footer,
input,
button,
select,
textarea {
  font-family: 'Roboto', Arial, sans-serif !important;
}

/* ===== GLOBALE LINKFARBE ===== */
a {
  color: #829E25;
  text-decoration: none;
}
a:hover {
  color: #6ab023;
  text-decoration: underline;
}

/* ===== TOPBAR ===== */
.container-topbar {
  background-color: #434953 !important;
  color: #ffffff;
  font-size: 0.82rem;
  padding: 7px 0;
  line-height: 1.4;
  font-family: 'Roboto', Arial, sans-serif;
}
.container-topbar a {
  color: #ffffff;
  text-decoration: none;
}
.container-topbar a:hover { opacity: 0.75; text-decoration: none; }

/* ===== TOPBAR MODUL ===== */
.guessing-topbar {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 1rem;
  min-height: 34px;
  font-size: 0.82rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.topbar-kontakt {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.topbar-kontakt > span,
.topbar-kontakt > a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: #ffffff;
  text-decoration: none;
  white-space: nowrap;
}
.topbar-kontakt svg { flex-shrink: 0; }
.topbar-suche { display: flex; align-items: center; }
.topbar-search-input {
  background-color: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  color: #fff;
  border-radius: 3px 0 0 3px;
  width: 150px;
  font-size: 0.8rem;
  height: 26px;
  padding: 2px 8px;
  font-family: 'Roboto', Arial, sans-serif;
}
.topbar-search-input::placeholder { color: rgba(255,255,255,0.6); }
.topbar-search-input:focus {
  background-color: rgba(255,255,255,0.25);
  border-color: rgba(255,255,255,0.6);
  color: #fff;
  box-shadow: none;
  outline: none;
}
.topbar-search-btn {
  background-color: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  border-left: none;
  color: #fff;
  border-radius: 0 3px 3px 0;
  height: 26px;
  padding: 0 8px;
  cursor: pointer;
}
.topbar-search-btn:hover { background-color: rgba(255,255,255,0.3); }
.topbar-lang {
  color: #fff !important;
  font-size: 0.8rem;
  text-decoration: none;
  white-space: nowrap;
}
.topbar-lang:hover { opacity: 0.8; text-decoration: none; }
.topbar-rechts {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.topbar-social {
  display: flex;
  align-items: center;
  gap: 5px;
}
.topbar-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 4px;
  background-color: rgba(255,255,255,0.20);
  border: 1px solid rgba(255,255,255,0.40);
  color: #ffffff !important;
  text-decoration: none !important;
  transition: background 0.2s;
  line-height: 1;
}
.topbar-social-link:hover { background-color: rgba(255,255,255,0.38); }
.topbar-social-link svg { display: block; width: 14px; height: 14px; }
.topbar-social-link .fa,
.topbar-social-link .fab {
  color: #ffffff !important;
  font-size: 13px;
}

/* ===== HEADER ===== */
.header,
.container-header,
div.header,
.site-grid > .header,
.header.container-header {
  background-color: #ffffff !important;
  background: #ffffff !important;
  padding: 0.6rem 0 !important;
}

/* ===== SITE-NAME ===== */
.site-name {
  font-size: 1.3rem;
  font-weight: 700;
  color: #8dc63f;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: 'Roboto', Arial, sans-serif;
}
.site-name:hover { color: #829E25; text-decoration: none; }

/* ===== HAUPTNAVIGATION ===== */
#main-navigation,
nav.navbar,
.navbar,
.container-nav,
.grid-child.container-nav,
.mod-menu__sub {
  background-color: #ffffff !important;
  background: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
}

/* Mehr Höhe, vertikal zentriert, keine border */
nav.navbar,
.navbar {
  min-height: 60px !important;
  align-items: center !important;
  border: none !important;
  border-bottom: none !important;
}
.navbar-nav,
ul.mod-menu {
  align-items: center !important;
}

/* Kein border, kein schatten – übergeordnetes Div auch */
.container-nav,
.grid-child.container-nav,
.grid-child.container-nav > *,
.container-nav .card,
.container-nav .moduletable {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.mod-menu > li > a,
.navbar-nav > .nav-item > .nav-link,
ul.mod-menu .nav-link {
  color: #333333 !important;
  background-color: transparent !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.7px;
  padding: 0.85rem 0.5rem !important;
  transition: color 0.2s;
  border: none !important;
  border-bottom: none !important;
  text-decoration: none !important;
  font-family: 'Roboto', Arial, sans-serif !important;
  display: flex !important;
  align-items: center !important;
}
.mod-menu > li > a:hover,
.navbar-nav > .nav-item > .nav-link:hover,
ul.mod-menu .nav-link:hover {
  color: #829E25 !important;
  background-color: transparent !important;
  border: none !important;
  text-decoration: none !important;
}
.mod-menu > li.active > a,
.navbar-nav > .nav-item.active > .nav-link,
.navbar-nav > .nav-item.current > .nav-link,
.nav-item.active .nav-link,
.nav-item.current .nav-link {
  color: #829E25 !important;
  background-color: transparent !important;
  border: none !important;
  text-decoration: none !important;
}
.nav-link.dropdown-toggle::after { border-top-color: #333333 !important; }
.nav-link.dropdown-toggle:hover::after { border-top-color: #829E25 !important; }
.navbar-nav .dropdown-menu,
.mod-menu .dropdown-menu {
  background-color: #ffffff !important;
  border: 1px solid #e8e8e8 !important;
  border-top: 2px solid #829E25 !important;
  border-radius: 0;
  box-shadow: 0 4px 8px rgba(0,0,0,0.08);
}
.navbar-nav .dropdown-item,
.mod-menu .dropdown-item {
  color: #333333 !important;
  text-transform: uppercase !important;
  font-size: 0.85rem !important;
  font-weight: 400 !important;
  background-color: #ffffff !important;
  padding: 0.5rem 1.2rem;
  border: none !important;
  font-family: 'Roboto', Arial, sans-serif !important;
}
.navbar-nav .dropdown-item:hover,
.mod-menu .dropdown-item:hover {
  color: #829E25 !important;
  background-color: #f8f8f8 !important;
  border: none !important;
}
.navbar-nav .dropdown-item.active,
.mod-menu .dropdown-item.active {
  color: #829E25 !important;
  background-color: #f4f8ec !important;
}

/* ===== LINKES SEITENMENÜ ===== */
.sidebar-left .moduletable h3,
.sidebar-left .module-title,
.sidebar-left .mod-menu h3.module-title {
  color: #829E25 !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px;
  border: none !important;
  border-bottom: 2px solid #829E25 !important;
  padding-bottom: 0.35rem;
  margin-bottom: 0.2rem;
  font-family: 'Roboto', Arial, sans-serif !important;
  text-align: left !important;
}
.sidebar-left .mod-list a,
.sidebar-left nav.mod-menu a,
.sidebar-left .nav-item a {
  color: #333333 !important;
  text-transform: uppercase !important;
  font-size: 0.92rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.3px;
  text-decoration: none !important;
  display: block;
  padding: 0.08rem 0 !important;
  border: none !important;
  line-height: 1.55;
  text-align: left !important;
  transition: color 0.15s;
  font-family: 'Roboto', Arial, sans-serif !important;
}
.sidebar-left .mod-list a:hover,
.sidebar-left nav.mod-menu a:hover,
.sidebar-left .nav-item.active a,
.sidebar-left .nav-item a.active {
  color: #829E25 !important;
  border: none !important;
  text-decoration: none !important;
}
.sidebar-left .moduletable { padding: 0.4rem 0; }

/* Seitenmenü – keine border, kein card-styling, auch übergeordnete Divs */
.sidebar-left,
.sidebar-left > *,
.sidebar-left .card,
.sidebar-left .card-body,
.sidebar-left .moduletable,
.container-sidebar-left,
.grid-child.container-sidebar-left,
.container-sidebar-left .card,
.container-sidebar-left .card-body {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
}
.sidebar-left li {
  border: none !important;
  box-shadow: none !important;
}

/* ===== ÜBERSCHRIFTEN – H1, H2, H3 einheitlich ===== */

/* H1, H2, H3, H4 – alle uppercase, H3 grün */
.item-page h1,
.item-page h2,
.item-page h3,
.item-page h4,
.blog h1,
.blog h2,
.blog h3,
.blog h4,
article h1,
article h2,
article h3,
article h4,
.article-header h1,
.article-header h2,
h2.article-title,
h2.article-title a,
.item-title,
.item-title a {
  text-transform: uppercase !important;
  font-weight: 700;
  letter-spacing: 0.5px;
  font-family: 'Roboto', Arial, sans-serif !important;
}

/* H1 – groß, grün wie H2/H3 */
.item-page h1,
.blog h1,
article h1,
.article-header h1,
.page-header h1 {
  color: #829E25 !important;
  font-size: 1.5rem !important;
}

/* H2 – Beitragstitel – grün wie H3 */
.item-page h2,
.blog h2,
article h2,
.article-header h2,
h2.article-title,
h2.article-title a,
.item-title,
.item-title a {
  color: #829E25 !important;
  font-size: 1.15rem !important;
}
h2.article-title a:hover,
.item-title a:hover {
  color: #6ab023 !important;
  text-decoration: none;
}

/* H3 – grün, etwas kleiner */
.item-page h3,
.blog h3,
article h3 {
  color: #829E25 !important;
  font-size: 1.05rem !important;
  margin-top: 1rem;
  margin-bottom: 0.4rem;
}

/* H4 – dunkelgrau */
.item-page h4,
.blog h4,
article h4 {
  color: #333333 !important;
  font-size: 0.95rem !important;
  font-weight: 600;
}

/* ===== TEXT-LINKS im Inhalt ===== */
.item-page a,
.blog a,
article a {
  color: #829E25 !important;
  text-decoration: none;
}
.item-page a:hover,
.blog a:hover,
article a:hover {
  color: #6ab023 !important;
  text-decoration: underline;
}

/* ===== BUTTONS ===== */
.btn-primary {
  background-color: #8dc63f;
  border-color: #8dc63f;
  color: #fff;
  font-family: 'Roboto', Arial, sans-serif !important;
}
.btn-primary:hover,
.btn-primary:focus {
  background-color: #829E25 !important;
  border-color: #829E25 !important;
  color: #ffffff !important;
}
.readmore a,
.btn.btn-secondary {
  color: #829E25 !important;
  border-color: #829E25 !important;
  background-color: transparent !important;
  text-transform: uppercase;
  font-size: 0.82rem;
  font-weight: 500;
  font-family: 'Roboto', Arial, sans-serif !important;
}
.readmore a:hover,
.btn.btn-secondary:hover {
  background-color: #829E25 !important;
  border-color: #829E25 !important;
  color: #ffffff !important;
}

/* ===== BREADCRUMBS ===== */
.breadcrumb-item a { color: #829E25; }
.breadcrumb-item.active { color: #333333; }

/* ===== ARTIKEL EINLEITUNGSBILDER ===== */
.blog .item-image img,
.blog .article-image img,
.blog figure img,
article.item .item-image img {
  width: 600px !important;
  height: 320px !important;
  max-width: 100%;
  object-fit: cover !important;
  object-position: center center;
  display: block;
}
@media (max-width: 640px) {
  .blog .item-image img,
  .blog .article-image img,
  article.item .item-image img {
    width: 100% !important;
    height: 200px !important;
    object-fit: cover !important;
  }
}

/* ===== FOOTER – DUNKELGRAU wie Original ===== */
footer.footer,
.footer,
.container-footer {
  background-color: #434953 !important;
  background: #434953 !important;
  color: #ffffff !important;
  padding: 2rem 0 !important;
  font-size: 0.88rem;
  border-top: none !important;
  font-family: 'Roboto', Arial, sans-serif;
}

/* Footer innere Spalten – oben ausrichten */
footer.footer .grid-child,
footer.footer .row,
footer.footer .moduletable,
.footer .grid-child,
.footer .row,
.footer .moduletable {
  align-items: flex-start !important;
  vertical-align: top !important;
}

/* Footer Links – weiß */
footer.footer a,
.footer a,
.container-footer a {
  color: #ffffff !important;
  text-decoration: none;
}
footer.footer a:hover,
.footer a:hover,
.container-footer a:hover {
  color: rgba(255,255,255,0.75) !important;
  text-decoration: none;
}

/* Footer Modulüberschriften – weiß, fett */
footer.footer .moduletable h3,
footer.footer .module-title,
.footer .moduletable h3,
.footer .module-title {
  color: #ffffff !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  border: none !important;
  border-bottom: none !important;
  padding-bottom: 0.2rem;
  margin-top: 0 !important;
  margin-bottom: 0.5rem;
}

/* Footer Menülinks – weiß, NORMALE Schrift (kein uppercase), enger */
footer.footer .mod-list a,
footer.footer nav.mod-menu a,
.footer .mod-list a,
.footer nav.mod-menu a {
  color: #ffffff !important;
  text-transform: none !important;        /* ← normale Schrift */
  font-size: 0.85rem !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  display: block;
  padding: 0.05rem 0 !important;          /* ← sehr kleine Abstände */
  border: none !important;
  line-height: 1.6;
  transition: opacity 0.15s;
}
footer.footer .mod-list a:hover,
.footer .mod-list a:hover {
  opacity: 0.75;
  text-decoration: none !important;
  color: #ffffff !important;
}

/* Footer Listenelemente – kein extra Abstand */
footer.footer .mod-list li,
.footer .mod-list li {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  list-style: none;
}

/* Footer Fließtext */
footer.footer p,
.footer p {
  color: #ffffff !important;
  font-size: 0.85rem;
  line-height: 1.6;
  margin-bottom: 0.25rem;
}
footer.footer strong,
.footer strong {
  color: #ffffff !important;
  font-weight: 700;
}

/* ===== SCROLL-TO-TOP BUTTON ===== */
#scroll-to-top {
  position: fixed !important;
  bottom: 2rem !important;
  right: 2rem !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background-color: #829E25 !important;
  color: #ffffff !important;
  border: 2px solid rgba(255,255,255,0.3) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s, background-color 0.2s !important;
  z-index: 9999 !important;
  text-decoration: none !important;
  box-shadow: 0 3px 10px rgba(0,0,0,0.3);
}
#scroll-to-top.visible {
  opacity: 1 !important;
  visibility: visible !important;
}
#scroll-to-top:hover {
  background-color: #6ab023 !important;
  text-decoration: none !important;
}
/* Pfeil-Icon im Button */
#scroll-to-top svg {
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  stroke: #ffffff !important;
  fill: none !important;
  flex-shrink: 0;
}
/* Font Awesome Fallback */
#scroll-to-top .fa,
#scroll-to-top .fas {
  color: #ffffff !important;
  font-size: 18px !important;
  line-height: 1;
}

/* ===== MOBIL ===== */
@media (max-width: 991.98px) {
  .navbar-collapse {
    background-color: #434953;
    padding: 1rem;
  }
  .navbar-collapse .nav-link {
    color: #ffffff !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.15) !important;
    padding: 0.65rem 0 !important;
  }
  .navbar-collapse .nav-link:hover { color: #829E25 !important; }
  .navbar-toggler { border-color: rgba(255,255,255,0.3); }
  .topbar-kontakt { display: none !important; }
  .topbar-suche { display: none !important; }
}

/* ===================================================
   HEADER BANNER & BREADCRUMBS OVERLAY – FINAL
   
   HTML-Struktur:
   div.site-grid
     div.container-banner.full-width     ← Banner
     div.grid-child.container-sidebar-left
     div.grid-child.container-component
       div.mod-custom.custom             ← Overlay-Modul (guessing-overlay Klasse auf img)
         div
           img.guessing-overlay          ← Das transparente Bild
   =================================================== */

/* ===== BANNER ===== */
.container-banner,
.container-banner.full-width {
  position: relative !important;
  overflow: visible !important;
  line-height: 0;
  margin-top: -15px !important;     /* 15px nach oben unter Navbar */
  margin-bottom: 50px !important;   /* Abstand zum nächsten Container */
  padding-bottom: 0 !important;
}

/* Banner-Bild: volle Breite, fixe Höhe */
.container-banner img {
  width: 100% !important;
  height: 490px !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 991px) {
  .container-banner img {
    height: 370px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .container-banner img {
    height: 220px !important;
    object-position: center 30% !important;
  }
}

/* ===== OVERLAY "Güssing meine Stadt" =====
   Das Bild liegt in container-component NACH dem Banner.
   Banner hat margin-bottom: 50px.
   Bild ist ~120px hoch (bei 300px Breite).
   
   Berechnung margin-top:
   - Banner margin-bottom: 50px
   - Gewünschte Position: unterer Rand des Banners
   - margin-top = -(50px margin-bottom + 120px Bildhöhe) = -170px
   
   Das Bild hat class="guessing-overlay" direkt auf dem <img> Tag
   (laut F12 Screenshot: img.guessing-overlay)
*/

/* container-component: kein margin-top Problem */
div.grid-child.container-component {
  position: relative !important;
  padding-top: 1rem !important;
  padding-bottom: 50px !important;
}

/* Das Overlay-Bild direkt ansprechen – class sitzt auf dem img! */
img.guessing-overlay {
  position: relative !important;
  z-index: 20 !important;
  display: block !important;
  width: 300px !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  margin-top: -220px !important;   /* Banner-MB(50) + eigene Höhe(~120) + Puffer */
  margin-left: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  pointer-events: none;
}

/* Der direkte Eltern-div des Bildes */
img.guessing-overlay + *,
div:has(> img.guessing-overlay) {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
}

/* mod-custom Container transparent halten */
div.grid-child.container-component div.mod-custom {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Mobile Overlay */
@media (max-width: 767px) {
  img.guessing-overlay {
    width: 150px !important;
    margin-top: -120px !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  img.guessing-overlay {
    width: 220px !important;
    margin-top: -170px !important;
  }
}

/* ===== MAIN CONTENT PADDING ===== */
div.grid-child.container-sidebar-left {
  padding-top: 1rem !important;
}

/* ===================================================
   SEITENMENÜ LINKSBÜNDIG – FINALE LÖSUNG
   Exakte Klassen aus F12: div.grid-child.container-sidebar-left
   =================================================== */

/* Alle Ebenen des Seitenmenüs linksbündig */
html body div.grid-child.container-sidebar-left,
html body div.grid-child.container-sidebar-left * {
  text-align: left !important;
}

/* Bootstrap flex/nav Überschreibung */
html body div.grid-child.container-sidebar-left .nav {
  flex-direction: column !important;
  align-items: flex-start !important;
}
html body div.grid-child.container-sidebar-left .nav-item,
html body div.grid-child.container-sidebar-left .nav-item a,
html body div.grid-child.container-sidebar-left .nav-link {
  width: 100% !important;
  text-align: left !important;
  justify-content: flex-start !important;
  display: block !important;
}

/* ul.mod-menu */
html body div.grid-child.container-sidebar-left ul.mod-menu,
html body div.grid-child.container-sidebar-left ul.mod-menu li,
html body div.grid-child.container-sidebar-left ul.mod-menu li a {
  text-align: left !important;
  display: block !important;
  width: 100% !important;
  padding-left: 0 !important;
  list-style: none !important;
}

/* Modulüberschrift */
html body div.grid-child.container-sidebar-left h3,
html body div.grid-child.container-sidebar-left .module-title {
  text-align: left !important;
}

/* Card/Wrapper */
html body div.grid-child.container-sidebar-left .card,
html body div.grid-child.container-sidebar-left .card-body,
html body div.grid-child.container-sidebar-left .moduletable {
  text-align: left !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* ===================================================
   BOTTOM-A – Aktuelles/Quicklinks Bereich v3
   =================================================== */

/* Gesamter bottom-a: hellgrüner Hintergrund, keine Border */
div.grid-child.container-bottom-a,
div.grid-child.container-bottom-a .card,
div.grid-child.container-bottom-a .card-body,
div.grid-child.container-bottom-a .moduletable {
  background-color: #eff3e2 !important;
  border: none !important;
  box-shadow: none !important;
}

/* ===== BREITENVERHÄLTNIS 3:6:3 ===== */
div.grid-child.container-bottom-a {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
}
div.grid-child.container-bottom-a > .bottom-a.card {
  flex: 1 1 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: #eff3e2 !important;
  border-radius: 0 !important;
}
div.grid-child.container-bottom-a > .bottom-a.card:nth-child(1) {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}
div.grid-child.container-bottom-a > .bottom-a.card:nth-child(2) {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}
div.grid-child.container-bottom-a > .bottom-a.card:nth-child(3) {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}
div.grid-child.container-bottom-a > .bottom-a.card > .card-body {
  padding: 1.2rem !important;
  background: #eff3e2 !important;
}

/* ===== NEWSFLASH – Bild und Text ===== */
div.grid-child.container-bottom-a .mod-articlesnews__item img,
div.grid-child.container-bottom-a [class*="articlesnews"] img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  margin: 0 !important;
}
div.grid-child.container-bottom-a .mod-articlesnews__item h3 {
  display: block !important;
  color: #829E25 !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;           /* ← dünner */
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  margin: 0.5rem 0 !important;
  text-align: left !important;
  font-family: 'Roboto', Arial, sans-serif !important;
  border: none !important;
}
div.grid-child.container-bottom-a p {
  color: #333333 !important;
  font-size: 0.88rem !important;
  line-height: 1.55 !important;
  margin-bottom: 0.4rem !important;
  text-align: left !important;
}
div.grid-child.container-bottom-a a {
  color: #829E25 !important;
  text-decoration: none !important;
}
div.grid-child.container-bottom-a a:hover {
  color: #6ab023 !important;
  text-decoration: underline !important;
}

/* ===== QUICKLINKS h3.card-header.quicklinks ===== */
/* Padding-Fix: kein top-padding, rechtsbündig mit Links */
div.grid-child.container-bottom-a h3.card-header,
div.grid-child.container-bottom-a .card-header.quicklinks,
div.grid-child.container-bottom-a h3.card-header.quicklinks {
  background-color: transparent !important;
  border: none !important;
  color: #829E25 !important;
  font-size: 1.1rem !important;          /* ← gleich wie andere H3 */
  font-weight: 500 !important;           /* ← dünner */
  text-transform: uppercase !important;
  text-align: right !important;
  padding: 0 !important;                 /* ← kein Padding */
  margin: 0 0 0.4rem 0 !important;      /* ← nur unten etwas Abstand */
  letter-spacing: 1px;
  font-family: 'Roboto', Arial, sans-serif !important;
  width: 100% !important;
  display: block !important;
}

/* Navbar Wrapper */
div.grid-child.container-bottom-a nav.navbar,
div.grid-child.container-bottom-a .navbar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}
div.grid-child.container-bottom-a .navbar-collapse,
div.grid-child.container-bottom-a .collapse.navbar-collapse {
  display: block !important;
  width: 100% !important;
}
div.grid-child.container-bottom-a .navbar-toggler {
  display: none !important;
}

/* ul.mod-menu: rechtsbündig, kompakt */
div.grid-child.container-bottom-a ul.mod-menu,
div.grid-child.container-bottom-a .navbar-nav {
  flex-direction: column !important;
  align-items: flex-end !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: transparent !important;
  width: 100% !important;
}
div.grid-child.container-bottom-a ul.mod-menu li,
div.grid-child.container-bottom-a .navbar-nav .nav-item {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  text-align: right !important;
  width: 100% !important;
}
div.grid-child.container-bottom-a ul.mod-menu li a,
div.grid-child.container-bottom-a .navbar-nav .nav-link {
  color: #829E25 !important;
  text-transform: uppercase !important;
  font-size: 0.85rem !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  text-align: right !important;
  display: block !important;
  padding: 0.1rem 0 !important;         /* ← sehr kompakt */
  border: none !important;
  background: transparent !important;
  line-height: 1.5 !important;
  width: 100% !important;
}
div.grid-child.container-bottom-a ul.mod-menu li a:hover,
div.grid-child.container-bottom-a .navbar-nav .nav-link:hover {
  color: #6ab023 !important;
  background: transparent !important;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 767px) {
  div.grid-child.container-bottom-a {
    flex-direction: column !important;
  }
  div.grid-child.container-bottom-a > .bottom-a.card:nth-child(1),
  div.grid-child.container-bottom-a > .bottom-a.card:nth-child(2),
  div.grid-child.container-bottom-a > .bottom-a.card:nth-child(3) {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  div.grid-child.container-bottom-a ul.mod-menu li a,
  div.grid-child.container-bottom-a h3.card-header.quicklinks {
    text-align: left !important;
  }
}

/* ===== GLOBALE H3 ANPASSUNG – dünner, größer ===== */
.item-page h3,
.blog h3,
article h3,
.com-content-article h3 {
  font-size: 1.15rem !important;         /* ← größer */
  font-weight: 500 !important;           /* ← dünner (war 700) */
  color: #829E25 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  font-family: 'Roboto', Arial, sans-serif !important;
}

/* ===== BOTTOM-B – Logo-Bereich ===== */
div.grid-child.container-bottom-b,
div.grid-child.container-bottom-b .card,
div.grid-child.container-bottom-b .card-body,
div.grid-child.container-bottom-b .moduletable,
div.grid-child.container-bottom-b .mod-custom {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
div.grid-child.container-bottom-b .card-body {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 120px;
  flex-wrap: wrap;
  gap: 1rem;
}
div.grid-child.container-bottom-b img {
  max-height: 80px !important;
  width: auto !important;
  object-fit: contain !important;
}
div.grid-child.container-bottom-b a {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
  border: none !important;
}

/* ===== SEITENMENÜ LINKSBÜNDIG ===== */
html body div.grid-child.container-sidebar-left,
html body div.grid-child.container-sidebar-left * {
  text-align: left !important;
}
html body div.grid-child.container-sidebar-left .nav {
  flex-direction: column !important;
  align-items: flex-start !important;
}
html body div.grid-child.container-sidebar-left .nav-item,
html body div.grid-child.container-sidebar-left .nav-item a,
html body div.grid-child.container-sidebar-left .nav-link {
  width: 100% !important;
  text-align: left !important;
  justify-content: flex-start !important;
  display: block !important;
}
html body div.grid-child.container-sidebar-left ul.mod-menu,
html body div.grid-child.container-sidebar-left ul.mod-menu li,
html body div.grid-child.container-sidebar-left ul.mod-menu li a {
  text-align: left !important;
  display: block !important;
  width: 100% !important;
  padding-left: 0 !important;
  list-style: none !important;
}
html body div.grid-child.container-sidebar-left h3,
html body div.grid-child.container-sidebar-left .module-title {
  text-align: left !important;
}
html body div.grid-child.container-sidebar-left .card,
html body div.grid-child.container-sidebar-left .card-body,
html body div.grid-child.container-sidebar-left .moduletable {
  text-align: left !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* ===== QUICKLINKS H3 PADDING FIX – maximale Spezifität ===== */
html body div.grid-child.container-bottom-a h3.card-header.quicklinks,
html body div.grid-child.container-bottom-a .bottom-a.card h3.card-header,
html body div.grid-child.container-bottom-a .bottom-a.card h3.card-header.quicklinks {
  padding: 0 !important;
  margin: 0 0 0.3rem 0 !important;
  color: #829E25 !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  text-align: right !important;
  background: transparent !important;
  border: none !important;
  letter-spacing: 1px;
  display: block !important;
  width: 100% !important;
  font-family: 'Roboto', Arial, sans-serif !important;
  line-height: 1.3 !important;
}

/* ===================================================
   BOTTOM-B – Logo-Bereich, Seitenverhältnis 3:3:6
   =================================================== */

/* Container: flex, keine Border */
div.grid-child.container-bottom-b {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

/* Alle Karten: keine Border */
div.grid-child.container-bottom-b > .bottom-b.card {
  flex: 1 1 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* 1. Kind: 25% */
div.grid-child.container-bottom-b > .bottom-b.card:nth-child(1) {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

/* 2. Kind: 25% */
div.grid-child.container-bottom-b > .bottom-b.card:nth-child(2) {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

/* 3. Kind: 50% */
div.grid-child.container-bottom-b > .bottom-b.card:nth-child(3) {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

/* Card-body: vertikal und horizontal zentriert */
div.grid-child.container-bottom-b > .bottom-b.card > .card-body {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1rem !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  min-height: 100px;
}

/* Moduletable und mod-custom */
div.grid-child.container-bottom-b .moduletable,
div.grid-child.container-bottom-b .mod-custom {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
}

/* Bilder: Originalgröße, nicht verzerrt */
div.grid-child.container-bottom-b img {
  max-height: 80px !important;
  width: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  vertical-align: middle !important;
  margin: 0 auto !important;
  display: block !important;
}

/* Links */
div.grid-child.container-bottom-b a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  border: none !important;
}

/* Responsive: untereinander auf Mobile */
@media (max-width: 767px) {
  div.grid-child.container-bottom-b {
    flex-direction: column !important;
  }
  div.grid-child.container-bottom-b > .bottom-b.card:nth-child(1),
  div.grid-child.container-bottom-b > .bottom-b.card:nth-child(2),
  div.grid-child.container-bottom-b > .bottom-b.card:nth-child(3) {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}
