/* Container & Heading */
.healthcare-guide {
  text-align: center !important;
  background: #fff !important;
  padding: 40px 20px !important;
}
.healthcare-guide h2 {
  font-size: 30px !important;
  margin-bottom: 30px !important;
  color: #0F4C81 !important;
}

/* Timeline Wrapper */
.healthcare-guide .timeline {
  position: relative !important;
  width: 100% !important;
  max-width: 1000px !important;
  height: 180px !important;
  margin: 0 auto !important;
}

/* Dotted Line Full Width */
.healthcare-guide .timeline .line {
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  right: 0 !important;
  border-top: 3px dotted #333 !important;
  transform: translateY(-50%) !important;
  z-index: 1 !important;
}

/* Green Markers */
.healthcare-guide .timeline .marker {
  position: absolute !important;
  top: 50% !important;
  width: 14px !important;
  height: 14px !important;
  background: #4CAF50 !important;
  border-radius: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 2 !important;
}

/* Steps & Icons */
.healthcare-guide .timeline .step {
  position: absolute !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  z-index: 3 !important;
}

/* Top row */
.healthcare-guide .timeline .step.top {
  top: 0 !important;
}

/* Bottom row */
.healthcare-guide .timeline .step.bottom {
  top: calc(100% - 32px) !important;
}

/* Icon size & animation */
.healthcare-guide .timeline .step img {
  width: 32px !important;
  height: 32px !important;
  animation: swing 3s infinite ease-in-out !important;
}

/* Labels */
.healthcare-guide .timeline .step p {
  margin: 6px 0 0 !important;
  font-size: 13px !important;
  color: #333 !important;
  line-height: 1.2 !important;
}

/* Swing Animation */
@keyframes swing {
  0%   { transform: translateX(-50%) rotate(0deg); }
  50%  { transform: translateX(-50%) rotate(8deg); }
  100% { transform: translateX(-50%) rotate(0deg); }
}

/* Responsive: stack vertically */
@media (max-width: 768px) {
  .healthcare-guide .timeline {
    height: auto !important;
  }
  .healthcare-guide .timeline .step {
    position: static !important;
    margin: 20px auto !important;
    transform: none !important;
    width: auto !important;
  }
  .healthcare-guide .timeline .line,
  .healthcare-guide .timeline .marker {
    display: none !important;
  }
}
