@font-face {
	font-family: 'Russo One';
	src: url('/tickets/assets/fonts/RussoOne-Regular.eot');
	src: local('Russo One'), local('RussoOne-Regular'),
		url('/tickets/assets/fonts/RussoOne-Regular.eot?#iefix') format('embedded-opentype'),
		url('/tickets/assets/fonts/RussoOne-Regular.woff2') format('woff2'),
		url('/tickets/assets/fonts/RussoOne-Regular.woff') format('woff'),
		url('/tickets/assets/fonts/RussoOne-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/tickets/assets/fonts/Montserrat-Regular.eot');
	src: local('Montserrat Regular'), local('Montserrat-Regular'),
		url('/tickets/assets/fonts/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
		url('/tickets/assets/fonts/Montserrat-Regular.woff2') format('woff2'),
		url('/tickets/assets/fonts/Montserrat-Regular.woff') format('woff'),
		url('/tickets/assets/fonts/Montserrat-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/tickets/assets/fonts/Montserrat-Italic.eot');
	src: local('Montserrat Italic'), local('Montserrat-Italic'),
		url('/tickets/assets/fonts/Montserrat-Italic.eot?#iefix') format('embedded-opentype'),
		url('/tickets/assets/fonts/Montserrat-Italic.woff2') format('woff2'),
		url('/tickets/assets/fonts/Montserrat-Italic.woff') format('woff'),
		url('/tickets/assets/fonts/Montserrat-Italic.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}





html,
body {
	padding: 0px;
	margin: 0px;
	width: 100%;
	height: 100%;
	font-family: 'Russo One', sans-serif;
	color: #292929;
	position: relative;

}

.empty {
	height: 416px;
	width: 100%;
}

.wrapper {
	width: 100%;
	min-height: 100%;

}

.header {
	width: 1170px;
	margin: 0 auto;
	position: relative;
}

.header:after {
	content: '';
	display: block;
	clear: both;
}

.login_button {
	width: 185px;
	box-sizing: border-box;
	height: 40px;
	background: #ed111f url('../images/login.svg') 10px center no-repeat;
	background-size: 23px auto;
	float: right;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 40px;
	padding-left: 43px;
	cursor: pointer;
	margin-top: 23px;
	margin-left: 50px;
	color: #fff;
	transition: .3s;
	text-decoration: none;
	border-radius: 5px;
}

.login_button:hover {
	background-color: #b8151f;
}

.slide {
	width: 100%;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: cover;
}

/* .unsupported_webp .slide {
	background-image: url('../images/banner.jpg')
}

.supported_webp .slide {
	background-image: url('../images/banner.webp')
}

@media (max-width: 768px) {
	.unsupported_webp .slide {
		background-image: url('../images/banner_768_500.jpg')
	}

	.supported_webp .slide {
		background-image: url('../images/banner_768_500.webp')
	}
} */

.slide_inside {
	/* width: 1170px; */
	width: 1000px;
	margin: 0 auto;

	text-align: center;
	color: white;

}

.slide_inside p {
	margin: 0px;
	padding: 0px;
	font-weight: normal;
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	line-height: 28px;
}

.slide_fromto_block {
	width: 300px;
	height: 40px;
	margin: 0 auto;
	border: 1px solid #ed111f;
	margin-top: 55px;
	font-size: 14px;
	line-height: 40px;
}

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

.slide_fromto1,
.slide_fromto2 {
	width: 50%;
	height: 100%;
	float: left;
	font-family: 'Montserrat', sans-serif;
	cursor: pointer;
}

.slide_fromto1.active,
.slide_fromto2.active {
	background-color: #ed111f;
}

.slide_calendar_block {
	width: 927px;
	margin: 0 auto;
	margin-top: 35px;
	padding-bottom: 161px;
}

.slide_calendar_bl {
	width: 240px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	float: left;
	margin-right: 1px;
}

.slide_calendar_caption {
	text-align: left;
	padding-left: 12px;
	padding-bottom: 10px;
}

.slide_tcal {
	width: 200px;
	height: 50px;
	border: none;
	outline: none;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	padding-left: 40px;
}

.slide_tcal.tc1,
.slide_tcal.tc2 {
	background: url('../images/placeholder1.png') white 12px center no-repeat;
}

.slide_tcal.tc3 {
	background: url('../images/placeholder2.png') white 12px center no-repeat;
}

.search_button {
	width: 200px;
	height: 52px;
	color: white;
	text-transform: uppercase;
	background-color: #ed111f !important;
	float: left;
	background: url('../images/icon_search.png') 25px center no-repeat;
	border: none;
	cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	padding-left: 30px;
	outline: none;
	margin-top: 28px;
	transition: .3s;
}

.search_button:hover {
	background-color: #b8151f !important;
}

h1 {
	font-size: 60px;
	text-transform: uppercase;
	color: #fff;
	text-align: center;
	font-weight: normal;
	padding-bottom: 18px;
	margin-bottom: 0px;
	margin-top: 0px;
	padding-top: 60px;
}

h2 {
	font-size: 36px;
	font-family: 'Russo One', sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	padding-top: 0px;
	margin-top: 0px;
	padding: 0px;
	margin-bottom: 21px;
}

h2.red {
	color: #ed111f;
}

h2.blue {
	color: #17aad6;
}

h2.green {
	color: #16a75b;
}

h3 {
	font-size: 24px;
	font-family: 'Russo One', sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	padding-top: 0px;
	margin-top: 21px;
	padding: 0px;
	margin-bottom: 21px;
}

h3.white {
	color: #fff;
}

.lang_block {
	float: right;
}

.lang_icons {
	width: 30px;
	height: 30px;
	background: url('../images/lang_icons.png') left top no-repeat;
	display: block;
	float: right;
	margin-top: 30px;
	background-position-y: -30px;
	margin-right: 20px;
}

.lang_icons:last-of-type {}

.lang_icons:first-of-type {
	margin-right: 0px;
}

.lang_icons:hover,
.lang_icons.active {
	background-position-y: 0px !important;
}

.lang_icons.lang_ru {
	background-position-x: 0px;
}

.lang_icons.lang_en {
	background-position-x: -50px;
}

.lang_icons.lang_de {
	background-position-x: -100px;
}

.lang_icons.lang_zh {
	background-position-x: -150px;
}


.content {
	width: 950px;
	margin: 0 auto;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	padding-top: 55px;
	padding-bottom: 50px;
}

.content p {
	line-height: 24px;
	padding: 0px !important;
	margin: 12px 0px;
	text-align: justify;
}

.bg_gray {
	height: 410px;
	width: 100%;
	background: #fafafa url('../images/bg_gray.jpg') left bottom repeat-x;
	padding-top: 70px;
	overflow: hidden;
	padding-bottom: 50px;
}

.bg_gray_content {
	width: 778px;
	background: url('../images/train_and_ticket.png') left 20px no-repeat;
	height: 100%;
	margin: 0 auto;
	padding-left: 392px;
	overflow: hidden;
}

.bg_gray_content p {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 24px;
	margin: 12px 0px;
	text-align: justify;

}

.youtube_block {
	width: 1170px;
	margin: 0 auto;
	overflow: hidden;
	padding-bottom: 80px;
	padding-top: 80px;
}

.youtube_block h3 {
	display: block;
	line-height: 33px;
	height: 75px;

}

.youtube_b1 {
	width: 551px;
	padding-right: 34px;
}

.youtube_b2 {
	width: 551px;
	padding-left: 34px;
}

.youtube_b1,
.youtube_b2 {

	float: left;
}

.youtube_full_frame {
	width: 100%;
	border: 0;
}

.tickets_block {
	background-color: #292929;
	width: 100%;
	overflow: hidden;
}

.tickets_block .heading {
	margin-top: 100px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.tickets_block .heading h2 {
	font-size: 36px;
	line-height: 1;
	margin: 0;
}

.tickets_block .heading:first-child {
	margin-top: 0;
}


.tickets_block_inside {
	width: 1170px;
	margin: 0 auto;
	overflow: hidden;
	padding-top: 70px;
	padding-bottom: 80px;
}

.tickets_city_list {
	margin: 22px 0 0;
	list-style: none;
	padding: 0px;
	font-family: 'Montserrat', sans-serif;
}

.tickets_city_list li a {
	color: #25abd4;
	font-size: 14px;
	line-height: 24px;
	text-decoration: none;
	transition: .3s;
}

.tickets_city_list li a:hover {
	color: #fff;
}

.tickets_block_list_wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.tickets_block_list {
	margin-top: 70px;
}

.tickets_block_list h3 {
	margin: 0;
	font-size: 20px;
}



.aviatickets_block {
	width: 100%;
	overflow: hidden;
	background: url('../images/bg_gray2.jpg') left bottom repeat-x;

}

.aviatickets_block_inside {
	width: 1170px;
	margin: 0 auto;
	padding-bottom: 80px;
	padding-top: 70px;
	overflow: hidden;
}

.tickets_block h2,
.aviatickets_block h2 {
	padding-top: 10px;
}

.aviatickets_b1,
.aviatickets_b2,
.aviatickets_b3 {
	float: left;
	width: 31%;
	margin-top: 40px;
}

.aviatickets_b1 {
	float: left;
}

.aviatickets_b2 {
	margin-left: 40px;

}

.aviatickets_b3 {
	margin-right: 0px;
	float: right;
}

.hotels_block {
	width: 1170px;
	margin: 0 auto;
	margin-bottom: 80px;
}

.hotels_block h2 {
	padding-top: 80px;
	padding-bottom: 40px;
}


.footer {
	margin-top: -416px;
	min-height: 416px;
}

.footer_up {
	background-color: #2c2d2d;
	height: 140px;
	width: 100%;
}

.footer_up_inside {
	width: 1170px;
	height: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.footer_up.white {
	background: #f7f7f7;
}

.footer_down {
	background-color: #faf9f9;

	width: 100%;
	overflow: hidden;
	padding-bottom: 30px;
}

.footer_down_inside {

	width: 1170px;
	margin: 0 auto;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: normal;
}

.logo_footer {
	margin-top: 40px;
}

.footer_up_inside a {
	border-radius: 8px;
}



.footer_down_left .footer_content p {
    font-size: 10px;
    line-height: 1.4;
}
.footer_down_left {
	width: 53%;
	height: 100%;
	padding-top: 40px;
	font-size: 14px;
	float: left;
}

.footer_down_right {
	float: right;
	width: 31%;
	color: #969696;
	font-size: 14px;
	padding-top: 25px;
	line-height: 24px;
}

.footer_down_left p {
	line-height: 24px;
	padding-top: 0px;
	margin-top: 10px;
}

.footer_down_left a {
	color: #1164ed;
	font-size: 14px;
}

.footer_down_left a:hover {
	text-decoration: none;
}

.footer_email {
	/* text-transform: uppercase; */
	background: url('../images/icon_email.png') left 5px no-repeat;
	padding-left: 24px;
	margin-bottom: 0px;
}

.footer_phone {
	background: url('../images/icon_phone.png') left 5px no-repeat;
	padding-left: 24px;
	margin-bottom: 0px;
}

.footer_email a,
.footer_phone a {
	color: #000;
	text-decoration: none;
}

.footer_email a:hover,
.footer_phone a:hover {
	text-decoration: underline;
}

/* .footer_email span {
	color: #ed111f;
} */
.footer_phone {
	margin-top: 0px;
}


.places_wrapper {
	margin: 0 auto;
	width: 240px;
	position: relative;


}

.places_wrapper ul {
	list-style: none;
	background-color: #fff;
	margin: 0px;
	padding: 0px;
	width: 238px;
	position: absolute;
	top: 53px;
	left: 0px;
	z-index: 9999;
	border: 1px solid #ccc;
}

.places_wrapper ul li a {
	display: inline-block;
	padding: 10px 10px;
	height: auto;
	width: calc(100% - 20px);
	text-transform: uppercase;
	text-decoration: none;
	text-align: left;
	color: #292929;
}

.places_wrapper ul li a:hover {
	background-color: #eee;
	color: #ed111f;
}

.places_tc1_ajax {}

.error_input {
	background-color: #fae3e1 !important;
}

.ajax_active {
	text-indent: -9999px;
	background: url('../images/ajax-loader.gif') center center no-repeat;
}

.datepicker--day-name {
	color: #cd2026 !important;
}

.datepicker--cell.-current- {
	color: #000 !important;
	border: 1px solid black !important;
}

.datepicker--cell.-selected-,
.datepicker--cell.-selected-.-current- {
	color: white !important;
	background-color: #ed111f !important;
	border: none !important;
}

.datepickers-container {
	font-size: 14px !important;
}


.header_email {
	float: right;
	padding-top: 35px;
	margin-right: 30px;
}

.header_email a {
	color: #444;
	text-decoration: none;
}

.header .menu {
	float: right;
	padding-top: 35px;
	margin-right: 70px;
}

.header .menu a {
	font-size: 14px;
	color: #17aad6;
	text-decoration: none;
	margin-right: 15px;
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
}

@media(max-width: 1000px) {
	.header .menu a {
		margin-right: 5px;
	}
}

.header .menu a:last-child {
	margin-right: 0;
}

@media (max-width: 1024px) {
	.header .menu {
		margin-right: 15px;
	}

	.header_email {
		display: none;
	}
}

@media (max-width: 750px) {
	.header .menu {
		display: none;
	}
}

.bottom_copy {
	padding: 15px;
	font-size: 14px;
	font-family: 'Montserrat', sans-serif;
}

.bottom_copy .container {
	padding: 0;
	max-width: 1170px;
	margin: 0 auto;
}

.socials {
	margin: 0;
	text-align: right;
	font-size: 0;
}

.socials a {
	display: inline-block;
	width: 30px;
	height: 30px;
	-webkit-background-size: cover;
	background-size: cover;
	border-radius: 50%;
	background-position: center;
	transition: .3s;
	opacity: .8;
	margin-left: 10px;

}

.socials a:hover {
	opacity: 1;
	box-shadow: 0 0 10px rgba(0, 0, 0, .5);
}

.socials .vk {
	background-image: url(../images/i_vk.png?v1)
}

.socials .twitter {
	background-image: url(../images/i_twitter.png?v1)
}

.socials .facebook {
	background-image: url(../images/i_facebook.png?v1)
}

.socials .instagram {
	background-image: url(../images/i_instagram.png?v1)
}

.socials .youtube {
	background-image: url(../images/i_youtube.png?v1)
}
.socials .telegram {
	background-image: url(../images/telegram.svg)
}

.footer_down_right .text {
	margin-top: 70px;
}


.video_wrap {
	padding-bottom: 56.25%;
	width: 100%;
	-webkit-background-size: cover;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	cursor: pointer;
}

.video_wrap:before {
	background: url(../images/youtube.svg) center no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 68px;
	height: 48px;
	margin-left: -34px;
	margin-top: -24px;

}

.video_wrap:hover:before {
	background-image: url(../images/youtube_red.svg);
}

.video_wrap .youtube-player,
.video_wrap iframe {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	border: 0;
	width: 100%;
	height: 100%;
}




















.places_wrapper {
	margin: 0px;
	float: left;
	margin-right: 0px;
	width: auto;
}

.places_tc1_ajax ul,
.places_tc2_ajax ul {
	top: 70px;

}

.top_search {
	min-height: 90px;
	overflow: visible;
}

.places_tc1_ajax a,
.places_tc2_ajax a {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
}

.ajax_active {
	text-indent: -9999px;
	background: url('/tickets/images/ajax-loader.gif') center center no-repeat !important;
}

.ajax-loader-small {
	width: 16px;
	height: 16px;
	background: url('/tickets/images/ajax-loader-small.gif') left top no-repeat;
	float: right;
	margin-right: 20px;
}

@media screen and (max-width: 860px) {
	.places_wrapper {
		margin: 0 auto;
		width: 100%;
	}

	.top_search {
		min-height: 300px;
	}
}





.faq_list {
	margin: 50px 0;
}

.faq_list .faq {
	padding: 20px;
	border-bottom: 1px solid #ddd;
}

.faq_list .title {
	font-weight: bold;
	font-size: 16px;
	color: #333;
	text-decoration: none;
	transition: .3s;
}

.faq_list .title:hover {
	color: #ed111f;
	text-decoration: underline;
}

.faq_list .text {
	font-size: 14px;
	line-height: 1.5;
	padding-top: 20px;
	display: none;
}



.section_subscribe {
	padding: 50px 0 20px;
	background: #2c2d2d;
	border-bottom: 1px solid #fff;
	color: #fff;
}

.section_subscribe .form-in {
	width: 600px;
	margin: 0 auto;
}

.section_subscribe .form-in:after {
	content: '';
	display: block;
	overflow: hidden;
	clear: both;
}

.section_subscribe .title {
	font-size: 24px;
	text-align: center;
	margin-bottom: 25px;
	line-height: 30px;
}

.section_subscribe .form-control {
	width: calc(50% - 10px);
	float: left;
	height: 40px;
	padding: 10px 20px;
	box-sizing: border-box;
	border: 0;
	border-radius: 5px;
	background: #fff;
}

.section_subscribe .btn {
	width: calc(50% - 10px);
	float: right;
	background: #ed111f;
	border: 0;
	text-align: center;
	color: #FFF;
	height: 40px;
	line-height: 40px;
	padding: 0;
	transition: .3s;
	cursor: pointer;
	margin: 0 0 0 20px;
	border-radius: 5px;
}

.section_subscribe .btn:hover {
	background: #b8151f;
}

.section_subscribe .policy {
	margin-top: 25px;
	font-size: 18px;
	font-family: 'Montserrat', sans-serif;
}

.section_subscribe .policy a {
	color: inherit;
}

.section_subscribe .policy a:hover {
	text-decoration: none;
}

.section_subscribe .error-msg {
	color: #b8151f;
	font-size: 18px;
	line-height: 20px;
	margin-top: 10px;
	height: 20px;
}

.section_subscribe.success {
	padding: 107px 0;
}

.section_subscribe.success .title {
	margin: 0;
}

@media (max-width: 640px) {
	.section_subscribe .form-in {
		width: auto;
	}

	.section_subscribe .form-control {
		width: 100%;
		display: block;
		float: none;
	}

	.section_subscribe .btn {
		float: none;
		width: 100%;
		display: block;
		margin: 15px 0 0;
	}
}


.top_search_widget #ufs-railway-app {
	margin: 0;
	padding: 0;
	min-height: 0;
}
#ufs-railway-app {
    max-width: 100%;
	width: 100%;
	padding: 0 15px;
    box-sizing: border-box;
}

.top_search_widget {
	background: #212839;
}

.top_search_widget .container {
	width: 1170px;
	max-width: 100%;
	margin: 0 auto;
}


/* .header .logo {
    float: left;
}

.header .menu {
    width: 340px;
    text-align: center;
    margin: 0 auto;
    float: none;
} */


.footer .paymethods {
	clear: both;
	padding-top: 40px;
}

.footer .paymethods .title {
	font-size: 16px;
	font-weight: bold;
}

.footer .paymethods .logos {
	margin-top: 10px;
	font-size: 0;
}

.footer .paymethods .payment_logo {
	height: 45px;
	margin-right: 8px;
	border-radius: 4px;
	background: #f0f0f0;
	font-size: 0;
	display: inline-block;
	vertical-align: middle;
	padding: 0 7px;
	margin-bottom: 8px;
}

.footer .paymethods .payment_logo:last-child {
	margin-right: 0;
}

.footer .paymethods .payment_logo:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.footer .paymethods img {
	display: inline-block;
	vertical-align: middle;
	height: 22px;
	margin-right: 15px;
}

.footer .paymethods img.l1 {
	height: 18px;
}

.footer .paymethods img.l4 {
	height: 28px;
	margin-top: -4px;
}

.footer .paymethods img.l5 {
	height: 18px;
}

.footer .paymethods img.l6 {
	margin-bottom: -1px;
}

.footer .paymethods img.l7 {
	height: 28px;
	margin-bottom: -5px;
}

.footer .paymethods img:last-child {
	margin-right: 0;
}


.breadcrumbs {
	padding: 0;
	list-style-type: none;
	margin-left: 0;
	margin-right: 0;
}

.breadcrumbs li {
	display: inline-block;
}

.breadcrumbs li:after {
	content: '>';
	display: inline-block;
	margin: 0 8px;
}

.breadcrumbs li:last-child a {
	text-decoration: none;
}

.breadcrumbs li:last-child:after {
	content: '';
	display: none;
}



.yandex_copy {
	margin-top: 50px;
}

.yandex_copy iframe {
	width: 100% !important;
}


.header .logo {
	margin: 10px 0;
	width: 75px;
}

.footer_up .logo_footer,
.footer .logo_footer {
	margin: 40px 0 0;
	height: 59px;
}


.logo.desktop {
	display: inline-block;
}

.logo.mob {
	display: none;
}

@media (max-width: 450px) {
	.logo.desktop {
		display: none;
	}

	.logo.mob {
		display: inline-block;
		height: 60px;
		margin: 10px 0 5px;
		width: auto;
	}
}


.buy_button.hidden {
	display: none;
}

.add_wrap_block {
	margin: 70px auto;
	max-width: 1170px;
}


.section_why_we_on_main {
	padding: 60px 0 70px;
	background: #f7f7f7;
	font-family: Montserrat, sans-serif;
}

.section_why_we_on_main .section_why_we {
	margin: 0;
}

.section_why_we {
	margin-top: 40px;
}

.section_why_we h2 {
	font-size: 36px;
}

.section_why_we ul {
	margin: 90px 0 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
}

.section_why_we ul li {
	width: 50%;
	margin: 0;
	font-size: 0;
	padding-right: 10px;
	box-sizing: border-box;
	padding: 0 35px;
}

.section_why_we ul li:nth-child(1) {
	border-right: 1px solid #e4e4e4;
	border-bottom: 1px solid #e4e4e4;
	padding-bottom: 35px;
}

.section_why_we ul li:nth-child(2) {
	border-bottom: 1px solid #e4e4e4;
	padding-bottom: 35px;
}

.section_why_we ul li:nth-child(3) {
	border-right: 1px solid #e4e4e4;
	padding-top: 35px;
}

.section_why_we ul li:nth-child(4) {
	padding-top: 35px;
}

.section_why_we .icon {
	width: 110px;
	height: 80px;
	display: inline-block;
	vertical-align: middle;
	background-position: left center;
	background-repeat: no-repeat;
}

.section_why_we .icon.i1 {
	background-image: url(/tickets/images/why_we_1.svg);
}

.section_why_we .icon.i2 {
	background-image: url(/tickets/images/why_we_2.svg);
}

.section_why_we .icon.i3 {
	background-image: url(/tickets/images/why_we_3.svg);
}

.section_why_we .icon.i4 {
	background-image: url(/tickets/images/why_we_4.svg);
}

.section_why_we .name {
	width: calc(100% - 120px);
	font-size: 24px;
	display: inline-block;
	vertical-align: middle;
	font-family: "Russo One", sans-serif;
	color: #ea0028;
}

.section_why_we .name span {
	font-size: 24px;
}


.section_why_we .text {
	margin-top: 15px;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.375;
}

@media (max-width: 768px) {
	.section_why_we_on_main {
		padding-bottom: 30px;
	}

	.section_why_we ul {
		margin-top: 30px;
	}
}

/** other_trains **/
.other_trains {
	margin-top: 35px;
}

.other_trains:after {
	content: '';
	display: block;
	clear: both;
}

.other_trains h2 {
	font-size: 24px;
}


.other_trains .train_count {
	margin-top: 0;
	padding-top: 0;
	background-position: left 12px;
}

.other_trains .route_block {
	width: 100%;
}

.route_block.suburban_route {
	padding: 20px;
}
.route_block.suburban_route .route_list {
	width: 50%;
	float: left;
}
.route_block.suburban_route .route_blocks {
	 float: left;
	 width: 50%;
	 margin: -35px 0 0;
}

@media (max-width: 1090px) {
	.route_block.suburban_route .route_list {
		width: 100%;
		float: none;
	}
	.route_block.suburban_route .route_blocks {
		float: none;
		width: 100%;
		margin: -10px 0 0;
	}
}


.other_trains .more_trains {
	float: right;
	width: 210px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: #ea0028;
	text-decoration: none;
	color: #fff;
	font-size: 16px;
	margin-top: 30px;
	margin-right: 0;
	transition: .3s;
	border-radius: 5px;
}

.other_trains .more_trains:hover {
	background-color: #b8151f;
}

.faq_blocks {}

.faq_blocks .faq_block {
	border: 1px solid #eee;
	border-top: 0;
	padding: 35px 10px;
	font-size: 16px;
	line-height: 1.875;
	display: block;
	color: #000;
	text-decoration: none;
}

.faq_blocks .faq_block:hover {
	color: #ea0028;
}

.faq_blocks .all_faq_block {
	padding: 30px 40px;
	border: 1px solid #eee;
	border-top: 0;
}

.faq_blocks .all_faq_block .all_faq {
	font-size: 16px;
	line-height: 1.125;
	text-decoration: none;
	background: #1966ea;
	display: block;
	padding: 14px 10px;
	color: #fff;
	text-align: center;
	transition: .3s;
	border-radius: 5px;
}

.faq_blocks .all_faq_block .all_faq:hover {
	background: #0744ac;
}


/** Отзывы **/

.section_reviews {
	margin-top: 40px;
	padding-right: 0;

}

.section_reviews h3 {
	font-size: 24px;
}

.section_reviews .reviews {}

.section_reviews .review {
	margin-top: 24px;
	padding-left: 46px;
	background: url(/tickets/images/user.png) left top no-repeat;
	color: #000;
	font-size: 16px;
	line-height: 1.875;
	font-weight: 200;
}

.section_reviews .review .name {
	height: 28px;
	line-height: 28px;
	font-size: 18px;
	font-weight: bold;
}

.section_reviews .review .text {}

.section_reviews .review .date {
	color: #969696;
}

.section_reviews #all_reviews {
	display: none;
}

.section_reviews .open_all_reviews {
	margin-top: 24px;
	display: inline-block;
	margin-left: 46px;
	color: #1966ea;
	font-size: 16px;
	font-weight: normal;
}

.section_reviews .open_all_reviews:hover {
	text-decoration: none;
}

.section_reviews .review_form_wrap {
	margin-top: 30px;
}

.section_reviews .open_review_form {
	float: right;
	width: 210px;
	height: 50px;
	text-align: center;
	line-height: 50px;
	color: #fff;
	text-decoration: none;
	background: #ea0028;
	transition: .3s;
	font-size: 16px;
	border-radius: 5px;
}

.section_reviews .open_review_form:hover {
	background-color: #b8151f;
}

.section_reviews .clear {
	clear: both;
}

.section_reviews .review_form {
	max-width: 530px;
	margin: 50px auto 0;
	display: none;
}

.section_reviews .alert-success,
.section_reviews .review_form .success {
	font-family: 'Russo One', sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	font-size: 16px;
	margin-bottom: 24px;
	text-align: center;
	color: #06af61;
}


.section_reviews .alert-error,
.section_reviews .review_form .error {
	color: #ea0028;
	margin-bottom: 15px;
}

.section_reviews .review_form.open {
	display: block;
}

.section_reviews .review_form .title {
	font-family: 'Russo One', sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	font-size: 16px;
	margin-bottom: 24px;
	text-align: center;
}

.section_reviews .review_form .textfield,
.section_reviews .review_form .textarea {
	height: 46px;
	border: 1px solid #ccc;
	padding: 8px 20px;
	line-height: 28px;
	font-size: 16px;
	font-weight: 200;
	display: block;
	width: 100%;
	margin: 10px 0 0;
	box-sizing: border-box;
	transition: .3s;
	border-radius: 5px;
}

.section_reviews .review_form .textfield::placeholder,
.section_reviews .review_form .textarea::placeholder {
	font-family: 'Montserrat', sans-serif;
	color: #969696;
	opacity: 1;
	transition: .3s;
}

.section_reviews .review_form .textfield:focus::placeholder,
.section_reviews .review_form .textarea:focus::placeholder {
	opacity: 0;
}

.section_reviews .review_form .textfield {}

.section_reviews .review_form .textarea {
	resize: vertical;
	height: 123px;
}

.section_reviews .review_form .buttons {
	margin-top: 10px;
}

.section_reviews .review_form .g-recaptcha {
	float: left;
}

.section_reviews .review_form .send {
	float: right;
	margin-top: 25px;
	width: 210px;
	height: 50px;
	margin-bottom: 10px;
	text-align: center;
	line-height: 50px;
	color: #fff;
	text-decoration: none;
	background: #ea0028;
	transition: .3s;
	font-size: 16px;
	border: 0;
	padding: 0;
	outline: 0;
	cursor: pointer;
	border-radius: 5px;
}

.section_reviews .review_form .send:hover {
	background-color: #b8151f;
}

.menu_toggle {
	display: none;
}

.inner_container blockquote {
	margin: 0 0 0 40px;
	padding: 20px 40px 20px 40px;
	border-left: 4px solid #eee;
}

.inner_container blockquote p:first-child {
	padding-top: 0;
	margin-top: 0;
}

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

.inner_container table {
    width: 100%;
    border-collapse: collapse;
    margin: 14px 0 25px;
}

.inner_container table th {
    background: #f9f9f9;
	color: #555;
}
.inner_container table td,
.inner_container table th {
    border: 1px solid #e4e4e4;
    padding: 10px;
    text-align: left;
}

.red_btn {
	height: 40px;
	background: #ed111f;
	float: right;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 40px;
	padding: 0 10px;
	cursor: pointer;
	color: #fff;
	transition: .3s;
	text-decoration: none;
}

.sidebar_paymethods {}

.sidebar_paymethods .title {
	background: rgb(255, 255, 255);
	background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(240, 240, 240, 1) 50%);
	line-height: 16px;
	padding: 20px 12px 12px;
}

.sidebar_paymethods .logos {
	border: 1px solid #eee;
	border-top: 0;
	padding: 15px 10px 5px;
	font-size: 16px;
	line-height: 1.875;
	display: block;
	color: #000;
	text-decoration: none;
}

.sidebar_paymethods .payment_logo {
	height: 45px;
	margin-right: 8px;
	border-radius: 4px;
	background: #f0f0f0;
	font-size: 0;
	display: inline-block;
	vertical-align: middle;
	padding: 0 7px;
	margin-bottom: 8px;
}

.sidebar_paymethods .payment_logo:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.sidebar_paymethods .payment_logo img {
	display: inline-block;
	vertical-align: middle;
	height: 28px !important;
}

.content_wrap {
	margin-top: 50px;
}

.inner_left .content_wrap h2 {
	margin: 0;
}

.inner_left .content_wrap p {
	margin: 20px 0 0;
	padding: 0 !important;
}



.trains_sort {
	height: 40px;
	float: right;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	position: relative;
	z-index: 10;
}

.trains_sort .current {
	line-height: 40px;
	padding: 0 30px 0 10px;
	cursor: pointer;
	color: #fff;
	transition: .3s;
	background: #ed111f;
	position: relative;
	width: 175px;
	box-sizing: border-box;
    border-radius: 5px;
}

.trains_sort .current:after {
	content: '';
	position: absolute;
	right: 10px;
	top: 14px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: rotate(-135deg);
}

.trains_sort .current:hover {
	background: #bb0f1a;
}

.trains_sort .options {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	background: #fff;
	display: none;
}

.trains_sort .options .option {
	cursor: pointer;
	background: #fff;
	transition: .3s;
	height: 40px;
	line-height: 40px;
	padding: 0 10px;
}

.trains_sort .options .option:hover {
	background: #eee;
}



.cleared {
	clear: both;
}


.article_navigation {
	margin-top: 80px;
}

.article_navigation:after {
	content: '';
	display: block;
	clear: both;
}

.article_navigation .prev {
	float: left;
	width: calc(50% - 15px);
	margin-right: 30px;
}

.article_navigation .next {
	float: left;
	text-align: right;
	width: calc(50% - 15px);
}

.article_navigation .prev.alone,
.article_navigation .next.alone {
	text-align: left;
	width: 100%;
}

.article_navigation .next .blog-item {
	float: right;
}

.article_navigation .title {
	font-size: 18px;
	color: #666;
}

.article_navigation .blog-item {
	margin-top: 30px;
	width: 360px;
	width: 100%;
}

.article_navigation .blog-item picture {
	display: block;
	width: 100%;
}

@media (max-width: 640px) {
	.inner_container blockquote {
		margin: 1rem 0;
		background: #eee;
		padding: 1rem 1rem 1rem 1rem;
		border-left: 2px solid #ddd;
	}
}


@media screen and (max-width: 860px) {
	.other_trains .more_trains {
		margin-right: 0;
	}

	.section_reviews {
		padding-right: 0;
	}

	.article_navigation {
		margin-bottom: 80px;
	}
}

@media screen and (max-width: 767px) {
	.breadcrumbs {
		display: none;
	}

	.breadcrumbs+* {
		margin-top: 20px;
	}

	.section_why_we .name {
		font-size: 18px;
	}

	.section_why_we ul li {
		width: 100%;
		padding: 30px 0 !important;
		float: none;
		border: 0 !important;
		border-bottom: 1px solid #e4e4e4 !important;
	}

	.section_why_we ul li:last-child {
		border-bottom: 0 !important;
	}

	.section_reviews .review_form .send,
	.section_reviews .open_review_form,
	.other_trains .more_trains {
		margin-left: auto;
		margin-right: auto;
		float: none;
		display: block;
	}

	.section_reviews .review_form .g-recaptcha {
		float: none;
	}

	.section_reviews .review_form .g-recaptcha>div {
		margin-left: auto;
		margin-right: auto;
	}
}


@media screen and (max-width: 590px) {
	.article_navigation .prev {
		float: none;
		width: 100%;
		margin-right: 0;
	}

	.article_navigation .next {
		float: none;
		width: 100%;
		text-align: left;
		margin-top: 30px;
	}
}

@media screen and (max-width: 519px) {
	.train_count_btn_wrap {
		display: block;
	}

	.red_btn {
		float: none;
		display: inline-block;
	}

	.section_reviews .review .text {
		font-size: 14px;
		line-height: 1.2;
	}
}












.section_stations {
	font-family: 'Montserrat', sans-serif;
}

.stations_button {
	background: #ed111f;
	border: 0;
	text-align: center;
	color: #FFF;
	height: 38px;
	line-height: 38px !important;
	padding: 0;
	transition: .3s;
	cursor: pointer;
	margin: 0;
	font-size: 14px;
	display: inline-block;
	text-decoration: none;
	font-weight: normal;
	padding: 0 20px;
	font-family: 'Montserrat', sans-serif;
	border-radius: 5px;
}

.stations_button:hover {
	background: #b8151f;
}



























.ex-block__inner.ex-block__inner_filled h1 {
	float: none;
	padding: 10px 15px;
}





.popup {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%);
	width: 400px;
	max-width: calc(100% - 30px);
	background: #fff;
	z-index: 10000;
	font-family: 'Montserrat', sans-serif;
	padding: 30px 15px;
}

.popup_close_btn {
	position: absolute;
	right: 0;
	top: 0;
	font-size: 30px;
	cursor: pointer;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	font-weight: normal;
	transition: .3s;
}

.popup_close_btn:hover {
	color: #ed111f;
}

.popup_content {
	font-size: 16px;
	text-align: center;
	line-height: 1.5;
}


.popup_content .btn {
	background: #ed111f;
	text-align: center;
	color: #fff;
	font-size: 14px;
	line-height: 1;
	text-transform: uppercase;
	border: 0;
	padding: 8px 12px;
	outline: 0;
	transition: .3s;
	cursor: pointer;
	text-decoration: none;
	display: inline-block;
	margin-top: 5px;
	border-radius: 5px;
    height: auto;
}

.popup_content .btn:hover {
	background: #b8151f;
}

.popup_screen {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, .5);
}




/**/


.news_list {
	margin: 0 0 100px;
	font-family: 'Montserrat', sans-serif;
}

.news_list h1 {}

.news_list .news_post {
	border-bottom: 1px solid #eee;
	font-weight: normal;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	padding: 30px 0;
	align-items: center;
}

.news_list .news_post .date_time {
	width: 158px;
}

.news_list .news_post .date {
	color: #ed111f;
	display: inline-block;
	margin-right: 20px;
}

.news_list .news_post .time {
	color: #999;
	display: inline-block;
}

.news_list .news_post a {
	width: calc(100% - 180px);
	text-decoration: none;
	color: #333;
	transition: .3s;
	font-weight: bold;
	font-size: 20px;
	line-height: 24px;
}

.news_list .news_post a:hover {
	color: #ed111f;
}

.pagination {
	margin-top: 80px;
	font-size: 16px;
}
.pagination {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    padding: 0;
}

.pagination a,
.pagination span {
	display: inline-block;
	padding: 10px;
	text-decoration: none;
	color: #ed111f;
	font-weight: bold;
}

.pagination span {
	color: #333;
}

.news_list .source {
	margin-top: 50px;
}

.news_list .source a {
	color: #17aad6;
}










/** reviews on main **/
.section_service_reviews {
	margin: 90px 0 60px;
}

.section_service_reviews .title {
	font-size: 36px;
	text-transform: uppercase;
}

.section_service_reviews .review_slider {
	width: calc(100% - 130px);
	margin: 85px auto 0;
}

.section_service_reviews .review_slide {}

.section_service_reviews .review {
	padding: 0 40px;
	font-family: Montserrat, sans-serif;
}

.section_service_reviews .review .meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.section_service_reviews .review .photo {
	width: 94px;
	height: 94px;
	border-radius: 50%;
	margin-right: 40px;
}

.section_service_reviews .review .wrap {
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 134px);
	justify-content: space-between;
	align-items: center;
}

.section_service_reviews .review .user_wrap {
	line-height: 24px;
	margin-bottom: 5px;
}

.section_service_reviews .review .name {
	font-size: 15px;
	font-weight: bold;
	margin-right: 30px;
}

.section_service_reviews .review .city {
	font-size: 14px;
	color: #969696;
}

.section_service_reviews .review .rating {
	width: 86px;
	background: url(/tickets/images/star.png) left center repeat-x;
	height: 13px;
}

.section_service_reviews .review .rating:before {
	content: '';
	width: 0;
	height: 100%;
	display: block;
	background: url(/tickets/images/star_active.png) left center repeat-x;
}

.section_service_reviews .review .rating.r1:before {
	width: 14px;
}

.section_service_reviews .review .rating.r2:before {
	width: 32px;
}

.section_service_reviews .review .rating.r3:before {
	width: 50px;
}

.section_service_reviews .review .rating.r4:before {
	width: 72px;
}

.section_service_reviews .review .rating.r5:before {
	width: 86px;
}

.section_service_reviews .review .text {
	margin-top: 20px;
	font-size: 14px;
	line-height: 24px;
}


.section_service_reviews .slick-arrow {
	position: absolute;
	top: 50%;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #f7f7f7 url(/tickets/images/slider_arrow.png) center no-repeat;
	border: 0;
	outline: 0;
	font-size: 0;
	text-indent: -999px;
	overflow: hidden;
	cursor: pointer;
	transition: .3s;
	margin-top: -24px;
}

.section_service_reviews .slick-arrow:hover {
	background: #969696 url(/tickets/images/slider_arrow_white.png) center no-repeat;
}

.section_service_reviews .slick-arrow.slick-prev {
	left: -65px;
}

.section_service_reviews .slick-arrow.slick-next {
	right: -65px;
	transform: rotate(180deg);
}

.section_service_reviews .slick-dots {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	justify-content: center;
}

.section_service_reviews .slick-dots li {
	margin: 0;
	padding: 0 7px;
}

.section_service_reviews .slick-dots button {
	border: 0;
	outline: 0;
	font-size: 0;
	overflow: hidden;
	text-indent: -999px;
	width: 11px;
	height: 11px;
	background: #969696;
	cursor: pointer;
	border-radius: 50%;
}

.section_service_reviews .slick-dots button:hover,
.section_service_reviews .slick-dots .slick-active button {
	background: #ea0028;
}

@media (max-width: 960px) {
	.section_service_reviews .review {
		padding: 0;
	}
}

@media (max-width: 768px) {
	.section_service_reviews {
		margin: 40px 0;
	}

	.section_service_reviews .review_slider {
		margin-top: 40px;
	}
}

@media (max-width: 480px) {
	.section_service_reviews .review .photo {
		margin-left: auto;
		margin-right: auto;
	}

	.section_service_reviews .review .user_wrap {
		width: 100%;
	}

	.section_service_reviews .review .wrap {
		width: 100%;
		margin-top: 20px;
	}
}

/** end reviews on main **/






/** news on main **/
.section_news_on_main {
	background: #f7f7f7;
	padding: 60px 0 70px;

}

.section_news_on_main .title {
	font-size: 36px;
	line-height: 1;
	text-transform: uppercase;
}

.section_news_on_main .news_list {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

.section_news_on_main .post {
	width: 25%;
	padding: 0 15px;
	box-sizing: border-box;
	margin-top: 50px;
}

.section_news_on_main .date_time {
	display: flex;
	font-size: 14px;
}

.section_news_on_main .date {
	margin-right: 30px;
	color: #ea0028;
}

.section_news_on_main .time {
	color: #969696;
}

.section_news_on_main .post a {
	font-size: 14px;
	font-weight: bold;
	color: #292929;
	text-decoration: none;
	line-height: 2;
	display: block;
	margin-top: 20px;
	transition: .3s;
}

.section_news_on_main .post a:hover {
	color: #ea0028;
}

.section_news_on_main .btn_wrap {
	text-align: right;
	margin-top: 35px;
}

.section_news_on_main .btn_wrap .btn {
	width: 158px;
	box-sizing: border-box;
	height: 38px;
	background: #ed111f;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 40px;
	cursor: pointer;
	color: #fff;
	transition: .3s;
	text-decoration: none;
	border-radius: 5px;
	display: inline-block;
	text-align: center;
}

.section_news_on_main .btn_wrap .btn:hover {
	background-color: #b8151f;
}

@media (max-width: 930px) {
	.section_news_on_main .post {
		width: 50%;
	}
}

@media (max-width: 640px) {
	.section_news_on_main .post {
		width: 100%;
		padding: 0;
	}
}

/** end news on main **/


/** content on main **/
.section_content_on_main {
	margin-top: 60px;
	margin-bottom: 55px;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	line-height: 24px;
}

.section_content_on_main h1,
.section_content_on_main .h1,
.section_content_on_main h2,
.section_content_on_main .h2,
.section_content_on_main h3,
.section_content_on_main .h3,
.section_content_on_main h4,
.section_content_on_main .h4 {
	margin: 24px 0 0;
	line-height: 1.2;
}

.section_content_on_main p {
	margin: 24px 0;
	line-height: 24px;
}

.section_content_on_main p:first-child {
	margin-top: 0;
}
.section_content_on_main p:last-child {
	margin-bottom: 0;
}

.section_content_on_main .with_picture {
	padding-right: 50%;
	box-sizing: border-box;
	background-position: right bottom;
	padding-bottom: 250px;
	background-repeat: no-repeat;
	margin: 0 0 40px 0;
}

@media (max-width: 960px) {
	.section_content_on_main .with_picture {
		background-position: right -100px bottom;
	}
}

@media (max-width: 768px) {
	.section_content_on_main .with_picture {
		background-position: right -150px bottom;
	}
}

@media (max-width: 640px) {
	.section_content_on_main {
		margin-top: 20px;
	}

	.section_content_on_main .with_picture {
		padding-right: 0;
		background-position: left -620px bottom;
		padding-bottom: 430px;
	}
}

@media (max-width: 460px) {
	.section_content_on_main .with_picture {
		background-position: left -540px bottom;
		padding-bottom: 340px;
		background-size: 980px auto;
	}
}

/** end content on main **/


/** main pages header **/
.aeroexpress_slide,
.hotels_slide,
.suburban_slide {
	padding: 20px 0 85px;
}

.unsupported_webp .suburban_slide {
	background-image: url(/tickets/images/suburban_bg.jpg);
}

.supported_webp .suburban_slide {
	background-image: url(/tickets/images/suburban_bg.jpg);
}

.unsupported_webp .aeroexpress_slide {
	background-image: url(/tickets/images/aeroexpress_bg.jpg);
}

.supported_webp .aeroexpress_slide {
	background-image: url(/tickets/images/aeroexpress_bg.jpg);
}

.unsupported_webp .hotels_slide {
	background-image: url(/tickets/images/hotels_bg.jpg);
}

.supported_webp .hotels_slide {
	background-image: url(/tickets/images/hotels_bg.jpg);
}



.hotels_slide .breadcrumbs,
.aeroexpress_slide .breadcrumbs,
.suburban_slide .breadcrumbs {
	margin: 0;
	text-align-last: left;
	font-family: 'Montserrat', sans-serif;
}

.hotels_slide h1,
.aeroexpress_slide h1,
.suburban_slide h1 {
	margin-top: 60px;
	line-height: 1.2;
	color: #fff;
	font-size: 30px !important;
	display: block;
	padding: 0;
	float: none;
}

.hotels_slide .search_tabs,
.aeroexpress_slide .search_tabs,
.suburban_slide .search_tabs {
	margin-top: 55px;
	padding-bottom: 0;
}

/** end main pages header **/


/** hotels content **/
.section_hotels_content {
	font-family: 'Montserrat', sans-serif;
	margin: 60px 0;
}

.section_hotels_content .hotels {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 60px;
}

.section_hotels_content .hotel {
	width: calc(33.333% - 24px);
	margin-top: 36px;
	height: 368px;
	text-decoration: none;
	padding: 45px 40px;
	box-sizing: border-box;
	color: #fff;
	line-height: 24px;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.section_hotels_content .hotel.big {
	width: calc(50% - 18px);
}

.section_hotels_content .hotel:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0);
	transition: .3s;
	z-index: 1;
}

.section_hotels_content .hotel:hover:before {
	background: rgba(0,0,0,.45);
}

.section_hotels_content .hotel .name {
	font-size: 24px;
	display: block;
	position: relative;
	z-index: 2;
}

.section_hotels_content .hotel .price {
	font-size: 14px;
	display: block;
	margin-top: 10px;
	position: relative;
	z-index: 2;
}

.section_hotels_content h2 {
	line-height: 1.2;
	font-size: 22px;
	text-transform: uppercase;
	margin: 0;
}

.section_hotels_content p {
	font-size: 14px;
	margin: 24px 0;
    line-height: 24px;
}

.section_hotels_content p:first-child {
	margin-top: 0;
}
.section_hotels_content p:last-child {
	margin-bottom: 0;
}

@media (max-width: 900px) {
	.section_hotels_content .hotel {
		margin-top: 24px;
		width: calc(33.333% - 16px);
		height: 280px;

	}

	.section_hotels_content .hotel.big {
		width: calc(50% - 12px);
	}
}

@media (max-width: 768px) {
	.section_hotels_content .hotel {
		width: calc(50% - 12px);
	}

	.section_hotels_content .hotel.big {
		width: calc(50% - 12px);
	}

	.section_hotels_content .hotel:last-child {
		display: none;
	}

	.section_hotels_content .hotel:before {
		background: rgba(0,0,0,.45);
	}

	.section_hotels_content {
		margin: 40px 0;
	}
}

@media (max-width: 580px) {
	.section_hotels_content .hotel,
	.section_hotels_content .hotel.big {
		width: 100%;
		height: 200px;
	}

	.section_hotels_content .hotel:last-child {
		display: block;
	}

	.section_hotels_content .hotels {
		margin-bottom: 0;
	}
}
/** end hotels content **/


























.share_wrap {
    position: fixed;
    right: 50%;
    top: 100vh;
    z-index: 1000;
    margin-top: -130px;
    margin-right: -575px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.share_wrap .ya-share2__icon {
    height: 42px !important;
    width: 42px !important;
    background-size: 36px 36px !important;
}

.share_wrap .share_toggle {
    width: 57px;
    height: 57px;
    background: rgba(237, 17, 31, 1);
    border-radius: 50%;
    box-shadow: 0 0 20px rgba(237, 17, 31, .5);
    -webkit-background-size: 57px auto;
    background-size: 57px auto;
    margin-left: 25px;
	cursor: pointer;
    padding: 15px;
    box-sizing: border-box;
	transition: .3s;
}

.share_wrap .share_toggle svg {
    fill: #fff;
	transition: .3s;
}

.share_wrap:hover .share_toggle {
    background: #fff;
}
.share_wrap:hover .share_toggle svg {
	fill: rgba(237, 17, 31, 1);
}

.share_wrap .share_btns {
    overflow: hidden;
    width: 0;
    transition: 0.3s;
}

.share_wrap .share_btns .ya-share2,
.share_wrap .share_btns.open,
.share_wrap:hover .share_btns {
    width: 275px;
}

@media (max-width: 1180px) {
    .share_wrap {
        margin-right: 0;
		right: 20px;
    }
}

@media (max-width: 394px) {
	.share_wrap .share_btns .ya-share2,
	.share_wrap .share_btns.open,
	.share_wrap:hover .share_btns {
	    width: 200px;
	}

	.share_wrap .ya-share2__icon {
	    height: 30px !important;
	    width: 30px !important;
	    background-size: 24px 24px !important;
	}

	.share_wrap .share_toggle {
		margin-left: 15px;
	}
}


.train_count .right {
	float: right;
}


.printer_btn {
	height: 40px;
	font-size: 14px;
	text-decoration: none;
	color: #ed111f;
	margin-right: 35px;
}

.printer_btn:before {
	content: '';
	width: 30px;
	height: 30px;
	display: inline-block;
	vertical-align: middle;
	background: url(/tickets/images/printer.svg) center no-repeat;
	background-size: contain;
	margin-right: 10px;
}

.printer_btn:hover {
	text-decoration: underline;
}

@media screen and (max-width: 479px) {
	.train_count .right {
		margin-left: -23px;
		float: none;
	}

	.train_count .right .trains_sort {
		margin-left: 0;
	}
}

#hotel_name_search_field,
#suburban_from_station,
#suburban_to_station {
	padding-left: 30px;
}

[data-source] {
	display: block;
}
.image_source {
	display: block;
	margin-top: -36px;
	position: relative;
	z-index: 2;
	text-align: right;
	padding: 3px;
}

.image_source .source_content {
	color: #17aad6;
	background: #fff;
	padding: 9px 15px;
	font-size: 12px;
	line-height: 12px;
	display: inline-block;
	opacity: .8;
	transition: opacity .3s;
}
.image_source a {
    color: inherit;
    text-decoration: underline;
}
.image_source .source_content:hover {
	opacity: 1;
}

.article_content img {
    display: block;
}

.audio_podcast {
	padding: 15px;
	margin-top: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	background: #f7f7f7;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}
.audio_podcast:hover {
    box-shadow: 0 0 20px rgb(0 0 0 / 20%);
    background: #fff;
}
.audio_podcast .audio_title {
	font-size: 16px;
	width: calc(100% - 370px);
}
.audio_podcast audio {
	width: 350px;
}
.audio_podcast audio::-webkit-media-controls-enclosure {
    border: 1px solid #17aad6;
    margin: 1px;
}

@media (max-width: 768px) {
	.audio_podcast .audio_title {
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
	}
	.audio_podcast audio {
		width: 100%;
	}
}




.section_covidinfo {
	font-family: 'Montserrat', sans-serif;
	margin: 0 0 80px;
}
.section_covidinfo .breadcrumbs {
	margin-bottom: 30px;
}
.section_covidinfo * {box-sizing:border-box;}
.section_covidinfo .covidinfo_more,
.section_covidinfo .covidinfo_filters label input:checked + span {
	background: #ed111f;
	color: #fff !important;
}
.section_covidinfo .covidinfo_more:hover {
	background: #b8151f;
}
.section_covidinfo .covidinfo_content {
	margin-top: 30px;
}
.section_covidinfo h1 {
	float: none;
	display: block;
	padding: 0;
}



.section_travel_navigator_banner {
	margin: 80px 0;
	font-family: Montserrat, sans-serif;
}
.section_travel_navigator_banner .travel_navigator_link {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 1136px;
	margin: 0 auto;
	background: url(/tickets/images/travel_navogator_banner.jpg) center no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	border-radius: 10px;
	height: 150px;
	color: #fff;
	text-decoration: none;
	font-size: 36px;
	line-height: 46px;
	font-weight: bold;
}
.section_travel_navigator_banner .travel_navigator_link span {
	width: 490px;
}


@media (max-width: 768px) {
	.section_travel_navigator_banner {
		margin: 40px 0;
	}
	.section_travel_navigator_banner .travel_navigator_link {
		max-width: 600px;
		background-image: url(/tickets/images/travel_navogator_banner_mob.jpg);
		height: 150px;
		font-size: 27px;
		line-height: 1.3333;
	}
	.section_travel_navigator_banner .travel_navigator_link span {
		width: 300px;
		margin-left: 56px;
	}
}


@media (max-width: 480px) {
	.section_travel_navigator_banner .travel_navigator_link {
		background-image: url(/tickets/images/travel_navogator_banner_mob.jpg);
		height: 120px;
		font-size: 22px;
	}
	.section_travel_navigator_banner .travel_navigator_link span {
		width: 250px;
		margin-left: 55px;
	}
}
@media (max-width: 380px) {
	.section_travel_navigator_banner .travel_navigator_link {
		background-image: url(/tickets/images/travel_navogator_banner_mob.jpg);
		height: 100px;
		font-size: 17px;
	}
	.section_travel_navigator_banner .travel_navigator_link span {
		width: 190px;
		margin-left: 40px;
	}
}







.app_links {
	display: flex;
	justify-content: space-between;
}

.header_apps {
	padding-bottom: 50px;
}

.header_apps.in_aeroexpress {
	padding: 50px 0;
	background: #f7f7f7;
}
.header_apps.in_aeroexpress .app_link {
	border: 1px solid #ddd;
    border-radius: 5px;
}
.footer_apps {
	width: calc(100%  - 215px);
	margin-top: 40px;
}

.app_link {
	width: 170px;
    height: 60px;
    display: block;
    cursor: pointer;
    background-size: contain;
	background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
	max-width: calc(20% - 10px);
}
/* .header_app:hover {
	background-color: rgb(37 171 212 / 53%);
} */
.app_link.rustore {background-image: url(/tickets/images/rustore.svg);}
.app_link.appstore {background-image: url(/tickets/images/appstore.svg);}
.app_link.googleplay {background-image: url(/tickets/images/googleplay.svg);}
.app_link.amazon {background-image: url(/tickets/images/amazon.svg);}
.app_link.microsoft {background-image: url(/tickets/images/microsoft.svg);}







.faq_content h2,
.faq_content h3,
.faq_content h4,
.faq_content h5,
.faq_content p,
.faq_content ul,
.faq_content ol {
	padding: 0;
	font-size: 14px;
	line-height: 22px;
    text-align: justify;
	margin: 20px 0 0;
}

.faq_content ul,
.faq_content ol {
	margin-left: 30px;
}
.faq_content ul li,
.faq_content ol li {
	margin-top: 10px;
}

.faq_content h2 {font-size: 22px;}
.faq_content h3 {font-size: 18px;}
.faq_content h4 {font-size: 16px;}
.faq_content h5 {font-size: 16px;}






.full_img {
	width: 100%;
}

.mt10  {margin-top: 10px;}    .mb10  {margin-bottom: 10px;}
.mt20  {margin-top: 20px;}    .mb20  {margin-bottom: 20px;}
.mt30  {margin-top: 30px;}    .mb30  {margin-bottom: 30px;}
.mt40  {margin-top: 40px;}    .mb40  {margin-bottom: 40px;}
.mt50  {margin-top: 50px;}    .mb50  {margin-bottom: 50px;}
.mt60  {margin-top: 60px;}    .mb60  {margin-bottom: 60px;}
.mt70  {margin-top: 70px;}    .mb70  {margin-bottom: 70px;}
.mt80  {margin-top: 80px;}    .mb80  {margin-bottom: 80px;}
.mt90  {margin-top: 90px;}    .mb90  {margin-bottom: 90px;}
.mt100 {margin-top: 100px;}   .mb100 {margin-bottom: 100px;}

.ml10  {margin-left: 10px;}    .mr10  {margin-right: 10px;}
.ml20  {margin-left: 20px;}    .mr20  {margin-right: 20px;}
.ml30  {margin-left: 30px;}    .mr30  {margin-right: 30px;}
.ml40  {margin-left: 40px;}    .mr40  {margin-right: 40px;}
.ml50  {margin-left: 50px;}    .mr50  {margin-right: 50px;}
.ml60  {margin-left: 60px;}    .mr60  {margin-right: 60px;}
.ml70  {margin-left: 70px;}    .mr70  {margin-right: 70px;}
.ml80  {margin-left: 80px;}    .mr80  {margin-right: 80px;}
.ml90  {margin-left: 90px;}    .mr90  {margin-right: 90px;}
.ml100 {margin-left: 100px;}   .mr100 {margin-right: 100px;}
.display_block {display: block}



/**/




.login_form {
    width: 460px;
    max-width: 100%;
    margin: 50px auto;
}


.login_form .form_control {
    display: flex;
    margin-top: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.login_form .form_control label {
    width: 150px;
}

.login_form .textfield {
    height: 40px;
    padding: 10px 20px;
    box-sizing: border-box;
    border: 1px solid #777;
    border-radius: 5px;
    background: #fff;
    width: calc(100% - 150px);
}

.login_form .btn_wrap {
    display: flex;
    justify-content: right;
    margin-top: 20px;
}
.login_form .links {
    font-family: 'Montserrat', sans-serif;
    display: flex;
    justify-content: space-between;
}
.login_form .links a {
    color: #17aad6;
}
.login_form .links a:hover {
    color: #ed111f;
}

.login_form .links a + a{
    margin-left: 20px;
}
.login_form .bottom {
    margin: 20px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.login_form .remember_me {
    margin-left: 150px;
}
.login_form .btn {
    background: #ed111f;
    border: 0;
    text-align: center;
    color: #FFF;
    height: 40px;
    line-height: 40px;
    padding: 0 50px;
    transition: .3s;
    cursor: pointer;
    margin: 0 0 0 20px;
    border-radius: 5px;
    font-size: 16px;
}
.login_form .btn:hover {
    background: #b8151f;
}


@media(max-width: 480px) {
    .suburban_slide h1 {
        padding-left: 10px;
        padding-right: 10px;
        box-sizing: border-box;
    }
    .login_form .form_control label {
        width: 100%;
        padding-bottom: 7px;
    }

    .login_form .textfield {
        width: 100%;
    }

    .login_form .remember_me {
        margin-left: 0;
    }

    .login_form .bottom {
        margin-top: 0;
    }

    .login_form .links {
        display: block;
    }

    .login_form .links a {
        display: block;
    }
    .login_form .links a + a{
        margin: 10px 0 0;
    }
    .login_form .btn {
        margin: 3px 0 0;
    }
}
