/**
 * Block : Timeline
 * =================================
 *
 *
 *
 */

.timeline {
  margin-top: 0;
}

body.page-id-247 .timeline {
  padding-bottom: 150px;
}

body.page-id-247 footer {
  margin-top: -200px;
}

.timeline > div {
  max-width: 1300px;
  margin: 0 auto;
}

.timeline__body {
  position: relative;
}

@media screen and (max-width: 1440px) {
  .timeline > div {
    max-width: 1200px;
    padding-left: 0.938rem;
    padding-right: 0.938rem;
  }
}

.mb-block-preview .js-tabs-timeline-content > div:first-child {
  display: block;
}

.timeline__item-icon {
  width: 90px;
  height: 90px;
}

.timeline__item-text {
  font-size: 1.125rem;
  line-height: 1.625rem;
  font-weight: 600;
}

@media screen and (max-width: 1200px) {
  .timeline__items-nav .js-slider-timeline-controls {
    padding: 0 29px;
  }
}

.timeline__items ul > li > button {
  font-family: "Comfortaa", sans-serif;
  font-weight: 700;
  font-size: 1.875rem;
  color: var(--wp--preset--color--tertiary);
  opacity: 0.5;
}

.timeline__items ul > li.open > button {
  --tw-text-opacity: 1;
  color: rgb(242 141 39 / var(--tw-text-opacity));
  opacity: 1;
}

.timeline__items-nav .tns-inner {
  margin: 0 40px !important;
  overflow: hidden;
}

@media screen and (max-width: 480px) {
  .timeline__items ul > li > button {
    font-size: 1.4rem;
  }
}

.timeline__items ul > li.tns-nav-active > button,
.timeline__items ul > li > button.active {
  color: var(--wp--preset--color--secondary);
  opacity: 1;
}

.timeline.active > svg {
  animation-play-state: running;
}

.timeline > svg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  width: 332px;
  height: auto;
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  animation: dash 2.5s linear forwards;
  animation-play-state: paused;
}

@keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}

@media screen and (max-width: 992px) {
  .timeline > svg {
    width: 290px;
    left: -37px;
  }
}

@media screen and (max-width: 480px) {
  .timeline > svg {
    width: 230px;
    left: -18px;
    top: -32px;
  }

  .js-tabs-timeline {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
  }
}

.js-slider-timeline-controls {
  position: absolute;
  top: 50%;
  left: -7.5px;
  transform: translateY(-50%);
  width: calc(100% + 15px);
  z-index: 2;
  pointer-events: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.js-slider-timeline-controls > button {
  pointer-events: auto;
  width: 30px;
  height: 30px;
}

.js-slider-timeline-controls > button svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.js-slider-timeline-controls > button svg path {
  fill: var(--wp--preset--color--secondary);
}
