.stepper {
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth; /* Smooth scrolling animation */
    padding: 16px 20px; /* Added horizontal padding for breathing room */
    margin: 20px -20px 24px -20px; /* Negative margin to extend to screen edges */

    /* Background styling */
    background: rgba(255, 255, 255, 0.02);
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);

    /* Hide scrollbar but keep functionality */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge */
}

.stepper::-webkit-scrollbar {
    display: none; /* Chrome/Safari/iOS */
}

/* Prevent page from scrolling horizontally */
.venue-page {
    overflow-x: hidden;
    max-width: 100%;
    position: relative; /* Ensure proper containment */
}

/* Make sure stepper items don't wrap or shrink */
.stepper .step {
    flex-shrink: 0;
    min-width: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.stepper .step .dot {
    width: 36px;
    height: 36px;
    min-width: 36px; /* Add this - prevents shrinking */
    min-height: 36px; /* Add this - prevents shrinking */
    flex-shrink: 0; /* Add this - prevents flex from shrinking it */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.1);
    color: #8b95a5;
    border: 2px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
}

.stepper .step.active .dot {
    background: #E10073;
    color: #fff;
    border-color: #E10073;
    box-shadow: 0 0 12px rgba(225, 0, 115, 0.5);
}

.stepper .step.completed .dot {
    background: #10b981;
    color: #fff;
    border-color: #10b981;
}

.stepper .step span {
    font-size: 12px;
    color: #8b95a5;
    white-space: nowrap; /* Prevent text wrapping */
    transition: color 0.3s ease;
}

.stepper .step.active span {
    color: #E10073;
    font-weight: 600;
}

.stepper .step.completed span {
    color: #10b981;
}

.stepper .line {
    flex-shrink: 0;
    min-width: 30px;
    width: 30px;
    height: 2px;
    background: rgba(255, 255, 255, 0.15);
    transition: background 0.3s ease;
}

.stepper .line.completed {
    background: #10b981;
}

/* Optional: Add fade effect on edges to indicate scrollability */
.stepper::before,
.stepper::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 20px;
    pointer-events: none;
    z-index: 1;
}

.stepper::before {
    left: 0;
    background: linear-gradient(to right, rgba(10, 14, 26, 1), transparent);
}

.stepper::after {
    right: 0;
    background: linear-gradient(to left, rgba(10, 14, 26, 1), transparent);
}