html{
	
}
body{
  background-color: #f4f2ec !important;	
}

.icemegamenu > ul > li a.iceMenuTitle{
   padding: 3px 35px 10px !important;
}
.card-img-top2 {
    width: 100%;
    height: 25vh;
    object-fit: cover;
}
.merkzettel{
    font-size:9pt !important;
}
.merkzettel_active{
    color:green !important;
}


.suche_button{
  height:56px !important;
}

.suche_button button{
  margin:0px !important;
}

/*
 * Einleitungstext Image Styles
 */

.image-wrapper {
  position: relative;
  padding-top: 56.25%;
  max-width: 200px;
}

.image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
}

.image-container {
  max-height: 200px;
  max-width: 200px;
}

.image-sachsen {
  max-width: 60px;
}

.image-stiftung {
  max-width: 180px;
}

.float-container {
  width: 100%;
  height: 100px;
  padding-left: 10px;
}

.one {
  width: 200px;
  height: 100px;
  padding-top: 8px;
  float: left;
}

.two {
  margin-left: 190px;
  height: 100px;
}

/*suche highlight*/
.highlight{
	background-color: #ffd;
}


/* ============================================================
   HEADER – Produktion-identisch (archiv-buergerbewegung.de)
   ============================================================ */

/* Logo-Bereich */
#top-row {
    background: #ffffff;
    padding: 20px 0 0;
}

#logo {
    padding-bottom: 40px;
}

#logo a {
    display: inline-block;
    text-decoration: none;
}

#logo img {
    max-height: 90px;
    width: auto;
    display: block;
}

#logo h1 {
    font-size: 0;
    line-height: 0;
    height: 0;
    overflow: hidden;
    text-indent: -9999px;
    margin: 0;
    padding: 0;
}

/* Navigations-Bereich */
#header-row {
    background: #ffffff;
    border-bottom: 8px solid #ebe9e3;
}

#header-row::after,
.icemegamenu > ul::after {
    content: '';
    display: table;
    clear: both;
}

/* ============================================================
   ICEMEGAMENU – exakt wie Produktion
   ============================================================ */

.icemegamenu ul,
.icemegamenu li {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.icemegamenu > ul {
    position: relative;
    z-index: 999;
    clear: both;
    width: 100%;
}

.icemegamenu > ul > li {
    margin: 0 2px 0 0;
    position: relative;
    float: left;
}

.icemegamenu > ul > li a.iceMenuTitle {
    position: relative;
    z-index: 9999;
    display: block;
    padding: 3px 35px 10px;
    font-size: 18px;
    letter-spacing: 1px;
    line-height: 52px;
    color: #4d464b;
    text-decoration: none;
    font-family: 'Roboto Condensed', 'Helvetica Neue', Arial, sans-serif;
    transition: all .25s ease-out;
    background: transparent;
}

.icemegamenu > ul > li:hover > a.iceMenuTitle,
.icemegamenu > ul > li.active > a.iceMenuTitle {
    background: #ebe9e3;
}

/* Institutionen – farbige Kacheln */
#iceMenu_211 { background-color: #00A8E5; }
#iceMenu_212 { background-color: #1D3F60; }
#iceMenu_213 { background-color: #ED5700; }

/* Dropdown – CSS Hover */
ul.icesubMenu {
    background: #ebe9e3;
    position: absolute;
    z-index: 1000;
    padding: 0;
    margin: 0;
    top: 65px;
    left: 0;
    min-width: 260px;
    display: none;
}

#icemegamenu > li:hover > ul.icesubMenu {
    display: block;
}

ul.icesubMenu .iceCols { float: left; width: 100%; }

/* Institutionen – jede Kachel einzeln anklickbar */
#iceMenu_211 a.iceMenuTitle,
#iceMenu_212 a.iceMenuTitle,
#iceMenu_213 a.iceMenuTitle {
    display: block;
    padding: 14px 16px;
    color: #ffffff !important;
    font-size: 16px;
    line-height: 1.35;
    font-family: 'Roboto Condensed', 'Helvetica Neue', Arial, sans-serif;
    text-decoration: none;
    pointer-events: auto;
}

#iceMenu_211:hover { background-color: #0090c5; }
#iceMenu_212:hover { background-color: #142e4a; }
#iceMenu_213:hover { background-color: #cc4a00; }

/* Kontakt – einzelne Items mit Hover */
#iceMenu_217 a.iceMenuTitle,
#iceMenu_218 a.iceMenuTitle {
    display: block;
    padding: .9rem 1.25rem;
    color: #4d464b;
    font-size: 16px;
    line-height: 1.35;
    font-family: 'Roboto Condensed', 'Helvetica Neue', Arial, sans-serif;
    text-decoration: none;
    pointer-events: auto;
}

#iceMenu_217:hover a.iceMenuTitle { background: #d5d2cc; }
#iceMenu_218:hover a.iceMenuTitle { background: #d5d2cc; }

/* ============================================================
   BURGER-BUTTON
   ============================================================ */
#nav-burger {
    display: none;
    background: none;
    border: 1px solid #cfcbc4;
    border-radius: 4px;
    padding: 8px 10px;
    cursor: pointer;
    float: right;
    margin: 10px 0;
}
#nav-burger span {
    display: block;
    width: 22px;
    height: 2px;
    background: #4d464b;
    margin: 5px 0;
    transition: all .25s ease;
}
/* X-Animation wenn offen */
#nav-burger.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
#nav-burger.is-active span:nth-child(2) { opacity: 0; }
#nav-burger.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ============================================================
   RESPONSIVE – Tablet & Mobile (< 992px)
   ============================================================ */
@media (max-width: 991px) {

    /* Logo kleiner */
    #logo img { max-height: 65px; }
    #logo { padding-bottom: 15px; }

    /* Burger zeigen */
    #nav-burger { display: block; }

    /* Nav standardmäßig versteckt */
    #main-nav { display: none; }
    #main-nav.nav-open { display: block; }

    /* Nav-Items vertikal stapeln */
    .icemegamenu > ul { overflow: hidden; }
    .icemegamenu > ul > li {
        float: none;
        display: block;
        margin: 0;
        border-bottom: 1px solid #e0ddd8;
    }

    .icemegamenu > ul > li a.iceMenuTitle {
        padding: 12px 16px;
        line-height: 1.4;
        font-size: 16px;
    }

    /* Hover-Dropdown auf Mobil deaktivieren */
    #icemegamenu > li:hover > ul.icesubMenu { display: none; }

    /* Dropdown per Klick (.open-Klasse via JS) */
    #icemegamenu > li.open > ul.icesubMenu { display: block; }

    /* Dropdown statisch (nicht absolut) auf Mobil */
    ul.icesubMenu {
        position: static;
        width: 100%;
        min-width: 0;
        z-index: auto;
        overflow: hidden;
    }

    /* Float-Reset für verschachtelte Struktur */
    ul.icesubMenu > li,
    ul.icesubMenu .iceCols,
    ul.icesubMenu .iceCols > ul,
    ul.icesubMenu .iceCols > ul > li {
        float: none !important;
        width: 100% !important;
        display: block;
    }

    /* Institutionen: volle Breite */
    #iceMenu_211, #iceMenu_212, #iceMenu_213 { width: 100% !important; }

    /* Pfeil-Indikator für Parent-Items */
    #icemegamenu > li.parent > a.iceMenuTitle::after {
        content: ' ▾';
        font-size: 14px;
    }
    #icemegamenu > li.parent.open > a.iceMenuTitle::after {
        content: ' ▴';
    }

    /* Untermenü-Items einrücken */
    #iceMenu_217 a.iceMenuTitle,
    #iceMenu_218 a.iceMenuTitle {
        padding-left: 2rem;
    }

    #header-row { border-bottom: none; }
    #header-row::after { display: none; }
}

@media (max-width: 480px) {
    #logo img { max-height: 50px; }
}

/* ============================================================
   Footer (mobil-optimiert)
   ============================================================ */
#footer-wrapper {
    background: #3e373c;
    color: #958b92;
    text-shadow: none;
    margin-top: 60px;
}
#footer-wrapper .footer-wrapper-inner {
    background: #3e373c;
    color: #958b92;
    text-shadow: none;
    padding: 40px 15px 30px;
}
#footer-wrapper a {
    color: #958b92;
    text-decoration: none;
}
#footer-wrapper a:hover {
    color: #ffffff;
}

#copyright {
    color: #958b92;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 16px;
    line-height: 24px;
}
#copyright .siteName {
    display: block;
    color: #ffffff;
    font-size: 18px;
    letter-spacing: 1px;
    margin-bottom: 8px;
}
#copyright .copyrightText {
    display: block;
    margin-bottom: 12px;
}
#copyright .copyrightText .copy {
    margin-right: 4px;
}

/* Footer-Navigationslinks (Datenschutz/Impressum/Cookie) */
.footer-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 0;
    margin: 0;
}
.footer-links a {
    color: #958b92;
    padding: 6px 14px 6px 0;
    margin-right: 14px;
    position: relative;
    font-size: 15px;
    line-height: 1.4;
}
.footer-links a:not(:last-child)::after {
    content: '|';
    position: absolute;
    right: 0;
    color: #574f55;
    pointer-events: none;
}
.footer-links a:hover {
    color: #ffffff;
}
#copyright .cookie_link {
    cursor: pointer;
}

/* "nach oben"-Button */
#back-top {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 1000;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
}
#back-top.visible {
    opacity: 1;
    pointer-events: auto;
}
#back-top a {
    display: inline-flex;
    align-items: center;
    background: #3e373c;
    color: #958b92;
    padding: 10px 16px;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
    text-decoration: none;
    border-radius: 2px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    min-height: 44px;
}
#back-top a:hover {
    color: #ffffff;
    background: #2a2528;
}
#back-top a span {
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 7px solid #958b92;
    margin-right: 6px;
}
#back-top a:hover span {
    border-bottom-color: #ffffff;
}

/* ----- Mobile (bis 767 px) ----- */
@media (max-width: 767.98px) {
    #footer-wrapper {
        margin-top: 40px;
    }
    #footer-wrapper .footer-wrapper-inner {
        padding: 30px 15px 90px;  /* unten Platz für back-top */
        text-align: center;
    }
    #copyright {
        font-size: 15px;
        line-height: 22px;
    }
    #copyright .siteName {
        font-size: 17px;
        margin-bottom: 6px;
    }
    .footer-links {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin-top: 8px;
        border-top: 1px solid #574f55;
        padding-top: 12px;
    }
    .footer-links a {
        display: block;
        padding: 12px 8px;
        margin: 0;
        font-size: 15px;
        text-align: center;
        border-bottom: 1px solid rgba(87, 79, 85, 0.4);
        min-height: 44px; /* Touch-Target */
    }
    .footer-links a:last-child {
        border-bottom: none;
    }
    .footer-links a::after {
        display: none !important;  /* Pipe-Separator auf Mobile aus */
    }

    /* back-top kompakter und bündig */
    #back-top {
        right: 12px;
        bottom: 12px;
    }
    #back-top a {
        padding: 10px 14px;
        font-size: 13px;
    }
}

/* ----- Extra-klein (bis 360 px) ----- */
@media (max-width: 360px) {
    #footer-wrapper .footer-wrapper-inner {
        padding: 24px 10px 80px;
    }
    #copyright .siteName {
        font-size: 16px;
        letter-spacing: 0.5px;
    }
}

/* ----- Klaro-Theme: weißes Modal, schwarzer Text ----- */
.klaro .cookie-modal,
.klaro .cookie-notice {
    font-family: 'Roboto Condensed', sans-serif;
}

/* Notice (Banner unten) */
.klaro .cookie-notice {
    background: #ffffff !important;
    color: #000000 !important;
    border-top: 1px solid #d0d0d0;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.12);
}
.klaro .cookie-notice .cn-body p,
.klaro .cookie-notice .cn-body strong,
.klaro .cookie-notice .cn-body h1,
.klaro .cookie-notice .cn-body h2 {
    color: #000000 !important;
}

/* Modal (Einstellungs-Dialog) */
.klaro .cookie-modal .cm-bg {
    background: rgba(0, 0, 0, 0.6) !important;
}
.klaro .cookie-modal .cm-modal,
.klaro .cookie-modal .cm-modal.cm-klaro {
    background: #ffffff !important;
    color: #000000 !important;
}
.klaro .cookie-modal .cm-header,
.klaro .cookie-modal .cm-body,
.klaro .cookie-modal .cm-footer {
    background: #ffffff !important;
    color: #000000 !important;
}
.klaro .cookie-modal .cm-header h1,
.klaro .cookie-modal .cm-header h2,
.klaro .cookie-modal .cm-body p,
.klaro .cookie-modal .cm-body strong,
.klaro .cookie-modal .cm-list-title,
.klaro .cookie-modal .cm-list-description,
.klaro .cookie-modal .cm-purpose,
.klaro .cookie-modal .cm-services .cm-purpose p,
.klaro .cookie-modal .cm-services .cm-list-label span {
    color: #000000 !important;
}
.klaro .cookie-modal .cm-footer-buttons {
    background: #ffffff !important;
    border-top: 1px solid #e5e5e5;
}
.klaro .cookie-modal .cm-powered-by a {
    color: #555 !important;
}

/* Links */
.klaro .cookie-notice a,
.klaro .cookie-modal a {
    color: #0066cc !important;
    text-decoration: underline;
}
.klaro .cookie-notice a:hover,
.klaro .cookie-modal a:hover {
    color: #003d7a !important;
}

/* Buttons */
.klaro .cookie-notice .cn-buttons .cm-btn,
.klaro .cookie-modal .cm-btn {
    border-radius: 2px !important;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
}
.klaro .cookie-notice .cm-btn-success,
.klaro .cookie-modal .cm-btn-success {
    background: #3e373c !important;
    color: #ffffff !important;
    border: 1px solid #3e373c !important;
}
.klaro .cookie-notice .cm-btn-success:hover,
.klaro .cookie-modal .cm-btn-success:hover {
    background: #2a2528 !important;
    border-color: #2a2528 !important;
}
.klaro .cookie-notice .cm-btn-decline,
.klaro .cookie-modal .cm-btn-decline,
.klaro .cookie-modal .cm-btn-info {
    background: #ffffff !important;
    color: #3e373c !important;
    border: 1px solid #958b92 !important;
}
.klaro .cookie-notice .cm-btn-decline:hover,
.klaro .cookie-modal .cm-btn-decline:hover,
.klaro .cookie-modal .cm-btn-info:hover {
    background: #f3f3f3 !important;
}

/* Toggle-Schalter */
.klaro .cookie-modal .cm-services .cm-list-label .slider {
    background: #cccccc !important;
}
.klaro .cookie-modal .cm-services .cm-list-input:checked + .cm-list-label .slider {
    background: #3e373c !important;
}
.klaro .cookie-modal .cm-services .cm-list-input.required + .cm-list-label .slider {
    background: #958b92 !important;
}
