/*@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,400&display=swap&');*/
/*test*/
@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Roboto"),
    url("/assets_2022/fonts/Roboto-Regular.ttf") format("ttf");
}
@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: bold;
    font-display: swap;
    src: local("Roboto"),
    url("/assets_2022/fonts/Roboto-Bold.ttf") format("ttf");
}
@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Roboto"),
    url("/assets_2022/fonts/Roboto-Medium.ttf") format("ttf");
}
@font-face {
    font-family: "Roboto";
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: local("Roboto"),
    url("/assets_2022/fonts/Roboto-Italic.ttf") format("ttf");
}
.wrapper {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 56px;
    background: url("../img/background_bottom.png") #F5F5F5 no-repeat bottom;
    padding-left: 10px;
    padding-right: 10px;
    overflow: hidden;
}
.header {
    height: auto;
    min-height: 406px;
    background: url("../img/background_top.png") #F5F5F5 no-repeat top;
    margin-left: -15px;
    margin-right: -15px;
}
body {
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
}
h1, h2, h3 {
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    font-style: normal;
}
h1 {
    font-weight: 700;
    font-size: 48px;
    color: #fff;
}
h2 {
    font-size: 30px;
    font-weight: 700;
    line-height: 35px;
    color: #00A3FF;
}
h3 {
    font-size: 22px;
    font-weight: 700;
    color: #585A5A;
}
.subtitle {
    font-size: 18px;
    font-weight: 300;
    color: #fff;
}

/*block*/
.block {
    margin-bottom: 56px;
}
.block-title h2 {
    font-size: 30px;
    font-weight: 700;
    color: #00A3FF;
    margin-bottom: 32px;
}
.block-title span.black,
h2.title-black {
    /*color: #585A5A;*/
    color: #404040;
}

/* >>> Info panels */

.block-message {
    padding: 32px;
    color: #808080;
    background: #FFFFFF;
    border: 1px solid #00A3FF;
    box-sizing: border-box;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1), 0 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.block-message .block-subtitle {
    font-size: 30px;
    font-weight: 700;
    color: #00A3FF;
    text-transform: uppercase;
}

/*
.block-warning .block-content {
    color: #808080;
}
*/

.block-message-warning {
    border-color: #FF0000;
}

.block-message-warning .block-subtitle {
    color: #FF0000;
}

.block-message-success {
    border-color: #00A47F;
}

.block-message-success .block-subtitle {
    color: #00A47F;
}

/* <<< Info panels */

.block-content {
    color: #404040;
}
.block-article {
    text-align: justify;
}

.block-content-card {
    margin-right: -5px;
    margin-left: -5px;
}
.block-content-card .block-card-img {
    max-width: 300px;
    display: flex;
    /*flex-grow: 1;*/
    margin: auto;
}
.block-card-text {
    display: flex;
    flex-grow: 3;
}
.ticket-city .block-card-text a {
    font-weight: 500;
    text-transform: uppercase;
    color: #585A5A;
    padding: 16px 0 24px;
}
.news .block-card-text {
    font-weight: 400;
    color: #808080;
    padding: 24px;
    flex-direction: column;
}
.news .block-card-text p.date {
    font-size: 16px;
    font-weight: 500;
    color: #FFB800;
    margin: 16px 20px 16px 0;
}
.news .block-card-text h3 {
    margin-bottom: unset;
}
.block-card {
    flex-basis: 50%;
    padding: 5px;
 }
.news .block-card,
.info-block,
.popular-questions,
.ticket-search-filter,
.ticket-search-filter-mob,
.frequently-questions {
    background: #FFFFFF;
    box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.1), 0px 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
}
.frequently-questions,
.popular-questions,
.info-block,
.ticket-search-filter,
.ticket-search-filter-mob {
    padding: 20px;
}
.ticket-search-filter,
.ticket-search-filter-mob {
    margin: 32px auto;
}
.ticket-search-filter-btn {
    display: none;
}
.block-img {
    margin: 32px auto;
}
.block-button {
    display: flex;
    justify-content: space-between;
}
/*
.news .block-card-text img {
    max-width: 300px;
    float: left;
    margin: 0 20px 20px 0;
}
*/
.news .share-btns {
    display: flex;
    align-items: center;
}
.news .share-btns .a2a_svg {
    width: 24px;
    height: 24px;
}
/*
.news .block-card-img img {
    width: 290px;
}
*/
.news-list-image {
    width: 290px;
}

/*---*/

/*ticket-search*/
.ticket-search .search-title {
    display: flex;
    font-size: 14px;
    font-weight: 700;
    color: #585A5A;
    padding: 0 15px;
    margin-bottom: 16px;
}
.ticket-search .search-title .info-title {
    font-weight: 400;
}
.ticket-search .train-title {
    display: flex;
    flex-direction: column;
    /*flex-grow: 1;*/
    width: 250px;
    margin-right: 20px;
    justify-content: space-between;
}

.ticket-search .search-item-train {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 250px;
    margin-right: 20px;
}
.search-item-train .item-train-type {
    font-size: 14px;
    font-weight: 400;
    color: #585A5A;
}
.search-item-train .train-number {
    font-size: 14px;
    font-weight: 700;
    color: #000;
}
.search-item-train .item-train-title {
    font-size: 14px;
    font-weight: 400;
    color: #00A3FF;
    text-transform: capitalize;
    cursor: pointer;
}
.search-item-train .item-train-route button,
.search-item-train .item-train-route a,
.schedule-results .schedule-item-train button,
.schedule-accordion .item-train-route button,
.schedule-accordion .show-route-btn,
.schedule-results .schedule-item-train button,
.schedule-accordion .item-train-route button,
.schedule-accordion .show-route-btn,
.news .news-item button,
.admin-order .train-info-mobile button {
    background-color: #D8D8D8;
}
.search-item-train .item-train-route button,
.search-item-train .item-train-route a,
.schedule-results .schedule-item-train button,
.schedule-accordion .item-train-route button,
.schedule-accordion .show-route-btn,
#admin .news button,
.admin-order .train-info-mobile button,
#messageDialog .refund-action {
    width: 120px;
    display: inline-block;
    border-radius: 3px;
    text-align: center;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    border: none;
}
#messageDialog .refund-action.bg-red:disabled,
#messageDialog .refund-action.bg-red:disabled:hover {
    background-color: #ea8181;
    cursor: unset;
}
#messageDialog .refund-action.bg-red:hover {
    background-color: #da0000;
}
#messageDialog .refund-action.bg-yellow:hover {
    background-color: #fdc533;
}
#messageDialog .refund-action.bg-blue:hover {
    background-color: #3B6FD9;
}
#messageDialog div.refund {
    margin-left: 35px;
}
#messageDialog div.refund .invalid-feedback {
    color: #da0000;
    font-size: 12px;
}
.search-item-train .item-train-route button:hover,
.search-item-train .item-train-route a:hover,
.schedule-results .schedule-item-train button:hover,
.news button.create-action:hover {
    background-color: #ffc941;
    transition: .5s;
}
.news button.create-action {
    background-color: #FFB800;
}
.item-train-title-mob {
    display: none;
}
.search-item-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /*flex-grow: 2;*/
    width: 260px;
    margin-right: 20px;
}
.search-title .schedule-title {
    width: 260px;
    display: flex;
    justify-content: space-between;
    margin-right: 20px;
}
.search-item-info-schedule {
    display: flex;
    justify-content: space-between;
}
.ticket-search .search-item-info-schedule .info-schedule-departure,
.ticket-search .search-item-info-schedule .info-schedule-arrival,
.ticket-item-warning .block-title,
.schedule-results .search-item-info-schedule .info-schedule-arrival,
.schedule-results .search-item-info-schedule .info-schedule-departure {
    font-size: 18px;
    font-weight: 700;
    color: #000;
}
.search-item-info-schedule .info-schedule-duration {
    font-size: 13px;
    font-weight: 400;
    color: #585A5A;
}
.search-item-info-schedule .info-schedule-duration {
    font-size: 13px;
    font-weight: 400;
    color: #585A5A;
    line-height: 27px;
}
.search-item-info-line {
    background: transparent url(../img/search-item-info-line.png);
    height: 4px;
    width: 260px;
}
.search-item-info-route {
    display: flex;
    justify-content: space-between;
}
.search-item-info-route .info-route-departure,
.search-item-info-route .info-route-arrival {
    font-size: 14px;
    font-weight: 400;
    color: #585A5A;
    text-transform: capitalize;
}
.search-item-price {
    display: flex;
    flex-direction: column;
    flex-grow: 2;
    justify-content: space-around;
}
.search-item-price-item {
    display: flex;
    justify-content: space-between;
}
.search-item-choice {
    display: flex;
    /* flex-direction: row; */
    justify-content: flex-end;
    align-items: center;
    flex-grow: 1;
}
.search-item-price-item .type {
    font-size: 13px;
    font-weight: 400;
    color: #7B7B7B;
    display: flex;
    justify-content: left;
    /*flex-grow: 2;*/
    /*min-width: 130px;
    flex-basis: 40%;*/
    flex-basis: 33%;
}
.search-item-price-item .search-item-place {
    font-size: 14px;
    font-weight: 600;
    color: #000;
    display: flex;
    justify-content: center;
    /*flex-grow: 1;*/
    flex-basis: 33%;
}
.search-item-price-item .price {
    font-size: 14px;
    font-weight: 500;
    color: #FFB800;
    display: flex;
    justify-content: left;
    /*flex-grow: 1;*/
    flex-basis: 33%;
}
.stickers-block {
    padding-right: 15px;
    position: absolute;
    width: 966px;
    text-align: right;
}
.sticker {
    display: inline-block;
    padding: 5px 10px;
    font-size: 13px;
    font-weight: 400;
    line-height: 16px;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    margin-left: 8px;
    position: relative;
    top: -9px;
}
.stickers span {
    padding: 5px 10px;
    display: inline-block;
}
.bg-sticker-green {
    background-color: #72B62B;
}
.bg-sticker-blue {
    background-color: #00A3FF;
}
.bg-sticker-purple {
    background-color: #B43FEB;
}
.bg-sticker-green:before,
.bg-sticker-blue:before,
.bg-sticker-purple:before {
    content: '';
    border-style: solid;
    border-width: 0px 0px 9px 8px;
    position: relative;
    top: -20px;
    right: 18px;
}
.bg-sticker-green:before {
    border-color: transparent transparent #588a24 transparent;
}
.bg-sticker-blue:before {
    border-color: transparent transparent #0e85c8 transparent;
}
.bg-sticker-purple:before {
    border-color: transparent transparent #8a28b8 transparent;
}
/*---*/

/*choice-seat block*/
.choice-seat-info,
.train-info-block,
.route-info-block,
.choice-seat-item {
    display: flex;
    justify-content: space-between;
}
.choice-seat-item {
    font-size: 16px;
    font-weight: 400;
    /*line-height: 20px;*/
    color: #000;
}
.choice-seat-item .seat-info {
    display: flex;
}
.choice-seat-item .seat-info-col {
    display: flex;
    flex-direction: row;
}
.choice-seat-info {
    font-size: 18px;
    font-weight: 600;
    /*line-height: 20px;*/
    color: #000;
    margin: 32px 0;
}
.choice-seat-info .train-type {
    font-weight: normal;
}
.train-info-block,
.route-info-block {
    flex-direction: column;
}
.route-info {
    text-transform: capitalize;
}
.train-info-block {
    margin-right: 20px;
}
.choice-seat-wrap {
    padding: 15px;
    background-color: #fff;
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.25);
    margin-bottom: 3px;
}
.choice-seat .carriage-title,
.choice-seat .seat-info-title,
.choice-seat .seat-info-value,
.choice-seat .price-info-title,
.choice-seat .carriage-charline {
    padding-right: 10px;
}
.item-info-carriage {
    flex-basis: 15%;
}
.item-info-seat {
    flex-basis: 70%;
}
.seat-item-choice {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.carriage-type,
.price-info-block,
.choice-seat .station-from a,
.choice-seat .station-to a,
.schedule-info .station-from,
.schedule-info .station-to {
    font-size: 14px;
}
.price-info-block {
    color: #585A5A;
}
.train-title,
.route-title,
.schedule-title {
    font-size: 14px;
    font-weight: normal;
    color: #585A5A;
}
.choice-seats-scheme {
    /*background: url(../img/scheme.png) no-repeat center;*/
    /*!*height: 120px;*!*/
    /*margin: 5px auto;*/
    width: 100%;
    margin-left: 7rem;
    height: 110px;
    background-repeat: no-repeat;
    position: relative;
}
.choice-seat-item-img {
    padding: 50px 0;
}
/*---*/

/*ticketing*/
.ticket-item-head,
.order .total-price-value {
    font-size: 20px;
    font-weight: 700;
}
.ticket-item-head {
    display: flex;
    text-transform: uppercase;
    justify-content: space-between;
}
.ticket-item-head .ticket-title {
    padding-right: 10px;
}
.ticketing .ticket-item-data,
.ticketing .train-title,
.order .ticket-item-data,
.order .train-title,
.order .carriage-data {
    font-size: 14px;
    font-weight: 400;
    color: #1F1F1F;
}
.ticketing .price-data {
    font-size: 20px;
    font-weight: 700;
    color: #000;
}
.ticketing input.form-control {
    font-weight: 600;
    font-size: 18px;
    color: #585A5A;
    line-height: 26px;
}
.ticketing .form-control {
    width: 420px;
}
.ticketing .ticket-item-filter {
    margin-left: 107px;
}
.ticketing .ticket-item-passenger .form-label {
    color: #404040;
    font-size: 15px;
    font-weight: 600;
    margin: 0 15px 0 0;
}
.ticketing .form-item-input-child .calendar {
    background: url(../img/calendar_20.png)#fff no-repeat center right 10px !important;
    width: 155px;
}
.ticketing .form-item-input-child,
.ticketing .form-item-input-student {
    display: flex;
    position: relative;
/*    width: 300px;*/
    margin: 10px 0 20px;
    flex-direction: column;
}
.ticketing .form-item-input-child {
    /*left: -141px;*/
}
.ticketing .form-item-input-student {
    /*left: -116px;*/
}
.ticketing .form-item-input-student .form-control {
    width: 155px;
}
.privacy {
    background: #00A47F;
    box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.1), 0px 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    padding: 30px 15px;
    margin-bottom: 32px;
}
.privacy .block-card-img {
    margin: 0 20px 0 10px;
    align-self: center;
    flex-shrink: 1;
}
.privacy .block-card-text {
    flex-shrink: 3;
}
.privacy .block-card-text p {
    color: #fff;
}
.privacy .block-card-text p:first-child {
    font-size: 18px;
    font-weight: 700;
}
.privacy .block-card-text p:last-child {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: unset;
}
/*---*/

/*order*/
.order input.form-control {
    width: 440px;
    font-size: 18px;
    color: #585A5A;
}
.order .input-field {
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
}
.order .passenger-data {
    font-size: 18px;
    font-weight: 700;
}
.order .ticket-options-data,
.order .form-label {
    font-size: 15px;
}
.order .passenger-data,
.order .ticket-options-data,
.order .form-label {
    color: #404040;
}
.order .ticket-item-info {
    line-height: 23px;
}
.order .train-data {
    /*display: flex;*/
}
.order .train-title,
.order .train-number,
.order .station-from {
    margin-right: 5px;
}
.order .price-data,
.order .ticket-timer-value {
    font-size: 20px;
    font-weight: 700;
}
.order .price-data {
    color: #000;
}
.order .ticket-timer-value {
    color: #FFB800;
}
.order .order-price-block {
    display: flex;
    justify-content: right;
    align-items: end;
}
.order .form-label {
    font-weight: 600;
    display: flex;
    align-items: center;
    margin-right: 10px;
    margin-bottom: unset;
    line-height: 38px;
}
.order .form-check-label {
    font-size: 16px;
    font-weight: 500;
    color: #4A4A4A;
    margin-left: 15px;
}
.order .form-check-input {
    top: -3px;
    position: relative;
}
/*---*/

/*accordion*/
.accordion .accordion-button,
.ticket-search-filter h3,
.ticket-search-filter-mob h3 {
    font-weight: 700;
    font-size: 18px;
    color: #585A5A;
}
.accordion .accordion-button {
    text-transform: uppercase;
}
.accordion .accordion-body {
    padding: 40px 24px 24px;
}
.accordion .accordion-body .block {
    margin-bottom: unset;
}
.accordion-questions li {
    margin-bottom: 15px;
}
.accordion-questions a.faq-link {
    font-size: 18px;
    font-weight: 500;
    color: #00A3FF;
    line-height: 23px;
    cursor: pointer;
}
.accordion .accordion-body li::marker {
    color: #00A3FF;
}
.accordion .accordion-body .block-content .faq-content ul > li::marker {
    color: #1F1F1F;
}
.accordion .accordion-item {
    margin: 20px auto;
    /*box-shadow: 0px 6px 16px rgb(0 0 0 / 10%), 0px 12px 24px rgb(0 0 0 / 10%);
    border-radius: 8px;*/

    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
}
 .accordion .accordion-item .accordion-button {
     border-radius: 8px;
 }
.accordion .accordion-button:focus {
    border-color: unset;
    box-shadow: none;
}
.accordion .accordion-button:not(.collapsed) {
     background-color: #F5F5F5;
 }
.accordion .block-content {
    list-style: none;
    padding: 20px 0;
}
.accordion .block-content li > p,
.accordion .block-content .faq-content > p {
    font-size: 16px;
    font-weight: 400;
    color: #1F1F1F;
}
.accordion .block-content .faq-content a {
    font-weight: unset;
}
/*---*/

/*breadcrumbs*/
ul.breadcrumbs,
ul.breadcrumbs a,
ul.breadcrumbs-static,
ul.breadcrumbs-static a {
    font-size: 14px;
    color: #808080;
    text-decoration: unset;
    font-weight: normal;
}
ul.breadcrumbs a:hover,
ul.breadcrumbs a:focus,
ul.breadcrumbs a:active,
ul.breadcrumbs-static a:hover,
ul.breadcrumbs-static a:focus,
ul.breadcrumbs-static a:active {
    color: #00A3FF;
    text-decoration: unset;
}
ul.breadcrumbs,
ul.breadcrumbs-static {
    display: flex;
    list-style: none;
    padding-left: 0;
    margin-bottom: 32px;
    text-transform: capitalize;
}
ul.breadcrumbs-static li:after {
    content: '>';
    padding: 0 5px;
}
ul.breadcrumbs li:last-child:after,
ul.breadcrumbs-static li:last-child:after {
    content: '';
}
/*---*/

/*bc-stages*/
.bc-stages {
    display: flex;
    list-style: none;
    padding-left: 0;
    margin-bottom: 32px;

}
.bc-stages span {
    font-size: 14px;
    color: #C4C4C4;
    text-transform: uppercase;
    cursor: unset;
}
ul.bc-stages li.active span {
    font-weight: 700;
    color: #404040;
    cursor: pointer;
}
ul.bc-stages li:before {
    content: '\2014';
    margin: 0 5px;
    line-height: 18px;
    color: #C4C4C4;
}
ul.bc-stages li:after {
    content: unset;
}
ul.bc-stages li.active:after {
    content: "";
    position: relative;
    padding: 0px 3px;
    width: 4px;
    height: 15px;
    border-bottom: 2px solid #404040;
    border-right: 2px solid #404040;
    transform: rotate(45deg);
    display: inline-block;
    margin-left: 10px;
}
ul.bc-stages li:first-child:before,
ul.bc-stages li:last-child:after{
    display: none;
}
/*---*/

/*customs block*/
.ticket-search span.subtitle {
    font-size: 24px;
    font-weight: 400;
    color: #808080;
}
.popular-item,
.search-item,
.ticket-item {
    background: #FFFFFF;
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.25);
    border-radius: 6px;
    display: flex;
    justify-content: space-between;
}
.popular-item,
.search-item {
    padding: 15px;
}
.ticket-item {
    padding: 25px;
}
.popular-item {
    height: 47px;
    margin-bottom: 3px;
}
.search-item {
    margin-bottom: 16px;
    height: 120px;
    border: 2px solid transparent;
}
.search-item:hover,
.search-item:active,
.search-item:focus {
    border: 2px solid #00A3FF;
}
.popular-item p.route {
    font-weight: 500;
    font-size: 18px;
    color: #585A5A;
    line-height: 20px;
    text-transform: uppercase;
}
.popular-item p.price {
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #FFB800;
}
/*---*/

/*footer*/
.footer {
    padding: 32px 32px 0;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0px 6px 16px rgb(0 0 0 / 10%), 0px 12px 24px rgb(0 0 0 / 10%);
}
.footer .block {
    margin-bottom: unset;
}
.footer .block .block-subtitle {
    font-weight: 700;
    font-size: 16px;
    color: #585A5A;
    text-transform: uppercase;
}
.footer .block ul {
    list-style: none;
    padding-left: 0;
}
.footer .block a,
.ticket-item-warning a {
    font-weight: 400;
}
.footer-top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.footer-top .payment-cards img {
    margin-left: 30px;
}
.footer .copyright {
    font-weight: 400;
    font-size: 14px;
    color: #585A5A;
}
.copyright-mob,
.payment-cards-mob {
    /*display: none;*/
}
.footer-soc1al {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;
}
.footer-soc1al img {
    margin: 0 10px;
}
.footer-app-icons {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.footer-app-icons a img {
    width: 160px;
    height: 48px;
}
.footer-bottom {
    display: flex;
    justify-content: space-evenly;
    list-style-type: none;
}
.footer-bottom a {
    font-weight: 700;
    font-size: 12px;
    color: #585A5A;
    text-transform: uppercase;
}
/*---*/

/*single elements*/
a {
    text-decoration: none;
    color: #00A3FF;
    font-weight: 700;
}
.close-btn {
    width: 24px;
    height: 24px;
    background: transparent url(../img/close.png) center/24px auto no-repeat;
    border: 0;
    position: absolute;
    top: 20px;
    right: 20px;
}
.swap-stations {
    float: right;
    margin-top: 10px;
    cursor: pointer;
    width: 23px;
    height: 12px;
    background-image: url(../img/arrow.png);
    background-repeat: no-repeat;
}
.hide {
    display: none !important;
}
.red {
    color: #FF0000;
}
.bg-red {
    background-color: #FF0000;
}
.bg-yellow {
    background-color: #FFB800;
}
.bg-blue {
    background-color: #00A3FF;
}

.blue {
    color: #00A3FF;
}
.basket-item-desktop .basket-item-count {
    display: none;
    position: fixed;
    vertical-align: top;
    border: 1px #e74c3c solid;
    border-radius: 5px;
    padding: 3px;
    margin: 0 7px;
    box-shadow: 2px 1px 3px #a8a8a8;
    cursor: pointer;
    width: 48px;
    height: 48px;
    z-index: 150;
    background-color: #fff;
    top: 200px;
    right: 15px;
}
.basket-item-desktop .basket-item-count .count-ticket {
    border-radius: 100px;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    height: 20px;
    line-height: 20px;
    position: absolute;
    right: 10px;
    text-align: center;
    top: 5px;
    width: 20px;
    background-color: #e74c3c;
}
.basket-item-count img {
    max-width: 100%;
}
h1 .arrow-ico {
    position: relative;
    top: -8px;
}
.block-title h2 .arrow-ico {
    top: -5px;
    position: relative;
}
.preview {
    cursor: pointer;
}
.dataline {
    font-weight: bold;
}
.h-40 {
    height: 40px!important;
    line-height: 26px!important;
}
.h-48 {
    height: 48px!important;
    line-height: 38px!important;
}
.h-36 {
    height: 36px!important;
    line-height: 24px!important;
}
/*---*/

/*buttons*/
.btn-blue,
.btn-blue:hover,
.btn-blue:active,
.btn-blue:focus,
.btn-grey,
.btn-grey:hover,
.btn-grey:active,
.btn-grey:focus,
.btn-white,
.btn-white:hover,
.btn-white:active,
.btn-white:focus,
.btn-yellow,
.btn-yellow:hover,
.btn-yellow:active,
.btn-yellow:focus,
.btn-gemini-gray,
.btn-gemini-gray:hover,
.btn-gemini-gray:active,
.btn-gemini-gray:focus,
.btn-green,
.btn-green:hover,
.btn-green:active,
.btn-green:focus,
.btn-transparent,
.btn-transparent:hover,
.btn-transparent:active,
.btn-transparent:focus{
    /*color: #fff;*/
    font-weight: 600;
    font-size: 16px;
    line-height: 26px;
    /*height: 40px;*/
    text-transform: uppercase;
    outline: none;
    box-shadow: none;
    min-width: 160px;
    padding: 0.375rem 0.5rem;
}
.btn-blue {
    color: #fff;
    background-color: #00A3FF;
    border-color: #00A3FF;
}
.btn-blue-border,
.btn-blue-border:hover,
.btn-blue-border:active,
.btn-blue-border:focus {
    color: #00A3FF;
    background-color: #fff;
    border: 1px solid #00A3FF;
    border-radius: 4px;
}
.btn-gemini-gray,
.btn-gemini-gray:hover,
.btn-gemini-gray:active,
.btn-gemini-gray:focus {
    color: #fff;
    background-color: #707070;
    border-color: #707070;
}
.btn-green,
.btn-green:hover,
.btn-green:active,
.btn-green:focus {
    color: #fff;
    background-color: #2DC78E;
    border-color: #2DC78E;
}
.btn-transparent,
.btn-transparent:hover,
.btn-transparent:active,
.btn-transparent:focus {
    color: #707070;
    background-color: transparent;
    border-color: #707070;
}
.btn-yellow {
    color: #fff;
    background-color: #FFB800;
    border-color: #FFB800;
}
.btn-yellow:hover,
.btn-yellow:active,
.btn-yellow:focus {
    color: #fff;
    background-color: #fdc533;
    border-color: #fdc533;
}
.btn-blue:hover,
.btn-blue:active,
.btn-blue:focus {
    color: #fff;
    background-color: #3B6FD9;
    border-color: #3B6FD9;
 }
.btn-grey,
.btn-white {
    color: #888888;
    border-color: #888888;
    width: 100%;
    /*margin-bottom: 32px;*/
}
.btn-grey {
    background-color: #F5F5F5;
}
.btn-white {
    background-color: #fff;
}
.btn-grey:hover,
.btn-grey:active,
.btn-grey:focus {
    /*color: #888888;
    border-color: #888888;
    width: 100%;
    margin-bottom: 32px*/
    background-color: #fff;
}
.search-item-choice .btn-white {
    font-weight: 500;
    font-size: 16px;
    color: #888;
    width: 120px;
    height: 36px;
    min-width: unset;
    margin-bottom: unset;
}
.search-item-choice .btn-white:hover,
.search-item-choice .btn-white:active,
.search-item-choice .btn-white:focus {
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    background-color: #00A3FF;
    border-color: #00A3FF;
}
/*---*/

/*widget-support*/
.widget-addons-block {
    background: #DDDDDD;
    width: 100%;
    padding: 32px;
}
.widget-support-top {
    background: #585A5A;
    color: #fff;
    display: flex;
    justify-content: space-between;
    padding: 20px;
}
.widget-support-top a {
    color: #fff;
    font-weight: 500;
    font-size: 18px;
}
.widget-support-top .widget-subtitle {
    color: #fff;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 0;
}
.widget-support-top-logo img {
    width: 64px;
    height: 64px;
}
.widget-support-blocks {
    padding: 32px;
    display: flex;
    flex-direction: column;
}
.widget-support-block-item {
    height: 200px;
    border: 1px solid #ccc;
    width: 100%;
}
.widget-support-social {
    margin-top: 10px;
}
.widget-support-social img {
    margin-right: 10px;
    width: 36px;
    height: 36px;
}
.widget-support-social img:hover {
    /*filter: grayscale(60%);*/
    transform: translateY(-2px);
    transition: 0.3s;
}
/*---*/

/*frequently-questions,
popular-questions,
info-block*/
.frequently-questions ul {
    padding-left: 15px;
}
.popular-questions ul {
    list-style: none;
    padding-left: 0;
}
.popular-questions li {
    margin-bottom: 15px;
}
.frequently-questions a,
.info-block .block-content,
.ticket-item-warning .block-content {
    font-size: 14px;
    font-weight: 400;
    color: #1F1F1F;
}
 .info-block .block-title h2 {
     font-size: 22px;
     font-weight: 700;
     color: #FFB800;
     text-transform: uppercase;
 }
.frequently-questions h2,
.popular-questions h2 {
    color: #585A5A;
    font-size: 24px;
}
/*---*/

/*navigation*/
.navbar .nav-item a.nav-link,
.navbar .nav-item a.nav-link:active {
    font-size: 16px;
    font-weight: 700;
    color: #fff !important;
}
.navbar .nav-item a.nav-link.active,
.navbar .nav-item a.nav-link:hover,
.navbar li.nav-item.active {
    border: 1px solid #fff;
    border-radius: 8px;
}
.navbar .nav-item a.nav-link {
    border: 1px solid rgba(255, 255, 255, 0);
    border-radius: 8px;
    /*padding-left: 10px;*/
    white-space: nowrap;
}
.navbar li.nav-item {
    margin: 0 8px;
    text-transform: uppercase;
}
.navbar li.nav-item.routes {
    margin-right: 160px;
}
/*---*/

/*forms*/
.block-form .search-form {
    display: flex;
    margin-bottom: 32px;
    padding: 24px 7px;
    color: #808080;
    background: #FFFFFF;
    box-sizing: border-box;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1), 0 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    flex-wrap: wrap;
}
.block-form .search-form .form-control,
.ui-autocomplete li {
    color: #fff;
    font-weight: 500;
    font-size: 20px;
    background: #404040;
    border-radius: 8px;
    height: 48px;
    text-transform: uppercase;
}
ul.ui-autocomplete {
    list-style: none;
    padding-left: 0;
}
.ui-autocomplete li {
    border-radius: unset;
    padding: 0.375rem 0.75rem;
    cursor: pointer;
}
li.ui-menu-item:hover {
    background: #00A3FF;
}
.ui-autocomplete li a {
    color: #fff;
    font-weight: 500;
    font-size: 20px;
}

.block-form .search-form label {
    font-size: 20px;
    text-transform: lowercase;
    color: #ABABAB;
    margin-bottom: 3px;
}
.calendar-ico {
    position: relative;
    top: 38px;
    left: 200px;
}
.calendar {
    background: url(../img/calendar_20.png)#404040 no-repeat center right 20px !important;
}
.block-form .search-form .btn-blue,
.block-form .search-form .btn-gemini-gray {
    font-weight: 700;
    font-size: 18px;
    height: 48px;
    border-radius: 8px;
}
.block-form .search-form .form-btn {
    display: flex;
    flex-direction: column-reverse;
}
.container-form {
    margin-top: -128px;
}
.block-form .form-item {
    flex-basis: 25%;
    padding: 0 10px;
    min-width: 290px;
}
.block-form .form-item.transfer {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    margin-top: 20px;
    height: 35px;
}
.block-form .transfer label,
.block-form .transfer a {
    font-size: 14px;
    text-transform: uppercase;
}
.block-form .transfer label {
    font-weight: 500;
    color: #4a4a4a;
}
.block-form .transfer a {
    font-weight: 700;
    color: #00A3FF;
}
.transfer select.form-select {
    max-width: 130px;
    background: #D6D6D6;
}
.transfer input {
    margin-top: -5px;
}
.transfer .form-check-input:checked,
.ticket-search-filter .form-check-input:checked,
.ticket-search-filter-mob .form-check-input:checked,
.ticketing .form-check-input:checked,
.order .form-check-input:checked,
.sidebar-profile .form-check-input:checked {
    background-color: #00A3FF;
    border-color: #00A3FF;
}
.transfer .form-check-input,
.ticket-search-filter .form-check-input,
.ticket-search-filter-mob .form-check-input,
.ticketing .form-check-input,
.order .form-check-input,
.sidebar-profile .form-check-input {
    width: 20px;
    height: 20px;
    border-radius: 3px;
}
.transfer .form-check-input {
    border: 1px solid #00A3FF;
}
.ticket-search-filter .form-check-input,
.ticket-search-filter-mob .form-check-input,
.ticketing .form-check-input,
.order .form-check-input,
.sidebar-profile .form-check-input {
    border: 1px solid #979797;
    background-color: #979797;
}
.transfer .form-select:focus {
    border-color: #D6D6D6;
}
.transfer .form-select:focus,
.transfer .form-check-input:focus,
.transfer .form-check-input:checked:focus,
.ticket-search-filter .form-check-input:focus,
.ticket-search-filter .form-check-input:checked:focus,
.ticket-search-filter-mob .form-check-input:focus,
.ticket-search-filter-mob .form-check-input:checked:focus,
.ticketing .form-check-input:focus,
.ticketing .form-check-input:checked:focus,
.order .form-check-input:focus,
.order .form-check-input:checked:focus,
.sidebar-profile .form-check-input:focus,
.sidebar-profile .form-check-input:checked:focus {
    box-shadow: none;
}
.sidebar-profile .balance {
    text-align: center;
}
input::-webkit-input-placeholder {color:#979797!important;font-size:18px;font-weight:300;}
input::-moz-placeholder          {color:#979797!important;font-size:18px;font-weight:300;}/* Firefox 19+ */
input:-moz-placeholder           {color:#979797!important;font-size:18px;font-weight:300;}/* Firefox 18- */
input:-ms-input-placeholder      {color:#979797!important;font-size:18px;font-weight:300;}

.ticket-search-filter label,
.ticket-search-filter-mob label,
.ticketing label,
.ticketing .form-item-input-child label,
.ticketing .form-item-input-student label {
    font-size: 14px;
    color: #4a4a4a;
    line-height: 30px;
    margin-left: 15px;
}
.ticket-search-filter label,
.ticket-search-filter-mob label,
.ticketing label {
    font-weight: 400;
}
.ticketing .form-item-input-child label,
.ticketing .form-item-input-student label {
    font-weight: 700;
    margin: 0 15px 0 0;
}
.ticket-search-filter .block-content,
.ticket-search-filter-mob .block-content {
    margin-bottom: 32px;
}
.form-check-input[type=radio] {
    border: 2px solid #979797;
    background-color: transparent;
    border-radius: 10px;
}
.custom-radio-btn {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 2px solid #979797;
    border-radius: 50%;
    vertical-align: text-top;
}
.custom-radio-btn::before {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    background: #00A3FF;
    border-radius: 50%;
    border: 2px solid #00A3FF;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: 0.2s ease-in;
}
.ticket-search-filter .form-check-input[type=radio]:checked + .custom-radio-btn::before,
.ticket-search-filter-mob .form-check-input[type=radio]:checked + .custom-radio-btn::before,
.ticketing .form-check-input[type=radio]:checked + .custom-radio-btn::before {
    transform: translate(-50%, -50%) scale(1);
}
.ticket-search-filter .form-check-input[type=radio]:checked + .custom-radio-btn,
.ticket-search-filter-mob .form-check-input[type=radio]:checked + .custom-radio-btn,
.ticketing .form-check-input[type=radio]:checked + .custom-radio-btn {
    border: 2px solid #00A3FF;
}
.ticket-search-filter .form-check-input[type=radio],
.ticket-search-filter-mob .form-check-input[type=radio],
.ticketing .form-check-input[type=radio] {
    opacity: 0;
    z-index: 10;
    padding-left: unset;
    position: relative;
    left: 24px;
    top: 2px;
}

.ui-autocomplete {
    width: 291px !important;
}
/*---*/

/*mobile-menu*/
.mobile-menu {
    z-index: 10;
}
.mobile-menu li.nav-item {
    margin: 5px 8px;
}
.mobile-menu .nav-link {
    justify-content: center;
    display: flex;
}
.mobile-menu .bground .nav-link {
    background-color: #00A3FF;
}
.mobile-menu .bground a.nav-link.active,
.mobile-menu .bground a.nav-link:hover {
    border: 1px solid #00A3FF;
}
.mobile-menu li.cabinet {
    order: -1;
    margin-top: 40px;
    margin-bottom: 40px;
}
.mobile-menu .lang {
    display: none;
}
.mobile-menu .lang-mob .nav-item a.nav-link.active,
.mobile-menu li.cabinet {
    border: 1px solid #fff;
    border-radius: 8px;
}
.mobile-menu .lang-mob .nav-item a.nav-link {
    border: 1px solid #888888;
}
.block.lang-mob .block-title {
    color: #888888;
    font-weight: 500;
    font-size: 16px;
    text-transform: uppercase;
    margin-bottom: 24px;
    margin-top: 40px;
    text-align: center;
}
.block.lang-mob .navbar-nav {
    display: flex;
    flex-direction: row;
}
.block.lang-mob .nav-item {
    flex-basis: 50%;
}
.mobile-menu .navbar-brand-mob {
    display: flex;
}
/*---*/

/*schedule results*/
.schedule-route-adv .schedule-item {
    font-size: 14px;
    color: #000;
}
.schedule-route-adv .schedule-item a {
    font-size: 15px;
}
.schedule-route-adv .transfer-info,
.schedule-route-adv .regularity-info {
    font-size: 13px;
}
.schedule-route-adv .transfer-info .title,
.schedule-route-adv .regularity-info {
    color: #7b7b7b;
}
.schedule-route-adv .schedule-info-block {
    justify-content: center;
}
.schedule-route-adv .schedule-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.results .schedule-head,
.results .route-head {
    display: flex;
    font-size: 14px;
    font-weight: 400;
    color: #585A5A;
    padding: 15px;
}
.results .schedule-item,
.results .station-item {
    margin-bottom: 3px;
    /*height: 66px;*/
    height: auto;
    border: 2px solid transparent;
    background: #FFFFFF;
    display: flex;
    /*justify-content: space-between;*/
    padding: 15px;
}
.results .train-info-block,
.results .price-info-block,
.results .schedule-item-train,
.results .schedule-item-price,
.results .schedule-info-block,
.results .schedule-item-info {
    display: flex;
    align-items: center;
}
.results .schedule-item-train {
    flex-direction: column;
}
.schedule-route .schedule-item-train,
.schedule-route .train-info-block {
    width: 120px;
    margin-right: 20px;
}
.schedule-route-adv .schedule-item-train,
.schedule-route-adv .train-info-block {
    width: 40px;
    margin-right: unset;
}
.schedule-station .schedule-item-train,
.schedule-station .train-info-block {
    width: 80px;
    margin-right: 20px;
}
.schedule-route .departure-title,
.schedule-route .arrival-title,
.schedule-route .departure-info,
.schedule-route .arrival-info,
.schedule-route .search-item-choice,
.schedule-station .departure-info,
.schedule-station .arrival-info,
.schedule-station .departure-title,
.schedule-station .arrival-title {
    width: 120px;
}
.results .schedule-info-block,
.results .schedule-item-info {
    padding: 0 10px;
}
.schedule-route .route-title-block,
.schedule-route .route-info {
    width: 436px;
}
.schedule-route-adv .route-title-block,
.schedule-route-adv .route-info {
    width: 366px;
}
.schedule-route-adv .transfer-info,
.schedule-route-adv .transfer-title {
    width: 150px;
}
.schedule-station .station-title-block,
.schedule-station .route-info {
    width: 200px;
}
.schedule-station .regularity-title,
.schedule-station .regularity-info {
    width: 396px;
}
.schedule-accordion .btn-block {
    display: flex;
    justify-content: space-between;
}
.results .btn-grey,
.results .btn-white {
    width: 120px;
}
.results .item-train-title,
.results .station-from,
.results .station-to {
    text-transform: capitalize;
    color: #00A3FF;
    cursor: pointer;
}
.results .station-from,
.results .station-to {
    font-weight: bold;
}

/*---*/

/*train-route*/
.train-route-container .block-title {
    display: flex;
    justify-content: space-between;
}
.route-item-station,
.route-head .station-title {
    flex-basis: 50%;
}
.route-item-arrival,
.route-item-departure,
.route-head .arrival-title,
.route-head .departure-title {
    flex-basis: 25%;
}
/*---*/

/*margins*/
.mt-50 {
    margin-top: 50px;
}
.mb-50 {
    margin-bottom: 50px;
}
.mb-32 {
    margin-bottom: 32px;
}
.ml-25 {
    margin-left: 25px;
}
/*---*/

/*paddings*/
.pl-0 {
    /*padding-left: 0;*/
}
/*---*/

/*modal*/
.ticket-search-filter-modal {
    background-color: #343030;
}
.ticket-search-filter-modal .modal-header {
    border-bottom: unset;
}
.ticket-search-filter-modal .btn-close {
    background: transparent url(../img/close.png) center/24px auto no-repeat;
    opacity: 1;
}
.train-route-modal .modal-content {
    background-color: #F5F6F6;
}
.train-route-modal .modal-footer,
.train-route-modal .modal-header,
.train-route-modal thead tr,
.train-route-modal td.info,
.train-route-modal td.title {
    border: none;
    border-bottom-color: unset;
}
.train-route-modal td.title {
    font-size: 15px;
    font-weight: 400;
    color: #AAAAAA;
    text-align: right;
}
.train-route-modal td {
    font-weight: 700;
    color: #272727;
}
.train-route-modal td.info {
    font-size: 15px;
}
.train-route-modal td {
    font-size: 16px;
}
 .train-route-modal th {
     font-size: 14px;
     font-weight: 700;
     color: #FFB800;
 }
.train-route-modal th.bg-white {
    background-color: unset;
}
.train-route-modal .item-station {
    padding-left: 20px;
}
/*---*/

/*dialog*/
.loading {
    position: fixed;
    width: 64px;
    height: 64px;
    top: calc(50% - 32px);
    left: calc(50% - 32px);
    background-image: url(../img/preloader.gif);
    z-index: 200;
}

.inline-loader {
    width: 64px;
    height: 64px;
    background-image: url(../img/preloader.gif);
    display: inline-block;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/jqueryUi/ui-bg_flat_0_aaaaaa_40x100.png) repeat-x scroll 50% 50% #AAAAAA;
    opacity: 0.3;
    display: none;
}
.modal-dialog {
    max-width: 600px;
}
.modal-dialog .modal-header,
.modal-dialog .modal-footer {
    /*padding: 32px;*/
    background-color: #F5F6F6;
    border: unset;
}
.modal-dialog .modal-header h3 {
    font-size: 30px;
    line-height: 28px;
    letter-spacing: -0.05em;
}
.modal-dialog .modal-header .btn-close {
    background: transparent url(../img/btn-close-grey.png) center/18px auto no-repeat;
    align-self: flex-start;
    opacity: unset;
}
.modal-dialog .modal-body {
    padding: 24px 32px;
}
.modal-dialog .modal-container ul {
    margin-bottom: 0;
    padding-left: 1rem;
}
.notification .modal-dialog .modal-container ul {
    list-style: none;
}
.modal-dialog .modal-footer .btn-grey {
    margin: 0 0 0 20px;
    width: 160px;
}
.modal-dialog .modal-content {
    box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.1), 0px 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
}
/*---*/

/* displayPlaces */
.place {
    width: 16px;
    height: 14px;
    position: absolute;
    line-height: 14px;
    font-size: 11px;
    font-weight: bold;
    text-align: center;
}
.place-ordered {
    border: 1px solid #00A3FF;
    color: #00A3FF;
    background-color: #fff;
    cursor: pointer;
}
.place-free {
    border: 1px solid black;
    color: black;
    background-color: #fff;
    cursor: pointer;
}
.place-free:hover {
    border: 1px solid #b6271c;
}
.place-top {
    border-top: 2px solid #b6271c !important;
}
.place-lower {
    border-bottom: 2px solid #b6271c !important;
}
.place-occupied {
    border: 1px solid #e0e0e0;
    color: #c0c0c0;
    background-color: #ffffff;
}
.place-top.place-occupied {
    border-top: 2px solid #FF99FF !important;
}
.place-lower.place-occupied {
    border-bottom: 2px solid #FF99FF !important;
}
.highlighted {
    background-color: #fcd2d2 !important;
}
/*END displayPlaces*/

/*cart*/
.sidebar .cart-ticket {
    display: flex;
    /*justify-content: space-between;*/
    background: #F5F5F5;
    margin-bottom: 3px;
}
.sidebar .order {
    font-size: 14px;
    color: #1f1f1f;
}
.sidebar .cart-ticket-price,
.sidebar .total-ticket-price {
    font-size: 18px;
    color: #000;
}
.sidebar .cart-ticket-info,
.sidebar .cart-ticket-price,
.sidebar .total-ticket-items,
.sidebar .total-ticket-price {
    flex-basis: 45%;
}
.cart-ticket-cancel {
    flex-basis: 10%;
    justify-content: end;
    align-items: center;
}
.cart-ticket-cancel .btn-close {
    background: transparent url(../img/btn-close-red.png) center/1em auto no-repeat;
    opacity: 1;
}
.sidebar .total-ticket-items {
    line-height: 24px;
}
.sidebar .order-data,
.sidebar .order-data-empty {
    padding: unset;
}
.sidebar .cart-ticket
/*.sidebar .block-button,
.sidebar .block-title*/ {
    padding: 5px 15px 5px 24px;
}
.sidebar .cart-info {
    padding: 10px 24px 24px;
}
.sidebar .cart-total {
    padding: 18px 24px;
}
.order .cart-ticket-title,
.total-ticket-items .ticket-price {
    margin-right: 5px;
}
/*---*/

/*accordion*/
.schedule-accordion {
    display: none;
}
.schedule-accordion .accordion-item .search-item-info-schedule,
.schedule-accordion .search-item-info-schedule .info-schedule-arrival,
.schedule-accordion .search-item-info-schedule .info-schedule-departure,
.schedule-accordion .schedule-item-train {
    font-size: 14px;
}
.schedule-accordion .search-item-info-schedule,
.schedule-accordion .schedule-item {
    width: 100%;
    justify-content: unset;
}
.schedule-accordion .search-item-info-schedule .info-schedule-arrival,
.schedule-accordion .search-item-info-schedule .info-schedule-departure,
.schedule-accordion .schedule-item .schedule-item-train {
    flex-basis: 50px;
}
.schedule-accordion .search-item-info-schedule .info-schedule-title {
flex-basis: 100px;
}
.schedule-accordion .schedule-item .schedule-item-info {
    flex-basis: unset;
}
.schedule-accordion .item-train-title  {
    font-size: 15px;
    display: block;
}
.schedule-accordion .info-schedule-title {
    color: #585A5A;
}
.schedule-accordion .schedule-item-train,
.schedule-accordion .info-schedule-departure,
.schedule-accordion .info-schedule-arrival {
    color: #000;
}
.schedule-accordion .accordion-button .schedule-item,
.schedule-accordion .accordion-body .schedule-item {
    padding: unset;
    height: auto;
}
.schedule-accordion .accordion-body {
    padding: 20px;
}
.schedule-accordion .accordion-item {
    margin: 2px auto;
    box-shadow: unset;
    border-radius: 0;
    border: unset;
}
/*---*/

/*auth*/
.form-login .links {
    font-size: 14px;
    display: flex;
    justify-content: end;
    color: #00A3FF;
    cursor: pointer;
    font-weight: bold;
}
.form-login .btn,
.form-register .btn {
    height: 36px;
    width: 100%;
}
.form-login label {
    font-size: 15px;
    color: #404040;
}
.form-register .captcha {
    /*max-width: 400px;*/
    width: 100%;
    height: 100%;
    max-height: 100px;
    /*border: 1px solid #8A8A8A;
    border-radius: 4px;*/
    /*text-align: center;*/
}
.form-register .reload-captcha {
    width: 50px;
    height: 50px;
    cursor: pointer;
}
.form-register .register-phone {
    display: flex;
}
span.required_sign {
    display: inline;
    margin-left: 3px;
    /*vertical-align: text-top;*/
    color: #E30613;
}
.captcha-img {
    display: flex;
    flex-basis: 80%;
}
.reload-captcha-img {
    display: flex;
    flex-basis: 20%;
    align-items: center;
    justify-content: center;
}
/*---*/

/*profile*/
.my-purchase .profile-order,
.my-purchase .admin-order {
    color: #585A5A;
    font-size: 14px;
    background: #FFFFFF;
    box-shadow: 0px 2px 6px rgb(0 0 0 / 25%);
}
.profile-order .btn,
.admin-order .btn {
    height: unset;
}
.results th {
    color: #585A5A;
    font-size: 14px;
    font-weight: bold;
}
.results td,
.results th {
    padding: 6px 10px;
    text-align: center;
}
.results td.title {
    text-align: unset;
}
.sort,
.sort-up,
.sort-down {
    width: 23px;
    height: 16px;
    cursor: pointer;
    display: inline-block;
}
.sort {
    background-image: url(../img/sort.png);
}
.sort-up {
    background-image: url(../img/sort_up.png);
}
.sort-down {
    background-image: url(../img/sort_down.png);
}

.configuration .element,
#admin .purchase .results .order-item,
#admin .monitor .results .monitor-item,
#admin .purchase .element,
#admin .monitor .element,
#admin .news .results .news-item,
#admin .my-monitor .my-order-item {
    background: #FFFFFF;
    box-shadow: 0px 2px 6px rgb(0 0 0 / 25%);
    border-radius: 6px;
    padding: 16px;
}
.configuration .element {
    margin-bottom: 16px;
}
.configuration .element h3 {
    border-bottom: 2px solid #00A3FF;
    margin-bottom: 16px;
}
.configuration .element .buttons,
#admin .purchase .buttons,
#admin .monitor .buttons {
    display: flex;
    justify-content: center;
    margin-top: 32px;
}
/*#admin .purchase .buttons,
#admin .monitor .buttons {
    margin-bottom: 32px;
}*/
.configuration .element .buttons .btn {
    width: 300px;
}
#admin .navigation {
    display: flex;
    justify-content: space-between;
}
#admin .navigation button,
#admin .purchase button,
#admin .monitor button,
#admin .my-purchase .document button,
#profile .my-purchase .document button,
#admin .news .pagination button {
    font-weight: 600;
    font-size: 12px;
    height: 30px;
    text-transform: uppercase;
    outline: none;
    box-shadow: none;
    width: 155px;
    min-width: unset;
    padding: 0.375rem 0.5rem;
    line-height: unset;
}
#admin .navigation .btn-blue:hover,
#admin .navigation .btn-blue:active,
#admin .navigation .btn-blue:focus,
#admin .navigation .seats1 {
    color: #fff;
    background-color: #FFB800;
    border-color: #FFB800;
}
.news button.modify-action:hover,
.news button.modify-action:active,
.news button.modify-action:focus {
    background-color: #00A3FF;
    transition: .5s;
}
.news button.remove-action:hover,
.news button.remove-action:active,
.news button.remove-action:focus {
    background-color: #FF0000;
    transition: .5s;
}
/*---*/

/*-admin myPurchase-*/
.my-purchase .search-title,
.my-purchase .train-info-desktop,
.my-purchase .route-desktop/*,
.my-purchase .train-info-mobile,
.my-purchase .route-mobile,
.my-purchase .place-mobile*/ {
    display: flex;
}
.my-purchase .train-info-mobile {
    /*flex-direction: row;
    justify-content: space-between;
    width: 100%;*/
}
.my-purchase .admin-order {
    display: flex;
}
.my-purchase .index {
    width: 40px;
}
.my-purchase .date {
    width: 158px;
}
.my-purchase .train {
    width: 350px;
}
.my-purchase .amount {
    width: 80px;
}
.my-purchase .document {
    width: 180px;
}
.my-purchase .info-title,
.my-purchase .index,
.my-purchase .date,
.my-purchase .train,
.my-purchase .amount,
.my-purchase .document {
    text-align: center;
    padding: 5px 10px;
    display: flex;
    align-items: center;
    align-self: center;
}
.my-purchase .info-title,
.my-purchase .index,
.my-purchase .date,
.my-purchase .train,
.my-purchase .amount,
.my-purchase .document {
    flex-direction: column;
}
.mr {
    margin-right: 5px;
}
/*---*/

@media screen and (max-width: 991px) {
    .accordion .accordion-button,
    .accordion-questions p {
        font-size: 16px;
    }
    .accordion .block-content li {
        font-size: 14px;
    }
    .ticket-search-filter,
    .basket-item-desktop,
    .basket-item-mob .basket-item-count {
        /*display: none;*/
    }
    .ticket-search-filter-btn,
    .basket-item-mob {
        display: block;
    }
    .ticketing .form-item .form-label {
        display: flex;
    }
    .ticketing .form-item {
        flex-direction: column;
    }
    .ticketing .form-control {
        width: 100%;
    }
    .ticketing .ticket-item-filter {
        margin-left: unset;
    }
    .ticketing .form-item-input-child,
    .ticketing .form-item-input-student {
        left: unset;
    }
    .order .input-field {
        display: flex;
        flex-direction: column;
    }
    .order input.form-control {
        width: unset;
    }
    .navbar li.nav-item.support {
        margin-right: 8px;
    }
    .mobile-menu {
        background-color: #404040;
        height: 1000px;
        padding: 50px 20px;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
    }
    .modal {
        top: 150px!important;
    }

}
@media screen and (min-width: 768px) {
    .btn-lg,
    .btn-lg:hover,
    .btn-lg:active,
    .btn-lg:focus {
        min-width: 300px;
    }
}
@media screen and (min-width: 992px) {
    .lang-mob,
    .navbar-brand-mob,
    .close-btn,
    .basket-item-mob {
        display: none;
    }
    .basket-item-desktop {
        display: block;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
    .widget-support-blocks {
        flex-direction: row;
    }
    .block-form .form-item {
        flex-basis: 50%;
    }
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
    .stickers-block {
        width: 696px;
    }
    .schedule-route .route-title-block,
    .schedule-route .route-info,
    .schedule-station .station-title-block,
    .schedule-station .route-info {
        width: 166px;
    }
    .schedule-station .regularity-title,
    .schedule-station .regularity-info {
        width: 160px;
    }
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
    .ticketing .form-control {
        width: 275px;
    }
    .order input.form-control {
        width: 370px;
    }
    .navbar li.nav-item.support {
        margin-right: 140px;
    }
}
@media screen and (max-width: 1199px) {
    h1 {
        font-size: 32px;
    }
    h1 .arrow-ico {
        position: relative;
        top: -5px;
    }
    .bc-stages {
        display: none;
    }
    .order .ticket-item-data {
        margin-bottom: 16px;
    }
    .order .order-price-block {
        justify-content: left;
    }
    .order .ticket-timer-data {
        margin-top: 3rem;
    }
    .choice-seat-item .seat-info-col {
        display: flex;
        flex-direction: column;
    }
    .my-purchase .admin-order,
    #admin .navigation {
        flex-direction: column;
    }
    .my-purchase .document,
    .my-purchase .departure-date-mobile,
    .my-purchase .place-block {
        flex-direction: row;
    }
    .my-purchase .document {
        justify-content: space-around;
    }
    .my-purchase .train-number,
    .my-purchase .departure-date,
    .my-purchase .departure-time,
    .my-purchase .carriage-number,
    .my-purchase .place-number {
        font-weight: 700;
        color: #000;
    }
    .my-purchase .search-title,
    .my-purchase .index,
    .my-purchase .purchase-date-desktop,
    .my-purchase .departure-date-desktop,
    .my-purchase .amount-desktop,
    .my-purchase .document-type,
    .my-purchase .status,
    .my-purchase .train-info-desktop,
    .my-purchase .route-desktop,
    .my-purchase .family-name,
    .my-purchase .first-name,
    .my-purchase .symbol,
    .my-purchase .place-desktop {
        display: none;
    }
    .my-purchase .index,
    .my-purchase .date,
    .my-purchase .train,
    .my-purchase .amount,
    .my-purchase .document {
        width: 100%;
    }
    #admin .my-purchase button {
        width: 140px!important;
    }
    #admin .navigation button {
        width: unset;
        margin-bottom: 10px;
    }
    .my-purchase .admin-order {
        margin-bottom: 16px;
        border: 2px solid transparent;
        padding: 15px 0;
        border-radius: 6px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1399px) {
    .search-item-train {
        margin-top: 20px;
    }
}
@media screen and (min-width: 1200px) and (max-width: 1399px) {
    .stickers-block {
        width: 830px;
    }
    .ticketing .form-control:not(.form-item-input-child .form-control, .form-item-input-student .form-control){
        width: 350px;
    }
    .navbar li.nav-item.support {
        margin-right: 320px;
    }
    .schedule-route .route-title-block,
    .schedule-route .route-info {
        width: 300px;
    }
    .schedule-station .regularity-title,
    .schedule-station .regularity-info {
        width: 261px;
    }
    .my-purchase .index {
        width: 37px;
    }
    .my-purchase .date {
        width: 102px;
    }
    .my-purchase .train {
        width: 350px;
    }
    .my-purchase .amount {
        width: 70px;
    }
    .my-purchase .document {
        width: 170px;
    }
    #admin .navigation button {
        font-size: 10px;
        width: 130px;
    }

}
@media screen and (min-width: 992px) and (max-width: 1399px) {
    .widget-support-top-text {
        text-align: center;
        margin-bottom: 10px;
    }
    .widget-support-top {
        flex-direction: column;
        align-items: center;
    }
    .block-form .form-item {
        flex-basis: 33%;
        margin-left: auto;
        margin-right: auto;
    }
    .form-btn {
        margin-top: 10px;
    }
    .navbar .nav-item a.nav-link {
        font-size: 12px;
        font-weight: 500;
    }
}
@media screen and (max-width: 1399px) {
    .ticket-search .search-title {
        display: none;
    }
    .search-item {
        flex-direction: column;
        height: auto;
    }
    .search-item-train, .train-title {
        display: flex;
        flex-direction: row;
        width: auto;
    }
    .search-item-train {
        margin-right: 0;
    }
    .search-item-info {
        margin-right: auto;
        margin-left: auto;
    }
    .item-train-title-mob,
    .search-item-info {
        margin-bottom: 20px;
    }
    .search-item-train,
    .search-item-price-item,
    .search-item-info-schedule,
    .search-item-info-line {
        margin-bottom: 16px;
    }
    .search-item-choice {
        justify-content: center;
        margin-top: 4px;
    }
    .ticket-search .search-item-train {
        flex-direction: row;
        width: unset;
        margin-right: unset;
    }
    .search-item-price-item .price {
        justify-content: right;
    }
}
@media screen and (min-width: 1199px) {
    .my-purchase .departure-date-mobile,
    .my-purchase .train-info-mobile,
    .my-purchase .route-mobile,
    .my-purchase .place-mobile {
        display: none;
    }
    .my-purchase .place-block {
        flex-direction: column;
    }
}
/*---*/


/*---*/
.order-detail {
    background: #f5f5f5;
    box-shadow: 0px 2px 6px rgb(0 0 0 / 25%);
}
#admin .purchase .order-detail .btn-close {
    font-size: unset;
    height: 1rem;
    width: 1rem;
}
.order-detail td {
    padding: 10px;
}
.table-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}
.table-row input,
.table-row .but {
    width: 100%;
    padding: 5px 10px;
}
.order-detail .order-detail-info {
    padding-right: 50px;
}
.order-detail .order-detail-btn {
    text-align: left;
    padding-top: 20px;
}
#admin .monitor .color-green,
#admin .purchase .color-green {
    color: green;
}
#admin .monitor .color-red,
#admin .purchase .color-red {
    color: red;
}
.routes ul {
    padding-left: 0;
    column-count: 2;
}
.routes li {
    line-height: 28px;
    list-style: none;
}

.widget-support-mob {
    display: none;
}


.info__title {
    max-width: 530px;
    font-size: 36px;
    line-height: 1.3;
    color: #fff;
    font-weight: 400;
    padding-bottom: 40px
}


.data {
    padding-top: 52px;
    padding-bottom: 90px
}

.data__title {
    max-width: 815px;
    font-size: 30px;
    line-height: 1;
    color: #333;
    font-weight: 200;
    text-align: center;
    margin: 0 auto;
    padding-bottom: 30px
}

.data__wrap {
    overflow-x: auto;
    overflow-y: hidden
}

.data__text {
    max-width: 680px;
    margin: 0 auto;
    padding-bottom: 40px
}

.data__text p {
    font-size: 18px;
    line-height: 1.7;
    color: #999;
    text-align: center
}

.data__wrap-subtitle {
    display: flex;
    width: 100%;
    min-width: 900px
}

.data__wrap-subtitle .data__subtitle:first-child {
    width: 25%
}

.data__subtitle {
    width: 12.5%;
    line-height: 1.8;
    text-align: center;
    font-weight: 400;
    padding: 0 4px 40px
}

.data__col, .data__subtitle {
    font-size: 16px;
    color: #333
}

.data__holder {
    width: 100%;
    min-width: 900px;
    border-top: 1px solid #c5cfd8
}

.data__item {
    display: flex;
    border-bottom: 1px solid #c5cfd8;
    padding: 12px 0
}

.data__item .data__box:first-child {
    width: 25%
}

.data__item .data__box:not(:first-child) {
    display: flex;
    justify-content: center;
    align-items: center
}

.data__box {
    width: 12.5%
}

.data__min {
    display: block;
    width: 20px;
    height: 2px;
    background-color: #e2e7eb
}

.data__tick {
    display: block;
    position: relative;
    width: 100%;
    height: 100%
}

.data__tick:after {
    content: "";
    position: absolute;
    font-size: 14px;
    border-color: #8dc63f;
    border-style: solid;
    border-width: 0 .25em .25em 0;
    top: 50%;
    left: calc(50% - 7px);
    transform: rotate(45deg) translate(-50%, -50%);
    width: .7em;
    height: 1.1em
}

.box-text {
    padding: 40px;
    max-width: 100%;
    width: 1200px;
    margin-left: auto;
    margin-right: auto
}

.box-text .title-box-text {
    padding-bottom: 30px;
    font-size: 36px;
    color: #333;
    text-align: center
}

.box-text .text-box-text {
    font-size: 18px;
    text-align: center;
    line-height: 1.5
}

.box-content-images {
    padding: 40px
}

.box-content-images.grey {
    background: #f4f5f4
}

.box-content-images .content-centered {
    max-width: 100%;
    width: 1200px;
    margin-left: auto;
    margin-right: auto
}

.box-content-images .content-centered .title-box {
    font-size: 36px;
    padding-bottom: 30px;
    color: #333;
    text-align: center
}

.box-content-images .content-centered .image-boxes {
    display: flex;
    /*flex-wrap: wrap;*/
    gap: 30px;
    justify-content: space-between;
    align-items: center;

}

.even {
    /* commented cause it breaks */
    /*flex-direction: row-reverse;*/
}

.image{
    max-width: 300px;
}

.dot {
    color: #ffb800;
    font-weight: 700;
    font-size: 20px;
    margin-right: 5px;
}


.image img{
    border-radius: 10%;
    min-height: 200px;
    max-width: 250px;
}

.single-image-box {
    display: flex;
    align-items: center;
}

.box-content-images .content-centered .image-boxes .one-image-box {
    /*width: calc(33% - 40px);*/
    width: auto;
    padding: 0;
    outline: none
}

.box-content-images .content-centered .image-boxes .one-image-box .txtDot {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px;
}

.box-content-images .content-centered .image-boxes .one-image-box .txtDot:last-child {
    margin-bottom: 0;
}


.box-content-images .content-centered .image-boxes .one-image-box .txtDot .image {
    width: 70px;
    padding-bottom: 20px;
    margin-left: auto;
    margin-right: auto
}

.box-content-images .content-centered .image-boxes .one-image-box .txtDot .image img {
    max-width: 100%
}

.box-content-images .content-centered .image-boxes .one-image-box .txtDot .text {
    font-size: 18px;
    line-height: 1.5;
    text-align: left;
    color: #00a3ff;
    padding-top: 6px;



}.main-header[_ngcontent-aiu-c8] {
     background-color: #3b3b3b
 }

.esetWord {
    color: #333;
    font-weight: 700;
}


/*@media screen and (max-width: 960px) {*/
/*    .box-content-images .content-centered .image-boxes .one-image-box {*/
/*        width: calc(50% - 40px)*/
/*    }*/
/*}*/

/*@media screen and (max-width: 780px) {*/
/*    .box-content-images .content-centered .image-boxes .one-image-box .txtDot .text {*/
/*        font-size: 16px;*/
/*        line-height: 1.5;*/
/*        text-align: left;*/
/*        border-radius: 41px;*/
/*        border: none;*/
/*    }*/

/*    .box-content-images .content-centered .image-boxes .one-image-box {*/
/*        width: 100%*/
/*    }*/

/*    .box-content-images .content-centered .title-box {*/
/*        font-size: 24px;*/
/*        padding: 10px 0;*/
/*    }*/

/*    .box-content-images .content-centered .image-boxes {*/
/*        justify-content: center;*/
/*        flex-wrap: wrap;*/
/*        gap: 0;*/
/*    }*/

/*}*/



.service-hint {
    font-size: 75%;
    color: #979797;
}

.big-btn {
    color: #fff !important;
    padding: 18px 77px;
    font-weight: bold;
    border-radius: 10px;
}
.big-btn:hover {
    padding: 18px 77px;
}
.big-btn:active {
    padding: 18px 77px;
}
.big-btn:focus {
    height: auto;
    padding: 18px 77px;
}

.business_card {
    display: flex;
}

.business_form_container {
    display: flex;
}

.business_container {
    margin-bottom: 40px;
}

.business_sbmt-btn {
    max-width: 250px;
    margin-top: -100px;
}

.business_coop_with {
    max-width: 962px;
    margin-bottom: 35px;
}

.business_recognize {
    color: #404040;
    padding: 24px;
    background: #FFFFFF;
    box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.1), 0px 12px 24px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
}

.inputs_col {
    width: 100%;
}

.inputs_col input {
    background: transparent;
}

.img_bg_rotated {
    flex-grow: 2;
    background: url("../img/bg_rotated.jpg") no-repeat top;
    max-height: 708px;
    margin-right: -130px;
    background-position: bottom;
    height: 300px;
    margin-top: -80px;
    background-size: cover;
}

.business_form_inputs {
    margin-right: 55px;
}

.form_block {
    margin-right: 10px;
}

.block-card-img .business{
    margin-right: 40px;
}

.block-card-img.business img {
    width: 167px;
}

.blue_left_border_1 {
    padding-left: 25px;
    border-left: 2px solid #3B6FD9;
}

.blue_left_border_2 {
    padding-left: 25px;
    border-left: 2px solid #5A88E4;
}

.blue_left_border_3 {
    padding-left: 25px;
    border-left: 2px solid #82B0F2;
}

.blue_left_border_4 {
    padding-left: 25px;
    border-left: 2px solid #A6CEFF;
}


#business_buy {
    margin-top: 40px;
}

.business-popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.business-popup-content {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    padding: 20px;
    text-align: center;
    background-color: #f2f2f2;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.seo_map {
    width: 100%;
    height: 350px;
    border: 1px solid #ccc;
    border-radius: 15px;
}

.other-dates-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.other-dates-list .ctl-other-date {
    margin: 5px;
}


