@font-face {
    font-family: 'Montserrat';
    src: url('/nd/fonts/Montserrat/Montserrat-VariableFont_wght.ttf') format("truetype-variations");
    font-weight: 1 999;
}

*{
    font-family: Montserrat;
}

.pusher{
    background-color: #D9D7D7 !important;
}


.white-bg-section {
    background: #fff;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

/*semantic styles change*/
.ui.message{
    border-radius: 10px !important;
}

.ui.button{
    border-radius: 10px !important;
}


/* ---------------- STEPS ---------------- */
.steps {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 1.125rem 0 1.125rem 3.125rem;
    margin-top: 0.9375rem;
    gap: 1.875rem;
    border: none;
}

.steps__progress {
    display: flex;
    gap: 0.625rem;
}
.step {
    width: 2.25rem;
    height: 2.25rem;
    background: #ECECEC;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #242424;
    font-size: 1.25rem;
}
.step--active {
    background: #01A4E9;
    color: #fff;
}

/* Sidebar */
.sidebar {
    width: 20rem;
    background: #fff;
    border-radius: 1rem;
    padding: 1.375rem 0 1.375rem 0;
    height: fit-content;
    margin-right: 0;
    scrollbar-width: none;
}
.sidebar::-webkit-scrollbar {
    display: none;
}
.sidebar__menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.sidebar__item {
    display: block;
    color: #232426;
    text-decoration: none;
    font-size: 1.0625rem;
    padding: 0.6875rem 1.375rem;
    border-radius: 0.5rem 0 0 0.5rem !important;
    margin-bottom: 0.3125rem;
    font-weight: 400;
    transition: background 0.17s, color 0.17s;
}
.sidebar__item.active,
.sidebar__item:hover {
    background: #1964cf !important;
    color: #fff !important;;
    font-weight: 500 !important;;
}
.sidebar__item:last-child {
    margin-bottom: 0;
}

/* ---------------- ROUTE INFO ---------------- */
.route-info {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 1.625rem 2.875rem;
    font-size: 1.0625rem;
    gap: 0.9375rem;
    margin-bottom: 1.125rem;
}
.route-info__text {
    color: #242424;
}

/*rounded*/

.rounded-card {
    border-radius: 1rem !important;
    box-shadow: 0 0.125rem 0.5rem rgba(0, 0, 0, 0.03) !important;
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
}

.nd-padding-1 {
    padding: 1.875rem !important;
}

/*links*/
.nd-link{
    color: #2cabe3 !important;
}

/*form*/
.rounded-card-input {
    padding: 0.8125rem 1rem !important;
    border: 0.09375rem solid #dedede !important;
    border-radius: 1.25rem !important;
    font-size: 1.0625rem !important;
    background: #f7f7f7 !important;
}

.nd-form input, .nd-form select{
    padding: 0.8125rem 1rem !important;
    border: 0.09375rem solid #dedede !important;
    border-radius: 1.25rem !important;
    font-size: 1.0625rem !important;
    background: #f7f7f7 !important;
}

.nd-form button{
    padding: 1rem 3rem !important;
    color: #fff !important;
    font-size: 1.125rem !important;
    border: none !important;
    border-radius: 0.375rem !important;
    cursor: pointer !important;
    font-weight: bold !important;
    transition: background 0.2s !important;
}

.nd-form .search{
    padding: 0.8125rem 1rem !important;
    border: 0.09375rem solid #dedede !important;
    border-radius: 1.25rem !important;
    font-size: 1.0625rem !important;
    background: #f7f7f7 !important;
}

.nd-form .dropdown{
    padding: 0.8125rem 1rem !important;
    border: 0.09375rem solid #dedede !important;
    border-radius: 1.25rem !important;
    font-size: 1.0625rem !important;
    background: #f7f7f7 !important;
}


/*button*/
.rounded-card-button{
    padding: 1rem 3rem !important;
    background: #ff7300 !important;
    color: #fff !important;
    font-size: 1.125rem !important;
    border: none !important;
    border-radius: 0.375rem !important;
    cursor: pointer !important;
    font-weight: bold !important;
    transition: background 0.2s !important;
}


/**/

.passenger-form__title {
    text-align: center;
    font-size: 1.75rem;
    font-weight: 500;
    margin-bottom: 1.75rem;
}