.timeline ul {
    background: #1e1e1e;
    padding: 50px 0;
  }
  
  
  /* Linie mittig */
  .timeline ul li {
    list-style-type: none;
    position: relative;
    width: 6px;
    margin: 0 auto;
    padding-top: 50px;
    background: #e2e2e2;
  }
  
  /* Timelinekarte allgemein before */
  .timeline ul li div::before {
    content: '';
    position: absolute;
    bottom: 7px;
    width: 0;
    height: 0;
    border-style: solid;
  }
  
  /* Timelinekarte allgemein */
  .timeline ul li div {
    position: relative;
    bottom: 0;
    width: 400px;
    padding: 15px;
    color: #fff;
    background: #1e1e1e;
    border: 3px;
    border-style: solid;
    border-radius: 4px;
    border-color: #33a0d1;
  }

  /* Timelinekarte allgemein after */
  .timeline ul li::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: inherit;
  }

  /* Timelinekarte allgemein hover */
  .timeline ul li div:hover {
    cursor: pointer;
    background: #33a0d1;
  }

  /* Datums in Timelinekarte */
  time {
    display: block;
    font-size: 1.5rem;
    padding-left: 10px;
    text-align: justify;
    background: #33a0d1;
    border-radius: 2px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }

  time:hover {
    cursor: pointer;
    background: #343a40;
  }

  /* Bilder styling in Timelinekarte */
  img {
    border-radius: 4px;
    max-width: 100%;
    height: auto;
    opacity: 0.7;
    transition: all .5s ease-in-out;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }

  /* Bilder styling in Timelinekarte hover */
  img:hover {
    opacity: 1;
    transition: all .5s ease-in-out;
  }

  /* Beschriftung Fahrername in Bild */
  .timeline ul li driver {
    height: auto;
    position: relative;
    display: block;
    max-width: 80%;
    left: 0px;
    bottom: 15px;
    padding: 5px;
    padding-left: 80px;
    color: #fff;
    background: #33a0d1;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }

   /* Beschriftung Fahrername in Bild hover */
  .timeline ul li driver:hover {
    cursor: pointer;
    background: #343a40;
  }

  /* Deutschland Flagge für Fahrer */
  .timeline ul li germany {
    height: auto;
    position: relative;
    display: block;
    max-width: 18%;
    bottom: 30px;
    padding: 20px;
    overflow: hidden;
    background: linear-gradient(to bottom, black calc(100% / 3), #DD0000 calc(100% / 3), #DD0000 calc(100% / 3 * 2), #FFCE00 calc(100% / 3 * 2));
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }

  .timeline ul li firstplace {
    position: absolute;
    padding-left: 150px;
  }
  
  .timeline ul li:nth-child(odd) div { left: 45px; }
  
  .timeline ul li:nth-child(odd) div::before {
    left: -17px;
    border-width: 8px 16px 8px 0;
    border-color: transparent #33a0d1 transparent transparent;
  }
  
  .timeline ul li:nth-child(even) div { left: -439px; }
  
  .timeline ul li:nth-child(even) div::before {
    right: -17px;
    border-width: 8px 0 8px 16px;
    border-color: transparent transparent transparent #33a0d1;
  }
  
  time {
    display: block;
    font-size: 1.5rem;
    padding-left: 10px;
    text-align: justify;
    background: #33a0d1;
    border-radius: 2px;

  }

  /* ----------------------- */

  .timeline ul li::after { transition: background .5s ease-in-out; }

.timeline ul li.in-view::after { background: #c52b30; }

.timeline ul li div {
  visibility: hidden;
  opacity: 0;
  transition: all .5s ease-in-out;
}

.timeline ul li:nth-child(odd) div { transform: translate3d(200px, 0, 0); }

.timeline ul li:nth-child(even) div { transform: translate3d(-200px, 0, 0); }

.timeline ul li.in-view div {
  transform: none;
  visibility: visible;
  opacity: 1;
}

/* ----------------------- */

@media screen and (max-width: 900px) {

.timeline ul li div { width: 250px; }

.timeline ul li:nth-child(even) div { left: -289px; /*250+45-6*/
}
}

@media screen and (max-width: 600px) {

.timeline ul li { margin-left: 20px; }

.timeline ul li div { width: calc(100vw - 91px); }

.timeline ul li:nth-child(even) div { left: 45px; }

.timeline ul li:nth-child(even) div::before {
  left: -15px;
  border-width: 8px 16px 8px 0;
  border-color: transparent #F45B69 transparent transparent;
}
}





