.step-indicator {
        display: flex;
        flex-direction: column;
        align-items: center;
        flex: 1;
        position: relative;
    }

    .step-indicator:not(:last-child)::after {
        content: '';
        position: absolute;
        top: 20px;
        left: 60%;
        width: 80%;
        height: 2px;
        background-color: #e5e7eb;
        z-index: -1;
    }

    .step-indicator.active:not(:last-child)::after {
        background-color: #0d9488;
    }

    @media (max-width: 768px) {
        .step-indicator:not(:last-child)::after {
            display: none !important;
        }
    }

    .step-circle {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: #e5e7eb;
        color: #6b7280;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 600;
        margin-bottom: 8px;
        transition: all 0.3s;
    }

    .step-indicator.active .step-circle {
        background-color: #0d9488;
        color: white;
    }

    .step-indicator.completed .step-circle {
        background-color: #059669;
        color: white;
    }

    .step-indicator.active .step-label {
        color: #0d9488;
        font-weight: 600;
    }

    .form-step {
        display: none !important;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
    }

    .form-step.active {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    @media (max-width: 768px) {
        .step-indicator {
            flex-direction: column;
            align-items: center;
            margin-bottom: 8px;
        }

        .step-indicator .step-circle {
            width: 32px;
            height: 32px;
            margin-right: 0;
            margin-bottom: 4px;
            font-size: 14px;
        }

        .step-indicator:not(:last-child)::after {
            display: none;
        }

        .step-label {
            font-size: 12px;
            text-align: center;
        }
    }