/* Timeline Styles */
.timeline-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
  flex-wrap: wrap;
}

.timeline-item {
  min-width: 10rem;
  text-align: center;
}

.timeline-item h4 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-md);
  margin-bottom: var(--spacing-xs);
  text-align: center;
}

.timeline-item p {
  font-family: var(--font-body);
  font-size: var(--font-size-med);
  color: var(--color-secondary);
  margin: 0;
}

.timeline-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 1rem 0;
  width: 100%;
  max-width: 1200px;
  padding: 3rem 2rem;
  border-radius: var(--border-radius-l, 0.75rem);
  border: 1px solid var(--color-dark);
}

.timeline-heading {
  text-align: center;
  margin-bottom: 2rem;
}

.divider-line {
  width: 1px;
  background-color: #ccc;
  min-height: 20rem;
  align-self: stretch;
}

.featured-image-process img {
  width: 100%;
  max-width: 60rem;
  height: auto;
  display: block;
  border-radius: var(--border-radius-l, 0.75rem);
  box-shadow: var(--drop-shadow-1);
}

/* Dark Mode */
body.dark-mode .timeline-wrapper {
  border-color: var(--color-white);
}

body.dark-mode .timeline-item h4,
body.dark-mode .timeline-heading {
  color: var(--color-white);
}

body.dark-mode .timeline-item p {
  color: var(--color-third);
}

body.dark-mode .divider-line {
  background-color: var(--color-third);
}

body.dark-mode .featured-image-process img {
  box-shadow: var(--drop-shadow-1);
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .timeline-container {
    flex-direction: column;
    gap: 2rem;
  }

  .timeline-item {
    width: 100%;
    max-width: 100%;
  }

  .timeline-wrapper {
    width: 20rem;
  }

  .divider-line {
    display: none;
  }

  .featured-image-process img {
    max-width: 100%;
  }
}