/* Karrierehelden – Header- und Footer-Stil für die ganze Website (über WPCode eingebunden).
   Greift nur auf das Thrive-Header-Symbol (#thrive-header) und den neuen Footer (.khf). */
@font-face{font-family:"Jakarta";src:url(fonts/jakarta.woff2) format("woff2");font-weight:200 800;font-display:swap}

/* ---------- Header ---------- */
#thrive-header{position:sticky!important;top:0;z-index:999;background:rgba(255,255,255,.9)!important;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid #E3E9EC;transition:box-shadow .3s}
body.admin-bar #thrive-header{top:32px}
#thrive-header.khs-scrolled{box-shadow:0 8px 30px -12px rgba(11,30,38,.18)}
#thrive-header .symbol-section-in{padding-top:10px!important;padding-bottom:10px!important;min-height:0!important}
#thrive-header .tcb-flex-row{align-items:center!important}
#thrive-header .tcb-col{padding-top:2px!important;padding-bottom:2px!important}
#thrive-header .tcb-logo img{max-height:52px!important;width:auto!important}
#thrive-header .tcb-logo{max-width:180px!important}
#thrive-header ul.tve_w_menu > li > a,
#thrive-header ul.tve_w_menu > li > a *{font-family:"Jakarta",system-ui,sans-serif!important;font-size:15px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}
#thrive-header ul.tve_w_menu > li > a{color:#38525D!important;padding:10px 14px!important;border-radius:10px;transition:background .2s,color .2s}
#thrive-header ul.tve_w_menu > li > a:hover,
#thrive-header ul.tve_w_menu > li.current-menu-item > a{color:#0B1E26!important;background:#F5F8F9}
#thrive-header ul.tve_w_menu > li > a::after,#thrive-header ul.tve_w_menu > li > a::before{display:none!important}
#thrive-header ul.tve_w_menu .sub-menu{background:#fff!important;border:1px solid #E3E9EC!important;border-radius:16px!important;box-shadow:0 20px 40px -18px rgba(11,30,38,.3)!important;padding:8px!important;min-width:240px;width:max-content!important;max-width:min(92vw,420px)}
#thrive-header ul.tve_w_menu .sub-menu a,#thrive-header ul.tve_w_menu .sub-menu a *{font-family:"Jakarta",system-ui,sans-serif!important;font-size:14.5px!important;font-weight:600!important;color:#38525D!important;text-transform:none!important}
#thrive-header ul.tve_w_menu .sub-menu a{padding:9px 12px!important;border-radius:10px;display:block}
#thrive-header ul.tve_w_menu .sub-menu a:hover{background:#E8F6F8!important;color:#0E7C8A!important}
/* Menüpunkt mit CSS-Klasse "kh-cta" wird zum orangen Button */
#thrive-header ul.tve_w_menu > li.kh-cta > a{background:#F29A1F!important;color:#fff!important;padding:11px 20px!important;border-radius:999px!important;margin-left:8px;box-shadow:0 8px 20px -8px rgba(242,154,31,.7)}
#thrive-header ul.tve_w_menu > li.kh-cta > a:hover{background:#D9820A!important}
#thrive-header .tcb-icon-open svg,#thrive-header .tcb-icon-close svg{fill:#0B1E26!important;color:#0B1E26!important}
#thrive-header .tcb-icon-open,#thrive-header .tcb-icon-close{background:transparent!important}
@media (max-width:1023px){
  #thrive-header ul.tve_w_menu{background:#fff!important}
  #thrive-header ul.tve_w_menu > li > a{padding:14px 18px!important}
  #thrive-header ul.tve_w_menu > li.kh-cta > a{margin:10px 18px;display:inline-block;text-align:center}
}
@media (max-width:782px){body.admin-bar #thrive-header{top:0}}

/* ---------- Alter Footer aus, neuer Footer an ---------- */
#thrive-footer{display:none!important}
.khf{font-family:"Jakarta",system-ui,-apple-system,"Segoe UI",sans-serif;background:#0A1A21;color:#B8CAD1;padding:72px 0 28px;position:relative;overflow:hidden;isolation:isolate;-webkit-font-smoothing:antialiased}
.khf::before{content:"";position:absolute;right:-260px;top:-260px;width:700px;height:700px;background:radial-gradient(closest-side,rgba(26,166,183,.18),transparent 70%);z-index:-1}
.khf *{box-sizing:border-box;font-family:inherit!important}
.khf a{color:#B8CAD1;text-decoration:none;transition:color .2s}
.khf a:hover{color:#fff}
.khf .khf-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.khf .khf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px}
.khf .khf-brand img.logo{height:54px;width:auto;filter:brightness(0) invert(1);margin-bottom:18px}
.khf .khf-brand p{font-size:15px;line-height:1.6;margin:0 0 20px;max-width:340px;color:#B8CAD1}
.khf .khf-cta{display:inline-flex;align-items:center;gap:8px;background:#F29A1F;color:#fff!important;font-weight:750;font-size:15px;padding:12px 20px;border-radius:999px}
.khf .khf-cta:hover{background:#D9820A}
.khf h4{font-size:12px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:#7FD9E4;margin:6px 0 18px}
.khf ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.khf li{font-size:15px;line-height:1.4;margin:0}
.khf .khf-seals{display:flex;gap:14px;align-items:center;margin-top:44px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1);flex-wrap:wrap}
.khf .khf-seals img{height:64px;width:auto;background:#fff;border-radius:10px;padding:4px}
.khf .khf-seals .pe{background:transparent;padding:0}
.khf .khf-seals span{font-size:14px;color:#8FA6AF;margin-left:6px}
.khf .khf-seals span strong{color:#fff;display:block;font-size:15px}
.khf .khf-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:13.5px;color:#7F96A0}
.khf .khf-bottom nav{display:flex;gap:18px;flex-wrap:wrap}
.khf .khf-bottom a{color:#7F96A0}
.khf .khf-bottom a:hover{color:#fff}
@media (max-width:980px){.khf .khf-grid{grid-template-columns:1fr 1fr}.khf .khf-brand{grid-column:1/-1}}
@media (max-width:560px){.khf{padding:56px 0 100px}.khf .khf-wrap{padding:0 16px}.khf .khf-grid{grid-template-columns:1fr;gap:32px}.khf .khf-seals img{height:54px}}

/* Theme-Listenabstände im Footer neutralisieren */
.khf ul,.khf ol{padding:0!important;margin:0!important;list-style:none!important}
.khf li{padding:0!important;margin:0!important;list-style:none!important}
.khf li::before,.khf li::marker{content:none!important;display:none!important}
.khf p{margin-left:0!important;padding:0!important}

/* Nachtrag: Karten-Raster für Seiten, deren kh-Version es noch nicht enthält */

/* Baustein: Artikel- und Fallbeispiel-Karten */
.khr .art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.khr .art{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line);transition:transform .3s,box-shadow .3s}
.khr .art:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.khr .art .im{aspect-ratio:16/9;overflow:hidden;background:var(--bg-2)}
.khr .art .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.khr .art:hover .im img{transform:scale(1.05)}
.khr .art .tx{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px}
.khr .art .cat{font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-d)}
.khr .art h3{font-size:19px}
@media (max-width:1060px){.khr .art-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.khr .art-grid{grid-template-columns:1fr}}
.khr .case-grid .im{aspect-ratio:4/3}
.khr .case-grid .im img{object-position:50% 20%}

/* Dropdown: Einträge füllen die Box, nichts ragt heraus */
#thrive-header ul.tve_w_menu .sub-menu li{width:100%!important;margin:0!important;box-sizing:border-box}
#thrive-header ul.tve_w_menu .sub-menu a{white-space:nowrap;box-sizing:border-box;width:100%}
#thrive-header ul.tve_w_menu .sub-menu a:hover{color:#0E7C8A!important}

/* Cookie-Dialog (Borlabs) vertikal mittig statt am unteren Rand */
.brlbs-dialog-positioner{align-items:center!important}

/* Dropdown: Thrive-Abstände am Listeneintrag neutralisieren, Markierung bleibt in der Box */
#thrive-header ul.tve_w_menu .sub-menu{overflow:hidden!important;box-sizing:border-box}
#thrive-header ul.tve_w_menu .sub-menu li,
#thrive-header ul.tve_w_menu .sub-menu li:hover{padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;border:0!important}
#thrive-header ul.tve_w_menu .sub-menu li > a{display:block!important;margin:0!important}
#thrive-header ul.tve_w_menu .sub-menu li > a::before,#thrive-header ul.tve_w_menu .sub-menu li > a::after{display:none!important}
#thrive-header ul.tve_w_menu .sub-menu{height:auto!important;max-height:none!important;min-height:0!important}
#thrive-header ul.tve_w_menu .sub-menu li{height:auto!important;min-height:0!important;line-height:normal!important}
#thrive-header ul.tve_w_menu .sub-menu li > a,#thrive-header ul.tve_w_menu .sub-menu li > a *{line-height:22px!important}

/* Alte Thrive-Seiten: Abstand unter dem schlankeren Header (deren Inhalte haben teils negative Abstände) */
body:not(:has(.khr-page)) #thrive-header{margin-bottom:60px!important}
