/* V603: Impulskarte startet am unteren Ende der geöffneten Kurseinheit
   und geht ruhiger in die Transferkarte „Impuls im Kurs“ über. Keine Inhaltsänderung. */

html body.home.homeRefinedV603 .sceneLearnV588{
  overflow:visible !important;
  contain:none !important;
}

/* Der Ausgangspunkt liegt nicht mehr oben am Reisefaden, sondern unterhalb der
   geöffneten Kurseinheit „Mengen und Zahlen“. */
html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595{
  left:50.5% !important;
  top:65% !important;
  width:226px !important;
  min-height:74px !important;
  padding:16px 18px !important;
  z-index:18 !important;
  border-radius:20px !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,250,242,.84)) !important;
  border:1px solid rgba(210,165,78,.28) !important;
  box-shadow:
    0 24px 60px rgba(98,71,24,.085),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
  opacity:0 !important;
  transform:translate3d(0,0,0) scale(.96) !important;
  transform-origin:left top !important;
  will-change:offset-distance, transform, opacity, box-shadow !important;
  offset-path:path('M 0 0 C -54 38 -118 92 -178 154 C -254 232 -322 298 -388 366') !important;
  offset-distance:0% !important;
  offset-rotate:0deg !important;
  animation:v603ImpulseCardMerge 9.4s cubic-bezier(.2,.72,.18,1) 1 forwards !important;
}

html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595 .sceneEyebrowV588{
  margin-bottom:7px !important;
  letter-spacing:.18em !important;
  color:rgba(23,33,52,.50) !important;
}

html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595 strong{
  font-size:16px !important;
  line-height:1.16 !important;
  letter-spacing:-.025em !important;
}

/* Eine feine Spur macht den Übergang lesbar, ohne eine zweite Leiste oder
   technische Stepper-Optik zu erzeugen. */
html body.home.homeRefinedV603 .sceneLearnV588::after{
  content:"" !important;
  position:absolute !important;
  left:47.8% !important;
  top:68% !important;
  width:238px !important;
  height:258px !important;
  z-index:10 !important;
  pointer-events:none !important;
  border-left:1.5px solid rgba(210,165,78,.22) !important;
  border-bottom:1.5px solid rgba(210,165,78,.18) !important;
  border-radius:0 0 0 150px !important;
  opacity:0 !important;
  transform:translate(-56px, 0) rotate(4deg) !important;
  filter:blur(.1px) !important;
  animation:v603ImpulseTrace 9.4s ease-in-out 1 forwards !important;
}

/* Die Zielkarte bleibt beim Learn-Anker zurückhaltend, „nimmt“ die bewegte Karte
   aber am Ende sichtbar auf. Beim Transfer-Anker wirkt sie unverändert regulär. */
html body.home.homeRefinedV603 .verticalLearningJourneyV584.is-learn .sceneTransferV588 .courseImpulseV588{
  opacity:.20 !important;
  transform:translateY(12px) scale(.965) !important;
  transform-origin:left top !important;
  animation:v603CourseImpulseReceive 9.4s cubic-bezier(.2,.72,.18,1) 1 forwards !important;
}

html body.home.homeRefinedV603 .verticalLearningJourneyV584.is-transfer .sceneTransferV588 .courseImpulseV588{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  animation:none !important;
}

@keyframes v603ImpulseCardMerge{
  0%,74%{
    opacity:0;
    offset-distance:0%;
    transform:translate3d(0,0,0) scale(.92);
    box-shadow:0 18px 44px rgba(98,71,24,.055), inset 0 1px 0 rgba(255,255,255,.92);
  }
  79%{
    opacity:.98;
    offset-distance:0%;
    transform:translate3d(0,0,0) scale(1);
    box-shadow:0 24px 60px rgba(98,71,24,.095), inset 0 1px 0 rgba(255,255,255,.94);
  }
  88%{
    opacity:.98;
    offset-distance:34%;
    transform:translate3d(0,0,0) scale(1.015);
  }
  96%{
    opacity:.92;
    offset-distance:100%;
    transform:translate3d(0,0,0) scale(1.12);
    box-shadow:0 28px 70px rgba(210,165,78,.12), inset 0 1px 0 rgba(255,255,255,.94);
  }
  100%{
    opacity:0;
    offset-distance:100%;
    transform:translate3d(0,0,0) scale(1.12);
  }
}

@keyframes v603ImpulseTrace{
  0%,77%{ opacity:0; clip-path:inset(0 0 100% 0); }
  84%{ opacity:.38; clip-path:inset(0 0 42% 0); }
  94%{ opacity:.28; clip-path:inset(0 0 0 0); }
  100%{ opacity:0; clip-path:inset(0 0 0 0); }
}

@keyframes v603CourseImpulseReceive{
  0%,84%{
    opacity:.18;
    transform:translateY(14px) scale(.955);
    box-shadow:0 18px 42px rgba(98,71,24,.04), inset 0 1px 0 rgba(255,255,255,.86);
  }
  93%{
    opacity:.54;
    transform:translateY(2px) scale(1.012);
    box-shadow:0 26px 66px rgba(210,165,78,.11), inset 0 1px 0 rgba(255,255,255,.92);
  }
  100%{
    opacity:.62;
    transform:translateY(0) scale(1);
    box-shadow:0 22px 58px rgba(18,36,58,.07), inset 0 1px 0 rgba(255,255,255,.86);
  }
}

/* Fallback für Browser ohne Motion-Path: gleicher Startpunkt, klare Zielbewegung. */
@supports not (offset-path:path('M 0 0 L 1 1')){
  html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595{
    animation:v603ImpulseCardMergeFallback 9.4s cubic-bezier(.2,.72,.18,1) 1 forwards !important;
  }
  @keyframes v603ImpulseCardMergeFallback{
    0%,74%{ opacity:0; transform:translate3d(0,0,0) scale(.92); }
    79%{ opacity:.98; transform:translate3d(0,0,0) scale(1); }
    88%{ opacity:.98; transform:translate3d(-132px,120px,0) scale(1.015); }
    96%{ opacity:.92; transform:translate3d(-388px,366px,0) scale(1.12); }
    100%{ opacity:0; transform:translate3d(-388px,366px,0) scale(1.12); }
  }
}

@media (prefers-reduced-motion: reduce){
  html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595,
  html body.home.homeRefinedV603 .sceneLearnV588::after,
  html body.home.homeRefinedV603 .verticalLearningJourneyV584.is-learn .sceneTransferV588 .courseImpulseV588{
    animation:none !important;
  }
  html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595{
    top:65% !important;
    opacity:.84 !important;
    offset-distance:0% !important;
    transform:scale(1) !important;
  }
  html body.home.homeRefinedV603 .sceneLearnV588::after{ opacity:0 !important; }
}

@media (max-width:680px){
  html body.home.homeRefinedV603 .sceneLearnV588 .impulseCarryV595{
    left:42% !important;
    top:62% !important;
    width:188px !important;
    offset-path:path('M 0 0 C -32 46 -78 116 -122 190 C -160 250 -190 314 -220 374') !important;
  }
}
