/* Self-hosted fonts — replaces Google Fonts external request */
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;src:url('/assets/fonts/manrope-cyrillic-ext.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;src:url('/assets/fonts/manrope-cyrillic.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;src:url('/assets/fonts/manrope-greek.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;src:url('/assets/fonts/manrope-vietnamese.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;src:url('/assets/fonts/manrope-latin-ext.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url('/assets/fonts/manrope-latin.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;src:url('/assets/fonts/space-grotesk-vietnamese.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;src:url('/assets/fonts/space-grotesk-latin-ext.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;src:url('/assets/fonts/space-grotesk-latin.woff2') format('woff2')}

*{box-sizing:border-box;}
body{margin:0;font-family:'Manrope',sans-serif;background:#0B1322;color:#0F1A2E;
  --bg:#FFFFFF;--bg2:#F4F8FD;--bg3:#E9EEF5;
  --line:rgba(15,26,46,0.10);--line2:rgba(15,26,46,0.16);
  --text:#0F1A2E;--muted:#5C6B82;
  --acc:#2F6BFF;--acc2:#1466C9;
  --acc-soft:rgba(47,107,255,0.10);
  --acc-grad:linear-gradient(120deg,#2F6BFF,#1E64E0);
  --glow:rgba(47,107,255,0.28);}
a{color:inherit;}
details summary::-webkit-details-marker{display:none;}
details summary{list-style:none;}
.kh-card{transition:all .2s;}
.kh-card:hover{border-color:var(--acc)!important;transform:translateY(-3px);}
/* Besserer Kontrast für Praxis-Karten */
.kh-card,.kh-svc{background:#E8EFF8!important;border-color:rgba(15,26,46,0.18)!important;}
.kh-feat:hover{border-color:var(--acc)!important;}
@media(max-width:820px){
  .kh-nav-desktop{display:none!important;}
  .kh-2col{grid-template-columns:1fr!important;
#kh-header-main>div>a:first-child{flex-shrink:0;display:flex;align-items:center;}
#kh-header-main>div>a:first-child img{height:36px!important;width:120px!important;display:block!important;}
}
  .kh-3col{grid-template-columns:1fr!important;}
  .kh-hero-grid{grid-template-columns:1fr!important;}
}
@keyframes kh-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.kh-cmp-picky{display:none;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
@media(max-width:820px){
  .kh-cmp-picky{display:flex!important;}
  .kh-cmp-wrap{overflow:visible!important;}
  .kh-cmp-inner{min-width:0!important;}
  .kh-cmp-row{grid-template-columns:160px 1fr!important;}
  .kh-cmpcol{display:none!important;}
  .kh-cmpcol.kh-on,.kh-cmp-lbl{display:block!important;}
}

@keyframes khPulse{0%{opacity:.5;transform:scale(1)}100%{opacity:0;transform:scale(1.85)}}
@keyframes khFloatUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.kh-fl-contact-wrap{position:fixed;right:0;top:42%;z-index:120;display:flex;align-items:stretch;transition:opacity .35s,transform .35s;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(34px);}
.kh-fl-contact-wrap.kh-vis{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0);}
.kh-fl-panel{background:linear-gradient(135deg,#141B26,#1D2632);box-shadow:-18px 0 44px -14px rgba(0,0,0,.55);overflow:hidden;border-top-left-radius:14px;border-bottom-left-radius:14px;transition:width .32s cubic-bezier(.4,0,.2,1),opacity .25s;margin-right:-1px;width:0;opacity:0;pointer-events:none;}
.kh-fl-panel.kh-open{width:288px;opacity:1;pointer-events:auto;}
.kh-fl-call{position:fixed;right:0;top:60%;z-index:115;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2F6BFF,#5FE0FF);color:#fff;border-radius:50%;box-shadow:0 16px 36px -8px rgba(47,107,255,.7);transition:opacity .35s,transform .35s;text-decoration:none;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(34px);}
.kh-fl-call.kh-vis{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0);}
.kh-fl-call::after{content:'';position:absolute;inset:0;border:2px solid rgba(47,107,255,.55);border-radius:50%;animation:khPulse 2.4s ease-out infinite;pointer-events:none;}
.kh-fl-reviews{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;flex-direction:column;gap:10px;align-items:flex-end;transition:opacity .35s,transform .35s;opacity:0;pointer-events:none;transform:translateY(22px);}
.kh-fl-reviews.kh-vis{opacity:1;pointer-events:auto;transform:translateY(0);}
.kh-fl-top{position:fixed;left:24px;bottom:84px;z-index:115;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;background:linear-gradient(135deg,#1D2632,#28323F);color:#fff;border-radius:50%;box-shadow:0 12px 28px -8px rgba(0,0,0,.5);transition:opacity .25s,transform .25s;opacity:0;pointer-events:none;transform:translateY(12px);}
.kh-fl-top.kh-vis{opacity:1;pointer-events:auto;transform:translateY(0);}

@media(max-width:860px){
  .kh-fl-reviews{display:none!important;}
  .kh-fl-call{top:auto!important;bottom:88px!important;right:16px!important;transform:none!important;width:56px!important;height:56px!important;}
  .kh-fl-call.kh-vis{transform:none!important;}
  .kh-fl-top{left:auto!important;right:20px!important;bottom:20px!important;}
  
}
/* Mobile nav overlay — hidden by default, shown via JS */
.kh-mob-nav{display:none;}
/* Mobile hamburger — hidden by default, shown on mobile via media query */
.kh-mob-btn{display:none;}
@media(max-width:820px){
  .kh-mob-btn{display:block!important;}
  .kh-hdr-cta{display:none!important;}
  .ccm-settings-summoner{display:none!important;}
}
/* ── Homepage: stat grid → single column on mobile ── */
@media(max-width:820px){
  .kh-stat-grid{grid-template-columns:1fr!important;}
  .kh-stat-grid>div:nth-child(even){display:none!important;}
}
/* ── Comparison table: hide overflow-scroll on mobile (setCmpCol handles it) ── */
@media(max-width:820px){
  .kh-cmp-picky{display:flex!important;}
  .kh-cmp-table{overflow-x:visible!important;}
}

/* CCM19: Cookie-Icon blau + Position */
.ccm-settings-summoner{bottom:10px!important;left:10px!important;background:#2F6BFF!important;border-color:#2F6BFF!important;}
@media screen and (min-width:64.0625em){.ccm-settings-summoner{bottom:10px!important;left:10px!important;}}

/* CCM19: Bottom-Bar Layout (wie suchhelden.de) */
.ccm-root .ccm-modal-bg,.ccm-root .ccm-overlay,.ccm-root [class*="overlay"]{background:rgba(0,0,0,0)!important;pointer-events:none!important;}
.ccm-root .ccm-modal,.ccm-root .ccm-cookie-box,.ccm-root [class*="modal"]:not([class*="details"]):not([class*="settings"]){position:fixed!important;bottom:0!important;left:0!important;right:0!important;top:auto!important;max-width:100%!important;width:100%!important;transform:none!important;border-radius:0!important;margin:0!important;box-shadow:0 -2px 12px rgba(0,0,0,.12)!important;}
.ccm-root .ccm-modal-inner,.ccm-root .ccm-cookie-box-inner,.ccm-root .ccm-content{display:flex!important;flex-direction:row!important;align-items:center!important;gap:24px!important;padding:16px 24px!important;flex-wrap:wrap!important;}
.ccm-root .ccm-widget--text{flex:1!important;min-width:220px!important;}
.ccm-root .ccm-widget--text p,.ccm-root .ccm-widget--text .ccm-text{font-size:13px!important;line-height:1.5!important;margin:0!important;}
.ccm-root .ccm-widget--buttons{display:flex!important;flex-direction:row!important;gap:8px!important;flex-shrink:0!important;flex-wrap:wrap!important;}

/* CCM19: Blaues Branding für ki-helden.eu */
.ccm-root .ccm-widget a:link,.ccm-root .ccm-widget a:visited,.ccm-root .ccm-widget a:hover,.ccm-root .ccm-widget a:focus{color:#2F6BFF!important;}
.ccm-root .button,.ccm-root button{color:#2F6BFF!important;border-color:#2F6BFF!important;}
.ccm-root .button:hover,.ccm-root button:hover{color:#fff!important;background:#2F6BFF!important;border-color:#1a57e0!important;}
.ccm-root input[type="checkbox"].ccm-checkbox-type--checkbox+label::after{border-color:#2F6BFF!important;color:#2F6BFF!important;}
.ccm-root input[type="checkbox"].ccm-checkbox-type--checkbox:checked+label::after{background:#2F6BFF!important;color:#fff!important;}
.ccm-root input[type="checkbox"].ccm-checkbox-type--switch:checked+label::after{background-color:#2F6BFF!important;}
.ccm-root input[type="checkbox"].ccm-checkbox-type--switch:checked+label::before{background-color:rgba(47,107,255,.25)!important;}
.ccm-details--list input[type="checkbox"]:checked:not(:indeterminate){background-color:#2F6BFF!important;}
.ccm-details--embedding-extra-table thead tr th{background:#1a57e0!important;}
.ccm-widget--buttons .button:hover,.ccm-widget--buttons button:hover{background:#2F6BFF!important;color:#fff!important;}
.ccm-link-container a:link,.ccm-link-container a:visited,.ccm-link-container a:hover,.ccm-link-container a:focus{color:#2F6BFF!important;}

/* Protect nav dropdown links from global overrides */
#kh-header-main .kh-ddm a{color:#93A2B8!important;display:block!important;}
#kh-header-main .kh-ddm a:hover{color:#fff!important;}
#kh-header-main .kh-ddm a[href*="leistungen.php"]{color:var(--acc)!important;}

/* Mobile Header: Bewertungen */
.kh-mob-ratings{display:none;flex:1;align-items:center;justify-content:center;gap:10px;}
.kh-mob-rat-item{display:flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1.25;gap:1px;}
.kh-mob-rat-stars{color:#F5A623;font-size:13px;letter-spacing:.5px;}
.kh-mob-rat-score{font:700 10px/1 Manrope,sans-serif;color:#ECF1F9;}
.kh-mob-rat-label{font:500 8px/1 Manrope,sans-serif;color:#93A2B8;letter-spacing:.5px;}
.kh-mob-rat-div{width:1px;height:28px;background:rgba(255,255,255,.15);flex-shrink:0;}
@media(max-width:820px){.kh-mob-ratings{display:flex!important;}}

/* Mobile comparison table */
@media(max-width:820px){
  .kh-cmp-table{min-width:0!important;overflow-x:hidden!important;}
  .kh-cmp-grid{display:grid!important;grid-template-columns:45% 55%!important;}
  .kh-cmpcol:not(.kh-on){display:none!important;}
}