span.ngk-timeline-block-container {
  display: block;
  position: relative;
  height: 350px;
  overflow: hidden;
  background-color: #222;
}

span.ngk-timeline-block-container::before{
  content: "\A";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(to right, #222, #222 10%, transparent 25%, transparent 75%, #222 90%);
  z-index: 2;
  pointer-events: none;
}

span.ngk-timeline-items-container {
  display: block;
  position: absolute;
  top: 65%;
  height: 100px;
  margin-top: -50px;
  width: 100%;
  overflow: hidden;
}

span.ngk-timeline-items {
  position: relative;
  left: 0;
  display: inline-flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  background-image: linear-gradient(to bottom, transparent 40%, #AAA 40%, #AAA 60%, transparent 60%);
  margin: 0 250px;
}

span.ngk-timeline-item {
  position: relative;
  display: block;
  width: 30px;
  height: 30px;
  background-color: #AAA;
  border-radius: 100px;
  text-align: center;
  box-shadow: 0px 0px 5px rgba(0,0,0,0.5);
  cursor: pointer;
  transition: background-color 0.25s;
}

span.ngk-timeline-item:hover,
span.ngk-timeline-item:active,
span.ngk-timeline-item.ngk-timeline-item-active {
  background-color: #ED1C23;
}

span.ngk-timeline-item span.ngk-timeline-year {
  position: absolute;
  top: 40px;
  left: 0;
  text-align: center;
}

span.ngk-timeline-item span.ngk-timeline-title,
span.ngk-timeline-item span.ngk-timeline-content {
  display: none;
}

span.ngk-timeline-tooltip {
  position: fixed;
  display: none;
  width: 400px;
  padding: 20px;
  background-color: white;
  box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
  z-index: 6;
}

span.ngk-timeline-tooltip span.ngk-timeline-year {
  color: #ED1C23;
  font-weight: bold;
  display: block;
}

span.ngk-timeline-tooltip span.ngk-timeline-title {
  color: black;
  font-weight: bold;
  display: block;
}

span.ngk-timeline-tooltip span.ngk-timeline-content {
  font-weight: normal;
  color: black;
  display: block;
}



span.ngk-timeline-left,
span.ngk-timeline-right {
  position: absolute;
  display: block;
  width: 50px;
  height: 100px;
  top: 65%;
  margin-top: -85px;
  z-index: 3;
  opacity: 0.3;
  transition: opacity 0.5s;
  cursor: pointer;
}

span.ngk-timeline-left:hover,
span.ngk-timeline-right:hover {
  opacity: 0.5;
}

span.ngk-timeline-left:active,
span.ngk-timeline-right:active {
  opacity: 0.9;
}

span.ngk-timeline-left {
  left: 2.5%;
}

span.ngk-timeline-right {
  right: 2.5%;
}

@media screen and (max-width: 768px) {
  span.ngk-timeline-block-container {
    height: 300px;
  }

  span.ngk-timeline-items-container {
    overflow: auto;
  }
  span.ngk-timeline-items {
    margin: 0 150px;
  }

  span.ngk-timeline-tooltip {
    width: 300px;
  }
}
@media screen and (max-width: 650px) {
  span.ngk-timeline-left,
  span.ngk-timeline-right {
    top: 30%;
  }
  span.ngk-timeline-items-container {
    top: 30%;
  }
  
  span.ngk-timeline-items {
    margin: 0 150px;
  }

  span.ngk-timeline-tooltip {
    display: block;
    width: auto;
    min-height: 140px;
    height: 140px;
    overflow-y: auto;
  }
}
