.join-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-top: 50px;
            position: relative;
        }

        .step {
            text-align: center;
            z-index: 1;
            opacity: 0;
            transform: translateY(50px);
            transition: all 0.8s ease;
            flex: 1;
        }

        .step.visible {
            opacity: 1;
            transform: translateY(0);
        }

        .step-circle {
            width: 80px;
            height: 80px;
            background: var(--primary-color);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2rem;
            font-weight: bold;
            color: white;
            margin: 0 auto 20px;
            position: relative;
        }

        .join-container::before {
            content: '';
            position: absolute;
            top: 40px;
            left: 15%;
            width: 70%;
            height: 4px;
            background: var(--primary-color);
            z-index: 0;
        }