h2 {
      text-align: center;
      color: #222;
      margin-bottom: 40px;
      font-size: 2em;
    }

    .timeline {
      position: relative;
      max-width: 900px;
      margin: 0 auto;
margin-bottom: 3rem;
    }

    /* The vertical line */
    .timeline::after {
      content: '';
      position: absolute;
      width: 4px;
      background: #e40532;
      top: 0;
      bottom: 0;
      left: 50%;
      margin-left: -2px;
      border-radius: 6px;
    }

    .timeline-container {
      padding: 10px 40px;
      position: relative;
      width: 50%;
      background-color: inherit;
    }

    /* Custom dots */
    .timeline-container::after {
      content: '';
      position: absolute;
      width: 18px;
      height: 18px;
      top: 24px;
      right: -9px;
      background: rgba(0,71,187,1);
      border-radius: 50%;
      box-shadow: 0 0 0 3px rgba(0,71,187,0.2);
z-index: 1;
    }

    .left {
      left: 0;
      text-align: left;
    }

    .right {
      left: 50%;
    }

    .left::after {
      right: -9px;
    }

    .right::after {
      left: -9px;
    }

    .content {
      padding: 20px 30px;
      background-color: white;
      position: relative;
      border-radius: 8px;
      box-shadow: 0 6px 20px rgba(0,0,0,0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }

    /* Arrows pointing to center line */
    .left .content::after {
      content: '';
      position: absolute;
      top: 20px;
      right: -15px;
      border-width: 10px 0 10px 15px;
      border-style: solid;
      border-color: transparent transparent transparent white;
    }

    .right .content::after {
      content: '';
      position: absolute;
      top: 20px;
      left: -15px;
      border-width: 10px 15px 10px 0;
      border-style: solid;
      border-color: transparent white transparent transparent;
    }

    .content:hover {
      transform: translateY(-4px);
      box-shadow: 0 8px 25px rgba(0,0,0,0.15);
    }

    .content h3 {
      margin-top: 0;
      color: #e40532;
    }

    .content p {
      color: #333;
      line-height: 1.5;
    }

    /* Responsive Design */
    @media screen and (max-width: 600px) {
      .timeline::after {
        left: 30px;
      }

      .timeline-container {
        width: 100%;
        padding-left: 70px;
        padding-right: 25px;
      }

      .timeline-container::after {
        left: 21px;
      }

      .left, .right {
        left: 0;
        text-align: left;
      }

      .left .content::after, .right .content::after {
        left: 21px;
        border: medium solid white;
        border-width: 10px 10px 10px 0;
        border-color: transparent white transparent transparent;
      }
    }