  /* Allgemein */


  /* Animation */



  .row>div:not(.flowimg, .flowtext),
  .card-menu-item,
  .section_,
  .section>.frame,
  div:not(.caption-body)>p,
  ul:not(.navbar-nav, .sociallinks-list)>li,
  section:not(.footer-section),
  .carousel-item-bodytext>*,
  .slick-slide,
  .accordion-item,
  .article,
  .ce-col>div {
      transform: translateY(50px);
      opacity: 0;
  }




  .row>div.in-view:not(.flowimg, .flowtext),
  .section.in-view,
    .card-menu-item.in-view,
  .section>.frame.in-view,
  div:not(.caption-body)>p.in-view,
  ul>li.in-view,
  section.in-view,
  .carousel-item-bodytext>*.in-view,
  .slick-slide.in-view,
  .accordion-item.in-view,
  .article.in-view,
  .ce-col>div.in-view {
      opacity: 1;
      transform: none;
      transition: all 0.8s, transform 0.8s ease;
  }


  /* Card-Menüs: Karten starten unterschiedlich tief versetzt (links am tiefsten) und gleiten in eine Reihe.
     Muster je Reihe mit bis zu 4 Karten; einspaltig (mobil) entsprechend gestaffelt untereinander. */
  .card-menu .card-menu-item:nth-child(4n+1) {
      transform: translateY(200px);
  }

  .card-menu .card-menu-item:nth-child(4n+2) {
      transform: translateY(150px);
  }

  .card-menu .card-menu-item:nth-child(4n+3) {
      transform: translateY(100px);
  }

  .card-menu .card-menu-item:nth-child(4n+4) {
      transform: translateY(50px);
  }

  .card-menu .card-menu-item.in-view {
      opacity: 1;
      transform: none;
      transition: opacity 0.8s ease, transform 1.2s cubic-bezier(0.33, 0.8, 0.4, 1);
  }

  /* weiter unten startende Karten brauchen länger – so bleibt der Versatz während der Bewegung sichtbar */
  .card-menu .card-menu-item.in-view:nth-child(4n+1) {
      transition-duration: 0.8s, 1.8s;
  }

  .card-menu .card-menu-item.in-view:nth-child(4n+2) {
      transition-duration: 0.8s, 1.5s;
  }


  /* Kuratierte News-Kacheln (SelectedList, z.B. Deep Tech): wie die Card-Menüs versetzt starten, in eine Reihe gleiten */
  .c-ambassador-list--selected .c-ambassador-card:nth-child(3n+1) {
      transform: translateY(200px);
  }

  .c-ambassador-list--selected .c-ambassador-card:nth-child(3n+2) {
      transform: translateY(150px);
  }

  .c-ambassador-list--selected .c-ambassador-card:nth-child(3n+3) {
      transform: translateY(100px);
  }

  .c-ambassador-list--selected .c-ambassador-card.in-view {
      opacity: 1;
      transform: none;
      transition: opacity 0.8s ease, transform 1.2s cubic-bezier(0.33, 0.8, 0.4, 1);
  }

  .c-ambassador-list--selected .c-ambassador-card.in-view:nth-child(3n+1) {
      transition-duration: 0.8s, 1.8s;
  }

  .c-ambassador-list--selected .c-ambassador-card.in-view:nth-child(3n+2) {
      transition-duration: 0.8s, 1.5s;
  }


  /* no anmation */

  footer p,
  footer li,
  .modal-body div,
  li.nav-item,
  .powermail-errors-list li,
  .fnbb_article_main p,
  .pswp__scroll-wrap,
  #dcrt_dps_content p {
      opacity: 1 !important;
      transform: none !important;
  }





  /**
 * Splitting.js – H1 Zeilen-Animation
 * Variante: Einblenden von unten
 */

  /* Overflow verstecken damit Zeilen "hereinfliegen" können */

  h1.splitting>span:first-child {
      display: none
  }

  .line-wrapper {
      overflow: hidden;
      display: block;
  }

  .line-wrapper .word {
      margin-right: 0.2em
  }

  /* Ausgangszustand jeder Zeile */
  .line-wrapper {
      display: block;
      opacity: 0;
      transform: translateY(100%);
      animation: line-in 0.9s cubic-bezier(0.16, 1, 0.3, 1) forwards;

      /* Verzögerung: jede Zeile 120ms nach der vorherigen */
      animation-delay: calc(var(--line-index) * 120ms);
  }

  /* Animation: von unten nach oben einblenden */
  @keyframes line-in {
      to {
          opacity: 1;
          transform: translateY(0);
      }
  }



  /* respnsive */

  @media (max-width:767px) {

      .splitting .char,
      .char,
      .word {
          opacity: 1;
          transform: none;
      }

  }