@charset "UTF-8";
/* Mixins
------------------------------------------------------------------- */
/* 
Variables
------------------------------------------------------------------- */
/*
Mixins
------------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css?family=Literata:700i&display=swap");
@import url("https://fonts.googleapis.com/css?family=Arimo:400,700&display=swap&subset=cyrillic");
@import url("/assets/css/russianrailicons.css");
.trains__sidebar ul li.active::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

@keyframes phone {
  0% {
    transform: scale3d(1, 1, 1);
  }
  30% {
    transform: scale3d(0.75, 0.75, 1);
  }
  60% {
    transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes phone {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(0.75, 0.75, 1);
  }
  60% {
    -webkit-transform: scale3d(1, 1, 1);
  }
}
@keyframes arrow {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(10px, 10px);
  }
}
@-webkit-keyframes arrow {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(10px, 10px);
  }
}
@keyframes top {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -10px);
  }
}
@font-face {
  font-family: "russianrailicons";
  src: url("/assets/fonts/russianrailicons.eot");
  src: url("/assets/fonts/russianrailicons.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/russianrailicons.woff") format("woff"), url("/assets/fonts/russianrailicons.ttf") format("truetype"), url("/assets/fonts/russianrailicons.svg#russianrailicons") format("svg");
  font-weight: normal;
  font-style: normal;
}
[data-icon]:before {
  font-family: "russianrailicons" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^=icon-rr-]:before,
[class*=" icon-rr-"]:before {
  font-family: "russianrailicons" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-rr-calendar:before {
  content: "";
}

.icon-rr-wifi:before {
  content: "";
}

.icon-rr-time:before {
  content: "";
}

.icon-rr-map:before {
  content: "";
}

.icon-rr-star:before {
  content: "";
}

.icon-rr-moon:before {
  content: "";
}

.icon-rr-marker:before {
  content: "";
}

.icon-rr-files:before {
  content: "";
}

.icon-rr-bill:before {
  content: "";
}

.icon-rr-bulb:before {
  content: "";
}

.icon-rr-ie:before {
  content: "";
}

.icon-rr-heart-o:before {
  content: "";
}

.icon-rr-heart:before {
  content: "";
}

.icon-rr-ship:before {
  content: "";
}

.icon-rr-exchange:before {
  content: "";
}

.icon-rr-map-alt:before {
  content: "";
}

.icon-rr-phone:before {
  content: "";
}

.icon-rr-route:before {
  content: "";
}

.icon-rr-subway:before {
  content: "";
}

.icon-rr-check:before {
  content: "✔";
}

.icon-rr-right-arrow:before {
  content: "⮕";
}

.icon-rr-right-chevron:before {
  content: "⮞";
}

.icon-rr-cities:before {
  content: "";
}

.icon-rr-safe:before {
  content: "";
}

.icon-rr-tickets:before {
  content: "";
}

.icon-rr-quality:before {
  content: "";
}

.icon-rr-eat:before {
  content: "";
}

.icon-rr-gender:before {
  content: "";
}

.icon-rr-persons:before {
  content: "";
}

.icon-rr-quote:before {
  content: "";
}

.icon-rr-star-o:before {
  content: "";
}

.icon-rr-facebook:before {
  content: "";
}

.icon-rr-instagram:before {
  content: "";
}

.icon-rr-speedometer-100:before {
  content: "";
}

.icon-rr-speedometer-0:before {
  content: "";
}

.feature-box {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  text-align: center;
  padding: 25px;
  width: 100%;
}
.feature-box p, .feature-box h3 {
  font-family: inherit;
}
.feature-box .icon {
  color: #4169e1;
  font-size: 60px;
}
@media (max-width: 575.98px) {
  .feature-box .icon {
    font-size: 45px;
  }
}

.white-box {
  color: #000;
  background-color: #fff;
  padding: 40px 30px 55px;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  .white-box {
    padding: 30px 15px 35px;
  }
}
.white-box ul {
  list-style: none;
  margin-top: 5px;
  margin-bottom: 0;
}
.white-box ul li {
  position: relative;
  font-weight: 300;
  padding-left: 30px;
  padding-top: 10px;
}
.white-box ul li::before {
  position: absolute;
  content: "✔";
  margin-left: -30px;
  font-family: "russianrailicons";
  font-size: 16px;
  color: #E63A1D;
}

#commitment {
  background-image: url("/assets/images/commitment.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 596px;
}

.block {
  overflow: hidden;
  position: relative;
  cursor: pointer;
  margin-bottom: 15px;
}
.block img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  object-fit: cover;
  height: 350px;
  width: 100%;
}
.block:hover img {
  opacity: 0.9;
}
.block:hover .description h3 {
  color: #E63A1D;
}
.block:hover .description p {
  color: #000;
}
.block a {
  color: #000;
  text-decoration: none;
}
.block .description {
  box-sizing: border-box;
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  width: calc(100% - 40px);
  background: #fff;
  text-align: center;
  padding: 25px 25px 30px;
  margin: auto;
  border-radius: 3px;
}
@media only screen and (max-width: 575.98px), (orientation: portrait) {
  .block .description {
    width: calc(100% - 30px);
    bottom: 15px;
  }
}
.block .description h3 {
  font-size: 16px;
  margin-bottom: 10px;
}
.block .description p {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  position: relative;
  margin-bottom: 0;
}
.block .description .more::after {
  position: absolute;
  content: "→";
  font-size: 14px;
  color: #E63A1D;
  margin-left: 5px;
}
.block .description .date {
  color: #d9d9d9;
}
@media (min-width: 320px) and (max-width: 1023px) {
  .block {
    margin-bottom: 10px;
  }
}

@media (max-width: 991.98px) {
  .mobile-block img {
    transition: all 0.3s ease-out, all 0.3s ease-out, auto;
    object-fit: cover;
    width: 100%;
  }
}
.horizontal-block {
  overflow: hidden;
  position: relative;
  margin-bottom: 20px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e4e4e4;
  padding: 10px 10px;
}
.horizontal-block img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  object-fit: cover;
  width: 100%;
}
.horizontal-block .description {
  border-radius: 3px;
}
.horizontal-block .description h3, .horizontal-block .description h2 {
  font-size: 16px;
  line-height: 18px;
  color: #000;
  margin-bottom: 15px;
}
.horizontal-block .description p {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  position: relative;
  margin-bottom: 0;
  color: #000;
}
.horizontal-block .description .more::after {
  content: "Read more →";
  font-size: 13px;
  color: #E63A1D;
  white-space: nowrap;
}
.horizontal-block .description img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  object-fit: cover;
  height: 180px;
  width: 100%;
}
.horizontal-block .description .description h3, .horizontal-block .description .description h2 {
  font-size: 18px;
  line-height: 20px;
  color: #000;
}
.horizontal-block .description .description p {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  position: relative;
  margin-bottom: 0;
  color: #000;
}
.horizontal-block .description .description .more::after {
  position: absolute;
  content: "read more →";
  font-size: 13px;
  color: #E63A1D;
  margin-left: 5px;
  white-space: nowrap;
}
.horizontal-block .description:hover img {
  opacity: 0.9;
}
.horizontal-block .description:hover .description h3, .horizontal-block .description:hover .description h2 {
  color: #E63A1D;
}
.horizontal-block .description:hover .description p {
  color: #000;
}
.horizontal-block a .description h3, .horizontal-block a .description h2 {
  color: #000;
}
.horizontal-block a .description p {
  color: #000;
}
.horizontal-block a .description .more::after {
  color: #E63A1D;
}
.horizontal-block a:hover .description h3, .horizontal-block a:hover .description h2 {
  color: #E63A1D;
}
.horizontal-block a:hover .description p {
  color: #000;
}

.table tr:first-child td {
  border-top: none;
}

@media only screen and (max-width: 575.98px), (orientation: portrait) {
  .container-mobile {
    padding-left: 0;
    padding-right: 0;
  }
}

.listWithArrow {
  margin: 0;
  padding: 0;
  list-style: none;
}
.listWithArrow li {
  position: relative;
  font-weight: 300;
  padding-left: 30px;
}
.listWithArrow li::after {
  position: absolute;
  content: "⮞";
  top: 50%;
  margin-top: -13px;
  left: 0;
  font-family: "russianrailicons";
  font-size: 16px;
  color: #ad1e2f;
}

.listWithCheck {
  margin: 0;
  padding: 0;
  list-style: none;
}
.listWithCheck li {
  position: relative;
  font-weight: 300;
  padding-left: 30px;
}
.listWithCheck li::after {
  position: absolute;
  content: "✔";
  top: 0;
  left: 0;
  font-family: "russianrailicons";
  font-size: 16px;
  color: #ad1e2f;
}

ol {
  margin-left: 20px;
}

#content p:last-child {
  margin-bottom: 0;
}

.breadcrumbs a, .breadcrumbs p {
  color: #171717;
  font-weight: bold;
  margin: 0;
}
.breadcrumbs a:hover {
  color: #E63A1D;
}
.breadcrumbs a:not(:last-child):after {
  content: " /";
}

.anchor {
  position: absolute;
  margin-top: -70px;
}

.btn {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  line-height: 1;
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  padding: 0.9rem 0.7rem;
}

.btn {
  border-radius: 0;
}

.btn.focus, .btn:focus {
  outline: 0;
  box-shadow: none;
}

.btn-animation {
  transition: background-color 0.2s ease;
  text-transform: uppercase;
  position: relative;
  transition: background-color 0.2s ease;
  overflow: hidden;
}
.btn-animation:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  top: 50%;
  left: 50%;
  transform-style: flat;
  transform: translate3d(-50%, -50%, 0);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 100%;
  transition: width 0.2s ease, height 0.2s ease;
}
.btn-animation:focus {
  background-color: #E63A1D;
}
.btn-animation:hover {
  background-color: #c93016;
}
.btn-animation:active:after {
  width: 110%;
  height: 200px;
}

.btn-primary {
  background: #E63A1D;
  border-color: #E63A1D;
}
.btn-primary:not(:disabled):not(.disabled):hover {
  background: #e94e34;
  border-color: #e94e34;
  color: rgba(255, 255, 255, 0.9);
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled):focus {
  background: #d23217;
  outline: none;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus {
  background-color: #a42712;
  border-color: #8d2210;
  box-shadow: 0 0 0 0.25rem rgba(245, 178, 167, 0.5);
}

.btn-outline-primary {
  color: #E63A1D;
  border-color: #E63A1D;
}
.btn-outline-primary:not(:disabled):not(.disabled):hover, .btn-outline-primary:not(:disabled):not(.disabled):focus {
  color: #fff;
  background-color: #E63A1D;
  border-color: #E63A1D;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus {
  background-color: #bb2d15;
  border-color: #a42712;
  box-shadow: 0 0 0 0.25rem rgba(245, 178, 167, 0.5);
}

.btn-sm {
  font-size: 16px;
  padding: 0.8rem 1.2rem;
}

@font-face {
  font-family: "Acumin Pro";
  src: url("/assets/fonts/AcuminPro-Bold.eot");
  src: url("/assets/fonts/AcuminPro-Bold.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/AcuminPro-Bold.woff2") format("woff2"), url("/assets/fonts/AcuminPro-Bold.ttf") format("truetype"), url("/assets/fonts/AcuminPro-Bold.svg#AcuminPro-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Acumin Pro";
  src: url("/assets/fonts/AcuminPro-Regular.eot");
  src: url("/assets/fonts/AcuminPro-Regular.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/AcuminPro-Regular.woff2") format("woff2"), url("/assets/fonts/AcuminPro-Regular.ttf") format("truetype"), url("/assets/fonts/AcuminPro-Regular.svg#AcuminPro-Regular") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "russianrailicons";
  src: url("/assets/fonts/russianrailicons.eot");
  src: url("/assets/fonts/russianrailicons.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/russianrailicons.woff") format("woff"), url("/assets/fonts/russianrailicons.ttf") format("truetype"), url("/assets/fonts/russianrailicons.svg#russianrailicons") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* ----- 404 -----*/
#p404 .shadow404 {
  font-size: 320px;
  font-weight: bold;
  color: #e0e0e0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
#p404 .text404 {
  position: absolute;
  top: 50%;
  margin-top: -130px;
  left: 38%;
  font-size: 200px;
  color: #E63A1D;
}
@media (max-width: 575px) {
  #p404 .shadow404 {
    font-size: 165px;
  }
  #p404 .text404 {
    top: 50%;
    margin-top: -71px;
    left: 50%;
    margin-left: -107px;
    font-size: 125px;
  }
}
@media (max-width: 767px) {
  #p404 .shadow404 {
    font-size: 165px !important;
    text-align: center;
  }
  #p404 .text404 {
    top: 50%;
    margin-top: -71px;
    left: 50%;
    margin-left: -107px;
    font-size: 125px;
  }
}
@media (max-width: 991px) {
  #p404 .shadow404 {
    font-size: 165px !important;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
  }
  #p404 .text404 {
    top: 50%;
    margin-top: -71px;
    left: 50%;
    margin-left: -170px;
    font-size: 125px;
  }
}
@media (max-width: 1199px) {
  #p404 .shadow404 {
    font-size: 265px;
  }
  #p404 .text404 {
    left: 50%;
    margin-left: -115px;
  }
}

/* ------Header -----*/
#slider {
  background-image: url("/assets/images/pano/index.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  min-height: 450px;
}
#slider h1, #slider h2, #slider h3, #slider h4, #slider h5, #slider h6, #slider .sub {
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
  color: #fff;
}
#slider h1 {
  text-transform: uppercase;
}
#slider .sub {
  font-size: 18px;
  font-weight: 600;
  font-family: "Acumin Pro", sans-serif;
  margin-bottom: 0.5rem;
  line-height: 1.2;
}
#slider .sub i {
  vertical-align: middle;
}
#slider.no-form h1 {
  margin-bottom: 0.5rem;
}
@media (max-width: 991.98px) {
  #slider h1 {
    margin-bottom: 0;
  }
}
@media (max-width: 767.98px) {
  #slider {
    min-height: 200px;
  }
  #slider h1 {
    font-size: 18px;
  }
}
#slider.tour {
  background-image: url("/assets/images/pano/tours.jpg");
  background-position: center;
}
#slider.siberian {
  background-image: url("/assets/images/pano/siberian.jpg");
  background-position: center;
}
#slider.mongolian {
  background-image: url("/assets/images/pano/mongolian.jpg");
  background-position: center;
}
#slider.manchurian {
  background-image: url("/assets/images/pano/manchurian.jpg");
  background-position: center;
}
#slider.trains {
  background-image: url("/assets/images/pano/trains.jpg");
  background-position: center;
}
#slider.visa {
  background-image: url("/assets/images/pano/visa.jpg");
  background-position: center;
}
#slider.guide {
  background-image: url("/assets/images/pano/guide.jpg");
  background-position: center;
}
#slider.terms {
  background-image: url("/assets/images/pano/terms.jpg");
  background-position: center;
}
#slider.services {
  background-image: url("/assets/images/pano/services.jpg");
  background-position: center;
}
#slider.header-index {
  height: 600px;
}
#slider.header-video {
  height: 600px;
}
#slider.slider-flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}
#slider.slider-flex-center .flex-container {
  width: 100%;
  z-index: 9;
}
#slider .video-wrap {
  position: absolute;
  width: 100%;
  height: 100%;
}
#slider .video-wrap .video-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
}
#slider .video-wrap video {
  position: relative;
  z-index: 1;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

.device-md #header #logo img:not(.logo-dark),
.device-sm #header #logo img:not(.logo-dark),
.device-xs #header #logo img:not(.logo-dark) {
  display: block;
}

.device-lg #header.dark #logo img.logo-dark,
.device-xl #header.dark #logo img.logo-dark {
  display: block;
}
.device-lg #header:not(.dark) #logo img:not(.logo-dark),
.device-xl #header:not(.dark) #logo img:not(.logo-dark) {
  display: block;
}

#header #logo img {
  display: none;
}
#header #logo {
  padding: 25px 0;
}
#header #logo img {
  height: 50px;
}
#header.sticky-header #logo {
  padding: 10px 0;
}
#header.sticky-header #logo img {
  height: 40px;
}

/* ----- Footer -----*/
footer {
  color: #e4e4e4;
}
footer p {
  margin: 0;
}
footer p.title {
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
}
footer ul {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}
footer li, footer p {
  font-size: 12px;
  line-height: 16px;
}
footer hr {
  border-top: 1px solid #e4e4e4;
  opacity: 0.3;
  margin-top: 0.3rem;
  margin-left: -15px;
  margin-right: -15px;
}
footer img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  opacity: 1;
}
footer img:hover {
  opacity: 0.8;
}
footer a {
  color: #e4e4e4;
}
footer .top {
  background: #4169e1;
  padding: 35px 0;
}
@media (max-width: 1199.98px) {
  footer .top .no-wrap {
    flex-wrap: wrap;
  }
}
@media (max-width: 991.98px) {
  footer .top .contacts {
    margin-bottom: 10px;
  }
}
footer .top .contacts p {
  position: relative;
  margin-bottom: 4px;
  padding-left: 30px;
}
footer .top .contacts p::before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  margin-left: -30px;
}
footer .top .contacts p.russia::before {
  background: url("/assets/images/footer_ico/ru_flag.svg") no-repeat center;
}
footer .top .contacts p.usa::before {
  background: url("/assets/images/footer_ico/us_flag.svg") no-repeat center;
}
footer .top .contacts p.uk::before {
  background: url("/assets/images/footer_ico/uk_flag.svg") no-repeat center;
}
footer .top .contacts p.au::before {
  background: url("/assets/images/footer_ico/au_flag.svg") no-repeat center;
}
footer .top .contacts p.email {
  font-weight: bold;
  padding-left: 0;
}
footer .top .menu li {
  font-weight: bold;
}
footer .top .join .btn-footer {
  font-size: 14px;
  line-height: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
  text-transform: uppercase;
}
footer .top .join .btn-footer:hover {
  background-color: #e4e4e4;
  color: #000;
}
@media (min-width: 320px) and (max-width: 575.98px) {
  footer .top .accept {
    margin-top: 15px;
  }
}
footer .top .accept img {
  height: 42px;
  margin-left: 15px;
}
footer .top .accept img:first-child {
  margin-left: 0;
}
footer .top .follows a {
  font-size: 24px;
  margin-left: 15px;
}
footer .top .follows a:first-child {
  margin-left: 0;
}
footer .copyright {
  font-size: 10px;
}
footer .bottom {
  background: #214cce;
  font-size: 12px;
  padding: 40px 0;
}
footer .bottom p {
  margin: 0;
}
@media (max-width: 575.98px) {
  footer .bottom p {
    width: 100%;
  }
}
footer .bottom ul li:not(:last-child) {
  margin-right: 10px;
}
footer .bottom ul a {
  border-bottom: 1px solid #45303e;
  padding-bottom: 3px;
  text-decoration: none;
  white-space: nowrap;
  line-height: 2;
}

/* ----- Form -----*/
.headerForm {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  background: #fff;
  text-align: left;
  color: #171717 !important;
  padding: 30px 25px 35px;
  position: relative;
  border-radius: 3px;
}
.headerForm h2 {
  color: #171717 !important;
  font-weight: 400;
  margin-bottom: 10px;
}
.headerForm ::placeholder {
  color: #171717;
  opacity: 1;
  font-weight: 600;
}
.headerForm ::-ms-input-placeholder {
  color: #171717;
  font-weight: 600;
}
.headerForm ::-ms-input-placeholder {
  color: #171717;
  font-weight: 600;
}
.headerForm .form-control {
  font-size: 16px;
}
.headerForm .form-control:disabled {
  display: none;
}
.headerForm .bootstrap-datetimepicker-widget.dropdown-menu {
  height: 100%;
  top: 0 !important;
  left: 0 !important;
  z-index: 9999 !important;
  max-width: 400px;
}
.headerForm .checkBox label, .headerForm .checkReturnBox label {
  padding-left: 0;
  padding-right: 24px;
  position: relative;
}
.headerForm .checkBox input[type=checkbox], .headerForm .checkReturnBox input[type=checkbox] {
  top: 50%;
  right: 0;
  left: auto;
}

.modal-body .headerForm {
  padding: 5px;
  box-shadow: none;
}

.loadingForm {
  position: relative;
}
.loadingForm:before {
  position: absolute;
  content: " ";
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.5);
  z-index: 90;
}
.loadingForm:after {
  position: fixed;
  content: url("/assets/images/loading.svg");
  width: 80px;
  height: 80px;
  top: calc( 50% - 40px);
  left: calc( 50% - 40px);
  z-index: 95;
}

.close-form {
  margin-top: 50px;
}

.btnHide {
  opacity: 0.5;
  position: absolute;
  right: 15px;
  top: 15px;
  cursor: pointer;
  transition: opacity 1s ease-in-out;
  font-size: 14px;
  display: none;
}

.open-form .btnHide {
  display: block;
}

.bootstrap-datetimepicker-widget.dropdown-menu {
  border-radius: 3px;
  margin: 0;
  padding: 20px 40px;
  max-width: 320px;
  width: 100%;
}
.bootstrap-datetimepicker-widget.dropdown-menu.bottom:before, .bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {
  display: none;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td, .bootstrap-datetimepicker-widget.dropdown-menu table th {
  border-radius: 0;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td.old, .bootstrap-datetimepicker-widget.dropdown-menu table td.new {
  color: #bbb;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td.today:before {
  border-bottom-color: #E63A1D;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td.active,
.bootstrap-datetimepicker-widget.dropdown-menu table td.active:hover,
.bootstrap-datetimepicker-widget.dropdown-menu table td span.active {
  background-color: #E63A1D;
  text-shadow: none;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td.active.today:before,
.bootstrap-datetimepicker-widget.dropdown-menu table td.active:hover.today:before,
.bootstrap-datetimepicker-widget.dropdown-menu table td span.active.today:before {
  border-bottom-color: #fff;
}
.bootstrap-datetimepicker-widget.dropdown-menu table th {
  height: 40px;
  padding: 0;
  width: 40px;
}
.bootstrap-datetimepicker-widget.dropdown-menu table th.picker-switch {
  width: auto;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td.day {
  height: 32px;
  line-height: 32px;
  padding: 0;
  width: auto;
}
.bootstrap-datetimepicker-widget.dropdown-menu table td span {
  border-radius: 0;
  height: 77px;
  line-height: 77px;
  margin: 0;
  width: 25%;
}
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-months tbody tr td,
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-years tbody tr td,
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-decades tbody tr td {
  padding: 0;
}
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-decades tbody tr td {
  height: 27px;
  line-height: 27px;
}
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-decades tbody tr td span {
  display: block;
  float: left;
  width: 50%;
  height: 46px;
  line-height: 46px !important;
  padding: 0;
}
.bootstrap-datetimepicker-widget.dropdown-menu .datepicker-decades tbody tr td span:not(.decade) {
  display: none;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td {
  padding: 0;
  width: 30%;
  height: 20px;
  line-height: 20px;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td:nth-child(2) {
  width: 10%;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td a, .bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td span, .bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td button {
  border: none;
  border-radius: 0;
  height: 56px;
  line-height: 56px;
  padding: 0;
  width: 100%;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td span {
  color: #333;
  margin-top: -1px;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td button {
  background-color: #fff;
  color: #333;
  font-weight: bold;
  font-size: 1.2em;
}
.bootstrap-datetimepicker-widget.dropdown-menu .timepicker-picker table td button:hover {
  background-color: #d9d9d9;
}

.bootstrap-datetimepicker-widget td.disabled, .bootstrap-datetimepicker-widget td.disabled:hover {
  background-color: #d9d9d9 !important;
  color: #535353 !important;
}

.bootstrap-datetimepicker-widget thead tr:first-child th:hover {
  background: #fff !important;
  color: #4169e1;
}

.bootstrap-datetimepicker-widget.dropdown-menu .picker-switch table td {
  border-top: 1px solid #34495e;
}
.bootstrap-datetimepicker-widget.dropdown-menu .picker-switch table td a, .bootstrap-datetimepicker-widget.dropdown-menu .picker-switch table td span {
  display: block;
  height: 40px;
  line-height: 40px;
  padding: 0;
  width: 100%;
}

.bootstrap-datetimepicker-widget .weekend {
  color: #E63A1D;
}

.stationSwap {
  position: absolute;
  font-size: 25px;
  cursor: pointer;
  right: 15px;
  top: 4px;
  color: #E63A1D;
}

input::-webkit-calendar-picker-indicator {
  display: none;
}

.form-control {
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #d9d9d9;
  margin-bottom: 10px;
  padding: 0;
  box-sizing: border-box;
  border-radius: 0;
  transition: border-color 0.3s linear;
  color: #171717;
  opacity: 1;
  font-weight: 600 !important;
}

input.form-control, textarea.form-control {
  padding-left: 4px;
}

input:focus, select:focus, textarea:focus, .form-control:focus,
input:active, select:active, textarea:active, .form-control:active {
  border-bottom: 1px solid #E63A1D;
  border-top: none;
  border-left: none;
  border-right: none;
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  box-sizing: border-box;
}

.form-control[readonly] {
  background-color: #fff;
}

.btn-plus-minus, .passengers-num {
  display: inline-block;
  width: 28px;
  height: 28px;
  border-radius: 2px;
  border: 1px solid #E63A1D;
  margin: 2px;
  vertical-align: top;
  line-height: 25px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
}

.mobilePickerPanel .btn-plus-minus,
.mobilePickerPanel .passengers-num {
  width: 40px;
  height: 40px;
  line-height: 38px;
  font-size: 24px;
}

.btn-plus-minus {
  background: #e1e1e1;
}

.passengers-line {
  margin-bottom: 10px;
}

.passengers-type {
  display: inline-block;
  line-height: 28px;
  padding-left: 10px;
  color: #535353;
  font-size: 14px;
  font-weight: 500;
}

.passengers-type small {
  display: block;
  text-align: center;
  font-size: 14px;
  line-height: 14px;
  font-weight: normal;
  color: #000;
}

.passengers-message {
  font-size: 14px;
  line-height: 20px;
  color: #ad1e2f;
}

.desktopPickerPassengers {
  left: -25px;
  width: 350px;
  padding: 20px;
}

body.noScroll {
  left: 0;
  right: 0;
  position: fixed;
  height: 100vh;
  overflow: hidden;
}

.mobileSidebarContainer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  max-height: 100vh;
  margin: 0 !important;
  z-index: 999999;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-transition: -webkit-transform 0.15s ease-in;
  transition: -webkit-transform 0.15s ease-in;
  transition: transform 0.15s ease-in, -webkit-transform 0.15s ease-in;
  -webkit-transform: translateX(100vw);
  transform: translateX(100vw);
  will-change: transform;
}
.mobileSidebarContainer.mobileSidebarVisible {
  left: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.mobileSidebarContainer.mobileSidebarVisible .mobileSidebarHeader {
  -webkit-box-shadow: 0 4px 8px 0 rgba(51, 51, 51, 0.1);
  box-shadow: 0 4px 8px 0 rgba(51, 51, 51, 0.1);
}
.mobileSidebarContainer .mobileSidebarBackButton,
.mobileSidebarContainer .mobileSidebarHeader {
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.mobileSidebarContainer .mobileSidebarBackButton {
  height: 56px;
  width: 56px;
  cursor: pointer;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mobileSidebarContainer .mobileSidebarBackButton > svg {
  height: 20px;
  width: 20px;
  color: #717fa4;
}
.mobileSidebarContainer .mobileSidebarHeader {
  position: relative;
  width: 100%;
  min-height: 56px;
  margin: 0;
  background-color: #fff;
  color: #666;
  text-decoration: none;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-shadow: 0 4px 8px 0 rgba(51, 51, 51, 0);
  box-shadow: 0 4px 8px 0 rgba(51, 51, 51, 0);
}
.mobileSidebarContainer .mobileSidebarHeader .mobileSidebarButton {
  height: 56px;
  width: 56px;
  min-width: 56px;
  max-width: 56px;
}
.mobileSidebarContainer .mobileSidebarHeader .mobileSidebarTitleLabel {
  position: absolute;
  height: 56px;
  width: 100%;
  color: #425486;
  font-size: 18px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mobileSidebarContainer .mobileSidebarContent {
  position: relative;
  width: 100%;
  height: calc(100vh - 56px);
  padding-bottom: 72px;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  background-color: #fff;
  opacity: 1;
}
.mobileSidebarContainer .mobileSidebarContent > div {
  min-width: 100%;
}
.mobileSidebarContainer .mobileSidebarContent .blurred {
  filter: blur(4px);
}
.mobileSidebarContainer .mobileSidebarContent .pickerDefaultFont {
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
}
.mobileSidebarContainer .mobileSidebarContent .pickerCalendarRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding: 2px 0;
}
.mobileSidebarContainer .mobileSidebarContent .pickerCalendarDay {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #425486;
  cursor: pointer;
  display: block;
  font-size: 14px;
  height: 32px;
  line-height: 28px;
  list-style: none;
  position: relative;
  text-align: center;
  width: 100%;
  min-width: 28px;
  z-index: 0;
}
.mobileSidebarContainer .mobileSidebarContent .pickerCalendarDay.pickerIsUnavailable {
  pointer-events: none;
}
.mobileSidebarContainer .mobileSidebarContent .pickerCalendarDay.pickerWeekend {
  font-weight: 700;
}
.mobileSidebarContainer .mobileSidebarContent .pickerWeekdaysWeekday {
  height: 32px;
  width: 100%;
  color: #a1a9c3;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mobileSidebarContainer .mobileSidebarContent .pickerWeekdaysWeekday.pickerWeekdaysWeekend {
  font-weight: 700;
}
.mobileSidebarContainer .mobileSidebarContent .pickerSelectedRange {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
}
.mobileSidebarContainer .mobileSidebarContent .pickerDayLabel {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  color: #425486;
  width: 28px;
  height: 28px;
  margin: 0 auto;
  border-radius: 50%;
  border: 2px solid #fff;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.mobileSidebarContainer .mobileSidebarContent .pickerDayLabel.pickerActiveDay {
  color: #fff;
  background-color: #5e90cc;
  border: 2px solid #5e90cc;
}
.mobileSidebarContainer .mobileSidebarContent .pickerDayLabel.pickerUnavailableDay {
  color: #ccc;
}
.mobileSidebarContainer .mobileSidebarContent .pickerDayLabel:hover:not(.pickerUnavailableDay):not(.pickerActiveDay) {
  background-color: #fff;
  border: 2px solid #5e90cc;
  color: #666;
}

.mobilePickerStations ul {
  list-style: none;
  margin: 0px 0 5px 0;
  padding: 0;
  display: block;
  width: 100%;
}
.mobilePickerStations ul li {
  text-align: left;
  padding: 10px 18px 0 18px;
  display: block;
}
.mobilePickerStations ul li:hover {
  background-color: #f9f9fa;
}
.mobilePickerStations ul li > .pickerStation {
  border-bottom: 1px solid #e9e9e9;
  padding-bottom: 10px;
  color: #425486;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
}
.mobilePickerStations ul li:last-child > .pickerStation {
  border: none;
}
.mobilePickerStations ul li .pickerStation i {
  margin-right: 8px;
  font-size: 20px;
}
.mobilePickerStations ul .pickerStation {
  cursor: pointer;
}

.mobileStationSearchContainer {
  width: 100%;
}
.mobileStationSearchContainer .mobileStationSearchInput {
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 48px;
  width: 100%;
  padding: 0 12px;
  border: 1px solid #f1f2f6;
  border-radius: 8px;
  font-size: 16px;
  text-align: left;
  letter-spacing: 0.3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #f1f2f6;
  -webkit-box-shadow: none;
  box-shadow: none;
  caret-color: #a1a9c3;
  color: #132968;
  -webkit-transition: border 0.15s;
  transition: border 0.15s;
}

.mobilePickerContainer {
  width: 100%;
  padding: 10px 0 32px 0;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mobilePickerPanel {
  width: 100%;
  min-width: 224px;
  max-width: 512px;
  padding: 0 16px;
}

.mobilePickerCalendarContainer {
  width: 100%;
}

.mobilePickerCalendarMonth {
  margin-top: 15px;
  height: 20px;
  color: #132968;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
}

.modifySearchForm {
  box-shadow: none;
  padding: 10px;
}
.modifySearchForm .bootstrap-datetimepicker-widget.dropdown-menu {
  height: 425px !important;
  top: 50% !important;
  margin-top: -212px;
  position: absolute !important;
  border: none;
}
.modifySearchForm .popover {
  box-shadow: none;
  margin-top: -44px !important;
  padding: 75px 25px;
}

#passengers {
  cursor: pointer;
}

.popover {
  max-width: 100%;
  border: none;
  border-radius: 0;
  padding: 70px 20px;
  -webkit-box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24);
  box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24);
  width: 100%;
  min-height: 100%;
  transform: none !important;
  margin-top: 0 !important;
}

.popover .arrow {
  display: none;
}

.popover-body .input-group, .number-spinner .input-group {
  width: 135px;
}
.popover-body .input-group .input-passenger, .number-spinner .input-group .input-passenger {
  background-color: white;
  border: 1px solid #e0e0e0;
  padding: 0;
  max-width: 45px;
  min-width: 45px;
}
.popover-body .btn, .number-spinner .btn {
  background: #E63A1D;
  color: white;
  font-weight: bold;
  text-transform: uppercase;
  border: 1px solid #E63A1D;
  font-size: 14px;
  padding: 8px;
}
.popover-body .btn:hover, .number-spinner .btn:hover {
  background: #c32235;
  color: rgba(255, 255, 255, 0.9);
  border-color: #c32235;
}
.popover-body .btn-primary, .number-spinner .btn-primary {
  background-color: #e0e0e0;
  color: #535353 !important;
  border: none;
  font-size: 19px;
  line-height: 14px;
}
.popover-body .btn-primary:hover, .number-spinner .btn-primary:hover {
  background: #c32235;
  color: rgba(255, 255, 255, 0.9) !important;
}
.popover-body .btn-primary:active, .number-spinner .btn-primary:active {
  background: #E63A1D;
}
.popover-body .btn-primary:not(:disabled):not(.disabled).active, .popover-body .btn-primary:not(:disabled):not(.disabled):active, .popover-body .show > .btn-primary.dropdown-toggle, .number-spinner .btn-primary:not(:disabled):not(.disabled).active, .number-spinner .btn-primary:not(:disabled):not(.disabled):active, .number-spinner .show > .btn-primary.dropdown-toggle {
  background: #c32235;
  color: rgba(255, 255, 255, 0.9);
  border-color: #c32235;
}
.popover-body label, .number-spinner label {
  margin-top: 5px;
  line-height: 1px;
}
.popover-body label span, .number-spinner label span {
  font-family: "Acumin Pro";
  line-height: 29px;
  padding-left: 5px;
  color: #535353;
  font-size: 14px;
  font-weight: 500;
}

.number-spinner .btn, .number-spinner input {
  height: 30px;
  width: 30px;
}

.station-picker {
  position: absolute;
  background: #fff;
  color: #000;
  text-align: left;
  padding: 10px 0;
  z-index: 9999999;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.station-picker ul {
  list-style: none;
}
.station-picker ul li {
  margin: 0;
  padding: 5px 10px;
  cursor: pointer;
}
.station-picker ul li.active, .station-picker ul li:hover {
  background: #e0e0e0;
}
.station-picker ul.blurred li div {
  display: inline;
  background-color: #e0e0e0;
  color: #e0e0e0;
}

.error-info {
  margin: 15px 0 20px;
  border-radius: 0;
  color: #ad1e2f;
}

.error-field {
  background-color: #FFCCCC !important;
}

.checkReturnBox input[type=checkbox], .checkBox input[type=checkbox] {
  -webkit-appearance: initial;
  appearance: initial;
  background: #fff;
  height: 18px;
  width: 18px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  border: 2px solid #E63A1D;
}
.checkReturnBox input[type=checkbox]:checked, .checkBox input[type=checkbox]:checked {
  background-color: #E63A1D;
}
.checkReturnBox input[type=checkbox]:checked:after, .checkBox input[type=checkbox]:checked:after {
  content: "✔";
  color: white;
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 16px;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.checkReturnBox label, .checkBox label {
  padding-left: 5px;
  position: relative;
}

.checkBox {
  font-size: 14px;
}

.checkReturnBox {
  font-weight: 600;
}

.form-radio input[type=radio] {
  display: none;
}

.form-radio label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding-left: 20px;
  margin-right: 0;
  line-height: 16px;
  user-select: none;
  font-weight: bold;
}

.form-radio label:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  position: absolute;
  left: 4px;
  bottom: 4px;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px #E63A1D;
  background: #fff;
}

/* Checked */
.form-radio input:checked + label:before {
  background: #E63A1D;
}

/* Hover */
.form-radio label:hover:before {
  filter: brightness(120%);
}

/* Disabled */
.form-radio input:checked:disabled + label:before {
  filter: grayscale(100%);
}

/* ----- contacts -----*/
#contacts textarea {
  height: 200px;
}
#contacts input, #contacts textarea {
  margin-top: 10px;
}
#contacts .button {
  max-width: 100%;
}
#contacts p {
  font-size: 20px;
  line-height: 20px;
}

.privacy-box {
  height: 300px;
  overflow: auto;
  margin: 15px 0;
  border: 1px solid #ccc;
  padding: 10px;
}

#requestForm {
  position: sticky;
  top: 80px;
  padding: 15px;
  background: #F4F4F4;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  border-radius: 3px;
}
#requestForm label {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: inherit;
  margin-bottom: 0px;
}
#requestForm label.form-check-label {
  font-size: 13px;
  font-weight: normal;
}
#requestForm textarea::placeholder {
  font-size: 12px;
  font-weight: normal;
}
#requestForm .input-group label {
  background: #FFF;
  height: 30px;
  line-height: 31px;
  margin: 0;
  font-size: 12px;
  font-weight: normal;
  padding: 0 7px;
  border-bottom: 1px solid #d9d9d9;
}

.float-label {
  position: relative;
}
.float-label[class*=col-] label, .float-label > [class*=col-] label {
  padding: 0 5px;
}
.float-label label {
  position: absolute;
  pointer-events: none;
  left: 13px;
  top: 7px;
  transition: 0.2s ease all;
  font-size: 1rem;
}
.float-label .form-control-lg ~ label {
  left: 16px;
  top: 10px;
  font-size: 1.25rem;
}
.float-label .form-control {
  /* FF 4-18 */
  /* FF 19+ */
  /* FF 19+ */
  /* IE 10+ */
}
.float-label .form-control::placeholder {
  color: transparent;
}
.float-label .form-control:focus::placeholder {
  color: transparent;
}
.float-label .form-control::-webkit-input-placeholder {
  color: transparent;
}
.float-label .form-control:-moz-placeholder {
  color: transparent;
}
.float-label .form-control::-moz-placeholder {
  color: transparent;
}
.float-label .form-control:focus::-moz-placeholder {
  color: transparent;
}
.float-label .form-control:-ms-input-placeholder {
  color: transparent;
}
.float-label .form-control:focus ~ label,
.float-label .form-control:disabled ~ label,
.float-label input.form-control:not(:focus):not(:placeholder-shown) ~ label,
.float-label textarea.form-control:not(:focus):not(:placeholder-shown) ~ label,
.float-label select.form-control:not(:focus):valid ~ label {
  top: -12px;
  left: 0;
  font-size: 0.75rem;
  color: #707070;
}
.float-label select:invalid ~ label,
.float-label input:invalid ~ label,
.float-label textarea:invalid ~ label {
  color: #707070;
}
.float-label select:disabled ~ label,
.float-label input:disabled ~ label,
.float-label textarea:disabled ~ label {
  background: none;
}

/* ----- Action -----*/
#action {
  background-image: url("/assets/images/action.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 0 50%;
  min-height: 328px;
  color: #fff;
  text-align: center;
}
@media (max-width: 575.98px) {
  #action br {
    display: none;
  }
}
#action p {
  font-size: 19px;
  color: #e0e0e0;
  line-height: 26px;
  font-weight: bold;
}
@media (max-width: 1199.98px) {
  #action p {
    font-size: 20px;
  }
}
@media (max-width: 575.98px) {
  #action p {
    font-size: 17px;
    line-height: 21px;
  }
}
#action h3 {
  padding-top: 5px;
  color: #e0e0e0;
}
#action h3 span {
  color: #97acee;
}
@media (max-width: 1199.98px) {
  #action h3 {
    font-size: 25px;
  }
}
@media (max-width: 575.98px) {
  #action h3 {
    font-size: 22px;
    line-height: 21px;
  }
}
#action button {
  margin: 30px auto 0;
  max-width: 380px;
}

/* ----- About Us -----*/
#about {
  background-image: url("/assets/images/about.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  min-width: 100%;
  min-height: 370px;
  height: auto;
  color: #fff;
  margin: 0 auto;
}
#about .white-box {
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 3px;
}
#about .white-box ul {
  margin-top: 5px;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}
#about .white-box ul ul {
  list-style: none;
  margin-top: 5px;
  margin-bottom: 0;
}
#about .white-box ul ul li {
  position: relative;
  font-weight: 300;
  padding-left: 30px;
  padding-top: 10px;
}
#about .white-box ul ul li::before {
  position: absolute;
  content: "✔";
  margin-left: -30px;
  font-family: "russianrailicons";
  font-size: 16px;
  color: #E63A1D;
}
@media only screen and (max-width: 560px), (orientation: portrait) {
  #about .white-box ul {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
  }
}

.brand-box {
  display: flex;
  width: 100%;
  height: 100px;
  justify-content: center;
  align-items: center;
}

/* ----- train page -----*/
#trainPage .gallery .owl-prev,
#trainPage .gallery .owl-next,
#destinationPage .gallery .owl-prev,
#destinationPage .gallery .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#trainPage .gallery .owl-prev span,
#trainPage .gallery .owl-next span,
#destinationPage .gallery .owl-prev span,
#destinationPage .gallery .owl-next span {
  display: none;
}
#trainPage .gallery .owl-prev::before,
#trainPage .gallery .owl-next::before,
#destinationPage .gallery .owl-prev::before,
#destinationPage .gallery .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #trainPage .gallery .owl-prev::before,
#trainPage .gallery .owl-next::before,
#destinationPage .gallery .owl-prev::before,
#destinationPage .gallery .owl-next::before {
    font-size: 80px;
  }
}
#trainPage .gallery .owl-prev:hover::before,
#trainPage .gallery .owl-next:hover::before,
#destinationPage .gallery .owl-prev:hover::before,
#destinationPage .gallery .owl-next:hover::before {
  color: #E63A1D;
}
#trainPage .gallery .owl-prev.disabled,
#trainPage .gallery .owl-next.disabled,
#destinationPage .gallery .owl-prev.disabled,
#destinationPage .gallery .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #trainPage .gallery .owl-prev::before,
#trainPage .gallery .owl-next::before,
#destinationPage .gallery .owl-prev::before,
#destinationPage .gallery .owl-next::before {
    padding: 0 10px;
  }
  #trainPage .gallery .owl-prev:hover,
#trainPage .gallery .owl-next:hover,
#destinationPage .gallery .owl-prev:hover,
#destinationPage .gallery .owl-next:hover {
    opacity: 1;
  }
}
#trainPage .gallery .owl-prev,
#destinationPage .gallery .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #trainPage .gallery .owl-prev,
#destinationPage .gallery .owl-prev {
    left: 0;
  }
}
#trainPage .gallery .owl-prev::before,
#destinationPage .gallery .owl-prev::before {
  content: "‹";
}
#trainPage .gallery .owl-next,
#destinationPage .gallery .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #trainPage .gallery .owl-next,
#destinationPage .gallery .owl-next {
    right: 0;
  }
}
#trainPage .gallery .owl-next::before,
#destinationPage .gallery .owl-next::before {
  content: "›";
}
#trainPage .gallery img,
#destinationPage .gallery img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  max-height: 241px;
}
#trainPage .gallery img:hover,
#destinationPage .gallery img:hover {
  opacity: 0.8;
}
#trainPage .fbox-icon,
#destinationPage .fbox-icon {
  color: #4169e1;
  font-size: 70px;
  line-height: 1.1em;
}
@media (max-width: 575.98px) {
  #trainPage .fbox-icon,
#destinationPage .fbox-icon {
    font-size: 45px;
  }
}
@media (max-width: 575.98px) {
  #trainPage .train-description .col-sm-6,
#destinationPage .train-description .col-sm-6 {
    width: 50%;
  }
}

.list-group {
  margin-bottom: 15px;
}
.list-group .list-group-item {
  background: #fff;
  border-left: none;
  border-right: none;
  color: #E63A1D;
  cursor: pointer;
  border: none;
}
.list-group .list-group-item table {
  cursor: default;
}
.list-group .list-group-item:first-child {
  border-top: 1px solid #e4e4e4;
}
.list-group .list-group-item .from {
  box-sizing: border-box;
  flex-grow: 1;
  position: relative;
}
.list-group .list-group-item .from::after {
  position: absolute;
  font-family: "russianrailicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  content: "⮕";
  top: 0;
  bottom: 0;
  left: 0;
  right: -50%;
  width: 13px;
  height: 13px;
  margin: auto;
}
@media (max-width: 1199.98px) {
  .list-group .list-group-item .from::after {
    right: -85%;
  }
}
.list-group .list-group-item:nth-child(2n) {
  color: #4169e1;
  background: #f1f4fd;
}

#trainMap {
  height: 400px;
}

/* ----- Trains -----*/
.trains__sidebar {
  background: #fff;
  border: 1px solid #e4e4e4;
  padding: 25px 25px 20px;
  border-radius: 3px;
}
.trains__sidebar ul {
  -moz-column-break-inside: avoid;
  -webkit-column-break-inside: avoid;
  column-break-inside: avoid;
}
@media (min-width: 767.99px) {
  .trains__sidebar ul {
    columns: 2;
  }
}
.trains__sidebar ul h2 {
  margin-bottom: 15px;
  width: 100%;
}
.trains__sidebar ul li {
  position: relative;
  font-size: 14px;
  padding-bottom: 12px;
}
@media (min-width: 1281px) {
  .trains__sidebar ul li {
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    column-break-inside: avoid;
  }
}
.trains__sidebar ul li.active {
  padding-left: 16px;
}
.trains__sidebar ul li.active a {
  color: #000;
  font-weight: 700;
  pointer-events: none;
  cursor: default;
}
.trains__sidebar ul li.active::before {
  top: 2px;
  width: 10px;
  height: 13px;
  background-image: url("/assets/images/art_arrow.svg");
}
.trains__sidebar ul li:last-child {
  padding-bottom: 0;
}

#trains {
  font-size: 18px;
  font-weight: bold;
}
#trains a {
  color: inherit;
}
#trains .title {
  font-size: 22px;
}
#trains small {
  font-size: 11px;
  font-weight: normal;
  text-transform: uppercase;
  display: block;
}
#trains .train-wrapper {
  position: relative;
  width: 100%;
}
#trains .train-wrapper .train-nav {
  position: absolute;
  width: 100%;
  height: 100%;
}
#trains .train-wrapper .train-nav .owl-prev,
#trains .train-wrapper .train-nav .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#trains .train-wrapper .train-nav .owl-prev span,
#trains .train-wrapper .train-nav .owl-next span {
  display: none;
}
#trains .train-wrapper .train-nav .owl-prev::before,
#trains .train-wrapper .train-nav .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #trains .train-wrapper .train-nav .owl-prev::before,
#trains .train-wrapper .train-nav .owl-next::before {
    font-size: 80px;
  }
}
#trains .train-wrapper .train-nav .owl-prev:hover::before,
#trains .train-wrapper .train-nav .owl-next:hover::before {
  color: #E63A1D;
}
#trains .train-wrapper .train-nav .owl-prev.disabled,
#trains .train-wrapper .train-nav .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #trains .train-wrapper .train-nav .owl-prev::before,
#trains .train-wrapper .train-nav .owl-next::before {
    padding: 0 10px;
  }
  #trains .train-wrapper .train-nav .owl-prev:hover,
#trains .train-wrapper .train-nav .owl-next:hover {
    opacity: 1;
  }
}
#trains .train-wrapper .train-nav .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #trains .train-wrapper .train-nav .owl-prev {
    left: 0;
  }
}
#trains .train-wrapper .train-nav .owl-prev::before {
  content: "‹";
}
#trains .train-wrapper .train-nav .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #trains .train-wrapper .train-nav .owl-next {
    right: 0;
  }
}
#trains .train-wrapper .train-nav .owl-next::before {
  content: "›";
}
#trains .train-wrapper .train-nav .owl-prev::before, #trains .train-wrapper .train-nav .owl-next::before {
  color: transparent;
}
#trains .train-wrapper .train-nav .owl-prev:focus::before, #trains .train-wrapper .train-nav .owl-next:focus::before {
  color: #e94e34;
}
#trains .train-wrapper:hover .train-nav .owl-prev::before, #trains .train-wrapper:hover .train-nav .owl-next::before {
  color: #E63A1D;
}

.train {
  overflow: hidden;
  position: relative;
  margin-bottom: 15px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #e4e4e4;
  border-radius: 3px;
  padding: 10px;
}
.train img {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  object-fit: cover;
  height: 300px;
  width: 100%;
}
.train .description h3, .train .description h2 {
  color: #171717;
  margin-bottom: 15px;
}
.train .description p {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  position: relative;
  margin-bottom: 0;
  color: #171717;
}
.train .description .more::after {
  position: absolute;
  content: "read more →";
  font-size: 13px;
  color: #E63A1D;
  white-space: nowrap;
}
.train:hover .description h3, .train:hover .description h2 {
  color: #E63A1D;
}
.train:hover img {
  opacity: 0.9;
}

.customer-reviews {
  background: #fff;
  border: 1px solid #e4e4e4;
  margin-top: 0;
  padding: 30px 25px;
}
.customer-reviews .star {
  position: relative;
  padding: 0;
  font-size: 25px;
  margin: 0 1px;
  line-height: 1;
}
.customer-reviews .star:before {
  content: "★";
}
.customer-reviews .star.on {
  color: #ffb400;
}
.customer-reviews .star.off {
  color: #d9d9d9;
}
.customer-reviews .star.semi {
  background: linear-gradient(to right, #ffb400 51%, #d9d9d9 49%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #d9d9d9;
}

/* ----- articleBlock -----*/
.articleBlock {
  margin: 0 0 20px;
  padding: 15px 15px 40px;
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .articleBlock {
    padding: 15px 25px 40px;
  }
}
@media (min-width: 1200px) {
  .articleBlock {
    padding: 15px 120px 40px;
  }
}
.articleBlock img {
  width: 100%;
  margin: 15px auto 15px auto;
  height: auto;
}
.articleBlock img:first-child {
  width: 100%;
  float: left;
}
.articleBlock h3 {
  font-size: 16px;
  margin-top: 25px;
  position: relative;
  text-align: left;
}
@media (min-width: 992px) {
  .articleBlock h3 {
    overflow-x: hidden;
    white-space: nowrap;
    font-size: 18px;
  }
}
@media (max-width: 767.98px) {
  .articleBlock h3 {
    text-align: center;
  }
}
.articleBlock h2 {
  font-size: 24px;
  margin-top: 35px;
  clear: both;
  text-align: left;
}
@media (max-width: 767.98px) {
  .articleBlock h2 {
    text-align: center;
  }
}
.articleBlock h1 {
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .articleBlock h1 {
    font-size: 35px;
  }
}
@media (max-width: 767.98px) {
  .articleBlock h1 {
    text-align: center;
  }
}
.articleBlock .date {
  display: flex;
  align-items: center;
  margin-top: 0 !important;
}
.articleBlock .date p {
  color: #d9d9d9;
  white-space: nowrap;
}
.articleBlock .date .line {
  background-color: #e4e4e4;
  height: 1px;
  width: 100%;
  margin-left: 10px;
}
@media (max-width: 575.98px) {
  .articleBlock .date .line {
    display: none;
  }
  .articleBlock .date:not(:first-child) {
    margin-top: 30px;
  }
}

.callout-box {
  margin-top: 20px;
  margin-bottom: 20px;
  background-color: #e0e0e0;
  padding: 35px 30px;
}
.callout-box h2 {
  margin-top: 0;
}
.callout-box ul {
  list-style: none;
  margin-top: 5px;
  margin-bottom: 0;
}
.callout-box ul li {
  position: relative;
  font-weight: 300;
  padding-left: 30px;
  padding-top: 10px;
}
.callout-box ul li::before {
  position: absolute;
  content: "✔";
  margin-left: -30px;
  font-family: "russianrailicons";
  font-size: 16px;
  color: #E63A1D;
}
.callout-box p:last-child {
  margin-bottom: 0;
}

.alert p:last-child {
  margin-bottom: 0;
}

/* ----- Recommended -----*/
@media only screen and (max-width: 575.98px), (orientation: portrait) {
  #recommended {
    padding-top: 30px;
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 480px), (orientation: portrait) {
  #recommended {
    padding-top: 20px;
  }
}
#recommended .inner__recommended {
  width: 49%;
}
#recommended .inner__recommended .recommended {
  justify-content: center;
}
#recommended .inner__recommended .recommended__block {
  width: 25%;
}
#recommended .recommended__block {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 35px;
}
@media (min-width: 575.99px) and (max-width: 991.98px) {
  #recommended .recommended__block {
    width: 25%;
  }
}
@media (min-width: 320px) and (max-width: 575.98px) {
  #recommended .recommended__block {
    width: 50%;
  }
}
#recommended .recommended__block img:hover {
  opacity: 0.8;
}
#recommended .recommended__block a#bbblink {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  width: 114px !important;
  height: 40px;
}
@media only screen and (max-width: 560px), (orientation: portrait) {
  #recommended .recommended__block a#bbblink {
    margin: 0 auto;
  }
}
#recommended .recommended__block a#bbblink:hover {
  opacity: 0.7;
}
#recommended .recommended__block a#bbblink div {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  box-sizing: border-box;
  border-radius: 5px;
  position: absolute;
  top: 0;
  width: 100%;
  height: 40px;
  background: #016596;
  color: #fff;
  font-size: 9px;
  font-weight: 300;
  padding-top: 3px;
  opacity: 0;
}
#recommended .recommended__block a#bbblink div:hover {
  opacity: 1;
}

/* ----- Testimonials -----*/
#testimonials h2,
#testimonials-list h2 {
  margin-bottom: 25px;
}
#testimonials .testimonials,
#testimonials-list .testimonials {
  position: relative;
}
#testimonials .testimonials .owl-prev,
#testimonials .testimonials .owl-next,
#testimonials-list .testimonials .owl-prev,
#testimonials-list .testimonials .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#testimonials .testimonials .owl-prev span,
#testimonials .testimonials .owl-next span,
#testimonials-list .testimonials .owl-prev span,
#testimonials-list .testimonials .owl-next span {
  display: none;
}
#testimonials .testimonials .owl-prev::before,
#testimonials .testimonials .owl-next::before,
#testimonials-list .testimonials .owl-prev::before,
#testimonials-list .testimonials .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials .testimonials .owl-prev::before,
#testimonials .testimonials .owl-next::before,
#testimonials-list .testimonials .owl-prev::before,
#testimonials-list .testimonials .owl-next::before {
    font-size: 80px;
  }
}
#testimonials .testimonials .owl-prev:hover::before,
#testimonials .testimonials .owl-next:hover::before,
#testimonials-list .testimonials .owl-prev:hover::before,
#testimonials-list .testimonials .owl-next:hover::before {
  color: #E63A1D;
}
#testimonials .testimonials .owl-prev.disabled,
#testimonials .testimonials .owl-next.disabled,
#testimonials-list .testimonials .owl-prev.disabled,
#testimonials-list .testimonials .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials .testimonials .owl-prev::before,
#testimonials .testimonials .owl-next::before,
#testimonials-list .testimonials .owl-prev::before,
#testimonials-list .testimonials .owl-next::before {
    padding: 0 10px;
  }
  #testimonials .testimonials .owl-prev:hover,
#testimonials .testimonials .owl-next:hover,
#testimonials-list .testimonials .owl-prev:hover,
#testimonials-list .testimonials .owl-next:hover {
    opacity: 1;
  }
}
#testimonials .testimonials .owl-prev,
#testimonials-list .testimonials .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #testimonials .testimonials .owl-prev,
#testimonials-list .testimonials .owl-prev {
    left: 0;
  }
}
#testimonials .testimonials .owl-prev::before,
#testimonials-list .testimonials .owl-prev::before {
  content: "‹";
}
#testimonials .testimonials .owl-next,
#testimonials-list .testimonials .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #testimonials .testimonials .owl-next,
#testimonials-list .testimonials .owl-next {
    right: 0;
  }
}
#testimonials .testimonials .owl-next::before,
#testimonials-list .testimonials .owl-next::before {
  content: "›";
}
#testimonials .testimonials__block,
#testimonials-list .testimonials__block {
  background: #fff;
  border: 1px solid #e4e4e4;
  padding: 40px 30px;
  box-sizing: border-box;
  border-radius: 3px;
  width: 99%;
  margin: 0 auto;
}
@media only screen and (max-width: 575.98px), (orientation: portrait) {
  #testimonials .testimonials__block,
#testimonials-list .testimonials__block {
    padding: 28px 30px 35px;
  }
}
#testimonials .testimonials__block a,
#testimonials-list .testimonials__block a {
  color: inherit;
}
#testimonials .testimonials__block .main,
#testimonials-list .testimonials__block .main {
  flex-wrap: nowrap;
}
#testimonials .testimonials__block .main .quote,
#testimonials-list .testimonials__block .main .quote {
  height: 0;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials .testimonials__block .main .quote,
#testimonials-list .testimonials__block .main .quote {
    display: none;
  }
}
#testimonials .testimonials__block .main .quote:before,
#testimonials-list .testimonials__block .main .quote:before {
  font-family: "russianrailicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  content: "";
  position: absolute;
  width: 48px;
  height: 48px;
  line-height: 48px;
  font-size: 42px;
  top: 0;
  left: 0;
  color: #4169e1;
}
#testimonials .testimonials__block .main .quote p,
#testimonials-list .testimonials__block .main .quote p {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  font-family: "Acumin Pro";
  font-size: 110px;
  font-weight: 700;
  line-height: 1;
  color: #4169e1;
  margin: 0;
  padding-right: 15px;
  box-sizing: border-box;
  opacity: 0;
}
#testimonials .testimonials__block .main .description,
#testimonials-list .testimonials__block .main .description {
  position: relative;
  padding-bottom: 15px;
}
#testimonials .testimonials__block .main .description p:first-child,
#testimonials-list .testimonials__block .main .description p:first-child {
  margin-top: 0;
}
#testimonials .testimonials__block .main .description p:last-child,
#testimonials-list .testimonials__block .main .description p:last-child {
  margin-bottom: 0;
}
#testimonials .testimonials__block .main .rating-result,
#testimonials-list .testimonials__block .main .rating-result {
  position: relative;
}
#testimonials .testimonials__block .main .rating-result span,
#testimonials-list .testimonials__block .main .rating-result span {
  padding: 0;
  /*   font-size: 25px; */
  margin: 0 1px;
  line-height: 1;
  color: #d9d9d9;
  text-shadow: 1px 1px #bbb;
}
#testimonials .testimonials__block .main .stars-active,
#testimonials-list .testimonials__block .main .stars-active {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#testimonials .testimonials__block .main .rating-result > span:before,
#testimonials-list .testimonials__block .main .rating-result > span:before {
  content: "";
  font-family: "russianrailicons";
}
#testimonials .testimonials__block .main .stars-active > span:before,
#testimonials-list .testimonials__block .main .stars-active > span:before {
  content: "";
  font-family: "russianrailicons";
}
#testimonials .testimonials__block .main .stars-active > span.active,
#testimonials-list .testimonials__block .main .stars-active > span.active {
  color: #ffb400;
}
#testimonials .testimonials__block .footer,
#testimonials-list .testimonials__block .footer {
  border-top: 1px solid #e0e0e0;
  padding-top: 15px;
}
#testimonials .testimonials__block .footer p,
#testimonials-list .testimonials__block .footer p {
  margin: 0;
}
#testimonials .testimonials__block .footer .date p,
#testimonials-list .testimonials__block .footer .date p {
  color: #6a6a6a;
}
#testimonials .testimonials__block .footer .name p,
#testimonials-list .testimonials__block .footer .name p {
  color: #4169e1;
}
@media (max-width: 767.98px) {
  #testimonials .testimonials__block,
#testimonials-list .testimonials__block {
    max-width: 100%;
  }
}

#testimonials .block-wrapper {
  position: relative;
  width: 100%;
}
#testimonials .block-wrapper .block-nav {
  position: absolute;
  width: 100%;
  height: 100%;
}
#testimonials .block-wrapper .block-nav .owl-prev,
#testimonials .block-wrapper .block-nav .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#testimonials .block-wrapper .block-nav .owl-prev span,
#testimonials .block-wrapper .block-nav .owl-next span {
  display: none;
}
#testimonials .block-wrapper .block-nav .owl-prev::before,
#testimonials .block-wrapper .block-nav .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials .block-wrapper .block-nav .owl-prev::before,
#testimonials .block-wrapper .block-nav .owl-next::before {
    font-size: 80px;
  }
}
#testimonials .block-wrapper .block-nav .owl-prev:hover::before,
#testimonials .block-wrapper .block-nav .owl-next:hover::before {
  color: #E63A1D;
}
#testimonials .block-wrapper .block-nav .owl-prev.disabled,
#testimonials .block-wrapper .block-nav .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials .block-wrapper .block-nav .owl-prev::before,
#testimonials .block-wrapper .block-nav .owl-next::before {
    padding: 0 10px;
  }
  #testimonials .block-wrapper .block-nav .owl-prev:hover,
#testimonials .block-wrapper .block-nav .owl-next:hover {
    opacity: 1;
  }
}
#testimonials .block-wrapper .block-nav .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #testimonials .block-wrapper .block-nav .owl-prev {
    left: 0;
  }
}
#testimonials .block-wrapper .block-nav .owl-prev::before {
  content: "‹";
}
#testimonials .block-wrapper .block-nav .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #testimonials .block-wrapper .block-nav .owl-next {
    right: 0;
  }
}
#testimonials .block-wrapper .block-nav .owl-next::before {
  content: "›";
}
#testimonials .block-wrapper .block-nav .owl-prev::before, #testimonials .block-wrapper .block-nav .owl-next::before {
  color: transparent;
}
#testimonials .block-wrapper .block-nav .owl-prev:focus::before, #testimonials .block-wrapper .block-nav .owl-next:focus::before {
  color: #e94e34;
}
#testimonials .block-wrapper:hover .block-nav .owl-prev::before, #testimonials .block-wrapper:hover .block-nav .owl-next::before {
  color: #E63A1D;
}

#testimonials-list .testimonials {
  position: relative;
  columns: 2;
  column-gap: 10px;
}
@media (max-width: 991.98px) {
  #testimonials-list .testimonials {
    columns: 1;
  }
}
#testimonials-list .testimonials__block {
  background: #fff;
  border: 1px solid #e4e4e4;
  padding: 40px 30px;
  box-sizing: border-box;
  border-radius: 3px;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
}
@media only screen and (max-width: 575.98px), (orientation: portrait) {
  #testimonials-list .testimonials__block {
    padding: 28px 30px 35px;
  }
}
#testimonials-list .testimonials__block a {
  color: inherit;
}
#testimonials-list .testimonials__block .main {
  flex-wrap: nowrap;
}
#testimonials-list .testimonials__block .main .quote {
  height: 0;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #testimonials-list .testimonials__block .main .quote {
    display: none;
  }
}
#testimonials-list .testimonials__block .main .quote:before {
  font-family: "russianrailicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  content: "";
  position: absolute;
  width: 48px;
  height: 48px;
  line-height: 48px;
  font-size: 42px;
  top: 0;
  left: 0;
  color: #4169e1;
}
#testimonials-list .testimonials__block .main .quote p {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  font-family: "Acumin Pro";
  font-size: 110px;
  font-weight: 700;
  line-height: 1;
  color: #4169e1;
  margin: 0;
  padding-right: 15px;
  box-sizing: border-box;
  opacity: 0;
}
#testimonials-list .testimonials__block .main .description {
  position: relative;
  padding-bottom: 15px;
}
#testimonials-list .testimonials__block .main .description p:first-child {
  margin-top: 0;
}
#testimonials-list .testimonials__block .main .description p:last-child {
  margin-bottom: 0;
}
#testimonials-list .testimonials__block .main .rating-result {
  position: relative;
}
#testimonials-list .testimonials__block .main .rating-result span {
  padding: 0;
  /*   font-size: 25px; */
  margin: 0 1px;
  line-height: 1;
  color: #d9d9d9;
  text-shadow: 1px 1px #bbb;
}
#testimonials-list .testimonials__block .main .stars-active {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
#testimonials-list .testimonials__block .main .rating-result > span:before {
  content: "";
  font-family: "russianrailicons";
}
#testimonials-list .testimonials__block .main .stars-active > span:before {
  content: "";
  font-family: "russianrailicons";
}
#testimonials-list .testimonials__block .main .stars-active > span.active {
  color: #ffb400;
}
#testimonials-list .testimonials__block .footer {
  border-top: 1px solid #e0e0e0;
  padding-top: 15px;
}
#testimonials-list .testimonials__block .footer p {
  margin: 0;
}
#testimonials-list .testimonials__block .footer .date p {
  color: #6a6a6a;
}
#testimonials-list .testimonials__block .footer .name p {
  color: #4169e1;
}
@media (max-width: 991.98px) {
  #testimonials-list .testimonials__block {
    width: 100%;
  }
}

#news {
  position: relative;
  overflow: hidden;
}
#news h2 {
  margin-bottom: 25px;
}
@media (max-width: 991.98px) {
  #news h2 {
    padding-bottom: 0;
  }
}
#news .news-wrapper {
  position: relative;
  width: 100%;
}
#news .news-wrapper .news-nav {
  position: absolute;
  width: 100%;
  height: 100%;
}
#news .news-wrapper .news-nav .owl-prev,
#news .news-wrapper .news-nav .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#news .news-wrapper .news-nav .owl-prev span,
#news .news-wrapper .news-nav .owl-next span {
  display: none;
}
#news .news-wrapper .news-nav .owl-prev::before,
#news .news-wrapper .news-nav .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #news .news-wrapper .news-nav .owl-prev::before,
#news .news-wrapper .news-nav .owl-next::before {
    font-size: 80px;
  }
}
#news .news-wrapper .news-nav .owl-prev:hover::before,
#news .news-wrapper .news-nav .owl-next:hover::before {
  color: #E63A1D;
}
#news .news-wrapper .news-nav .owl-prev.disabled,
#news .news-wrapper .news-nav .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #news .news-wrapper .news-nav .owl-prev::before,
#news .news-wrapper .news-nav .owl-next::before {
    padding: 0 10px;
  }
  #news .news-wrapper .news-nav .owl-prev:hover,
#news .news-wrapper .news-nav .owl-next:hover {
    opacity: 1;
  }
}
#news .news-wrapper .news-nav .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #news .news-wrapper .news-nav .owl-prev {
    left: 0;
  }
}
#news .news-wrapper .news-nav .owl-prev::before {
  content: "‹";
}
#news .news-wrapper .news-nav .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #news .news-wrapper .news-nav .owl-next {
    right: 0;
  }
}
#news .news-wrapper .news-nav .owl-next::before {
  content: "›";
}
#news .news-wrapper .news-nav .owl-prev::before, #news .news-wrapper .news-nav .owl-next::before {
  color: transparent;
}
#news .news-wrapper .news-nav .owl-prev:focus::before, #news .news-wrapper .news-nav .owl-next:focus::before {
  color: #e94e34;
}
#news .news-wrapper:hover .news-nav .owl-prev::before, #news .news-wrapper:hover .news-nav .owl-next::before {
  color: #E63A1D;
}
#news .news {
  box-sizing: border-box;
}
@media (max-width: 1320px) {
  #news .news {
    width: 80%;
    margin: 0 auto;
  }
}
@media (max-width: 767.98px) {
  #news .news {
    width: 100%;
  }
}
#news .news__block {
  width: auto;
  max-height: 430px;
}
@media (max-width: 991.98px) {
  #news .news__block {
    height: 350px;
    margin-right: 0;
  }
}
#news .news__block .description {
  min-height: 128px;
}
#news .news__block .description p::after {
  content: none;
}

/* ----- Kids -----*/
@keyframes go-left-right {
  /* назовём анимацию: "go-left-right" */
  from {
    background-position-x: 0px;
  }
  to {
    background-position-x: -1148px;
  }
}
/* Префикс для Chrome, Opera, Safari */
@-webkit-keyframes go-left-right {
  from {
    background-position-x: 0px;
  }
  to {
    background-position-x: -1148px;
  }
}
#kids {
  padding: 50px 0 55px;
}
#kids.inner {
  padding: 30px 0 55px;
}
#kids.inner .kids {
  border: 1px solid #e0e0e0;
  background-image: url("/assets/images/culture_for_kids_bg.png");
  background-repeat: repeat-x;
  background-position: bottom;
  animation: go-left-right 20s infinite linear;
  -webkit-animation: go-left-right 20s infinite linear;
  padding: 30px;
}
#kids.inner .kids img {
  width: 110px;
}
#kids.inner .kids p {
  font-family: "Literata", serif;
  font-size: 24px;
  line-height: 1.3;
  font-style: italic;
  margin: 0;
}
@media (max-width: 575.98px) {
  #kids.inner .kids p {
    font-size: 18px;
  }
}
#kids.inner .kids a {
  position: relative;
  background: none;
  width: auto;
  height: auto;
  color: #E63A1D;
  font-size: 18px;
  font-weight: 300;
  text-transform: inherit;
  margin-top: 5px;
  padding: 0;
}
#kids.inner .kids a:hover {
  color: #ef7e6b;
}
#kids.inner .kids a::after {
  position: absolute;
  content: "›";
  bottom: 0;
  left: auto;
  right: -16px;
  top: -3px;
  font-size: 30px;
  line-height: 20px;
}
#kids.inner .kids__content {
  padding-left: 35px;
  box-sizing: border-box;
}

#culture-for-kids .owl-prev,
#culture-for-kids .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
#culture-for-kids .owl-prev span,
#culture-for-kids .owl-next span {
  display: none;
}
#culture-for-kids .owl-prev::before,
#culture-for-kids .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #culture-for-kids .owl-prev::before,
#culture-for-kids .owl-next::before {
    font-size: 80px;
  }
}
#culture-for-kids .owl-prev:hover::before,
#culture-for-kids .owl-next:hover::before {
  color: #E63A1D;
}
#culture-for-kids .owl-prev.disabled,
#culture-for-kids .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  #culture-for-kids .owl-prev::before,
#culture-for-kids .owl-next::before {
    padding: 0 10px;
  }
  #culture-for-kids .owl-prev:hover,
#culture-for-kids .owl-next:hover {
    opacity: 1;
  }
}
#culture-for-kids .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #culture-for-kids .owl-prev {
    left: 0;
  }
}
#culture-for-kids .owl-prev::before {
  content: "‹";
}
#culture-for-kids .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  #culture-for-kids .owl-next {
    right: 0;
  }
}
#culture-for-kids .owl-next::before {
  content: "›";
}

.travel-line {
  border-top: 3px solid #AAAAAA;
  margin-top: 7px;
}
.travel-line:before, .travel-line:after {
  content: " ";
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 5px;
  border: 4px solid #AAAAAA;
  top: 4px;
}
.travel-line:before {
  left: 15px;
}
.travel-line:after {
  right: 15px;
}

.train-line {
  border: 1px solid #EEEEEE;
  padding: 12px 6px;
}
.train-line.active {
  z-index: 110;
  position: sticky;
  background: #F9CB54;
}
.train-line .input-group .btn {
  border: 1px solid #ced4da;
}
.train-line.active .train-info {
  color: #000;
}
.train-line.active .train-info .travel-line,
.train-line.active .train-info .travel-line:before,
.train-line.active .train-info .travel-line:after {
  border-color: #000;
}

.train-backdrop {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 100;
}

.train-num {
  font-size: 16px;
}
.train-num a {
  color: #555;
}

.train-time {
  font-size: 26px;
  line-height: 26px;
}

.class-price {
  font-size: 22px;
  line-height: 24px;
}

.train-route-name {
  font-size: 26px;
}

.train-route-date {
  font-size: 22px;
}

.seats-type .col-sm {
  border-left: 1px dotted #AAA;
  padding-top: 7px;
  padding-bottom: 7px;
}
.seats-type .col-sm:first-child {
  border-left: none;
}

.seats-class {
  border-bottom: 1px dotted #AAA;
  padding-top: 10px;
  padding-bottom: 10px;
}
.seats-class ul li {
  list-style: none;
}
.seats-class ul li a {
  border-bottom: 1px dotted #AAA;
}

.seats-content {
  background: #FFF;
  margin: 12px -6px -12px -6px;
  padding: 12px 6px;
}
.seats-content form {
  margin-bottom: 0;
}
.seats-content ul {
  margin-bottom: 0;
}
.seats-content h4,
.seats-content label {
  font-family: inherit;
  text-transform: inherit;
}
.seats-content img.tips {
  margin: 0 3px 3px 0;
}

#orderStep {
  position: relative;
  padding: 50px 0;
  background-color: #F5F5F5;
  border-bottom: 1px solid #EEE;
}
#orderStep ul.stepper {
  counter-reset: section;
  overflow-y: auto;
  overflow-x: hidden;
  margin: 0 -1.5rem;
}
#orderStep ul.stepper > li:not(:last-of-type) {
  margin-bottom: 0.625rem;
  -webkit-transition: margin-bottom 0.4s;
  -o-transition: margin-bottom 0.4s;
  transition: margin-bottom 0.4s;
}
#orderStep ul.stepper li a {
  padding: 0 1.5rem;
  text-align: center;
}
#orderStep .stepper-horizontal {
  position: relative;
  display: flex;
  justify-content: space-between;
}
#orderStep .stepper-horizontal > li:not(:last-of-type) {
  margin-bottom: 0 !important;
}
#orderStep .stepper-horizontal li {
  transition: 0.5s;
  display: flex;
  align-items: center;
  flex: 1;
  position: relative;
}
#orderStep li.active a .circle,
#orderStep ul.stepper li.completed a .circle {
  background-color: #4285f4 !important;
}
#orderStep ul.stepper li a .circle {
  display: inline-block;
  color: #fff;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.38);
  width: 1.75rem;
  height: 1.75rem;
  text-align: center;
  line-height: 1.7rem;
  margin-right: 0.5rem;
  font-size: inherit;
}
#orderStep ul.stepper li a .label {
  display: inline-block;
  color: rgba(0, 0, 0, 0.38);
  font-size: inherit;
}
#orderStep ul.stepper li.active a .label,
#orderStep ul.stepper li.completed a .label {
  font-weight: 600;
  color: rgba(0, 0, 0, 0.87);
  font-size: inherit;
}
#orderStep .danger-color, #orderStep ul.stepper li.warning a .circle {
  background-color: #ff3547 !important;
}
#orderStep ul.stepper li a .label {
  display: inline-block;
  color: rgba(0, 0, 0, 0.38);
}
#orderStep .stepper-horizontal li a .label {
  margin-top: 0.63rem;
}
#orderStep .stepper-horizontal li:not(:last-child):after {
  content: "";
  position: relative;
  flex: 1;
  margin: 0.5rem 0 0 0;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
}
#orderStep .stepper-horizontal li:not(:first-child):before {
  content: "";
  position: relative;
  flex: 1;
  margin: 0.5rem 0 0 0;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
}

#train_schedule {
  padding: 0;
}
#train_schedule .bookingStepTable {
  background-color: #e0e0e0;
  border-bottom: 1px solid #d9d9d9;
  border-top: 1px solid #d9d9d9;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.075);
  position: relative;
}
#train_schedule .bookingStepTable::before {
  background: #fff;
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: calc((100%) / 2);
  position: absolute;
}
#train_schedule .bookingStepTable .bookingStepTable-list {
  margin-bottom: 0;
}
#train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item {
  background-color: #e0e0e0;
  color: #6a6a6a;
  display: inline-block;
  padding: 0 25px 0 55px;
  position: relative;
}
#train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item p {
  font-size: 14px;
  line-height: 24px;
  font-weight: 500;
  margin: 0.5em 0;
}
#train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item:after, #train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item:before {
  left: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  z-index: 2;
}
#train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item:not(:last-child):after {
  border-color: rgba(136, 183, 213, 0);
  border-left-color: #e0e0e0;
  border-width: 20px;
  margin-top: -20px;
}
#train_schedule .bookingStepTable .bookingStepTable-list .bookingStepTable_item:not(:last-child):before {
  border-color: rgba(194, 225, 245, 0);
  border-left-color: #d9d9d9;
  border-width: 21px;
  margin-top: -21px;
}
#train_schedule .bookingStepTable .bookingStepTable-list .active {
  background-color: white;
  color: black;
}
#train_schedule .bookingStepTable .bookingStepTable-list .active:not(:last-child):after {
  border-left-color: white;
}

.trainSchedule .trainSchedule-header {
  text-align: center;
  color: #171717;
  background-color: #f0f0f0;
  border-bottom: 1px solid #e0e0e0;
}
.trainSchedule .trainSchedule-header .trainSchedule-timeDep, .trainSchedule .trainSchedule-header .trainSchedule-timeArr {
  color: black;
}
.trainSchedule .trainSchedule-header p {
  font-size: 14px;
  line-height: 24px;
  font-weight: 500;
  margin: 0.5em 0;
}
.trainSchedule .trainSchedule-header h3 {
  margin: 0;
}
.trainSchedule .trainSchedule-header .blue-line {
  background-color: #4169e1;
  border-radius: 3px 3px 0 0;
  color: white;
  border-bottom: none;
}
.trainSchedule .trainSchedule-header .blue-line .result {
  font-family: "Acumin Pro";
  font-size: 25px;
  line-height: 1;
  margin-right: 20px;
  margin: 0;
  text-align: left;
}
@media (max-width: 991.98px) {
  .trainSchedule .trainSchedule-header .blue-line .result {
    font-size: 18px;
  }
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-header .blue-line .result {
    font-size: 24px;
  }
}
.trainSchedule .trainSchedule-header .blue-line .passengers img {
  height: 16px;
  margin-top: -4px;
}
.trainSchedule .trainSchedule-header .blue-line .current-date, .trainSchedule .trainSchedule-header .blue-line .passengers {
  font-weight: bold;
  font-size: 20px;
}
.trainSchedule .trainSchedule-header .blue-line .current-date span, .trainSchedule .trainSchedule-header .blue-line .passengers span {
  font-weight: normal;
}
.trainSchedule .trainSchedule-header .blue-line .current-date i, .trainSchedule .trainSchedule-header .blue-line .passengers i {
  color: white;
  vertical-align: middle;
}
@media (max-width: 991.98px) {
  .trainSchedule .trainSchedule-header .blue-line .current-date, .trainSchedule .trainSchedule-header .blue-line .passengers {
    font-size: 18px;
  }
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-header .blue-line .current-date, .trainSchedule .trainSchedule-header .blue-line .passengers {
    font-size: 14px;
  }
}
.trainSchedule .trainSchedule-main {
  border-left: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-radius: 0 0 3px 3px;
}
.trainSchedule .trainSchedule-main.no-header {
  border-top: 1px solid #e0e0e0;
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-main {
    border-left: none;
    border-right: none;
    border-bottom: none;
  }
}
.trainSchedule .trainSchedule-main .tab-icons i {
  font-size: 28px;
  line-height: 20px;
}
.trainSchedule .trainSchedule-main ul {
  list-style: none;
}
.trainSchedule .trainSchedule-row {
  padding: 20px 15px;
}
.trainSchedule .trainSchedule-row .col-dep,
.trainSchedule .trainSchedule-row .col-arr {
  text-align: center;
}
.trainSchedule .trainSchedule-row:not(:last-child) {
  border-bottom: 1px solid #e0e0e0;
}
.trainSchedule .trainSchedule-name {
  color: #E63A1D;
  font-weight: bold;
  font-size: 26px;
  line-height: 1;
}
@media (max-width: 1199.98px) {
  .trainSchedule .trainSchedule-name {
    font-size: 24px;
  }
}
@media (max-width: 991.98px) {
  .trainSchedule .trainSchedule-name {
    font-size: 22px;
  }
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-name {
    font-size: 18px;
  }
}
.trainSchedule .trainSchedule-meta .trainSchedule_tips {
  cursor: pointer;
  font-size: 13px;
}
.trainSchedule .trainSchedule-meta .trainSchedule_tips:hover {
  color: #4169e1;
}
.trainSchedule .trainSchedule-meta .trainSchedule_tips:hover:not(:last-child):after {
  color: #6a6a6a;
}
@media (max-width: 991.98px) {
  .trainSchedule .trainSchedule-meta {
    color: #E63A1D;
  }
}
.trainSchedule .trainSchedule-timeDep, .trainSchedule .trainSchedule-timeArr {
  font: 30px/1 "Arimo", sans-serif;
  margin: 0;
}
@media (max-width: 1199.98px) {
  .trainSchedule .trainSchedule-timeDep, .trainSchedule .trainSchedule-timeArr {
    font-size: 26px;
  }
}
@media (max-width: 991.98px) {
  .trainSchedule .trainSchedule-timeDep, .trainSchedule .trainSchedule-timeArr {
    font-size: 22px;
  }
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-timeDep, .trainSchedule .trainSchedule-timeArr {
    font-size: 20px;
  }
}
.trainSchedule .trainSchedule-date-wrapper {
  position: relative;
  font-size: 13px;
  color: #171717;
  display: inline;
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-date-wrapper {
    font-size: 12px;
  }
}
.trainSchedule .trainSchedule-date-r {
  right: 0;
}
.trainSchedule .trainSchedule-date-l {
  left: 0;
}
.trainSchedule .lineWrapper {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: center;
}
.trainSchedule .lineWrapper .circle {
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid #8d8d8d;
  height: 10px;
  width: 10px;
}
.trainSchedule .lineWrapper .line {
  background: #4169e1;
  height: 2px;
  width: 84%;
}
.trainSchedule .trainSchedule-station {
  font-size: 13px;
  color: #6a6a6a;
}
@media (max-width: 1199.98px) {
  .trainSchedule .trainSchedule-station {
    font-size: 12px;
  }
}
.trainSchedule .trainSchedule-timeTravel {
  font-size: 13px;
  color: #171717;
  font-weight: bold;
}
.trainSchedule .days {
  position: absolute;
  right: 85%;
  top: -2px;
  width: 70px;
  padding: 2px 5px;
  color: #4169e1;
  font-weight: bold;
  font-size: 12px;
  right: 101%;
}
@media (min-width: 991.99px) and (max-width: 1199.98px) {
  .trainSchedule .days {
    width: 100%;
  }
}
.trainSchedule .trainSchedule-price {
  line-height: 1;
  font-weight: 600;
  font-size: 16px;
  color: #6a6a6a;
}
@media (max-width: 575.98px) {
  .trainSchedule .trainSchedule-price {
    font-size: 14px;
  }
}
.trainSchedule .trainSchedule-price .trainSchedule-totalPrice {
  font-size: 18px;
  color: #171717;
  font-weight: 600;
}
@media (max-width: 1199.98px) {
  .trainSchedule .trainSchedule-price .trainSchedule-totalPrice {
    font-size: 16px;
  }
}
.trainSchedule .trainSchedule-price .trainSchedule-totalPrice small {
  display: block;
  padding-bottom: 5px;
}

.search-alert {
  color: #171717;
  border: none;
}
.search-alert .input-group {
  max-width: 75%;
  margin: 0 auto;
}
@media (max-width: 767.98px) {
  .search-alert .input-group {
    max-width: 100%;
  }
}

#modifySearch .modal-content {
  max-width: 400px;
  border-radius: 3px;
}
@media (max-width: 767.98px) {
  #modifySearch .modal-content {
    max-width: 100%;
  }
}

.modify-search {
  width: 305px;
}
@media (max-width: 1199.98px) {
  .modify-search {
    width: 253px;
  }
}
@media (max-width: 991.98px) {
  .modify-search {
    width: 100%;
  }
}
.modify-search .btn {
  background-color: transparent;
  color: white;
  font-size: 15px;
  text-decoration: underline;
}
@media (max-width: 991.98px) {
  .modify-search .btn {
    font-size: 14px;
    padding-right: 0;
  }
}
.modify-search .btn:focus {
  outline: none;
}

.modify-search:focus {
  outline: none !important;
}

.modal-content {
  border-radius: 3px !important;
}

.modal-headerMsg {
  padding: 1rem 1rem 0;
  position: relative;
}

.modal-msg {
  padding: 0 1rem 2rem;
  position: relative;
}

.close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover {
  color: #E63A1D;
  text-decoration: none;
  opacity: 0.75;
  background-color: white;
}

.psgr-div {
  position: relative;
  width: 100%;
}
.psgr-div i {
  position: absolute;
  top: 50%;
  left: 6px;
  margin-top: -2px;
}
.psgr-div select::-ms-expand {
  display: none;
}
.psgr-div select {
  padding-left: 25px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.request-header {
  border-bottom: 1px dashed #b9b9b9;
}
.request-header .trainSchedule-name {
  color: #E63A1D;
  font-weight: bold;
  font-size: 22px;
  line-height: 1;
}
@media (max-width: 575.98px) {
  .request-header .trainSchedule-name {
    font-size: 18px;
  }
}
.request-header .trainSchedule-price {
  line-height: 1.6;
}

/* ----- Seats -----*/
.returnTrainBtn {
  background-color: transparent;
  color: #4169e1;
  max-width: 156px;
  font-size: 15px;
}
.returnTrainBtn:hover, .returnTrainBtn:focus, .returnTrainBtn:active {
  background-color: transparent;
  color: #4169e1;
  max-width: 156px;
  font-size: 15px;
  text-decoration: underline;
}

.seatsRow {
  padding: 0 !important;
}
@media (min-width: 767.99px) {
  .seatsRow {
    height: 86vh;
    padding-right: 0px !important;
    overflow-y: scroll;
  }
}

.seatsRow::-webkit-scrollbar {
  width: 4px;
  height: 5px;
}

.seatsRow::-webkit-scrollbar-track {
  background-color: #d9d9d9;
}

.seatsRow::-webkit-scrollbar-thumb {
  background-color: #6a6a6a;
}

.seatsRow::-webkit-scrollbar-thumb:active {
  background: #e0e0e0;
}

.tablinks {
  display: block;
  color: #171717;
  padding: 20px 16px 20px 35px;
  width: 100%;
  outline: none;
  text-align: left;
  cursor: pointer;
  transition: 0.3s;
}
@media (max-width: 767.98px) {
  .tablinks {
    padding: 20px 35px;
  }
}
.tablinks .tablinks-content {
  display: none;
}
.tablinks .tab-price .btnSelect {
  background-color: white;
  border: 1px solid #e2051b;
  color: #e2051b;
  padding: 10px;
  cursor: pointer;
}
.tablinks .error-info {
  margin: 15px 0;
}

.tablinks:not(:last-child) {
  border-bottom: 1px solid #e0e0e0;
}

.tablinks:not(.active):hover {
  background-color: #e0e0e0;
}

.tablinks.active .tablinks-content {
  display: block;
}
.tablinks.active .tab-name:before {
  transform: rotate(-90deg);
  left: -13px;
  top: 8px;
}
.tablinks.active .tab-left, .tablinks.active .tab-price {
  display: none;
}

.tab-name {
  font-size: 17px;
  color: #171717;
  font-weight: bold;
}

.tab-icons img {
  width: 23px;
  height: 23px;
}

.tab-arrow:before {
  position: absolute;
  width: 13px;
  height: 13px;
  font-family: "russianrailicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  content: "⮕";
  left: 0;
  top: 4px;
  transition: all 0.3s ease-in-out;
  color: #171717;
  transform: rotate(90deg);
}
@media (max-width: 767.98px) {
  .tab-arrow:before {
    left: -9px;
  }
}

.number-spinner .input-passenger {
  background-color: white;
  border: 1px solid #e0e0e0;
  padding: 0;
  max-width: 45px;
  min-width: 45px;
  z-index: 1;
}

/* Style the tab content */
.tabcontent {
  float: left;
  padding: 22px 0;
  width: 100%;
}
.tabcontent .owl-prev,
.tabcontent .owl-next {
  position: absolute;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  margin: auto;
  z-index: 9;
  border: 0;
}
.tabcontent .owl-prev span,
.tabcontent .owl-next span {
  display: none;
}
.tabcontent .owl-prev::before,
.tabcontent .owl-next::before {
  transition: all 0.3s ease-out, all 0.3s ease-out, auto;
  font-size: 180px;
  line-height: 0.2;
  font-weight: 300;
  color: #e4e4e4;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  .tabcontent .owl-prev::before,
.tabcontent .owl-next::before {
    font-size: 80px;
  }
}
.tabcontent .owl-prev:hover::before,
.tabcontent .owl-next:hover::before {
  color: #E63A1D;
}
.tabcontent .owl-prev.disabled,
.tabcontent .owl-next.disabled {
  display: none;
}
@media only screen and (max-width: 680px), (orientation: portrait) {
  .tabcontent .owl-prev::before,
.tabcontent .owl-next::before {
    padding: 0 10px;
  }
  .tabcontent .owl-prev:hover,
.tabcontent .owl-next:hover {
    opacity: 1;
  }
}
.tabcontent .owl-prev {
  left: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  .tabcontent .owl-prev {
    left: 0;
  }
}
.tabcontent .owl-prev::before {
  content: "‹";
}
.tabcontent .owl-next {
  right: -70px;
}
@media only screen and (max-width: 1320px), (orientation: portrait) {
  .tabcontent .owl-next {
    right: 0;
  }
}
.tabcontent .owl-next::before {
  content: "›";
}
.tabcontent .owl-prev {
  left: 0;
}
.tabcontent .owl-next {
  right: 0;
}

@media (max-width: 767.98px) {
  .priceWrapper {
    position: fixed;
    left: 15px;
    bottom: 0;
    box-shadow: 0 12px 36px 16px rgba(0, 0, 0, 0.24);
    z-index: 9;
    width: 100%;
    height: 110px;
    background-color: white;
  }
}

/* ----- Tours -----*/
.tour-block {
  position: relative;
}
.tour-block .tour-price {
  position: absolute;
  right: 0;
  border: none;
  text-align: center;
  padding-top: 9px;
  margin-top: 10px;
  width: 170px;
  height: 40px;
  z-index: 9;
}
.tour-block .tour-price:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  top: 0;
  border: 20px solid #4169e1;
  border-left: 20px solid transparent;
  z-index: -1;
}
.tour-block .tour-price:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 20px;
  top: 0;
  background-color: #4169e1;
  z-index: -1;
}
.tour-block .tour-price a {
  color: #fff;
}
.tour-block .tour-price a:hover {
  opacity: 0.8;
}

.nav-tabs {
  border-bottom: 1px solid #6d6d6d;
}
.nav-tabs .nav-link {
  border-color: #ffffff;
  color: #6d6d6d;
  margin-bottom: 5px;
  border-radius: 0.25rem;
}
.nav-tabs .nav-link.active {
  border-color: #F1AF9D;
  background: #F2B3A2;
  font-weight: bold;
  cursor: default;
  color: #000;
}
.nav-tabs .nav-link.active:hover {
  border-color: #F1AF9D;
  background: #F2B3A2;
  color: #000;
}
.nav-tabs .nav-link:hover {
  border-color: #ffffff;
  font-weight: bold;
}

.tour-day {
  border-left: 2px solid #DEDEDE;
  padding: 3px 0 3px 13px;
  margin-bottom: 20px;
}
.tour-day p {
  margin: 7px 0;
}

#tour .alert p:last-child {
  margin-bottom: 0;
}
#tour ul {
  margin-left: 20px;
}

#prices .price-table i {
  vertical-align: middle;
  color: #999;
}

/* ----- Visa -----*/
#visa .pricing {
  display: flex;
  width: 100%;
  justify-content: center;
  flex-wrap: wrap;
  padding: 30px 0;
}
#visa .pricing .pricing-box {
  height: 380px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #e0e0e0;
  align-items: center;
  flex-grow: 1;
}
@media (min-width: 768px) and (max-width: 1023px) {
  #visa .pricing .pricing-box {
    width: 50%;
    margin-bottom: 20px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) and (orientation: landscape) {
  #visa .pricing .pricing-box {
    width: 50%;
    margin-bottom: 20px;
  }
}
@media (min-width: 481px) and (max-width: 767px) {
  #visa .pricing .pricing-box {
    width: 50%;
    margin-bottom: 20px;
  }
}
@media (min-width: 320px) and (max-width: 480px) {
  #visa .pricing .pricing-box {
    width: 70%;
    margin-bottom: 20px;
  }
}
#visa .pricing .pricing-title {
  font-size: 18pt;
  line-height: 18px;
  font-weight: bold;
  text-transform: uppercase;
  padding: 30px;
}
#visa .pricing .pricing-price {
  font-size: 48pt;
  background-color: #e6e6e6;
  width: 100%;
}
#visa .pricing .pricing-price span {
  display: inline-block;
  vertical-align: top;
  margin: 7px 3px 0 0;
  font-size: 28px;
  font-weight: normal;
}
#visa .pricing .pricing-price .price-tenure {
  vertical-align: baseline;
  font-size: 20px;
  font-weight: normal;
  color: #999;
  margin: 0 0 0 3px;
}
#visa .pricing .pricing-features {
  padding: 20px 0 30px;
}
#visa .pricing .pricing-features ol,
#visa .pricing .pricing-features ul {
  margin: 0;
  padding: 0;
}
#visa .pricing .pricing-features ul {
  list-style: none;
}
#visa .pricing .button {
  background-color: #6a6a6a;
  width: 93%;
}
#visa .pricing .button:hover {
  background-color: #E63A1D;
}
#visa .pricing .bestPrice {
  background-color: #FFFFFF;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  z-index: 54;
}
#visa .pricing .bestPrice .pricing-title {
  padding: 0;
}
#visa .pricing .bestPrice P {
  margin-bottom: 30px;
}
@media (min-width: 1281px) {
  #visa .pricing .bestPrice {
    height: 410px;
    margin-top: -15px;
  }
}
@media (min-width: 1025px) and (max-width: 1280px) {
  #visa .pricing .bestPrice {
    height: 410px;
    margin-top: -15px;
  }
}
#visa .pricing .bestPrice .button {
  background-color: #E63A1D;
}
#visa .pricing .bestPrice .pricing-price {
  background-color: #4169e1;
  color: white;
}
#visa .pricing .bestPrice .price-tenure {
  color: white;
}
#visa .pricing-warning {
  border-style: solid;
  border-width: 1px;
  border-color: #d1d9f3;
  background-color: #dfe7ff;
  padding: 20px 30px;
  margin-bottom: 30px;
}

.applyingVisa .block img {
  height: 250px;
}

.fullVisa {
  background: #e0e0e0;
  border-top: 1px solid #e4e4e4;
  border-left: 1px solid #e4e4e4;
  border-right: 1px solid #e4e4e4;
  padding: 30px 30px;
  position: relative;
}
.fullVisa h2 {
  color: #E63A1D;
  text-align: center;
}
@media only screen and (max-width: 767.98px) {
  .fullVisa img {
    width: 100%;
  }
}
.fullVisa:after {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-top-color: #e0e0e0;
  border-width: 30px;
  margin-left: -30px;
  z-index: 99;
}

.fullVisa--blue {
  background-color: white;
  padding-top: 50px;
  border-top: none;
  border-bottom: 1px solid #e4e4e4;
  border-left: 1px solid #e4e4e4;
  border-right: 1px solid #e4e4e4;
}
@media only screen and (max-width: 575.98px) {
  .fullVisa--blue {
    border: none;
  }
}
.fullVisa--blue h2 {
  color: #4169e1;
}
.fullVisa--blue:after {
  content: none;
}

#vioForm .double_entry {
  display: none;
}

#booking .toggle .togglet, #booking .toggle .toggleta {
  padding: 0;
}
#booking .ticket-more ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 10px;
}
#booking .ticket-more ul li {
  display: block;
  background-color: #e0e0e0;
  font-size: 95%;
  font-family: "Courier New", Courier, monospace;
  width: 49%;
  margin-bottom: 15px;
  border-radius: 2px;
  padding: 15px;
}
@media (max-width: 575.98px) {
  #booking .ticket-more ul li {
    width: 100%;
  }
}
@media (max-width: 991.98px) {
  #booking .ticket-more ul li {
    width: 100%;
  }
}
@media (max-width: 575.98px) {
  #booking .ticket-more {
    padding: 0 10px !important;
  }
}

/*# sourceMappingURL=main.css.map */
