/* ============================================================
   KxK GLOBAL — gemeinsame Komponenten-Styles (1:1 aus WordPress)
   Wird auf allen Seiten eingebunden. Stylt: Carousel, Tabs, Charts,
   Accordion, Pipeline, Focus-Award, Comparison, Testimonials,
   Why-Grid, Founder-Cards, Contact-Persons, Pills, Metrics, Form, Nav.
   ============================================================ */

/* ── KxK Global ── */
* { box-sizing: border-box; }
/* ── Carousel ── */
.kxk-carousel-wrapper { overflow:hidden; position:relative; width:100%; }
.kxk-carousel-wrapper::before,.kxk-carousel-wrapper::after {
  content:''; position:absolute; top:0; bottom:0; width:80px; z-index:2; pointer-events:none;
}
.kxk-carousel-wrapper::before { left:0; background:linear-gradient(to right,#F5F7FB,transparent); }
.kxk-carousel-wrapper::after  { right:0; background:linear-gradient(to left,#F5F7FB,transparent); }
.kxk-carousel-track { display:flex; align-items:center; width:max-content; animation:kxkScroll 56s linear infinite; }
.kxk-carousel-track:hover { animation-play-state:paused; }
@keyframes kxkScroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.kxk-logo-item { display:flex; align-items:center; justify-content:center; padding:0 44px; height:60px; border-right:1px solid #D0DAED; flex-shrink:0; }
.kxk-logo-item img { max-height:32px; max-width:130px; width:auto; object-fit:contain; filter:grayscale(100%) opacity(0.5); transition:filter 0.3s,transform 0.3s; }
.kxk-logo-item img:hover { filter:grayscale(0%) opacity(1); transform:scale(1.08); }
/* ── Tabs ── */
.kxk-tabs { font-family:Sofia Sans,sans-serif; }
.kxk-tab-nav { display:flex; flex-wrap:wrap; border-bottom:2px solid #D0DAED; margin-bottom:32px; gap:0; }
.kxk-tab-btn { font-family:Sofia Sans,sans-serif; font-size:14px; font-weight:600; color:#6E82A0; background:none; border:none; padding:12px 20px; cursor:pointer; position:relative; transition:color 0.2s; white-space:nowrap; }
.kxk-tab-btn::after { content:''; position:absolute; bottom:-2px; left:0; right:0; height:2px; background:#0A3B8C; transform:scaleX(0); transition:transform 0.25s; }
.kxk-tab-btn.active { color:#0A3B8C; }
.kxk-tab-btn.active::after { transform:scaleX(1); }
.kxk-tab-panel { display:none; }
.kxk-tab-panel.active { display:block; animation:kxkFadeUp 0.35s ease; }
.kxk-tab-inner { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
@media(max-width:768px){ .kxk-tab-inner { grid-template-columns:1fr; gap:28px; } }
@keyframes kxkFadeUp { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.kxk-tab-panel h3 { font-family:Sofia Sans,sans-serif; font-size:22px; font-weight:800; color:#0D1B2A; margin-bottom:14px; line-height:1.2; }
.kxk-tab-panel p { font-size:15px; color:#3D5170; line-height:1.7; margin-bottom:12px; }
.kxk-verdict { padding:16px 20px; background:#E8EEF8; border-left:3px solid #0A3B8C; border-radius:0 6px 6px 0; font-size:14px; color:#0A3B8C; font-style:italic; font-weight:500; line-height:1.5; margin-top:18px; }
/* ── Charts ── */
.kxk-chart { background:#F5F7FB; border:1px solid #D0DAED; border-radius:12px; padding:22px; }
.kxk-chart-title { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:#6E82A0; margin-bottom:18px; }
.kxk-bar-label { font-family:Sofia Sans,sans-serif; font-size:12px; color:#3D5170; font-weight:500; margin-bottom:5px; }
.kxk-bar-track { height:9px; background:#D0DAED; border-radius:99px; overflow:hidden; margin-bottom:4px; }
.kxk-bar-fill { height:100%; border-radius:99px; background:#0A3B8C; width:0; transition:width 0.9s cubic-bezier(.4,0,.2,1); }
.kxk-bar-fill.gold { background:#C9A84C; }
.kxk-bar-meta { font-family:Sofia Sans,sans-serif; font-size:11px; color:#6E82A0; margin-bottom:12px; }
.kxk-funnel { display:flex; flex-direction:column; align-items:center; gap:4px; }
.kxk-funnel-tier { border-radius:6px; padding:11px 16px; text-align:center; color:#fff; font-family:Sofia Sans,sans-serif; font-size:13px; font-weight:600; transition:transform 0.2s; }
.kxk-funnel-tier span { display:block; font-size:11px; font-weight:400; opacity:0.7; margin-top:2px; }
/* ── Accordion ── */
.kxk-acc { font-family:Sofia Sans,sans-serif; }
.kxk-step { display:grid; grid-template-columns:52px 1fr; gap:18px; align-items:start; padding:22px 0; border-bottom:1px solid #D0DAED; cursor:pointer; transition:background 0.15s; }
.kxk-step:first-child { border-top:1px solid #D0DAED; }
.kxk-step-num { width:38px; height:38px; border-radius:50%; background:#E8EEF8; color:#0A3B8C; font-size:15px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:background 0.25s,color 0.25s; }
.kxk-step.open .kxk-step-num { background:#0A3B8C; color:#fff; }
.kxk-step h3 { font-size:15px; font-weight:700; color:#0D1B2A; margin-bottom:3px; }
.kxk-step-time { font-size:12px; color:#6E82A0; }
.kxk-step-detail { display:none; margin-top:10px; font-size:14px; color:#3D5170; line-height:1.65; }
.kxk-step.open .kxk-step-detail { display:block; animation:kxkFadeUp 0.3s ease; }
/* ── Pipeline ── */
.kxk-pipeline { background:#F5F7FB; border:1px solid #D0DAED; border-radius:12px; padding:22px; margin-bottom:16px; }
.kxk-pipe-title { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:#6E82A0; margin-bottom:18px; }
.kxk-pipe-row { border-radius:7px; padding:12px 15px; display:flex; justify-content:space-between; align-items:center; font-family:Sofia Sans,sans-serif; font-size:13px; font-weight:700; margin-bottom:6px; }
.kxk-pipe-arrow { text-align:center; color:#6E82A0; font-size:16px; margin:2px 0; }
.kxk-badge { font-size:11px; font-weight:600; padding:3px 10px; border-radius:99px; }
/* ── Focus Award ── */
.kxk-focus-strip { display:grid; grid-template-columns:300px 1fr; gap:52px; align-items:center; padding:52px 0; border-top:1px solid #D0DAED; border-bottom:1px solid #D0DAED; margin-bottom:48px; }
@media(max-width:900px){ .kxk-focus-strip { grid-template-columns:1fr; gap:32px; } }
.kxk-focus-img { width:100%; max-width:280px; height:auto; border-radius:8px; box-shadow:0 16px 48px rgba(10,59,140,0.15); transition:transform 0.3s; }
.kxk-focus-img:hover { transform:scale(1.02); }
.kxk-focus-title { font-family:Sofia Sans,sans-serif; font-size:22px; font-weight:800; color:#0D1B2A; margin-bottom:12px; line-height:1.2; }
.kxk-focus-text { font-size:15px; color:#3D5170; line-height:1.7; margin-bottom:20px; }
.kxk-focus-criteria { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
@media(max-width:600px){ .kxk-focus-criteria { grid-template-columns:1fr; } }
.kxk-focus-criterion { font-family:Sofia Sans,sans-serif; font-size:13px; font-weight:600; color:#3D5170; display:flex; align-items:center; gap:8px; }
.kxk-focus-criterion .star { color:#C9A84C; }
/* ── Comparison ── */
.kxk-compare { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:40px; }
@media(max-width:600px){ .kxk-compare { grid-template-columns:1fr; } }
.kxk-compare-col { border-radius:10px; padding:22px; border:1px solid #D0DAED; }
.kxk-compare-col.blue { background:#E8EEF8; border-color:rgba(10,59,140,0.2); }
.kxk-compare-head { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:14px; }
.kxk-compare-col.blue .kxk-compare-head { color:#0A3B8C; }
.kxk-compare-item { font-family:Sofia Sans,sans-serif; font-size:14px; color:#3D5170; line-height:1.6; padding:9px 0; border-bottom:1px solid #D0DAED; }
.kxk-compare-item:last-child { border-bottom:none; }
/* ── Testimonials ── */
.kxk-testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
@media(max-width:900px){ .kxk-testi-grid { grid-template-columns:1fr; } }
@media(min-width:601px) and (max-width:900px){ .kxk-testi-grid { grid-template-columns:1fr 1fr; } }
.kxk-testi { background:#fff; border-radius:12px; padding:28px; border:1px solid #D0DAED; display:flex; flex-direction:column; gap:16px; transition:transform 0.3s,box-shadow 0.3s; }
.kxk-testi:hover { transform:translateY(-4px); box-shadow:0 20px 48px rgba(10,59,140,0.1); }
.kxk-stars { color:#C9A84C; font-size:13px; letter-spacing:2px; }
.kxk-testi p { font-family:Sofia Sans,sans-serif; font-size:15px; color:#3D5170; line-height:1.65; flex:1; }
.kxk-testi-name { font-family:Sofia Sans,sans-serif; font-size:14px; font-weight:700; color:#2962C7; display:block; }
.kxk-testi-role { font-family:Sofia Sans,sans-serif; font-size:12px; color:#6E82A0; }
/* ── Why Grid ── */
.kxk-why-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:rgba(255,255,255,0.1); border-radius:12px; overflow:hidden; }
@media(max-width:900px){ .kxk-why-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:480px){ .kxk-why-grid { grid-template-columns:1fr; } }
.kxk-why-card { background:rgba(255,255,255,0.06); padding:30px 24px; display:flex; flex-direction:column; gap:14px; transition:background 0.2s; }
.kxk-why-card:hover { background:rgba(255,255,255,0.1); }
.kxk-why-icon { font-size:26px; }
.kxk-why-card h3 { font-family:Sofia Sans,sans-serif; font-size:15px; font-weight:700; color:#fff; line-height:1.3; }
.kxk-why-card p { font-family:Sofia Sans,sans-serif; font-size:13px; color:rgba(255,255,255,0.55); line-height:1.65; }
/* ── Founder Cards ── */
.kxk-founders { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media(max-width:600px){ .kxk-founders { grid-template-columns:1fr; } }
.kxk-founder-card { border-radius:12px; overflow:hidden; border:1px solid #D0DAED; background:#E8EEF8; transition:transform 0.3s,box-shadow 0.3s; }
.kxk-founder-card:hover { transform:translateY(-4px); box-shadow:0 20px 48px rgba(10,59,140,0.15); }
.kxk-founder-img { height:260px; overflow:hidden; }
.kxk-founder-img img { width:100%; height:100%; object-fit:cover; object-position:top; display:block; }
.kxk-founder-info { padding:18px; }
.kxk-founder-info strong { display:block; font-family:Sofia Sans,sans-serif; font-size:15px; font-weight:700; color:#0D1B2A; margin-bottom:2px; }
.kxk-founder-info span { font-family:Sofia Sans,sans-serif; font-size:11px; color:#6E82A0; display:block; margin-bottom:10px; }
.kxk-founder-info a { display:block; font-family:Sofia Sans,sans-serif; font-size:12px; color:#2962C7; text-decoration:none; margin-bottom:3px; }
/* ── Contact Persons ── */
.kxk-cp { display:flex; align-items:center; gap:14px; padding:15px 17px; background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.1); border-radius:10px; margin-bottom:12px; transition:background 0.2s; }
.kxk-cp:hover { background:rgba(255,255,255,0.11); }
.kxk-cp-avatar { width:44px; height:44px; border-radius:50%; overflow:hidden; flex-shrink:0; }
.kxk-cp-avatar img { width:100%; height:100%; object-fit:cover; object-position:top; }
.kxk-cp-info strong { display:block; font-family:Sofia Sans,sans-serif; font-size:14px; font-weight:700; color:#fff; margin-bottom:3px; }
.kxk-cp-info a { display:block; font-family:Sofia Sans,sans-serif; font-size:12px; color:rgba(255,255,255,0.55); text-decoration:none; line-height:1.7; }
.kxk-cp-info a:hover { color:#fff; }
/* ── Pills ── */
.kxk-pills { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.kxk-pill { background:#E8EEF8; color:#0A3B8C; font-family:Sofia Sans,sans-serif; font-size:13px; font-weight:600; padding:7px 14px; border-radius:99px; border:1px solid rgba(10,59,140,0.15); }
/* ── Metrics ── */
.kxk-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:#D0DAED; border-radius:10px; overflow:hidden; margin-bottom:40px; }
@media(max-width:600px){ .kxk-metrics { grid-template-columns:1fr 1fr; } }
.kxk-metric { background:#fff; padding:26px 18px; text-align:center; transition:background 0.2s; }
.kxk-metric:hover { background:#E8EEF8; }
.kxk-metric-val { font-family:Sofia Sans,sans-serif; font-size:34px; font-weight:900; color:#0A3B8C; line-height:1; margin-bottom:6px; }
.kxk-metric-label { font-family:Sofia Sans,sans-serif; font-size:12px; color:#6E82A0; font-weight:500; }
/* ── Hero Trust Card ── */
.kxk-hero-trust { background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.12); border-radius:16px; padding:32px; }
.kxk-trust-metrics { display:grid; grid-template-columns:1fr 1fr; gap:2px; background:rgba(255,255,255,0.1); border-radius:10px; overflow:hidden; margin-bottom:22px; }
.kxk-trust-metric { background:rgba(255,255,255,0.05); padding:18px; }
.kxk-trust-val { font-family:Sofia Sans,sans-serif; font-size:28px; font-weight:900; color:#fff; line-height:1; margin-bottom:5px; }
.kxk-trust-label { font-family:Sofia Sans,sans-serif; font-size:12px; color:rgba(255,255,255,0.5); }
.kxk-trust-logos-label { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,0.35); margin-bottom:10px; }
.kxk-trust-logos { display:flex; flex-wrap:wrap; gap:14px; }
.kxk-trust-logo { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:700; color:rgba(255,255,255,0.4); text-transform:uppercase; letter-spacing:1px; }
/* ── Form ── */
.kxk-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
@media(max-width:600px){ .kxk-form-grid { grid-template-columns:1fr; } }
.kxk-form-group { display:flex; flex-direction:column; gap:5px; }
.kxk-form-group.full { grid-column:1/-1; }
.kxk-form-group label { font-family:Sofia Sans,sans-serif; font-size:11px; font-weight:700; color:#3D5170; letter-spacing:1px; text-transform:uppercase; }
.kxk-form-group input,.kxk-form-group select,.kxk-form-group textarea { width:100%; padding:11px 13px; border:1.5px solid #D0DAED; border-radius:7px; font-family:Sofia Sans,sans-serif; font-size:14px; color:#0D1B2A; background:#F5F7FB; transition:border-color 0.2s; outline:none; appearance:none; }
.kxk-form-group input:focus,.kxk-form-group select:focus,.kxk-form-group textarea:focus { border-color:#2962C7; background:#fff; }
.kxk-form-group textarea { resize:vertical; min-height:85px; }
.kxk-form-submit { width:100%; margin-top:20px; padding:15px; background:#0A3B8C; color:#fff; font-family:Sofia Sans,sans-serif; font-weight:700; font-size:15px; border:none; border-radius:7px; cursor:pointer; transition:background 0.2s; letter-spacing:0.3px; }
.kxk-form-submit:hover { background:#1A52A8; }
/* ── Nav ── */
.kxk-nav-logo img { height:40px; width:auto; filter:brightness(0) invert(1); }
@media(max-width:600px){ .kxk-nav-logo img { height:32px; } }
/* ── Responsive helpers ── */
@media(max-width:768px){
  .kxk-approach-grid { grid-template-columns:1fr !important; }
  .kxk-claim-grid { grid-template-columns:1fr !important; }
  .kxk-claim-img { display:none; }
}

/* ===================== BRANCHEN-LANDINGPAGES ===================== */
.kxk-ind-hero{background:#0A1F44;color:#fff;padding:150px 0 80px;position:relative}
.kxk-ind-sec{padding:80px 0}
.kxk-ind-eyebrow{font-family:'Sofia Sans',sans-serif;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#0A3B8C;margin:0 0 16px}
.kxk-ind-hero .kxk-ind-eyebrow{color:rgba(255,255,255,.5)}
.kxk-ind-h1{font-family:'Sofia Sans',sans-serif;font-size:clamp(2.1rem,4.5vw,3.3rem);font-weight:800;line-height:1.08;color:#fff;margin:0 0 20px}
.kxk-ind-h1 span{color:#C9A84C}
.kxk-ind-sub{font-family:'Sofia Sans',sans-serif;font-size:1.05rem;color:rgba(255,255,255,.78);line-height:1.65;max-width:640px;margin:0 0 34px}
.kxk-ind-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:780px}
.kxk-ind-kpi{border-top:2px solid rgba(255,255,255,.2);padding-top:14px}
.kxk-kpi-num{font-family:'Sofia Sans',sans-serif;font-size:1.7rem;font-weight:800;color:#fff;line-height:1}
.kxk-kpi-label{font-family:'Sofia Sans',sans-serif;font-size:.72rem;color:rgba(255,255,255,.6);margin-top:6px}
.kxk-ind-h2{font-family:'Sofia Sans',sans-serif;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;color:#0D1B2A;line-height:1.15;margin:0 0 16px}
.kxk-ind-lead{font-family:'Sofia Sans',sans-serif;font-size:15px;color:#3D5170;line-height:1.7;max-width:660px;margin:0 0 38px}
.kxk-pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.kxk-pain-card{background:#F5F7FB;border:1px solid #D0DAED;border-radius:12px;padding:28px 24px}
.kxk-pain-icon{font-size:22px;margin-bottom:12px}
.kxk-pain-title{font-family:'Sofia Sans',sans-serif;font-size:1rem;font-weight:700;color:#0D1B2A;margin-bottom:8px}
.kxk-pain-text{font-family:'Sofia Sans',sans-serif;font-size:.85rem;color:#6E82A0;line-height:1.6;margin:0}
.kxk-ind-ref{background:#0A2452;border-radius:14px;padding:36px 34px;max-width:860px;margin:0 auto}
.kxk-ind-ref-quote{font-family:'Sofia Sans',sans-serif;font-size:1.15rem;color:#fff;line-height:1.6;font-style:italic;margin:0 0 18px}
.kxk-ind-ref-name{font-family:'Sofia Sans',sans-serif;font-weight:700;color:#fff;font-size:.95rem}
.kxk-ind-ref-role{font-family:'Sofia Sans',sans-serif;color:#C9A84C;font-size:.82rem}
.kxk-roles{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.kxk-role-pill{font-family:'Sofia Sans',sans-serif;font-size:.9rem;font-weight:600;color:#0A3B8C;background:#EAF0F8;padding:10px 18px;border-radius:99px}
.kxk-ind-tags{display:flex;flex-wrap:wrap;gap:8px}
.kxk-ind-tag{font-family:'Sofia Sans',sans-serif;font-size:.78rem;color:#6E82A0;border:1px solid #D0DAED;padding:6px 14px;border-radius:99px}
.kxk-isteps{display:flex;flex-direction:column;gap:14px}
.kxk-istep{display:grid;grid-template-columns:48px 1fr;gap:22px;align-items:start;background:#fff;border:1px solid #D0DAED;border-radius:12px;padding:22px 24px}
.kxk-istep-num{width:40px;height:40px;border-radius:50%;background:#0A2452;color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Sofia Sans',sans-serif;font-weight:800}
.kxk-istep-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.kxk-istep-title{font-family:'Sofia Sans',sans-serif;font-weight:700;color:#0D1B2A;font-size:1rem}
.kxk-istep-badge{font-family:'Sofia Sans',sans-serif;font-size:.72rem;font-weight:700;color:#0A3B8C;background:#EAF0F8;padding:3px 10px;border-radius:99px}
.kxk-istep-text{font-family:'Sofia Sans',sans-serif;font-size:.88rem;color:#6E82A0;line-height:1.6;margin:0}
.kxk-ind-prose p{font-family:'Sofia Sans',sans-serif;font-size:.98rem;color:#3D5170;line-height:1.8;margin:0 0 16px;max-width:820px}
@media(max-width:900px){.kxk-pain-grid{grid-template-columns:1fr 1fr}.kxk-ind-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.kxk-pain-grid{grid-template-columns:1fr}}

/* ===================== ANIMIERTER BLAUER HINTERGRUND (global) ===================== */
.kxk-blue-anim{position:relative;overflow:hidden;isolation:isolate}
.kxk-blue-anim>.kxk-container{position:relative;z-index:2}
.kxk-blue-anim::before{content:"";position:absolute;inset:-32%;z-index:0;
  background:
   radial-gradient(130% 135% at 50% -12%, rgba(9,15,24,.62), transparent 72%),
   radial-gradient(26% 34% at 14% 24%, rgba(44,94,182,.26), transparent 62%),
   radial-gradient(22% 30% at 88% 26%, rgba(34,78,158,.20), transparent 62%),
   radial-gradient(30% 40% at 74% 96%, rgba(26,64,138,.18), transparent 64%);
  filter:blur(34px);will-change:transform;
  animation:kxkLive 19s ease-in-out infinite alternate}
@keyframes kxkLive{
  0%{transform:translate3d(-2.5%,-1%,0) scale(1) rotate(0deg)}
  30%{transform:translate3d(3%,-3.5%,0) scale(1.09) rotate(2.5deg)}
  60%{transform:translate3d(-3.5%,3%,0) scale(1.05) rotate(-2.5deg)}
  100%{transform:translate3d(2.5%,1.5%,0) scale(1.12) rotate(1.5deg)}}
.kxk-blue-anim:not(.kxk-ind-hero):not(.site-footer)::after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;
  background:radial-gradient(42% 52% at 82% 82%, rgba(44,94,182,.16), transparent 62%);
  animation:kxkGlow 15s ease-in-out infinite alternate}
@keyframes kxkGlow{0%{opacity:.45;transform:translate3d(0,0,0)}100%{opacity:.85;transform:translate3d(-3%,-2%,0)}}
/* Branchen-Hero: Basis + Links-Dunkel-Verlauf für Textlesbarkeit */
.kxk-ind-hero{position:relative;overflow:hidden;background:#0A1F44}
.kxk-ind-hero>.kxk-container{position:relative;z-index:3}
.kxk-ind-hero>.kxk-container::before{content:"";position:absolute;inset:-150px -50% -150px -50%;z-index:-1;background:linear-gradient(90deg,rgba(8,16,34,.78) 0%,rgba(8,16,34,.45) 40%,transparent 68%);pointer-events:none}
@media(prefers-reduced-motion:reduce){.kxk-blue-anim::before,.kxk-blue-anim::after{animation:none}}
/* ===================== HERO X-MOTIV (dezent) ===================== */
.kxk-hero-x{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.kxk-hero-x svg{position:absolute;height:auto;display:block}
.kxk-hero-x .x-big{right:-4%;top:50%;width:min(640px,52vw);opacity:.06;transform:translateY(-50%);animation:kxkXbig 24s ease-in-out infinite alternate}
.kxk-hero-x .x-big path{fill:#fff}
.kxk-hero-x .x-mini{left:6%;top:20%;width:110px;opacity:.07;animation:kxkXmini 28s ease-in-out infinite alternate}
.kxk-hero-x .x-mini path{fill:#C9A84C}
@keyframes kxkXbig{0%{transform:translateY(-50%) rotate(0deg) scale(1)}100%{transform:translateY(-54%) rotate(7deg) scale(1.07)}}
@keyframes kxkXmini{0%{transform:rotate(0deg) translateY(0)}100%{transform:rotate(-12deg) translateY(18px)}}
@media(prefers-reduced-motion:reduce){.kxk-hero-x .x-big,.kxk-hero-x .x-mini{animation:none}}
@media(max-width:760px){.kxk-hero-x .x-mini{display:none}.kxk-hero-x .x-big{opacity:.05;width:80vw}}

/* ===================== TEAM-KARTEN: Bild-Wechsel bei Hover ===================== */
.kxk-team-card-imgwrap{position:relative;width:220px;align-self:stretch;overflow:hidden}
.kxk-team-card-imgwrap .kxk-team-card-img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center top}
.kxk-team-card-img-hover{opacity:0;transition:opacity .45s ease}
.kxk-team-card:hover .kxk-team-card-img-hover{opacity:1}
@media(max-width:767px){.kxk-team-card-imgwrap{width:100%;height:auto;aspect-ratio:4/5;
  /* 260px schnitt Kopf und Schultern an. Seitenverhaeltnis statt fester
     Hoehe: waechst mit der Geraetebreite mit. */}}

/* ===================== BRANCHEN-CTA: Formular rechts, robust ===================== */
.kxk-dach-consult{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:start}
@media(max-width:760px){.kxk-dach-consult{grid-template-columns:1fr !important;gap:40px !important}}

/* ===================== involve.me Form: immer volle Spaltenbreite ===================== */
.involveme_embed{width:100%!important;max-width:100%!important}
.involveme_embed iframe{width:100%!important;max-width:100%!important;border:0;display:block}

.footer-bottom small{white-space:nowrap}
@media(max-width:600px){.footer-bottom small{white-space:normal}}

/* ── Kundenstimmen · Variante B: Hauptstimme + Nebenstimmen (19.08.2026) ── */
.kxk-vb-split { display:grid; grid-template-columns:1.02fr 1fr; gap:22px; align-items:start; }
@media(max-width:940px){ .kxk-vb-split { grid-template-columns:1fr; } }

.kxk-vb-hero { background:#0A1F44; border-radius:20px; padding:42px 40px 36px;
  position:sticky; top:104px; overflow:hidden; }  /* 19.08.: 104px = fixierter Header (82px) + Luft, sonst wird die Karte beim Scrollen oben angeschnitten */
@media(max-width:940px){ .kxk-vb-hero { position:static; padding:32px 26px 28px; } }
.kxk-vb-hero::after { content:"\00d7"; position:absolute; bottom:-90px; right:-40px;
  font-size:300px; font-weight:800; color:rgba(201,168,76,.06); line-height:1; pointer-events:none; }
.kxk-vb-hero .kxk-stars { position:relative; z-index:2; margin-bottom:20px; font-size:14px; letter-spacing:3px; }
.kxk-vb-hero p { font-family:Sofia Sans,sans-serif; font-size:16px; line-height:1.7;
  color:rgba(255,255,255,.9); margin:0 0 28px; position:relative; z-index:2; }

.kxk-vb-person { display:flex; align-items:center; gap:13px; padding-top:18px;
  border-top:1px solid rgba(255,255,255,.14); position:relative; z-index:2; }
.kxk-vb-mono { width:44px; height:44px; flex:none; border-radius:50%; display:flex;
  align-items:center; justify-content:center; background:linear-gradient(140deg,#C9A84C,#9C7C2E);
  color:#0A1F44; font-family:Sofia Sans,sans-serif; font-size:14px; font-weight:800; }
.kxk-vb-person strong { display:block; font-family:Sofia Sans,sans-serif; font-size:14.5px;
  font-weight:700; color:#fff; line-height:1.3; }
.kxk-vb-person small { display:block; font-family:Sofia Sans,sans-serif; font-size:12px;
  color:rgba(255,255,255,.55); line-height:1.45; margin-top:3px; }

.kxk-vb-list { display:flex; flex-direction:column; gap:14px; }
.kxk-vb-card { background:#fff; border:1px solid #D0DAED; border-left:3px solid #C9A84C;
  border-radius:12px; padding:24px 26px; transition:box-shadow .3s, transform .3s; }
.kxk-vb-card:hover { box-shadow:0 16px 40px rgba(10,31,68,.09); transform:translateX(3px); }
.kxk-vb-card p { font-family:Sofia Sans,sans-serif; font-size:14.6px; line-height:1.68;
  color:#3D5170; margin:0 0 16px; }
.kxk-vb-who { display:flex; align-items:baseline; gap:9px; flex-wrap:wrap;
  padding-top:14px; border-top:1px solid #EDF1F8; }
.kxk-vb-who strong { font-family:Sofia Sans,sans-serif; font-size:13.8px; font-weight:700; color:#0A1F44; }
.kxk-vb-who small { font-family:Sofia Sans,sans-serif; font-size:12px; color:#6E82A0; }

/* ── Zwei Referenzen nebeneinander auf Branchenseiten (19.08.2026) ── */
.kxk-ind-ref-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1060px;margin:0 auto;align-items:start}
@media(max-width:900px){.kxk-ind-ref-duo{grid-template-columns:1fr}}
.kxk-ind-ref-duo .kxk-ind-ref{max-width:none;margin:0;height:100%;
  /* Zitate sind unterschiedlich lang. Beide Karten sind gleich hoch, daher
     den Inhalt mittig setzen — sonst klebt das kurze Zitat oben und darunter
     steht ein leeres Feld. */
  display:flex;flex-direction:column;justify-content:center}

/* ── Kundenstimmen · Wisch-Slider auf Mobil (19.08.2026) ── */
.kxk-vb-dots{display:none}
@media(max-width:940px){
  .kxk-vb-split{
    display:flex; grid-template-columns:none; align-items:stretch;
    overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory; scroll-padding:0 20px;
    gap:14px; margin:0 -20px; padding:2px 20px 6px;
    scrollbar-width:none; -ms-overflow-style:none;
  }
  .kxk-vb-split::-webkit-scrollbar{display:none}
  .kxk-vb-list{display:contents}
  .kxk-vb-hero, .kxk-vb-card{
    flex:0 0 87%; max-width:430px; margin:0; scroll-snap-align:center;
    display:flex; flex-direction:column;
  }
  .kxk-vb-hero{position:static; border-radius:16px; padding:26px 22px 22px}
  .kxk-vb-card{padding:22px 20px}
  /* lange Zitate kürzen, damit die Karten nicht ausufern */
  .kxk-vb-hero > p, .kxk-vb-card > p{
    display:-webkit-box; -webkit-line-clamp:6; -webkit-box-orient:vertical;
    overflow:hidden; margin-bottom:12px;
  }
  .kxk-vb-hero > p.kxk-open, .kxk-vb-card > p.kxk-open{display:block; -webkit-line-clamp:unset}
  .kxk-vb-more{
    align-self:flex-start; margin:0 0 14px; padding:0; border:0; background:none;
    cursor:pointer; font-family:Sofia Sans,sans-serif; font-size:12.5px; font-weight:700;
    letter-spacing:.04em; text-decoration:underline; text-underline-offset:3px;
  }
  .kxk-vb-hero .kxk-vb-more{color:#C9A84C}
  .kxk-vb-card .kxk-vb-more{color:#2962C7}
  .kxk-vb-hero .kxk-vb-person, .kxk-vb-card .kxk-vb-who{margin-top:auto}

  .kxk-vb-dots{display:flex; justify-content:center; gap:8px; margin:18px 0 0}
  .kxk-vb-dots button{
    width:8px; height:8px; padding:0; border:0; border-radius:50%;
    background:#C6D2E6; cursor:pointer; transition:width .3s, background .3s;
  }
  .kxk-vb-dots button.on{width:26px; border-radius:100px; background:#C9A84C}
}


/* Rollen-Leiter der Branchenseite Beratung: Funktion links, Einordnung rechts.
   Bewusst schlicht — es ist eine Hierarchie, keine Abfolge, daher keine Nummern. */
.kxk-ladder{margin-top:26px;border-top:1px solid #D0DAED}
.kxk-ladder-item{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:20px;
  align-items:baseline;padding:14px 4px;border-bottom:1px solid #D0DAED}
.kxk-ladder-role{font-family:'Sofia Sans',sans-serif;font-weight:700;font-size:.98rem;color:#0D1B2A}
.kxk-ladder-note{font-family:'Sofia Sans',sans-serif;font-size:.86rem;color:#6E82A0;line-height:1.55}
@media(max-width:700px){.kxk-ladder-item{grid-template-columns:1fr;gap:3px;padding:12px 4px}}


/* ---- Praxisfelder der Beratungsseite -------------------------------------
   Vier Schwerpunkte tragen Gewicht: Goldlinie oben, laufende Nummer, Anhebung
   beim Darueberfahren. Die sechs weiteren Disziplinen stehen bewusst als
   ruhige Liste darunter — gleich grosse Kaesten fuer alle zehn haetten keine
   Rangfolge ergeben. */
.kxk-fokus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:14px}
.kxk-fokus-card{position:relative;background:#fff;border:1px solid #D0DAED;border-radius:14px;
  padding:30px 28px 26px;overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.kxk-fokus-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;
  background:linear-gradient(90deg,#C9A84C 0%,rgba(201,168,76,.25) 100%)}
.kxk-fokus-card:hover{transform:translateY(-3px);border-color:#B9C8E6;
  box-shadow:0 16px 40px rgba(7,46,107,.11)}
.kxk-fokus-num{font-family:'Sofia Sans',sans-serif;font-size:.72rem;font-weight:800;
  letter-spacing:.14em;color:#C9A84C;font-variant-numeric:tabular-nums}
.kxk-fokus-name{font-family:'Sofia Sans',sans-serif;font-size:1.22rem;font-weight:800;
  letter-spacing:-.015em;color:#0D1B2A;line-height:1.25;margin:10px 0 10px}
.kxk-fokus-desc{font-family:'Sofia Sans',sans-serif;font-size:.92rem;color:#3D5170;
  line-height:1.68;margin:0}
@media(max-width:820px){.kxk-fokus-grid{grid-template-columns:1fr}}

/* Weitere Disziplinen: zweispaltige Liste mit Haarlinien, ohne Kastenrahmen */
.kxk-weitere{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin-top:12px;
  border-top:1px solid #D0DAED}
.kxk-weitere-item{padding:16px 2px;border-bottom:1px solid #D0DAED}
.kxk-weitere-name{font-family:'Sofia Sans',sans-serif;font-weight:700;font-size:.98rem;
  color:#0D1B2A;margin-bottom:3px}
.kxk-weitere-desc{font-family:'Sofia Sans',sans-serif;font-size:.86rem;color:#6E82A0;
  line-height:1.55}
@media(max-width:820px){.kxk-weitere{grid-template-columns:1fr;gap:0}}


/* ---- Ablauf als Zeitstrahl ----------------------------------------------
   Fuenf gleich aussehende Kaesten untereinander lesen sich wie eine Liste,
   nicht wie ein Verlauf. Die durchgehende Linie mit Nummern auf der Achse
   macht die Abfolge sichtbar, die Wochenangabe sitzt als Marke am Titel. */
.kxk-tl{position:relative;margin-top:30px;padding-left:6px}
.kxk-tl::before{content:"";position:absolute;left:23px;top:14px;bottom:14px;width:2px;
  background:linear-gradient(180deg,#0A2452 0%,#2F63C4 55%,rgba(47,99,196,.15) 100%)}
.kxk-tl-item{position:relative;display:grid;grid-template-columns:48px 1fr;gap:26px;
  padding:0 0 30px}
.kxk-tl-item:last-child{padding-bottom:0}
.kxk-tl-dot{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;
  background:#0A2452;color:#fff;display:flex;align-items:center;justify-content:center;
  font-family:'Sofia Sans',sans-serif;font-weight:800;font-size:1.05rem;
  box-shadow:0 0 0 6px #fff;transition:background .22s,transform .22s}
.kxk-tl-item:hover .kxk-tl-dot{background:#C9A84C;transform:scale(1.07)}
.kxk-tl-body{padding-top:5px;min-width:0}
.kxk-tl-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:7px}
.kxk-tl-title{font-family:'Sofia Sans',sans-serif;font-weight:800;font-size:1.08rem;
  color:#0D1B2A;letter-spacing:-.01em}
.kxk-tl-week{font-family:'Sofia Sans',sans-serif;font-size:.68rem;font-weight:800;
  letter-spacing:.11em;color:#8A6A2E;background:rgba(201,168,76,.16);
  padding:4px 11px;border-radius:99px;white-space:nowrap}
.kxk-tl-text{font-family:'Sofia Sans',sans-serif;font-size:.92rem;color:#3D5170;
  line-height:1.68;margin:0;max-width:74ch}
@media(max-width:640px){
  .kxk-tl::before{left:17px}
  .kxk-tl-item{grid-template-columns:36px 1fr;gap:18px;padding-bottom:24px}
  .kxk-tl-dot{width:36px;height:36px;font-size:.9rem;box-shadow:0 0 0 5px #fff}
}
