    .org-chart {
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .level {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      margin: 20px 0;
    }

    .node {
      background: #fff;
      padding: 15px 20px;
      border-radius: 6px;
      box-shadow: 0 2px 5px rgba(0,0,0,0.1);
      margin: 10px;
      min-width: 150px;
      text-align: center;
      font-weight: bold;
    }

    .line {
      width: 2px;
      height: 20px;
      background-color: #555;
      margin: 0 auto;
    }

    .connector {
      width: 100%;
      display: flex;
      justify-content: center;
      position: relative;
      margin-top: -10px;
    }

    .connector::before {
      content: '';
      position: absolute;
      height: 2px;
      background: #555;
      width: 80%;
      top: 50%;
      left: 10%;
    }

    @media (max-width: 768px) {
      .level {
        flex-direction: column;
        align-items: center;
      }
      .connector::before {
        width: 2px;
        height: 100%;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
      }
    }
