/* Booking progress steps */
.steps {
    display: flex !important;
    width: 100%;
    gap: 8px;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid #e1e6ea;
    border-radius: 10px;
    background: #f7f8f9;
    font-family: "Montserrat", sans-serif;
}

.steps li {
    display: block !important;
    flex: 1 1 0;
}

.steps li a,
.steps li p {
    min-height: 40px;
    margin: 0 !important;
    padding: 12px 10px !important;
    border-radius: 7px;
    background: transparent !important;
    color: #788590 !important;
    font-size: 11px !important;
    font-weight: 650 !important;
    line-height: 16px;
    text-align: center;
    text-indent: 0 !important;
}

.steps li a::before,
.steps li a::after,
.steps li p::before,
.steps li p::after {
    display: none !important;
}

.steps li.active a,
.steps li.active p {
    background: #10283d !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(16, 40, 61, .14);
}

.steps li.undone a,
.steps li.undone p {
    color: #788590 !important;
}

/* Preserve Bootstrap's separate desktop and mobile step bars. */
.steps.d-none.d-md-block {
    display: none !important;
}

.steps.d-block.d-md-none {
    display: flex !important;
}

@media (min-width: 768px) {
    .steps.d-none.d-md-block {
        display: flex !important;
    }

    .steps.d-block.d-md-none {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .steps { gap: 4px; }

    .steps li a,
    .steps li p {
        min-height: 36px;
        padding: 10px 4px !important;
        font-size: 10px !important;
    }
}
