:root {
  --gradient-primary: linear-gradient(90deg, #67b4dc 0%, #264d82 100%);
  --gradient-secondary: linear-gradient(0deg, #F15833 0%, #67b4dc 100%);
  --gradient-fuschia: linear-gradient(0deg, #ba33f1 0%, #264d82 68%);
  --gradient-blue-radial: radial-gradient(circle, #67b4dc 0%, rgba(103, 180, 220, 0) 100%);
}

.gradient-primary {
  background: var(--gradient-primary);
}

.gradient-secondary {
  background: var(--gradient-secondary);
}

.gradient-fuschia {
  background: var(--gradient-fuschia);
}

.gradient-blue-radial {
  background: var(--gradient-blue-radial);
}

.text-gradient-primary {
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-gradient-secondary {
  background: var(--gradient-secondary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-gradient-fuschia {
  background: var(--gradient-fuschia);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.block--timeline {
  position: relative;
}
.block--timeline .swiper .swiper-wrapper {
  align-items: flex-start;
}
.block--timeline .timeline-slides {
  position: relative;
  z-index: 2;
  margin-bottom: 42px;
  overflow: visible;
  padding-left: 150px;
  padding-right: 150px;
}
.block--timeline .timeline-navigation {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-left: 150px;
}
.block--timeline .timeline-navigation button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #0B183D;
  transition: color 0.2s;
  flex-shrink: 0;
}
.block--timeline .timeline-navigation button:hover {
  color: #264D82;
}
.block--timeline .timeline-navigation button:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.block--timeline .timeline-navigation button svg {
  display: block;
}
.block--timeline .timeline-navigation .timeline-pagination {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0 20px;
}
.block--timeline .timeline-navigation .timeline-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: transparent;
  border: 1px solid #0b183d;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.2s;
}
.block--timeline .timeline-navigation .timeline-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #0b183d;
}
@media (max-width: 991.98px) {
  .block--timeline {
    padding: 48px 0;
  }
  .block--timeline .timeline-slides {
    padding-left: 24px;
    padding-right: 24px;
  }
  .block--timeline .timeline-navigation {
    padding-left: 24px;
  }
}

.block--timeline-event {
  display: flex;
  flex-direction: column;
  gap: 50px;
  width: auto !important;
}
@media (max-width: 767.98px) {
  .block--timeline-event {
    max-width: 80vw;
  }
}
.block--timeline-event .timeline-event__content-above {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  width: auto;
  max-width: 599px;
  height: 133px;
}
.block--timeline-event .timeline-event__year {
  font-family: "Open Sans", sans-serif;
  font-size: 52px;
  font-weight: 800;
  line-height: 1.1;
  color: #0B183D;
  white-space: nowrap;
  flex-shrink: 0;
}
.block--timeline-event .timeline-event__image {
  width: 217px;
  height: 133px;
  border-radius: 8px;
  overflow: hidden;
  background-color: #D9D9D9;
  flex-shrink: 0;
}
.block--timeline-event .timeline-event__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block--timeline-event .timeline-event__line {
  position: relative;
  width: calc(100% - 27px);
  height: 3px;
  background: #F15833;
  margin: 24px 0;
}
.block--timeline-event .timeline-event__line::after {
  content: "";
  position: absolute;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='20 0 130 3' xmlns='http://www.w3.org/2000/svg' fill='%23f15833'%3E%3Crect x='20' width='50' height='6' /%3E%3Crect x='70' width='20' height='6' fill='%23fff' /%3E%3Crect x='90' width='12' height='6' /%3E%3Crect x='102' width='8' height='6' fill='%23fff' /%3E%3Crect x='110' width='40' height='6' /%3E%3C/svg%3E");
  width: 130px;
  height: 3px;
  right: -140px;
  z-index: 99999;
}
.block--timeline-event .timeline-event__line .timeline-event__dot {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #0b183d;
}
.block--timeline-event.swiper-slide:last-child .timeline-event__line {
  width: 100%;
}
.block--timeline-event.swiper-slide:last-child .timeline-event__line::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #0b183d;
}
.block--timeline-event .timeline-event__content-below {
  display: flex;
  gap: 16px;
  width: auto;
  max-width: 748px;
}
.block--timeline-event .timeline-event__content-below h3, .block--timeline-event .timeline-event__content-below .wp-block-heading {
  font-family: "Open Sans", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
  color: #0B183D;
  width: 366px;
  flex-shrink: 0;
  margin: 0;
}
.block--timeline-event .timeline-event__content-below p, .block--timeline-event .timeline-event__content-below .wp-block-paragraph {
  font-family: "Aptos", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 26px;
  color: #454D51;
  width: 366px;
  flex-shrink: 0;
  margin: 0;
}
@media (max-width: 991.98px) {
  .block--timeline-event {
    min-width: auto;
    width: 100%;
    gap: 32px;
  }
  .block--timeline-event .timeline-event__line {
    width: calc(100% + 120px);
  }
  .block--timeline-event.swiper-slide:last-child .timeline-event__line {
    width: 100%;
  }
  .block--timeline-event.swiper-slide:last-child .timeline-event__line::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #0b183d;
  }
  .block--timeline-event .timeline-event__content-above {
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
  }
  .block--timeline-event .timeline-event__year {
    font-size: 36px;
  }
  .block--timeline-event .timeline-event__image {
    width: 100%;
    max-width: 217px;
  }
  .block--timeline-event .timeline-event__content-below {
    flex-direction: column;
  }
  .block--timeline-event .timeline-event__content-below h3, .block--timeline-event .timeline-event__content-below .wp-block-heading,
  .block--timeline-event .timeline-event__content-below p, .block--timeline-event .timeline-event__content-below .wp-block-paragraph {
    width: 100%;
  }
}

.editor-styles-wrapper .block--timeline-event {
  border: 1px dashed #ccc;
  padding: 20px;
}
