*::-webkit-input-placeholder {
	color: #666;
	opacity: 1;
}
*:-moz-placeholder {
	color: #666;
	opacity: 1;
}
*::-moz-placeholder {
	color: #666;
	opacity: 1;
}
*:-ms-input-placeholder {
	color: #666;
	opacity: 1;
}

body input:focus:required:invalid,
body textarea:focus:required:invalid {
	
}
body input:required:valid,
body textarea:required:valid {
	
}

html {
	min-width: 110px;
}

html.js .loader {
	background: none repeat scroll 0 0 #ffffff;
	bottom: 0;
	height: 100%;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 9999;
}
html.js .loader_inner {
	background-image: url("../img/preloader.gif");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #fff;
	height: 60px;
	width: 60px;
	margin-top: -30px;
	margin-left: -30px;
	left: 50%;
	top: 50%;
	position: absolute;
}

body {
	font-family: Verdana, sans-serif;
	font-size: 14px;
	min-width: 320px;
	position: relative;
	line-height: 1.6;
	overflow-x: hidden;
	margin: 0;
	padding: 0;

	border-top: 5px solid #ffa94f;
	border-bottom: 5px solid #ffa94f;
}
/*** subroutines ***/
.hidden {
	display: none;
}
.wrapper {
	margin: 0 auto;
	width: 95%;
	overflow: hidden;
}
.mojo_social {
    font-family: "MojoSocial";
}
a.mojo_social {
	text-decoration: none;
	font-size: 22px;
	margin: 0;
	padding: 2px;
	width: 24px;
	height: 24px;
	text-align: center;
}
a.mojo_social:hover {
	color: white;
	background-color: #FF8040; /*#FF8040 #1775ab*/
}
/*** end subroutines ***/

/*** advanced routines ***/
h1 span {
	color: #ffa94f;
}
.helper {
	margin: 0 0 20px 0;
	padding: 10px 16px;
}
.auto_h_margin {
	margin: 0 auto;
}
/*** end advanced routines ***/


.top_page_nav {
	/**/
}
.top_page_nav ul {
	margin: 0;
	padding: 0;
}
.top_page_nav ul li {
	list-style: none outside none;
	margin: 0;
	padding: 0;
	float: left;
}
.top_page_nav ul li:hover {
	background-color: #fff;
}
.top_page_nav ul li:hover a {
	color: #ffa94f;
}
.top_page_nav ul li a {
    color: #fff;
    display: block;
    margin: 0;
    padding: 9px 16px 7px 16px;
}
.top_page_nav ul li a:hover {
	text-decoration: none;
}

.top_bg {
	margin: 0;
	padding: 0;
	background-color: rgba(0, 0, 0, 0);
	/* background-image: url("/Frontend/images/body_bg_autumn.jpg"); */
	/* background-image: url("/Frontend/images/body_bg_summer.jpg"); */
	background-image: url("/Frontend/images/body-bg-winter.png");
	background-repeat: repeat;
	background-position: center 0;
	background-size: 100% auto;
}

header {
	padding: 0;
	overflow: hidden;
	position: relative;
}
.top_site_logo {
    display: block;
    margin: 10px 0 0 0;
    padding: 0;
}
.top_site_logo {
    /**/
}
.top_site_logo img {
    max-width: 100%;
}
.top_site_soc_buttons {
    padding: 25px 10px 25px 0;
    text-align: right;
}
.top_site_soc_buttons p {
	margin: 0;
	padding: 0;
}
.top_site_soc_buttons a {
    margin: 0 0 0 10px;
}
.top_nav {
    /* background-color: #ededed; */
    margin: 0 0 10px;
    overflow: hidden;
    padding: 0;
}
.top_nav ul {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.top_nav ul li {
	list-style: none outside none;
	margin: 10px 10px 10px 2px;
	padding: 3px 5px;
	float: left;
	border: 1px solid #ff8040;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	background-color: #fff;
}
.top_nav ul li:hover {
	/* background-color: #ff8040; */
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border-width: 3px;
	margin: 8px 8px 8px 0;
}
.top_nav ul li a {
	margin: 0;
	padding: 10px;
	color: #ff8040;
}
.top_nav ul li a:hover {
	/* color: #fff; */
	/* background-color: #ff8040; */
	text-decoration: none;
}

.top_nav_1 {
    background-color: #ffa94f;
    margin: 0 0 10px;
    overflow: hidden;
    padding: 0;
}
.top_nav_1 ul {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.top_nav_1 ul li {
	list-style: none outside none;
}
.top_nav_1 ul li:hover {
	background-color: #fff;
}
.top_nav_1 ul li a {
	color: #fff;
	margin: 0;
	display: block;
	padding: 10px 0;
    text-align: center;
	font-size: 110%;
}
.top_nav_1 ul li a:hover {
	color: #ffa94f;
	text-decoration: none;
}

.years_container {
	margin: 10px 0 0 0;
	padding: 0;
}
.years_container ul {
    margin: 0 auto -1px auto;
    overflow: hidden;
    padding: 0;
    width: 300px;
}
.years_container ul li {
	list-style: none outside none;
	margin: 10px 10px 0 2px;
	padding: 0;
	float: left;
	border-style: solid;
	border-color: #A2A2A2;
	border-width: 1px;
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
	text-align: center;
}
.years_container ul li:hover {
	-webkit-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
	border-width: 3px 3px 1px 3px;
	margin: 8px 8px 0 0;
}
.years_container ul li.active {
	background-color: #ededed;
}
.years_container ul li a {
	display: block;
	margin: 0;
	padding: 5px 10px;
}
.years_container ul li span {
	display: block;
	margin: 5px 10px;
	padding: 0;
	cursor: default;
}

.year_calendar {
	overflow: hidden;
	margin: 0 0 40px 0;
	padding: 0;
	background-color: #ededed;
}
.year_calendar ul {
	padding: 0;
}
.year_calendar ul li {
	margin: 0;
	padding: 5px 0;
	list-style: none outside none;
	text-align: center;
	border: 3px solid #ededed;
}
.year_calendar ul li .active {
	/**/
}
.year_calendar ul li:hover strong,
.year_calendar ul li:hover .conv_word {
	color: #AA4D39;
}
.year_calendar ul li a {
	text-decoration: none;
	display: block;
	margin: 0;
	padding: 0;
}
.year_calendar ul li strong{
	display: block;
}
.year_calendar ul li span {
	display: block;
}
.year_calendar ul li .conv_count {
	font-size: 130%;
	color: #297B48;
	font-weight: bold;
}
.year_calendar ul li .conv_word {
	font-size: 90%;
}


.convention_container .conv_logo .conv_logo_img {
	text-align: center;
	padding: 10px 0;
}
.convention_container .conv_logo .conv_logo_img img {
	max-width: 100%;
}


.conten_body {
	/* maybe some fullwidth background */
}
.conten_body .row {
	padding: 0;
}

.content_internal_body {
	/**/
}
.content_internal_body h1,
.content_internal_body .h1 {
	margin: 0 !important;
}

.info_block .calendar_table {
	width: 100%;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
}
.info_block .calendar_table tr {
	/**/
}
.info_block .calendar_table td {
	margin: 0;
	padding: 3px 2px;
	border: 2px solid #fff;
	text-align: center;
	vertical-align: middle;
	background-color: #f8f8f8;
}
.info_block .calendar_table td.weekend {
	background-color: #fbb;
}
.info_block .calendar_table td.empty {
	background-color: rgba(0,0,0,0) !important;
	cursor: default;
}
.info_block .calendar_table td:hover {
	background-color: #fff;
}
.info_block .calendar_table td a {
	/**/
}
.left_side_content {
	/**/
}
.left_side_content ul {
	margin: 0;
	padding: 0;
	line-height: 1;
}
.left_side_content ul li {
	list-style: none outside none;
	margin: 0;
	padding: 5px 0;
	line-height: 1.7;
}
.left_side_content ul li img {
	margin-top: -2px;
	position: relative;
}
.left_side_content ul li a {
	/**/
}
.left_side_content ul li span {
	/**/
}

.site_search .row {
	line-height: 2;
}

.info_block {
	margin: 0 0 10px 0;
	padding: 0;
}
.info_block header {
	background-color: #ffa94f;
	color: white;
	margin: 0;
	padding: 6px;
	text-transform: uppercase;
	text-align: center;
}
.info_block header a,
.info_block header a:hover,
.info_block header a:visited {
	color: white;
	text-decoration: none;
}
.info_block .info_content,
.info_block > div {
	margin: 10px 0;
}
.info_block .info_content ul {
	margin: 0;
	padding: 0;
	line-height: 1.5;
}
.info_block .info_content ul li {
	list-style: none outside none;
	display: inline;
	margin: 5px;
	padding: 0
}
.info_block .info_content ul li img {
	margin: 10px 0;
}
.info_block .info_content .news li {
	margin: 10px 0;
	padding: 0 0 10px 0;
	display: block;
	overflow: hidden;

	border-color: #ffa94f;
	border-style: solid;
	border-width: 0 0 1px 0;
}
.info_block .info_content .news li.last {
	border-width: 0;
}
.info_block .info_content .news span {
	display: block;
}
.info_block .info_content .news .small_font {
	font-size: 90%;
}


footer {
	border-top: 40px solid #ffa94f;
	margin-top: 20px;
	margin-bottom: 0;
	padding: 20px 0 0 0;
}
footer .wrapper {
	position: relative;
}
footer .row {
	margin: 0 0 20px 0;
}
.bot_site_logo {
	position: absolute;
	left: 0;
	top: 0;
}
.bot_site_text {
	/**/
}
.bot_site_text ul {
	margin: 0;
	padding: 0;
	line-height: 1.5;
}
.bot_site_text ul li {
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
.bot_site_counters {
	text-align: right;
}
.small_font {
	font-size: 80%;
}
.gray_text {
	color: #6e6e6e;
}

h1, .h1 {
	font-size: 20px;
	margin: 5px 0;
	padding: 0;
	font-weight: normal;
}
h2, .h2 {
	font-size: 18px;
	margin: 5px 0;
	padding: 0;
	font-weight: normal;
}
h3, .h3 {
	font-size: 16px;
	margin: 5px 0;
	padding: 0;
	font-weight: normal;
}
h4, .h4 {
	font-size: 16px;
	margin: 5px 0;
	padding: 0;
}
h5, .h5 {
	font-size: 16px;
	margin: 5px 0;
	padding: 0;
}
h6, .h6 {
	font-size: 16px;
	margin: 5px 0;
	padding: 0;
}

.convention_container {
	margin: 20px 0 0 0;
	padding: 20px 0 0 0;
	border-top: 2px solid #ffa94f;
}
.convention_container div {
	margin: 0 0 10px 0;
	padding: 0;
}
.convention_container .duration {
	color: #999;
	font-size: 90%;
}
.convention_container .title {
	font-size: 120%;
}
.convention_container .conv_logo .conv_logo_img {
	text-align: center;
}
.convention_container .conv_logo .conv_logo_img img {
	max-width: 90%;
	max-height: 300px;
}
.convention_container .options {
	margin: 5px 0;
	padding: 0;
	overflow: hidden;
}
.convention_container .options li {
	list-style: none outsife none;
	display: block;
	float: left;
	margin: 5px 5px 5px 0;
	padding: 3px;
}
.convention_container .options .infavs {
	
}
.convention_container .options .infavs .cursor_pointer {
	
}
.convention_container .options .infavs .favs_voted {
	
}
.convention_container .more {
	text-align: right;
	font-size: 90%;
}
.convention_container .more a {
	/* in media.css */
}
.convention_container .more .link_delimiter {
	/* in media.css */
}

/*
	site slider
*/
.site_slider { margin: 0 0 10px 0; padding: 0; position: relative; width: 100%; }
.site_slider .swiper-container { height: 330px; overflow: hidden; }
.site_slider .swiper-wrapper { width: 9999px; }
.site_slider .swiper-slide { background: #fff none repeat scroll 0 0; float: left; overflow: hidden; position: relative; text-align: center; }
.site_slider .swiper-slide img { height: auto; left: -480px; margin-left: 50%; max-width: 960px; position: relative; width: auto; }
.site_slider .swiper-slide a { display: block;  font-size: 0; }
.site_slider .swiper-pagination { left: 0; position: absolute; text-align: center; width: 100%; z-index: 200; top: 308px; }
.site_slider .swiper-pagination .swiper-pagination-bullet { border: 1px solid #666 !important; box-shadow: none !important; height: 10px !important; width: 10px !important; }
.site_slider .swiper-pagination .swiper-pagination-bullet-active { background-color: #ffa94f !important; border-color: #ffa94f !important; }
.site_slider .swiper-button-next,
.site_slider .swiper-button-prev { background-image: url("/img/slider_arrows.png"); background-size: 56px 68px; }
.site_slider .swiper-button-next { background-position: -26px -12px; }
.site_slider .swiper-button-prev { background-position: 0 -12px; }

/*
	News
*/
.news_container {  }
.news_container .media:first-child {
    padding-top: 20px !important;
    border-top: 5px solid #ffa94f;
}
.news_container .media:last-child {
    margin-bottom: 0 !important;
}
.news_container .media {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: 5px solid #ffa94f;
}
.page_single_news .b-share__handle {
	padding-top: 0 !important;
}
.page_single_news .media-body img {
	max-width: 100%;
}

/*
	Festivals
*/
.festivals_container .media:first-child {
	margin-top: 20px !important;
}
.festivals_container .media:last-child {
    border-bottom: 0 !important;
}
.festivals_container .media-body h2 {
	margin-top: 0;
	padding-top: 0;
}
.festival_info table, .festival_info table tr th, .festival_info table tr td {
	border: 1px solid #333;
}
.festival_info table tr th, .festival_info table tr td {
	padding: 10px 5px;
}
.festival_info table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 auto 10px auto;
}
.festival_info table tr th {
	background-color: #ccc;
	font-weight: bold;
}

/*
	Yandex map
*/
#YMap {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10;
}

/*
	Countries page
*/
.cities_page__container {
	
}
.cities_page__container .cities_page__countries_list {
	margin: 10px 0 20px 0;
	padding: 0 0 20px 0;
	/* border-bottom: 5px solid #ffa94f; */
}
.cities_page__container .cities_page__countries_list h2 {
	background-color: #ffa94f;
	color: white;
	margin: 0;
	padding: 6px;
	text-transform: uppercase;
}
.cities_page__container .cities_page__countries_list h2 img {
	margin: -4px 2px 0 2px;
	padding: 8px;
	background-color: white;
}
.cities_page__container .cities_page__countries_list ul li {
	list-style: none outside none;
}
.cities_page__container .cities_page__countries_list ul li.active {
	font-weight: bold;
}

/*
	Thumbnails
 */
.thumbnail {
	display: block;
	padding: 4px;
	margin-bottom: 20px;
	line-height: 1.42857143;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 4px;
	-webkit-transition: border .2s ease-in-out;
	     -o-transition: border .2s ease-in-out;
		    transition: border .2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
	margin-right: auto;
	margin-left: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
	border-color: #337ab7;
}
.thumbnail .caption {
	padding: 9px;
	color: #333;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
	display: block;
	max-width: 100%;
	height: auto;
}

/*
	Entities
*/
.entities_conventions_container .media {
	border-color: #ffa94f;
	border-style: solid;
	border-width: 6px 0;
	margin: -6px 0;
	padding: 30px 0;
}
.entities_conventions_container .media-object {
	max-width: 150px;
}

/*
*/
.convention_inner_text img {
	max-width: 100%;
}
