.cd-horizontal-timeline {
  opacity: 0;
  margin: 0 auto;
  transition: opacity 0.2s;
  position: relative;
  /*background: url("../../assets/img/round-rombs.svg") left 13% center / auto 90% no-repeat;*/
}

.cd-horizontal-timeline ol, .cd-horizontal-timeline ul {
  list-style: none;
  margin-top: 0;
  padding-left: 0;
  margin-bottom: 10px;
}

.cd-horizontal-timeline::before {
  content: 'mobile';
  display: none;
}

.cd-horizontal-timeline.loaded {
  opacity: 1;
}

.cd-horizontal-timeline.loaded::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: 0 auto;
  transition: opacity 0.2s;
  background: url("../../assets/img/round-rombs.svg") left 13% center / auto 90% no-repeat;
  opacity: 0.4;
}

.cd-horizontal-timeline .timeline {
  position: relative;
  height: 100px;
  width: 100%;
  /*max-width: 1240px;*/
  margin: 0 auto;
}

.cd-horizontal-timeline .events-wrapper {
  position: relative;
  height: 100%;
  margin: 0;
  overflow: hidden;
}

.cd-horizontal-timeline .events-wrapper::after, .cd-horizontal-timeline .events-wrapper::before {
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  height: 100%;
  width: 20px;
}

.cd-horizontal-timeline .events-wrapper::before {
  left: 0;
  /*background-image: linear-gradient(to right, #FFF, rgba(248, 248, 248, 0));*/
}

.cd-horizontal-timeline .events-wrapper::after {
  right: 0;
  /*background-image: linear-gradient(to left, #FFF, rgba(248, 248, 248, 0));*/
}

.cd-horizontal-timeline .events {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 47px;
  height: 6px;
  background: #d9d6f7;
  transition: transform 0.4s;
}

.cd-horizontal-timeline .filling-line {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: #6a5fe0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.3s;
}

.cd-horizontal-timeline .events a {
  position: absolute;
  white-space: nowrap;
  bottom: 0;
  z-index: 2;
  text-align: center;
  font-size: 13px;
  padding-bottom: 15px;
  color: #5A52A6;
  transform: translateZ(0);
  text-decoration: none;
}

.cd-horizontal-timeline .events a:hover {
  color: #5E52E3;
}

@media (min-width: 992px) {
  .cd-horizontal-timeline .events a {
    font-size: 1.25rem;
    color: #6a5fe0;
    font-weight: 700;
  }
}

.cd-horizontal-timeline .events a::after {
  content: '';
  position: absolute;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  bottom: -5px;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  border: 2px solid #d9d6f7;
  background-color: #FFF;
  transition: background-color 0.3s, border-color 0.3s;
}

.no-touch .cd-horizontal-timeline .events a:hover::after {
  background-color: #6a5fe0;
  border-color: #6a5fe0;
}

.cd-horizontal-timeline .events a.selected {
  pointer-events: none;
}

.cd-horizontal-timeline .events a.selected::after {
  background-color: #6a5fe0;
  border-color: #6a5fe0;
}

.cd-horizontal-timeline .events a.older-event::after {
  border-color: #6a5fe0;
}

@media only screen and (min-width: 1100px) {
  .cd-horizontal-timeline {
    margin: 0 auto;
  }
}

@media only screen and (min-width: 1100px) {
  .cd-horizontal-timeline::before {
    content: 'desktop';
  }
}

.cd-timeline-navigation {
  list-style: none;
  display: none;
}

.cd-timeline-navigation a {
  position: absolute;
  z-index: 6;
  top: 50%;
  background: #FFF;
  bottom: auto;
  transform: translateY(-50%);
  height: 34px;
  width: 34px;
  border-radius: 50%;
  border: 4px solid #d9d6f7;
  overflow: hidden;
  color: transparent;
  text-indent: 100%;
  white-space: nowrap;
  transition: border-color 0.3s;
}

.cd-timeline-navigation a::after {
  content: '';
  position: absolute;
  height: 16px;
  width: 16px;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  transform: translateX(-50%) translateY(-50%);
  background: url(../../assets/img/cd-arrow.svg) no-repeat 0 0;
}

.cd-timeline-navigation a.prev {
  left: 0;
  transform: translateY(-50%) rotate(180deg);
}

.cd-timeline-navigation a.next {
  right: 0;
}

.no-touch .cd-timeline-navigation a:hover {
  border-color: #5A52A6;
}

.cd-timeline-navigation a.inactive {
  cursor: not-allowed;
}

.cd-timeline-navigation a.inactive::after {
  background-position: 0 -16px;
}

.no-touch .cd-timeline-navigation a.inactive:hover {
  border-color: #6a5fe0;
}

.cd-horizontal-timeline .events-content {
  position: relative;
  width: 100%;
  margin: 10px 0;
  overflow: hidden;
  transition: height 0.4s;
}

.cd-horizontal-timeline .events-content li {
  position: absolute;
  z-index: 1;
  width: 100%;
  left: 0;
  top: 0;
  transform: translateX(-100%);
  padding: 0;
  opacity: 0;
  animation-duration: 0.4s;
  animation-timing-function: ease-in-out;
}

.cd-horizontal-timeline .events-content li.selected {
  position: relative;
  z-index: 2;
  opacity: 1;
  transform: translateX(0);
  /*padding: 1rem;*/
  /*border-radius: 1rem;*/
  /*border: 1px solid #f8f6fb;*/
  /*background-color: rgba(241,240,253, 0.15);*/
  /*box-shadow: 0 4px 16px rgba(63, 120, 184, .1);*/
  /*max-width: 600px;*/
}

.cd-horizontal-timeline .events-content li.enter-right, .cd-horizontal-timeline .events-content li.leave-right {
  animation-name: cd-enter-right;
}

.cd-horizontal-timeline .events-content li.enter-left, .cd-horizontal-timeline .events-content li.leave-left {
  animation-name: cd-enter-left;
}

.cd-horizontal-timeline .events-content li.leave-right, .cd-horizontal-timeline .events-content li.leave-left {
  animation-direction: reverse;
}

.cd-horizontal-timeline .events-content li > * {
  /*max-width: 1240px;*/
  /*margin: 0 auto;*/
}

.cd-horizontal-timeline .events-content h3 {
  font-size: 1.5rem;
  line-height: 1.2;
  color: #202125;
}

.cd-horizontal-timeline .events-content em {
  display: block;
  font-style: italic;
  margin: 10px auto;
  font-size: 18px;
}

.cd-horizontal-timeline .events-content em::before {
  content: '- ';
}

.cd-horizontal-timeline .events-content p {
  font-size: 1rem;
  color: var(--bs-secondary-color);
}

.cd-horizontal-timeline .events-content em, .cd-horizontal-timeline .events-content p {
  line-height: 1.6;
}

@media only screen and (min-width: 768px) {
  .cd-horizontal-timeline .events-content h3 {
    font-size: 1.75rem;
    font-weight: 700;
  }
}

@media only screen and (min-width: 768px) {
  .cd-horizontal-timeline .events-content em {
    font-size: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .cd-horizontal-timeline .events-content p, .cd-horizontal-timeline .events-content hr {
    font-size: 0.875rem;
    max-width: 600px;
    text-align: left;
    color: #7475a5;
  }
}

@keyframes cd-enter-right {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

@keyframes cd-enter-left {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

/* ***************** */

.cd-horizontal-timeline .events-content {
  position: relative;
  width: 100%;
  margin: 10px 0;
  overflow: visible;
  transition: height 0.4s;
  color: #FFF;
}

.cd-horizontal-timeline .events-content li.selected {
  position: relative;
  z-index: 2;
  opacity: 1;
  transform: translateX(0);
  padding: 1.5rem;
  border-radius: 1rem;
  border: 1px solid #f8f6fb;
  background-color: rgba(90, 82, 166, 0.999);
  box-shadow: 0 4px 16px rgba(63, 120, 184, .1);
  max-width: 600px;
}

.cd-horizontal-timeline .events-content h3, .cd-horizontal-timeline .events-content p, .cd-horizontal-timeline .events-content hr {
  color: #FFF;
}

