.wk-ih { width:100%; position:relative; }
.wk-ih__steps{ position:relative; min-height: min(72vh, 720px); }

/* Fade transitions between steps */
.wk-ih__step{
  position:absolute;
  inset:0;
  opacity:0;
  transform: translateY(10px);
  pointer-events:none;
  transition: opacity .35s ease, transform .35s ease;
}
.wk-ih__step.is-active{
  opacity:1;
  transform:none;
  pointer-events:auto;
}

/* STEP 0 */
.wk-ih__split{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:16px;
  height:100%;
}
.wk-ih__panelWrap{ height:100%; }
.wk-ih__panelWrap.is-clickable{ cursor:pointer; }

.wk-ih__panel{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  min-height:420px;
  outline:none;
  isolation:isolate;
  height:100%;
}
.wk-ih__panel--mini{
  border-radius:20px;
  min-height:420px;
}

.wk-ih__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wk-ih__overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.12) 45%, rgba(0,0,0,.6) 100%);
  z-index:1;
}
.wk-ih__head, .wk-ih__foot{ position:absolute; z-index:2; color:#fff; }
.wk-ih__head{ top:18px; max-width:85%; }
.wk-ih__head.left{ left:18px; text-align:left; }
.wk-ih__head.right{ right:18px; text-align:right; }
.wk-ih__head h2{ margin:0; font-size: clamp(22px, 2.2vw, 36px); line-height:1.1; }
.wk-ih__head p{ margin:6px 0 0; opacity:.92; font-size:14px; }

.wk-ih__foot{ bottom:18px; display:flex; gap:12px; align-items:flex-end; max-width:92%; }
.wk-ih__foot.left{ left:18px; }
.wk-ih__foot.right{ right:18px; flex-direction:row-reverse; }

.wk-ih__slider{
  background: rgba(0,0,0,.30);
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  padding:10px 12px;
  backdrop-filter: blur(6px);
  min-width: min(420px, 58vw);
}
.wk-ih__panel--mini .wk-ih__slider{ min-width:0; width:100%; }
.wk-ih__slide{ display:none; gap:10px; align-items:center; font-size:14px; opacity:.95; }
.wk-ih__slide.is-active{ display:flex; }
.wk-ih__dot{ width:10px; height:10px; border-radius:999px; background:#fff; opacity:.9; }

.wk-ih__cta{
  appearance:none;
  border:0;
  border-radius:14px;
  padding:12px 16px;
  font-weight:700;
  cursor:pointer;
}

/* Shared layout for Steps 1-4 */
.wk-ih__layout{
  display:grid;
  grid-template-columns: 360px 1fr;
  gap:16px;
  height:100%;
  align-items:start;
  justify-items:stretch;
  grid-auto-flow: row dense;
}
.wk-ih__layout.is-narrow-left{ grid-template-columns: 300px 1fr; }

.wk-ih__left{
  grid-row:1;
  border-radius:24px;
  padding:0;
  background: transparent;
  height:100%;
}
.wk-ih__leftStack{
  position:relative;
  height:100%;
  min-height:420px;
}
.wk-ih__leftStack .wk-ih__panel--mini{
  position:absolute;
  inset:0;
  transition: opacity .25s ease, transform .25s ease;
}
.wk-ih__leftStack .wk-ih__panel--mini.is-hidden{
  opacity:0;
  transform: scale(.995);
  pointer-events:none;
}

/* Back button ON the video block (overlay) */
.wk-ih__leftStack .wk-ih__back{
  position:absolute;
  right:14px;
  bottom:14px;
  z-index:4;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.15);
  background:rgba(255,255,255,.85);
  cursor:pointer;
}

.wk-ih__right{
  grid-row:1;
  border-radius:24px;
  padding:18px;
  background: rgba(0,0,0,.03);
  height:100%;
}

/* Step 1 cards */
.wk-ih__cards{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap:14px;
  height:100%;
}
.wk-ih__card{
  text-align:left;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  border-radius:18px;
  padding:14px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height: 220px;
  transition: transform .2s ease, box-shadow .2s ease;
}
.wk-ih__card:hover{ transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.wk-ih__card--row{ min-height: 0; }
.wk-ih__cardHead h3{ margin:0; font-size:18px; }
.wk-ih__cardHead p{ margin:4px 0 0; opacity:.75; }
.wk-ih__cardBody{ opacity:.9; border-top:1px dashed rgba(0,0,0,.12); padding-top:10px; flex:1; }
.wk-ih__btn{
  display:inline-flex;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.12);
  font-weight:700;
}
.wk-ih__stack{ display:grid; grid-template-rows: 1fr 1fr 1fr; gap:14px; }

/* Step 2 Finder */
.wk-ih__finder{ background:#fff; border-radius:18px; padding:14px; border:1px solid rgba(0,0,0,.10); }
.wk-ih__suggestions{ margin-top:14px; }
.wk-ih__suggestionsHead h3{ margin:0; }
.wk-ih__suggestionsHead p{ margin:6px 0 0; opacity:.75; }
.wk-ih__suggestionsGrid{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap:12px;
  align-items:start;
}
.wk-ih__suggestion{
  border:1px solid rgba(0,0,0,.10);
  border-radius:16px;
  padding:12px;
  background:#fff;
  cursor:pointer;
}
.wk-ih__hint{ margin-top:10px; opacity:.7; font-size:13px; }

/* Step 3 product stage */
.wk-ih__productStage{
  display:grid;
  grid-template-columns: 1.25fr .75fr;
  gap:14px;
}
.wk-ih__wcProduct{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:18px;
  padding:14px;
}
.wk-ih__wcLeft{ display:flex; gap:12px; align-items:flex-start; }
.wk-ih__wcImg img{ max-width:140px; height:auto; border-radius:14px; }
.wk-ih__wcMeta h3{ margin:0 0 6px; }
.wk-ih__wcPrice{ margin-bottom:10px; opacity:.9; }
.wk-ih__wcCross{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:18px;
  padding:14px;
}
.wk-ih__wcCrossGrid{
  margin-top:10px;
  display:grid;
  grid-template-columns: 1fr;
  gap:10px;
}
.wk-ih__wcCrossItem a{ text-decoration:none; color:inherit; display:flex; gap:10px; align-items:center; }
.wk-ih__wcCrossItem img{ width:64px; height:auto; border-radius:12px; }
.wk-ih__wcCrossTitle{ font-weight:800; }
.wk-ih__loading{ padding:18px; background:#fff; border-radius:18px; border:1px solid rgba(0,0,0,.10); }

/* Step 4 form */
.wk-ih__formCard{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:18px;
  padding:14px;
}
.wk-ih__form label{ display:block; font-weight:700; margin:10px 0; }
.wk-ih__form input, .wk-ih__form textarea{
  width:100%;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.15);
  padding:10px 12px;
  margin-top:6px;
  font-weight:400;
}
.wk-ih__formGrid{ display:grid; grid-template-columns: 1fr 1fr; gap:12px; }
.wk-ih__formNote{ margin-top:10px; font-weight:700; }

/* Mirror (Privat): swap columns */
.wk-ih.wk-ih--mirrored .wk-ih__layout{
  grid-template-columns: 1fr 360px !important;
}
.wk-ih.wk-ih--mirrored .wk-ih__layout.is-narrow-left{
  grid-template-columns: 1fr 300px !important;
}
.wk-ih.wk-ih--mirrored .wk-ih__left{
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start;
}
.wk-ih.wk-ih--mirrored .wk-ih__right{
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: start;
}

/* Responsive */
@media (max-width: 980px){
  .wk-ih__steps{ min-height:auto; }
  .wk-ih__step{ position:relative; inset:auto; opacity:1; transform:none; pointer-events:auto; }
  .wk-ih__split{ grid-template-columns:1fr; }
  .wk-ih__layout{ grid-template-columns:1fr !important; }
  .wk-ih__cards{ grid-template-columns:1fr; }
  .wk-ih__stack{ grid-template-rows:auto; }
  .wk-ih__slider{ min-width:0; width:100%; }
  .wk-ih__suggestionsGrid{ grid-template-columns:1fr; }
  .wk-ih__productStage{ grid-template-columns:1fr; }
  .wk-ih__formGrid{ grid-template-columns:1fr; }
  .wk-ih__leftStack{ min-height:360px; }
  .wk-ih__panel{ min-height:360px; }
  .wk-ih__panel--mini{ min-height:360px; }
  .wk-ih__leftStack .wk-ih__back{ position:static; margin-top:10px; }
}

/* FIX: Separate Verkaufsargumente (left) and Zurück button (right) */
.wk-ih__panel--mini .wk-ih__foot{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
}
.wk-ih__panel--mini .wk-ih__slider{
  margin-right:auto;
}
.wk-ih__leftStack .wk-ih__back{
  position:absolute;
  right:14px;
  bottom:14px;
}

/* Subtle Zurück button */
.wk-ih__leftStack .wk-ih__back{
  background: rgba(255,255,255,.65);
  border:1px solid rgba(255,255,255,.35);
  color:#111;
  font-weight:600;
  font-size:13px;
  padding:6px 10px;
  border-radius:999px;
  opacity:.7;
  transition: opacity .2s ease, background .2s ease, transform .2s ease;
}
.wk-ih__leftStack .wk-ih__back:hover{
  opacity:1;
  background: rgba(255,255,255,.9);
  transform: translateY(-1px);
}

/* Icon-only Zurück button */
.wk-ih__leftStack .wk-ih__back{
  width:36px;
  height:36px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:0;
}
.wk-ih__leftStack .wk-ih__back::before{
  content:"←";
  font-size:16px;
  font-weight:700;
}

/* FIX Privat: Verkaufsargumente links, Zurück rechts – kein Überlappen */
.wk-ih__panel--mini .wk-ih__foot{
  left:14px;
  right:14px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.wk-ih__panel--mini .wk-ih__slider{
  flex:1;
  max-width: calc(100% - 48px);
}
.wk-ih__panel--mini .wk-ih__back{
  position:relative;
  right:auto;
  bottom:auto;
  margin-left:12px;
}

/* Suggestion action label */
.wk-ih__suggestionAction{
  margin-top:4px;
  font-weight:700;
  opacity:.85;
  font-size:13px;
}

/* Full product cards (grid under Fahrzeugfinder) */
.wk-ih__pCard{
  border:1px solid rgba(0,0,0,.10);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.wk-ih__pImg img{
  width:100%;
  height:auto;
  display:block;
}
.wk-ih__pBody{
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.wk-ih__pTitle{
  margin:0;
  font-size:16px;
}
.wk-ih__pPrice{ font-weight:800; }
.wk-ih__pShort{ opacity:.9; font-size:13px; }
.wk-ih__pCart{
  border-top:1px dashed rgba(0,0,0,.12);
  padding-top:10px;
}
.wk-ih__pCart .single_add_to_cart_button,
.wk-ih__pCart button,
.wk-ih__pCart .button{
  border-radius:12px !important;
}
.wk-ih__pSelect{
  margin-top:6px;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  font-weight:800;
  cursor:pointer;
}
.wk-ih__loading--mini{
  padding:12px;
  border-radius:16px;
}

/* Compact suggestions under Fahrzeugfinder */
.wk-ih__suggestion--compact{
  display:flex;
  gap:10px;
  align-items:center;
  border:1px solid rgba(0,0,0,.10);
  border-radius:16px;
  padding:12px;
  background:#fff;
  cursor:pointer;
}
.wk-ih__suggestion--compact .wk-ih__suggestionImg img{
  width:72px;
  height:auto;
  border-radius:12px;
  display:block;
}
.wk-ih__suggestion--compact .wk-ih__suggestionTitle{ font-weight:900; }
.wk-ih__suggestion--compact .wk-ih__suggestionPrice{ opacity:.8; font-size:13px; margin-top:2px; }
.wk-ih__suggestion--compact .wk-ih__suggestionAction{
  margin-top:6px;
  font-weight:900;
  font-size:13px;
  opacity:.85;
}

.wk-ih__pLong{
  margin-top:10px;
  font-size:14px;
  line-height:1.5;
}

/* Full product view (Step after Fahrzeugfinder) */
.wk-ih__pFull{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:18px;
  padding:14px;
}
.wk-ih__pFullTop{
  display:grid;
  grid-template-columns: 220px 1fr;
  gap:14px;
  align-items:start;
}
.wk-ih__pFullImg img{
  width:100%;
  height:auto;
  border-radius:16px;
  display:block;
}
.wk-ih__pFullTitle{ margin:0 0 6px; }
.wk-ih__pFullPrice{ font-weight:800; margin-bottom:8px; }
.wk-ih__pFullShort{ opacity:.9; }
.wk-ih__pFullCart{ margin-top:10px; }
.wk-ih__pFullDesc{
  margin-top:14px;
  border-top:1px dashed rgba(0,0,0,.12);
  padding-top:12px;
  line-height:1.6;
}
@media (max-width: 980px){
  .wk-ih__pFullTop{ grid-template-columns:1fr; }
}

/* WooCommerce native single-product inside header */
.wk-ih__wcSingle{
  background:#fff;
  border-radius:18px;
}
.wk-ih__wcSingle .product{
  margin:0;
}
.wk-ih__productCrossBelow{
  margin-top:20px;
}

/* Header Woo product safety tweaks */
.wk-ih__wcSingle .woocommerce-breadcrumb{
  display:none;
}

/* Safe Woo summary in header */
.wk-ih__wcSingle .product{
  margin:0;
}

/* WK_SKIP_DEIN_PRODUKT */
.wk-ih__step[data-step="2"] .wk-ih__suggestions{display:none !important;}
