/* ============================================================
   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%}

/* ── 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}
}
