:root {
	--primary-color: #0EA5FF;
	--primary-color1: #10A5FD;
	--primary-color2: #0EA4FC;
	--primary-color3: #7BCEFF;
	--primary-color4: #D3EFFF;
	--secondary-color: #FFCB00;
	--secondary-color1: #FDCA02;
	--secondary-color2: #FCC900;
	--secondary-color3: #FFE374;
	--secondary-color4: #FFF5D0;
	--secondary-color-2: #FF0000;
	--secondary-color1-2: #FD0202;
	--secondary-color2-2: #FC0000;
	--secondary-color3-2: #FF7474;
	--secondary-color4-2: #FFD0D0;
	--main-fontcolor:#2a2a2a;
	--dark-color:#65ddb5;
	--size-main: 1480px;	
}
/*https://colorscheme.ru/#5e32Pw0--0WV3*/
button{
    position:relative;
    display:inline-block;
    cursor:default;
    text-align:center;
    line-height:32px;
    color:#fff;
	background:#c62845;	
	padding: 0 2px 0 2px;
	border:0;
	width:120px;
	
}
button:disabled{
	background: #e7e3e3;
}

/*================================================================*/
/*selectors*/
div.selectBox { width:calc((100% - 170px) / 4);}
span.selected { width: calc(100% - 40px);}
div.selectOptions { width:100%;}
/*===============================================================*/
.rightlink{
	font-size: 14px; 
	margin: 5px 10px 0 0;
}
/*=====================EXCURSIONS===================*/
/*slider main */
#makeMeScrollable{
	width:100%;
	height: 210px;
	position: relative;
	margin:0;
}
/* Replace the last selector for the type of element you have in
   your scroller. If you have div's use #makeMeScrollable div.scrollableArea div,
   if you have links use #makeMeScrollable div.scrollableArea a and so on. */
#makeMeScrollable div.scrollableArea div.itemsliderdiv{
	position: relative;
	float: left;
	width: 25%;
	max-width: 330px;
	height: 210px;
	margin: 0 5px;
	overflow: hidden;
	padding: 0;
	/* If you don't want the images in the scroller to be selectable, try the following
	   block of code. It's just a nice feature that prevent the images from
	   accidentally becoming selected/inverted when the user interacts with the scroller. */
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
	user-select: none;
	cursor: pointer;
}
#makeMeScrollable div.scrollableArea div a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;	
}
/*----------------------*/
#lefttopexcurs{
	float: left; width: calc(100% - 874px); text-align: left; padding-right: 20px;
}
#leftside-showexcurs{
	width:calc(100% - 290px); 
	text-align: left; 
	border-right: solid 1px; 
	padding-right: 10px;
	margin-right: 10px;		
	margin-bottom: 20px;
}
#rightside-showexcurs{
	width: 280px;
}
#photoexcurs{
		display: none;
		height: 370px; 
		width: 98%; 
		overflow: auto; 
		background: #39363a; 
		color: white;
		margin-bottom: 20px;
	}
.circlephoto{
	width: 150px!important;
	height: 150px!important;
	border-radius: 75px;
	overflow: hidden;
	float: left;
	margin: 0 30px 20px 0;
}
.excursSlideTitle{
	position: absolute;
	bottom: 0;
	left: 0;
	opacity: 0.8;
	background: #000;
	white-space: nowrap;
	overflow: hidden;
	padding: 5px;
	text-overflow: ellipsis;
	width: 100%;
	min-height: 34px;
	z-index: 100;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	
}
.excursSlideCity{
	position: absolute;
	top: 14px;
	right: 14px;
	background: #c30f60;
	height: 34px;
	min-width: 140px;
	padding: 5px 20px;
	border-radius: 18px;
	z-index: 100;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
#e_top{
	width: 100%;
	height: calc( (100vw - 290px) / 4 * 2);
	position: relative;
	padding: 0;
	margin: 0;
}
#e_top_city, #e_top_qmax, #e_cost, #e_top_title{
	position: absolute;	
	z-index: 20;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background:	#F32F5C;
	padding: 8px;
	border-radius: 16px;
}
#e_top_title{
	background:	transparent;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	flex-flow: column wrap;
	align-items: center;
	text-align: center;	
}
#e_top_title h1{
	font-size: 3em;
	color: 	#F32F5C;
	font-weight: 900;
 
}
#e_top_city{
	left: 10px;
	top: 10px;
}
#e_top_qmax{
	right: 20px;
	top: 10px;
}
#e_cost{
	right: 20px;
	bottom: 10px;
	font-size: 20px;
}
#preordreexcurs_totalcost{
	font-size: 2em;
	font-weight: bold;
	color: var(--primary-color);
}
.div-picrow{
	position: relative; 
	width: 100%;
	margin: 16px 0 0 0;	
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.excurslistblock, .excurslistblock_row{
	position: relative;
	width:23%;
	margin: 10px 1% 1% 1%;
	height: 230px;
	overflow: hidden;
	text-align: center;	
}
.excurslistblock a, .guidelistblock a{display: block; width: 100%; height: 100%;}
.excurslistblock_row{width:98%;}
.excurslistblock span, .excurslistblock_row  span, .guidelistblock span{
	position: absolute;
	bottom: 0;
	height: 40px;
	left: 0;
	width: 100%;
	color: white;
	font-weight: bold;
	font-size: 1em;
	background: #000;
	opacity: 0.75;
	padding-top: 5px;
}
.excurssubtitlerow{
	width: 100%;
	display: flex; 
	justify-content: space-around;
	flex-flow: row wrap;
	margin: 20px 0;
	padding: 20px 0;
	border-bottom: 1px solid #F32F5C;
	border-top:  1px solid #F32F5C;
}
.excurssubtitlerow span{
	color: 	#F32F5C;
	font-size: 16px;
	font-weight: bold;
	margin: 20px;
}
/*=================PLACES====================================*/
.place-anchor1, .place-anchor2{
	width: 100%; margin: 10px 0;
}
.place-anchor2{
	background: var(--secondary-color4); margin: 0;
}
.place-anchor-inner{
	width: calc(100% - 20px); 
	display: flex; 
	align-items: center;
}
.place-anchor-innertext{
	width:calc(100% -  30px);
	text-overflow: ellipsis; 
	white-space: nowrap; 
	overflow: hidden;
}
.pls_count{width: 30px;}
#places_maindiv, #places_tablodiv{
	width: 100%;
	height: calc(100vh - 170px); 
	overflow: hidden;   
    padding: 0;	
}
#places_tablodiv{
	height: calc(100vh - 270px);
	display: flex;
}
#places_leftpanel{
	height: 100%; 
	overflow: auto;
}
/*=================TOURS====================================*/
	

#catslider{
	max-height: 165px;
	overflow: hidden;
	/*max-width:1160px;*/
	margin:auto;
}
#hottourdiv{
	position:relative;
	background-color: #7a7e7c; 
	margin: 10px auto;
	padding: 5px;
}
#hottourwowdiv{
	position:absolute;
	top: -10px;
	left:30px;
	width: 100px;
}
#hottourwowdiv img{width: 100%}
#hottourcaption{
	position:relative;
	height: calc(100% - 20px); 
	margin-bottom: 11px; 
	margin-top: 9px; 
	overflow: hidden; 
	padding: 0; 
	color: #333;
}
#hottourcaption_shadow{ 
	display: none;
	position: absolute;
	top: 20px;
	left: 10px;
	width: 90%;
	height: 120px;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;		
	
}
#hottourtitle, #hottourtitle_shadow{
	overflow: hidden; 
	text-overflow: ellipsis; 
	padding-left: 13px; 
	padding-top: 0px; 
	font-size: 30px; 
	color: white; 
	margin-bottom: 0; 
	margin-top: -10px;
}
#hottourtitle_shadow{
	font-weight: bold;
	color: yellow;
}
#hottournote, #hottournote_shadow{
	min-height: 90px;  
	padding-left: 13px; 
	padding-top: 0px; 
	color: white; 
	text-overflow: ellipsis;
}
#hottournote_shadow{
		font-weight: bold;
		color: yellow;
	}
.label-tour-category, .label-tour-cost, .label-tour-night{
	position: absolute;	
	height: 40px;
	border-radius: 20px;
	color: white;
	font-weight: bold;
	font-size: 1em;
	background: var(--primary-color);
	padding: 10px;		
}
.label-tour-category{
	bottom: 5px;
	left: 5px;
}
.label-tour-cost{
	top: 5px;
	left: 5px;
}
.label-tour-night{
	right: 5px;
	top: 5px;
}

.card-tour-title, .card-tour-body, .card-tour-footer{
	width: 100%;
	padding: 10px;
	overflow: hidden;
}
.card-tour-title{
	text-align: center;
	font-size: 1.2em;
	font-weight: 600;
	color:var(--primary-color);
}
.card-tour-body{height: 90px; margin-bottom: 10px;}
.card-tour-footer{text-align: center;font-weight: 600; border-top: solid 1px var(--primary-color);}
#trl_main_grid{
	display: grid;
	grid-template-areas:
	"pic pic price"
	"pic pic price"
	"pic pic inc"
	"pic pic inc"
	"other cats adds"
	"other days adds";
	grid-template-rows:
		calc(75vw / 4)
		auto
		calc(75vw / 4)
		auto
		auto
		auto;
	grid-template-columns: 
		1fr
		3fr 
		1fr;
	grid-gap: 20px;	
	height: auto;
	margin: 20px;
}
#trl_pic{
	grid-area: pic;
}
#trl_cats{
	grid-area: cats;
	padding: 0 10px;
}
#trl_price{
	grid-area: price;
	padding: 0 10px;
}
#trl_inc{
	grid-area: inc;
}
#trl_add{
	grid-area: adds;
}
#trl_days{
	grid-area: days; 
}
#trl_other{
	grid-area: other; 
}
.trl_grid_block{
	/*background: var(--primary-color4);*/
}
#trl_mainpic{
	position:relative;
	width: 100%;
	height: 100%;	
}
#trl_counter{
	position: absolute;
	top: 20px;
	left: 20px;	
	height: 40px;
	border-radius: 20px;
	color: white;
	font-weight: bold;
	font-size: 1em;
	background: var(--primary-color);
	padding: 10px;
}
#trl_season{
	position:absolute;
	width: calc(100% - 20px);
	text-align:center;
	bottom: 20px;
	left: 10px;
	color: #fff;
	display:flex;
	justify-content: center;
}
#trl_season_inner, #trl_season_info{
	height: 40px;
	border-radius: 20px;
	color: white;
	font-weight: bold;
	font-size: 1em;
	background: var(--primary-color);
	padding: 10px;
	width: fit-content;
}
#trl_season_info{width: 40px; display: none; cursor:pointer;}
#trl_season_info i{
	color: white;
	font-weight: bold;	
	font-style: italic;
	font-stretch:ultra-expanded;
	font-size: 1.5em;	
}
#trl_note{
	position:absolute;
	width: calc(100% - 20px);;
	max-height: 50%;
	overflow: hidden;
	padding: 1vw 1vw;
	font-weight: 600;
	font-size: 1em;
	color: #e0e0e0;
	bottom: 70px;
	left:10px;;
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000;
	border-radius: 20px;
}
#trl_note:hover{
	color: var(--main-fontcolor);
	background: var(--primary-color4);
	border: solid 1px var(--primary-color3);
	text-shadow: none;
}
#trl_note *{
	font-weight: 600;
	font-size: 1em;
	color: #e0e0e0;
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000;
}
#trl_note:hover *{
	color: var(--main-fontcolor);
	text-shadow: none;
}
#trl_title{
	position:absolute;
	width: 100%;
	padding: 1vw 1vw;
	top: 50px;
	left: 0;
}
#trl_pricediv{
	/*height: calc(100% - 145px);*/
}
#addTextShow, #closeLargeText{
	cursor: pointer;
	padding: 10px;	
}
#addTextShow:hover, #closeLargeText:hover{
	border-radius: 20px;
	color: white;
	font-weight: bold;
	background: var(--primary-color);

}
.toursubtitlerow{
	width: 100%;
	display: flex; 
	justify-content: center;
	flex-flow: row wrap;
	margin: 5px 0;
	padding: 5px 0;

}
.toursubtitlerow span{
	color: 	var(--main-fontcolor);
	font-size: 13px;
	margin: 5px;
	border-radius:10px;
	background:var(--primary-color4);
	border: soid 1px var(--primary-color3);
	padding: 5px;
}
.trl_placecard{
	width: calc(50% - 20px);
	height: 100px;
	position: relative;
	margin: 10px;
	border: solid 3px var(--primary-color3);
	border-radius: 10px;
}
.trl_placecard_title{
	position: absolute;
	width: 100%;
	padding: 10px;
	top: 10px;
	left: 0;
	font-weight: 600;
	font-size: 1em;
	color: #e0e0e0;
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000;	
}
.trl_placecard_review{display: none;}
.sg_img_circle{
	border-radius: 50%; 
	overflow: hidden; 
	display: flex;
	justify-content: center;
	align-items: center;
}
.sg_img_circle img{ width: 150%;}
.tlr_daypicture{
	float: left;
	width: 200px;
	height: 200px;
	margin: 0 20px 20px 0;
}
.trl-tourpic{
	width: calc(50% - 20px);
	height: 100px;
	margin: 10px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border: solid 3px var(--primary-color3);
    border-radius: 10px;
}
.trl-tourpic img{ width: 120%;}
.trl_catlabel{
	max-width: 25%;
	width: 200px;
}
.trl_catlabel img{ width: 100%;}
.trl_tourlabel{
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    border-radius: 10px;
    margin: 10px;
    padding: 10px;	
    border: solid 3px var(--primary-color3);
	width: calc(100% - 20px);
    max-width: 330px;
    height: 450px;
}
.trl-hoteldiv, .trl-eventdiv{
	width: calc(100% - 100px); 
	margin-left: 100px;
	padding:0;
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
}
.daytext > img:not([trl_topimg]), #trl_largeText * > img{
	max-width:98%;
	height:auto;
}
/*=================HOTELS====================================*/
.searchfield{
	width: calc(100% - 20px);
	margin: 10px;
}
#searchfield_line{
	position: absolute;
	z-index: 800;
	left: 30px;
	width: calc(100% - 60px);
	max-height: 200px;
	overflow:hidden;
	display: none;
	background: #fff;
}
.searchfield-line{
	width: 100%;
	padding: 5px;
	border-bottom: solid 1px #e0e0e0;
	cursor:pointer;
}
.searchsel{
	width: calc(100% - 40px); margin:0 20px; max-width:unset;
}
.htl-col3block{flex-grow:1;}
.sg_card_hotel{
	width: calc(16% - 20px);
	display: flex;
	flex-flow: column nowrap;
	margin: 10px;
	border: solid 3px var(--primary-color);
	border-radius: 10px;
}
.sg_card_hotel_img{
	position: relative;
	width: 100%;
	height: 210px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
.sg_card_hotel_img img{width: 150%;}
.sg_card_hotel_title{
	position: absolute;
	top: 0;
	left:0;
	padding: 10px;
	color: var(--secondary-color-2);
	font-weight: bold;
	font-size: 1.4em;
	text-shadow: 2px 1px 0 #fff, 0 0 1em var(--secondary-color3-2);
	text-transform:uppercase;
	font-stretch:ultra-expanded;
}
.sg_card_hotel_line{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: absolute;
	bottom: 0;
	left:0;
	height: 30px;
	width: 100%;
	background: #fff;
	padding: 0 10px;	
}
.sg_htl_tip, .sg_card_hotel_line i{
	line-height: 2;  font-size: 24px; vertical-align: middle; margin: 0 5px;
}
.sg_card_hotel_footer{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px;	
}
.sg_card_hotel_footer span{
	color: var(--primary-color);
	font-size: 15px;
	font-weight: 600;
}
/*hotel*/
#htl_leftside, #htl_rightside{
	width: calc(50% - 450px);
	padding: 1em 20px;
}
#htl_centerside{
	width:900px; 
	background: #fff;
	padding: 1em 20px;
}
#htl_titlephoto{
	width: 330px; 
	float: left; 
	margin: 10px 20px 20px 10px;
}
#htl_titlebox{
	width: calc(100% - 370px); 
	float: right;
	padding: 1em 20px;
}
#htl_titletop span{
	font-size: 18px;
	font-weight: 600;	
}
#htl_titlestar i{
	font-size: 20px; 
	margin: 10px;
	color: gold;
}
#htl_titlestar i.nostar{
	font-size: 20px; 
	margin: 10px;
	color: grey;
}
.star-big-yes, .star-big-no{
	font-size: 2em;
	margin: 20px;
	color: var(--primary-color);
}
.star-big-no{
	color: var(--secondary-color3);
}
.htl_bage{
	font-size: 22px; 
	margin: 10px;
}
.htl_album{
	height:150px;
	width:auto;
	margin: 10px;
	box-shadow: 5px 5px 15px var(--secondary-color4);
}
.htl_titleblock{
	
}
.htl_actbttn, .htl_actbttn1{width: calc(33% - 10px);}
/*=================FLATS====================================*/

.sg_card_flat{
	width: calc(25% - 20px);
	display: flex;
	flex-flow: column nowrap;
	margin: 10px;
}
.sg_card_flat_img{
	position: relative;
	width: 100%;
	height: 250px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
.sg_card_flat_pic{width: 140%;}
.sg_card_flat_title{
	position: absolute;
	top: 0;
	left:0;
	padding: 10px;
	color: var(--secondary-color-2);
	font-weight: bold;
	font-size: 1.2em;
	text-shadow: 2px 1px 0 #fff, 0 0 1em var(--secondary-color3-2);
}
.sg_card_flat_line{
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	position: absolute;
	bottom: 0;
	left:0;
	height: 40px;
	width: 100%;
	background: #fff;
	padding: 0 10px;	
}
.sg_card_flat_line img{
	height: 28px;
}
#flt_main_grid{
	display: grid;
	grid-template-areas:
	"path pic"
	"note pic"
	"pics pics"
	"maindatas map"
	"rooms near"
	"rules rules"
	"services services";
	grid-template-rows:
		65px
		191px
		150px
		320px
		auto
		auto
		auto;
	grid-template-columns: 
		1fr
		1fr;
	grid-gap: 20px;	
	height: auto;
	width: 100%;
	max-width: 960px; 
	margin: 20px auto;
}
#flat-path{
	grid-area: path;
	width: 100%;
	background: #fff;
	padding: 10px 0;	
}
#flat-path div{
	border-top: solid 1px;
	border-bottom: solid 1px;
	padding: 10px;	
}
#flat-pic{
	grid-area: pic;
	display:flex;
	overflow: hidden;
	justify-content: center;
	align-items: center;
}
#flat-pic img{width: 100%;}
#flat-note{grid-area: note;}
#flat-pics{
	grid-area: pics;
	display:flex;
	justify-content: center;
	overflow: auto;
}
#flat-pics img{height: 130px; margin: 0 10px;}
#flat-datas{grid-area: maindatas;}
#flat-map{grid-area: map;}
#flat-rooms{grid-area: rooms;}
#flat-near{grid-area: near;}
#flat-services{grid-area: services;}
#flat-rulles{grid-area: rules;}
/*=================TRANSPORT====================================*/
.transphoto{width: 100%;}
.transblock{
	margin: 20px;
	display:flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	width: calc(50% - 40px);
	min-width: 200px;
	
}
.transblock-title{
	display:flex;
	align-items:center;
	justify-content: space-between;
	padding-right: 10px;
	width: 100%;
}
.transblock-text{
	display:flex;
	flex-flow: column nowrap;
	width: 100%;
	height: 150px;
}
.transblock-link{
	width: 100%;
	text-align: center;
	color: var(--secondary-color2-2);
	text-decoration: none;
	font-size: 1.3em;
}
.transblock-link:hover{color: var(--primary-color1);}
.transsection{
	width: 50%;
	display:flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin: 0;
	padding: 0;
}
/*avia*/
.aviablock{
	width: 25%;
	padding: 10px;
}
.aviasection{
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	flex-flow: row wrap;
	justify-content: spase-between;
}
.aviacontainer{
	width: 100%;
	max-width: 1200px;
	margin: auto;
	display: flex;
	flex-flow: column nowrap;	
}
/*trains*/
.trainshed_title{
	width: 100%;
	float: left;
	padding: 10px 0;
	border-bottom: solid 1px var(--primary-color2);
}
.trainshed_title-train{
	float: left;
	width: 225px;
	display:flex;
	justify-content:
	space-around;
}
.trainshed_title-train-num{width: 75px; color: var(--secondary-color-2);}
.trainshed_title-train-name{
	width: calc(100% - 75px);
	text-align: center;
	color: var(--primary-color);
}
.trainshed_title-note{float:right; width: 225px; display:flex;}
.trainshed_title-note-inner{width: 100%;  text-align: center;}
.trainshed_title-time{
	float: left;
	width: calc(100% - 450px);
	display:flex;
	justify-content: space-around;
}
.trainshed_title-time-inner{width: 25%; text-align: center;}
/*buses*/
.card_bus{
	display: flex;
	flex-flow: column nowrap;
	width: 100%;
	max-width: 560px;
	margin: 20px auto;
	align-items: stretch;
	border: solid 1px var(--dark-color);
	background: var(--primary-color4);
}
.card_bus_row{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items:center;
}
.card_bus_row div{
		padding: 10px;
}
.cbr_title, .cbr_footer{	
	border-bottom: solid 1px var(--dark-color);
	background: var(--secondary-color4-2);
}
.cbr_title{justify-content: flex-start;}
.cbr_title div{font-weight: bold;}
.cbr_subtitle{
	justify-content: flex-start;
}
.cbr_subtitle div{font-style: italic; font-size: 0.9em;}
.cbr_timeline{
	justify-content: center;
	align-items: stretch;
}
.cbr_timeline div{
	padding: 10px;
	margin: 10px;
	background: #fff;
	color:  var(--primary-color);
	font-weight: 600;
	font-size: 1.1em;
	text-align: center;
}
/*=================EVENTS====================================*/
.evt_promoblock *{
	font-size: 1em;
	font-weight: bold;
	color: var(--primary-color1);	
}
.sg_card_evt{
	width: 350px;
	display: flex;
	flex-flow: column nowrap;
	margin: 10px;	
}
.sg_card_evt_img{
	position: relative;
	width: 350px;
	height: 200px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;	
}
.sg_card_evt_pic{width: 110%;}
.sg_card_evt_title{
	position: absolute;
	top: 0px;
	left:10px;
}
.sg_card_evt_title img{
	width: 75px;
}
.sg_card_evt_date{
	position: absolute;
	top: 25px;
	left: 12px;
	background: #61bd4f;
	color: #fff;
	font-size: 1.3em;
	font-weight: bold;
	text-align:center;
	width: 72px;
}
.sg_card_evt_cat{
	position: absolute;
	top: 10px;
	right: 10px;
	background: #61bd4f;
	display: flex;
	justify-content: center;
	align-items: center;

	text-align:center;
	width: 3em;
	height: 3em;
	border-radius: 1.5em;
}
.sg_card_evt_cat i{
	color: #fff;
	font-size: 2em;
	font-weight: bold;	
}
.sg_card_evt_line{
	color: var(--secondary-color-2);
	font-weight: bold;
	font-size: 1.2em;
	text-shadow: 2px 1px 0 #fff, 0 0 1em var(--secondary-color3-2);	
	position: absolute;
	bottom: 0;
	left:0;
	height: auto;
	width: 100%;
	padding: 10px;
	text-align:center;
	
}
#evt_topiv_pic{margin-right: 20px;}
#evt_topiv_pic{min-height: calc(50vw / 19 * 6); margin-right: 20px;}
#evt_titlephoto{width: 100%;}
.evt_labelstr{
	width: 30%;
	display: flex;
}
.evt_labelico{
	display: flex;
	justify-content: center;
	align-items:center;
	background: var(--secondary-color);
	width: 50px;
	height: 50px;
	border-radius: 25px;
	margin: 10px;
}
.evt_labelico i{
	font-size: 36px;
	font-weight: 600;
	color: #fff;
}
.evt_labelstr_inner{
	width: calc(100% - 70px);
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}
.evt_labelstr_name{
	font-size: 16px;
	color:var(--primary-color1);
}
.evt_labelstr_value{
	font-size: 18px;
	color: var(--dark-color);
}
#evt_label{
	display: flex;
	justify-content: space-evenly;
	align-items:center;
	width: 100%;
	padding: 20px;
}
/*=================COMPANIONS====================================*/
.cmp_card{
	max-width: 360px;
	width: 100%;
	display:flex;
	flex-flow: column nowrap;
	margin: 20px;
	position: relative;
}
.cmp_card_title, .cmp_card_date{
	width: 100%;
	padding: 10px;
	display:flex;
	justify-content:space-evenly;
}
.cmp_card_date{
	background: var(--secondary-color-2);
}
.cmp_card_date span{
	width: 48%;
	color: #fff;
	text-align: center;
}
.cmp_card_title span{
	width: 48%;
	font-size: 1.1em;
	font-weight: 600;
	text-align: center;
}
.cmp_card_note{
	width: 100%;
	padding: 10px;
	border: solid 1px var(--secondary-color3-2);
}
.cmp_card_info{
	width: 100%;
		
}
.cmp_card_subtitle{
	background: var(--secondary-color-2);
	color: #fff;
	font-weight: 600;
	text-align: center;	
	padding: 5px 10px;
}
.cmp_card_info_text{
	padding: 5px 10px;
}
.cmp_card_act{
	display:flex;
	padding: 5px 10px;
	align-items: center;
	justify-content:center;
}
/*=================GUIDES====================================*/
.guidtablo, .guidmap{	height: 600px;}
.landguidediv{
	font-size: 14px;
	color: var(--primary-color);
	font-weight: 600;
	border: 1px solid var(--primary-color);
	border-radius: 15px;
	background: var(--secondary-color4);
	height: 30px;
	display:flex;
	justify-content: center;
	align-items:center;
	margin: 10px;
	padding: 0 10px;
}
.guideflt{
	padding: 5px;
}
#guideflt-panel{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;	
}
.guidelistblock{
    position: relative;
    width: 330px;
    margin: 14px 5px;
    height: 330px;
    overflow: hidden;
    text-align: center;
}
.guidelistblock-city, .guidelistblock-reit{
	position: absolute;
	top: 10px;
	text-align:center;
	color: #fff;
	background: var(--primary-color);
	font-weight: bold;
	font-size: 17px;
	padding: 10px 20px;
}
.guidelistblock-city{
	left: 0;
	border-radius: 0 20px 20px 0;
}
.guidelistblock-reit{
	right: 0;
	border-radius: 20px 0 0 20px;
}
.guideriet-footer{
	margin: 10px 10px 20px 0;
	display:flex;
	justify-content: space-between;
	border-bottom: 1px solid;
	padding-bottom: 10px;
}
.guideriet-footer span{
	font-size: 1.1em;
	font-weight: 600;
}
/*to global*/
.accordion-item-header {
  padding: 10px 15px;
  background: var(--dark-color);
  color: #fff;
  cursor: pointer;
}
.accordion-item-content {
  background: #fff;
  display: none;
}
.accordion-item.show .accordion-item-content {
  padding: 10px 15px;
  display: block;
}
.accordion-item.show .accordion-item-header {
  background: #da4453;
  color: #fff;
}
.accordion-item {
  margin-bottom: .25rem;
}
.accordion-item:last-child {
  margin-bottom: 0;
}
.sg_row_list{
	width: 100%;
	background: #fff;
	padding:  0.5em 20px;
}
.sg_row_list_row{
	width: 100%;
	height: 30px;
	position: relative;
    display: flex;
	justify-content: space-between;
    padding: 0;
    margin: 0.5em 0;
    background: #D3D4DA;
    color: #444;
    text-decoration: none;
}
.sg_row_list_row span{
	display: inline-flex;
    align-content: center;
    justify-content: center;
    align-items: center;
	height: 30px;
}
.sg_row_list_row span.ls{
	padding-left: 10px;
	max-width:calc(100% - 60px);
}
.sg_row_list_row span.rs{
	width: 50px;	
    background: #9097A2;
    color: #fff;
}
.h-fonetitle{
	font-size: 3em;
	color: var(--primary-color);
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000;
	font-weight: bold;
	display:flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items:center;
}
.h-fonetitle span.rs{
	color: var(--secondary-color);
	font-size: 0.6em;
	text-shadow:inherit;
	margin-top: 20px;
}
.table-bigbord {
	width: 100%;
	margin-bottom: 20px;
	border: 15px solid var(--primary-color4);
	border-top: 5px solid var(--primary-color4);
	border-collapse: collapse; 
}
.table-bigbord th {
	font-weight: bold;
	padding: 5px;
	background: var(--primary-color4);
	border: none;
	border-bottom: 5px solid var(--primary-color4);
}
.table-bigbord td {
	padding: 5px;
	border: none;
	border-bottom: 5px solid var(--primary-color4);
}
.sg_tabs{
	overflow: auto;
	height: 675px;
	width: 100%;
	max-width: 1200px;
	margin: auto;
}
.sg_tabs > div{
	padding-top:10px;
}
.sg_tabs ul{
	margin:0px;
	padding:0px;
}
.sg_tabs ul:after{
	content:"";
	display:block;
	clear:both;
	height:5px;
	background:#8B8989;
}
.sg_tabs ul li{
	margin:0px;
	width: calc(20% - 30px);
	height: 38px;
	cursor:pointer;
	display:block;
	float:left;
	padding:10px 15px;
	background:#e9eaeb;
	color:#707070;
}
.sg_tabs ul li.active, .sg_tabs ul li.active:hover{
	background:#8B8989;
	color:#fff;
}
.sg_tabs ul li:hover{
		background:#d6d6d7;
	}
@media screen and (max-width:1200px){
	#trl_main_grid{
		grid-template-areas:
		"pic pic price"
		"pic pic price"
		"pic pic inc"
		"other cats inc"
		"other days adds";
		grid-template-rows:
			calc(75vw / 4)
			auto
			calc(75vw / 4)
			auto
			auto;
		grid-template-columns: 
			25%
			calc(50% - 40px) 
			25%;
	}
	.trl_placecard {max-width: 170px;}
	.trl-tourpic {max-width: 120px;     height: 100px;}
	.trl_catlabel{
		max-width: unset;
	}
	.tlr_daypicture {
		width: 150px;
		height: 150px;
	}
	.trl-hoteldiv, .trl-eventdiv{
		width: calc(100% - 30px); 
		margin-left: 30px;
	}	
	.sg_card_hotel2{display: none;} 
	.sg_card_hotel{width: calc(20% - 20px);}
	.transblock-text{height: 170px;}
	.transblock-title h2{font-size: 1.4em;}
}
@media screen and (max-width:1120px){
	#lefttopexcurs{
		display: none;
	}
	.sg_card_flat{width: calc(33% - 20px);}
	.guidelistblock{width: 300px; height: 300px;}
}
@media screen and (max-width:1020px){
	.transblock-title h2{font-size: 1.2em;}
	.guidelistblock{width: 250px; height: 250px;}
.guidelistblock-city, .guidelistblock-reit{
	font-size: 14px;
	padding: 10px 10px;
}
.guidelistblock-city{
	border-radius: 0 15px 15px 0;
}
.guidelistblock-reit{
	border-radius: 15px 0 0 15px;
}
.guideriet-footer{
	margin: 10px 10px 20px 0;
	padding-bottom: 5px;
}
.guideriet-footer span{
	font-size: 1.0em;
}
	
}
@media screen and (max-width:960px){
	.sg_card_hotel3{display: none;} 
	.sg_card_hotel{width: calc(25% - 20px);}	
	#trl_main_grid{
		grid-template-areas:
			"pic pic inc"
			"pic pic inc"
			"price price adds"
			"cats cats adds"
			"days days adds"
			"other other other";
		grid-template-rows:
			calc(75vw / 4)
			calc(75vw / 4)
			auto
			225px			
			auto
			auto;
		grid-template-columns: 
			25%
			calc(50% - 40px) 
			25%;
	}
	h3{font-size: 1.2em;}
	div.selectBox { width:calc(100% / 3);}
	.lastexcurslistblock{display: none;}
	.excurslistblock{
		width:31%;
		margin: 1%;
		height: 230px;
	}	
	.trl_tourlabel {
		width: calc(33% - 20px);
		max-width: 330px;
		height: 450px;
	}
	#trl_season{
		position:absolute;
		width: calc(100% - 20px);
		text-align:center;
		bottom: 20px;
		left: 10px;
		color: #fff;
		display:flex;
		justify-content: space-between;
		padding: 0 20px;
	}
	#trl_season_info{display: block;}
	#trl_note{
		display: none;
		color: var(--main-fontcolor);
		background: var(--primary-color4);
		border: solid 1px var(--primary-color3);
		text-shadow: none;
		overflow:auto;
	}
	#trl_note *{
		color: var(--main-fontcolor);
		text-shadow: none;
	}
	#htl_rightside, #htl_leftside{display:none;}
	.htl_actbttn1{width: 280px;}
	.htl_actbttn{width: calc(50% - 145px);}
	#flt_main_grid{padding: 10px;}
	.transsection{width: 100%;}	
}
@media screen and (max-width:870px){
	.guidelistblock{width: 220px; height: 220px;}
}
@media screen and (max-width:860px){
	.sg_card_hotel3, .sg_card_hotel2{display: flex;} 
	.sg_card_hotel{width: calc(33% - 20px);}
	.sg_card_flat{width: calc(50% - 20px);}
	#trl_main_grid{
		grid-template-areas:
			"pic pic pic"
			"price inc inc"
			"cats cats cats"
			"days days adds"
			"other other other";

		grid-template-rows:
			calc(75vw / 4 * 3)
			auto
			225px			
			auto
			auto;
		grid-template-columns: 
			calc(50% - 40px)
			25%			 
			25%;
	}	
	#e_top_title h1{font-size: 2em;	}
	#e_top{
	width: 100%;
	height: calc(100vw / 4 * 3);
	position: relative;
	padding: 0;
	margin: 0;
}
	#leftside-showexcurs{
		width:100%; 
		text-align: left; 
		border-right: solid 0px; 
		padding-right: 0px; 
	}
	#rightside-showexcurs, #mibew-showexcurs2{
		display: none;
	}
	#photoexcurs{
		display: block;
	}	
	.chskcat{display:none;}
	.chsktype{display:none;}
	.pls_count{display:none;}
	#hottourcaption{ display: none;}
	#hottourcaption_shadow{  display: block;}
	#hottourdivimg{height: 150px;}
	#hottourdiv{height: 150px; padding:0;}
	#hottourwowdiv{
		right:30px;
		left: unset;
	}	
	.trl_placecard {
		width: calc(100% - 20px);
		height: 150px;
		max-width: unset;
	}
	#flt_main_grid{
		display: grid;
		grid-template-areas:
		"path"
		"pic"
		"note"
		"pics"
		"maindatas"
		"map"
		"near"
		"rooms"
		"services"
		"rules";
		grid-template-rows:
			65px 
			auto
			auto
			150px
			350px
			350px
			auto
			auto
			auto
			auto;
		grid-template-columns: 
			1fr;
		padding: 10px;
	}
	.sg_tabs ul li{
		width: calc(20% - 30px);
		height: 57px;
	}
	.trainshed_title-train{width: 50%; margin-bottom: 10px;}
	.trainshed_title-note{width: 50%;}
	.trainshed_title-time{width: 100%; border-top: solid 1px var(--primary-color3); padding: 10px 0;}
	#evt_topiv_pic{height: auto; margin-bottom: 20px;margin-right: unset;}
	#evt_topiv_map{height: calc(100vw / 4 * 2); margin:0;}
	#evt_label{
		display: flex;
		flex-flow: column nowrap;
		justify-content: flex-start;
		align-items:flex-start;
		padding: 0 20px;
	}	
	.evt_labelstr{width: 100%;}	
	.evt_labelico{
		width: 30px;
		height: 30px;
		border-radius: 15px;
	}	
	.evt_labelico i{font-size: 24px;}
	.evt_labelstr_inner{
		width: calc(100% - 50px);
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items:center;
	}
	.evt_labelstr_name{width: 100px; margin: 0 20px;}

}
@media screen and (max-width:780px){
	.guidelistblock{width: 200px; height: 200px;}
}
@media screen and (max-width:723px){
	#trl_main_grid{
		grid-template-areas:
			"pic"
			"price"
			"inc"
			"cats"
			"days"
			"adds"
			"other";

		grid-template-rows:
			calc(100vw / 4 * 3)
			auto
			auto			
			auto
			auto
			auto
			auto;
		grid-template-columns: 
			100%;
	}
	div.selectBox { width:calc((100% - 170px) / 2);}
	#e_top_city, #e_top_qmax, #e_cost{
		font-size: 14px;
		padding: 6px;
		border-radius: 16px;		
	}	
	#e_top_title h1{font-size: 2em;	}
	.trl_placecard {
		width: calc(33% - 20px);
		height: 150px;
	}	
	#htl_titlephoto{
		width: calc(100% - 20px); 
		margin: 10px 10px 20px 10px;
	}
	#htl_titlebox{
		width: 100%; 
		padding: 1em 20px;
	}
	.htl_album{
		height:unset;
		width:calc(50% - 30px);
	}	
	.aviablock{width: 50%;}
	.sg_tabs ul li{
		min-width: calc(33% - 30px);
		height: 38px;
	}
	.guidelistblock{width: 250px; height: 250px;}
}
@media screen and (max-width:660px){
	.trl_tourlabel {
		width: calc(50% - 20px);
		max-width: unset;
	}
	.guidtablo{	height: 400px;} 
	.guidmap{	height: 600px;}	
	#guideflt-panel{
		padding: 0;
		justify-content: flex-start;
	}	
}
@media screen and (max-width:620px){
	#e_top_title h1{font-size: 1.5em;	}	
	.sg_card_hotel{width: calc(50% - 20px);}
	.sg_card_hotel3, .sg_card_hotel2{display: none;}
		.guidelistblock{width: 220px; height: 220px;}
}
@media screen and (max-width:560px){
	.ilink{display: none;}
	div.selectBox { width:calc(100% / 2);}
	.lastexcurslistblock1{display: none;}
	.excurslistblock{width:48%;}	
	.div-picrow{
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: center;
	}
	#e_top_title h1{font-size: 3em;	}
	#hottournote_shadow{display: none;}	
	.trl-tourpic {
		max-width: unset;
		width:calc(33vw - 36px);
		height: calc(25vw - 36px);
	}
	.h-fonetitle {font-size: 2.3em;}
	#trl_season_inner, #trl_season_info {
		font-weight: normal;
		font-size: 0.8em;
	}
	#trl_season {
		width: calc(100% + 30px);
		bottom: 10px;
		left: -15px;
	}
	#trl_note {
		padding: 10px;
		font-weight: normal;
		font-size: 10px;
		overflow:auto;
	}
	#trl_note *{
	font-weight: normal;
    font-size: 10px;
	}
	.htl_actbttn1{width: 90%;margin: 10px auto;}
	.htl_actbttn{width: calc(50% - 20px); margin: 10px;}
	.sg_card_flat{width: calc(100% - 20px);}
	.sg_card_flat_img{height: 350px;}
	.sg_tabs ul li{
		width: calc(100% - 30px);
		height: 38px;
	}
	.cbr_timeline div{
		padding: 10px; 
		margin: 5px;
		font-weight: 600;
		font-size: 1em;
	}
	.cbr_title{flex-flow: row wrap;}
	.guidelistblock{width: 200px; height: 200px;}	
}
@media screen and (max-width:510px){
	.guidelistblock{width: 150px; height: 150px;}
	.guidelistblock-city, .guidelistblock-reit{
	font-size: 12px;
	padding: 5px 5px;
}
.guidelistblock-city{
	border-radius: 0 10px 10px 0;
}
.guidelistblock-reit{
	border-radius: 10px 0 0 10px;
}	
}
@media screen and (max-width:425px){
	.excurslistblock{
		width:100%;
		margin: 10px 0;
	}
	#e_top_title h1{font-size: 2em;	}
	.h-fonetitle {font-size: 2em;}
	.trl_placecard {
		width: calc(50% - 20px);
		height: 120px;
	}
	.trl-hoteldiv, .trl-eventdiv {
		width: 100%;
		margin-left: 0;
	}
	.tlr_daypicture {
		width: 90vw;
		margin:auto;
		height: 70vw;
		border-radius: unset;
	}
	.trl_tourlabel {
		width: calc(100% - 20px);
	}
	.trl-tourpic {
		width:calc(50vw - 40px);
		height: calc(35vw - 36px);
	}
	#trl_counter {
		top: 10px;
		left: 10px;
		height: 30px;
		border-radius: 15px;
		font-weight: normal;
		/*font-size: 0.8em;*/
		padding: 5px;
	}
	.sg_card_hotel{width: calc(100% - 20px);}
	.sg_card_hotel4{display: none;} 	
	#trl_days > h2 span.rs{display:block; margin-top: 10px;}
	.aviablock{width: 100%; padding: 20px 30px;}
	.guidelistblock{width: 120px; height: 120px;}
}
@media screen and (max-width:480px){
	.trainshed_title-train{width: 100%;}
	.trainshed_title-note{width: 100%;}
	.transsection{flex-flow: column nowrap;}
	.transblock{width: calc(100% - 40px);}	
}
@media screen and (max-width:425px){
	.trainshed_title-time-inner{font-size: 0.8em;}
	.cbr_timeline div{
		padding: 5px; 
		font-size: 0.9em;
	}	
}
@media screen and (max-width:360px){
	.h-fonetitle {font-size: 1.5em;}
	#trl_counter {
		top: 5px;
		left: 5px;
		width: calc(100% - 10px);
		font-size: 0.9em;
	}
	.sg_row_list{padding:  0.5em 10px;}
}