@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;1,9..144,400&family=Lato:wght@300;400;700;900&display=swap');

/* ===== KH GLOBAL — Footer (UX-Block, via Child-Template) ===== */
.kh-footer{background:#0b2044;color:#cdd7e6;font-family:'Lato',sans-serif}
.kh-footer .kh-foot-logo{max-width:175px;height:auto;margin-bottom:18px}
.kh-footer .kh-foot-tag{font-size:14px;line-height:1.7;color:#9fb0c7;max-width:32ch}
.kh-footer .kh-foot-h{font-family:'Fraunces',Georgia,serif;color:#fff;font-size:18px;margin:0 0 16px;font-weight:600}
.kh-footer .kh-foot-links{list-style:none;margin:0;padding:0}
.kh-footer .kh-foot-links li{margin-bottom:10px;font-size:14.5px;color:#cdd7e6}
.kh-footer .kh-foot-links a{color:#cdd7e6;text-decoration:none;transition:color .2s}
.kh-footer .kh-foot-links a:hover{color:#d7a94a}
.kh-foot-bottom{background:#081834}
.kh-foot-bottom .kh-foot-copy{text-align:center;font-size:13px;color:#8b98a8;margin:0}
/* Flatsome Standard-Absolute-Footer global ausblenden (eigener im Block) */
.absolute-footer, .footer-widgets.footer-2{display:none!important}

/* ===== KH GLOBAL — Header (UX-Block via flatsome_before_header) ===== */
#header{display:none!important}              /* Flatsome-Default-Header global aus */
.kh-topbar{background:#0b2044;color:#cdd7e6;font-family:'Lato',sans-serif;font-size:13px}
.kh-topbar .kh-tb-inner{max-width:1240px;margin:0 auto;padding:9px 5vw;display:flex;justify-content:space-between;align-items:center;gap:16px}
.kh-topbar a{color:#cdd7e6;text-decoration:none}
.kh-topbar a:hover{color:#d7a94a}
.kh-topbar .kh-tb-tag{opacity:.8}
.kh-header{position:sticky;top:0;z-index:999;background:#fff;box-shadow:0 2px 14px rgba(15,23,42,.07);font-family:'Lato',sans-serif}
.kh-header .kh-h-inner{max-width:1240px;margin:0 auto;padding:14px 5vw;display:flex;align-items:center;gap:24px}
.kh-logo{flex:0 0 auto;line-height:0}
.kh-logo img{height:52px;width:auto;display:block}
.kh-nav{margin-left:auto;display:flex;align-items:center;gap:30px}
.kh-nav a{color:#15325c;text-decoration:none;font-size:15px;font-weight:700;letter-spacing:.2px;transition:color .2s}
.kh-nav a:hover{color:#1b81c4}
.kh-nav .kh-cta{background:#b20000;color:#fff;padding:12px 24px;border-radius:999px;font-weight:900;transition:background .25s}
.kh-nav .kh-cta:hover{background:#8a0000;color:#fff}
.kh-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto;padding:8px}
.kh-burger span{width:26px;height:2.5px;background:#15325c;border-radius:2px;transition:.25s}
@media(max-width:960px){
  .kh-burger{display:flex}
  .kh-nav{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0;max-height:0;overflow:hidden;box-shadow:0 12px 24px rgba(15,23,42,.12);transition:max-height .3s ease}
  .kh-nav a{padding:15px 5vw;border-top:1px solid rgba(15,23,42,.07)}
  .kh-nav .kh-cta{margin:14px 5vw;text-align:center;border-radius:999px}
  .kh-nav-toggle:checked ~ .kh-nav{max-height:420px}
  .kh-header .kh-h-inner{position:relative}
  .kh-topbar .kh-tb-tag{display:none}
}
.kh-nav-toggle{display:none!important}

/* 16.06.2026 — Footer-Block via flatsome_footer-Hook; Flatsome-Default-Reihen aus */
.footer-widgets{display:none!important}
.kh-footer{padding-top:64px;padding-bottom:56px}

/* 16.06.2026 — Footer Bankdaten + weißen Default-Footer entfernen */
.kh-footer .kh-foot-bank p{font-size:13.5px;line-height:1.7;color:#cdd7e6;margin:0 0 6px}
.kh-footer .kh-foot-bank strong{color:#fff;font-weight:700}
.footer-widgets,.absolute-footer,#colophon,.footer-2{display:none!important}

/* 16.06.2026 — Header: volles Menü mit Dropdowns */
.kh-nav{gap:22px}
.kh-nav .kh-nav-item{position:relative;display:inline-flex;align-items:center}
.kh-nav .kh-nav-item > a{display:inline-flex;align-items:center}
.kh-nav .kh-has-sub > a::after{content:"";display:inline-block;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:7px;margin-top:-3px;opacity:.65}
.kh-sub{position:absolute;top:100%;left:0;min-width:240px;background:#fff;box-shadow:0 18px 44px rgba(15,23,42,.17);border-radius:12px;padding:10px 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:1001;display:block}
.kh-nav .kh-nav-item:hover .kh-sub{opacity:1;visibility:visible;transform:translateY(0)}
.kh-sub a{display:block;padding:9px 22px;font-size:14px;font-weight:700;color:#15325c;white-space:nowrap}
.kh-sub a:hover{background:#f4f7fb;color:#1b81c4}
.kh-header .kh-h-inner{gap:18px}
.kh-nav a, .kh-nav .kh-nav-item > a{font-size:14.5px}
@media(max-width:1100px){.kh-nav{gap:16px}.kh-nav a,.kh-nav .kh-nav-item>a{font-size:13.5px}}
@media(max-width:960px){
  .kh-sub{display:none!important}
  .kh-nav .kh-nav-item{display:block;width:100%}
  .kh-nav .kh-has-sub > a::after{display:none}
}

/* 16.06.2026 — Schwebender "Jetzt spenden"-Button (auffällig, site-weit -> /spenden-helfen/) */
.kh-float-donate{position:fixed;bottom:22px;right:22px;z-index:9990;display:inline-flex;align-items:center;gap:9px;background:#b20000;color:#fff!important;font-family:'Lato',sans-serif;font-weight:900;font-size:15px;padding:15px 26px;border-radius:999px;text-decoration:none;box-shadow:0 12px 30px rgba(178,0,0,.4);transition:transform .2s,box-shadow .2s;animation:khpulse 2.6s ease-in-out infinite}
.kh-float-donate:hover{transform:translateY(-3px) scale(1.03);background:#8a0000;color:#fff!important;box-shadow:0 16px 40px rgba(178,0,0,.5)}
@keyframes khpulse{0%,100%{box-shadow:0 12px 30px rgba(178,0,0,.40)}50%{box-shadow:0 12px 30px rgba(178,0,0,.40),0 0 0 13px rgba(178,0,0,.07)}}
@media(max-width:600px){.kh-float-donate{bottom:14px;right:14px;padding:12px 20px;font-size:14px}}
body.page-id-4924 .kh-float-donate{display:none!important}

/* 16.06.2026 — Sektions-Abstände global für ALLE Redesign-Seiten (Body-Klasse kh-redesign) */
.kh-redesign .section{padding-top:74px!important;padding-bottom:74px!important}
.kh-redesign .section--tight{padding-top:48px!important;padding-bottom:48px!important}
.kh-redesign .trust-bar{padding-top:38px!important;padding-bottom:38px!important}
.kh-redesign .kh-footer{padding-top:60px!important;padding-bottom:34px!important}
.kh-redesign .kh-foot-bottom{padding-top:16px!important;padding-bottom:16px!important}
.kh-redesign .donate-wrap{padding-top:56px!important;padding-bottom:56px!important}
.kh-redesign .quick-contact{padding-top:34px!important;padding-bottom:34px!important}

/* 16.06.2026 — Redesign-Hero global FIX (Hoehe gegen .kh-redesign .section) */
.kh-redesign .section.hero{padding:104px 0 86px!important;min-height:400px!important;display:flex;align-items:center}
.kh-redesign .section.hero .section-content{width:100%}

/* 16.06.2026 — Hero FINAL volle Bildflaeche, KEINE blauen Baender (padding:0 + section-content fuellt) */
.kh-redesign .section.hero{padding:0!important;min-height:440px!important;display:flex!important;align-items:stretch!important;position:relative!important;overflow:hidden}
.kh-redesign .section.hero .section-bg{display:none!important}
.kh-redesign .section.hero .section-content{display:flex!important;align-items:center!important;width:100%!important;min-height:440px!important}
.kh-redesign .section.hero .hero__bg{position:absolute!important;inset:0!important;z-index:0!important;background-size:cover!important;background-position:center 38%!important}
.kh-redesign .section.hero::before{z-index:1!important}
.kh-redesign .section.hero .container{position:relative!important;z-index:2!important}

/* 16.06.2026 — Hero Overlay dunkler (Lesbarkeit ueber hellen Bildern) */
.kh-redesign .section.hero::before{background:linear-gradient(105deg,rgba(7,22,48,.94) 0%,rgba(9,26,56,.88) 42%,rgba(12,34,72,.62) 74%,rgba(14,40,82,.42) 100%)!important}

/* 17.06.2026 — reCAPTCHA v3 Badge ausblenden (Hinweis steht im Footer) */
.grecaptcha-badge{visibility:hidden!important}
.kh-recaptcha-note{display:block;margin-top:8px;font-size:12px;opacity:.7}
.kh-recaptcha-note a{color:inherit;text-decoration:underline}

/* 17.06.2026 — Hero Overlay STARK (Lesbarkeit ueberall, auch ueber hellen Bildern) */
.kh-redesign .section.hero::before{background:linear-gradient(100deg,rgba(6,18,42,.92) 0%,rgba(8,22,50,.88) 50%,rgba(9,26,58,.80) 100%)!important}
.kh-redesign .section.hero h1,.kh-redesign .section.hero .hero__lead,.kh-redesign .section.hero .hero__eyebrow{text-shadow:0 2px 14px rgba(0,0,0,.45)}

/* ===== Social-Icons Topbar (Instagram + Facebook) 17.06. ===== */
.kh-topbar .kh-tb-social{display:inline-flex;align-items:center;gap:14px;margin-left:18px}
.kh-topbar .kh-tb-social a{display:inline-flex;color:rgba(255,255,255,.85);transition:color .2s}
.kh-topbar .kh-tb-social a:hover{color:#d7a94a}
.kh-topbar .kh-tb-social svg{width:17px;height:17px;display:block}

/* ===== 17.06.2026 MOBIL-FIXES (kritisch, live) ===== */
/* 1) Burger zeigt nicht (Flatsome input[type=checkbox]+label{display:inline} 0,1,1 schlug .kh-burger) */
.kh-burger{display:none!important}
@media(max-width:960px){ .kh-burger{display:flex!important} }
/* 2) Schwebenden Spenden-Button mobil ausblenden (verhinderte doppelten CTA + verdeckte Klicks) */
@media(max-width:768px){ .kh-float-donate{display:none!important} }
/* 3) Projekte-Filter "Filter nach Bereich" mobil sauber umbrechen statt zerbrechen */
@media(max-width:768px){
  .filter-wrap .filter-inner{padding-left:14px!important;padding-right:14px!important}
  .filter-wrap .filter-label{text-align:center;margin-bottom:10px}
  .filter-wrap .filter-tabs{flex-wrap:wrap!important;gap:8px!important;justify-content:center}
  .filter-wrap .filter-tab{font-size:13px}
}
/* 17.06. Mobil-Menü: alle 24 Links erreichbar (24 passen nicht in 420px) */
@media(max-width:960px){ .kh-nav-toggle:checked ~ .kh-nav{max-height:85vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch} }

/* 17.06. Filter-Container mobil: Label oben, Tabs zentriert umbrechen (statt Label links / Tabs schmale Spalte rechts) */
@media(max-width:768px){
  .filter-wrap .filter-inner{flex-direction:column!important;align-items:stretch!important;gap:6px}
  .filter-wrap .filter-label{text-align:center;margin:0 0 8px}
  .filter-wrap .filter-tabs{flex-wrap:wrap!important;justify-content:center!important;width:100%;gap:8px!important}
  .filter-wrap .filter-tab{font-size:12.5px;padding:9px 15px;white-space:nowrap}
}
