body{ background-color: #f3f3f3; }

.section .body{ width:auto; max-width:1200px; }
.header{ background-color:#fff; padding-bottom:40px; position: fixed; top: 0; left: 0; right: 0; width: 100%; margin: auto; z-index: 130; box-shadow: 0 0px 5px #b5b1cd;}
.header .body{ padding-top:25px; padding-left:20px; padding-right:20px; margin-bottom:0; }


.section-bslides, .events-e-list {
    min-height: 500px;
    margin-top: 103px;
}

/*
.section-bslides:before { 
    content: '';
    display: block;
    padding-bottom: 41.666%;
    box-sizing: border-box;
    background: blue;
    max-width: 1200px;
    max-height: 500px;
    margin: auto;
    overflow: hidden;
}
*/

/*
#bslides {
    position: relative;
}
*/
/*
.section-bslides:after {
    content: '';
    display: block;
    padding-bottom: 41.666%;
    box-sizing: border-box;
    background: blue;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    max-width: 1200px;
    max-height: 500px;
    margin: auto;
    overflow: hidden;
}
*/

.bslide{ width:100%; }
.bslide a{ text-decoration:none; display:block; }

.sandwich{ position:absolute; top:50%; transform: translate(0,-50%); right:20px; line-height:1; z-index:30; display:none; width:30px; height:30px; transition:all .2s; }
.sandwich::before,.sandwich::after{ position:absolute; border-color:#444; content:''; left:0; width:100%; height: 50%; box-sizing: border-box; border-style: solid; border-width:4px 0 2px; }
.sandwich::after{ border-width:2px 0 4px; top:50%; }
.sandwich:hover{ width:36px; margin-right:-3px; }

.section-search{ text-align:center; margin-bottom:3em; position:relative; z-index:108; margin-top:-55px; font-size:100%; }
.section-search .qw { display:inline-block; width:50%; max-width:700px; box-sizing:border-box; line-height:1; }
.events-tiles .home-search .q,
.section-search .home-search .q
{
	width:100%;
	box-sizing:border-box;
	border-radius:3px;
	-webkit-appearance:none;
	-moz-appearance: none;
}
.section-search .body{ padding:0 3em; }
.section-search .home-search{ font-size:100%; margin:0 auto; padding:3.5em 20px; border-radius:3px; box-shadow:0 2px 2px rgba(0,0,0, .2); }
.section-search .home-search .q{ border-style:solid; border-width:1px; border-radius:0; }
.home-search .btn-e-search{ border-radius:3px; box-shadow:none; background-image:none !important; }

.events-tiles{ padding:0 3em; }

.ev-tile{ display:inline-block; width:33.333%; margin:0 0 3.5em; vertical-align:top; text-align:left; height:335px; position:relative; }
.ev-tile .tile-foot{ cursor:text; position:absolute; bottom:10px; z-index:3; margin:0 15px; box-sizing:border-box; max-width:90%; overflow:hidden; }
.ev-tile .tile-info{ padding:13px 15px; }
.ev-tile .tile-content{cursor:pointer; background-color: #fff; height:100%; border-style:solid; border-width:0 0 1px; border-color:#cce; position:relative; }
.ev-tile .tile-content::after{ pointer-events:none; box-sizing:border-box; position:absolute; top:0; left:0; width:100%; height:100%; border-color:#ccd; border-width:0; border-style:solid; content:''; transition: border-width .2s; }
.ev-tile .tile-content:hover::after{ border-width:5px 5px 4px; border-color:#f63; }
.home-e-list .ev-tile:nth-child(3n+1) .tile-content{ margin:0 2em 0 0; }
.home-e-list .ev-tile:nth-child(3n+2){  }
.home-e-list .ev-tile:nth-child(3n+2) .tile-content{ margin:0 1em; }
.home-e-list .ev-tile:nth-child(3n+3) .tile-content{ margin:0 0 0 2em; }
.tile-image{ min-width:100%; max-width:100%; width:100%; position:relative; padding-bottom:47.87234042553191%; background-size:cover; background-position:left top; background-repeat:no-repeat; background-color:#d1d5de; box-shadow:inset 0 0 50px rgba(0,0,0,.15); }
.tile-date, .tile-place{ font-size:130%; margin:0 0 6px; }
.tile-place{ font-size:120%; line-height:1.5; }
.tile-title{ font-size:170%; line-height:1.15; padding:0; margin:0 0 .5em; overflow:hidden; max-height:40px; text-overflow:ellipsis; }
.tile-title .full-title{ display:none; }
.tile-title .link,
.tile-title .link:hover,
.tile-title .link:focus{ color:#000; }
.tile-place, .tile-tags{  }
.tile-foot{ font-size:120%; }
.tile-tags{ overflow:hidden; white-space:nowrap; text-overflow: ellipsis; }
.tile-tag{ display:inline-block; color:#99b; padding:0 .6em .3em 0; }
.tile-price{ position:absolute; top:10px; right:10px; font-size:150%; color:#000; background-color:#fff; padding:5px 10px; opacity:.9; }

.tiles-actions{ text-align: center; }
.tiles-actions .view-all{ font-size:190%; display:inline-block; padding:.7em 1.6em; border-style:solid; border-width:2px; color:#15b3f5; border-color:#15b3f5; background-color:#fff; transition: background-color .24s; border-radius:5px;  }
.tiles-actions .view-all:hover,
.tiles-actions .view-all:focus{ background-color:#15b3f5; color:#fff; }

.section-servicestats{ font-size:150%; text-align:center; }
.section-servicestats .body{ padding:0 0 2em; }

.events-e-list .tile-content{ overflow:hidden; position:relative; }
/* .events-e-list .tile-content:before{ position: absolute; z-index:2; width:100%; width:calc(100% - 8px); height:75px; left:4px; bottom:4px; background-image:linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1) 70%); content:''; } */

.footer .body{ padding-top:40px; }

.barr{position:absolute; top:0; height:100%; width:10%; max-width:150px; cursor:pointer; opacity:.3; z-index:108; background-size:contain; }
.barr:hover{ opacity:1; }
.barr-prev{ left:0; background:url(/img/barrPrev.png) no-repeat 50% 50%, linear-gradient(to right, rgba(255,255,255,.1), rgba(255,255,255,0)); }
.barr-next{ right:0; background:url(/img/barrNext.png) no-repeat 50% 50%, linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,.1)); }

/* /events/ catalogue */
.section-pbn{ background-image:none; padding:0; margin:0 0 30px; }
.section-pbn .body{ padding:0; }
.section-pbn .tfe-recommends{ position:absolute; left:0; top:-15px; width:100%; text-align:center; font-size:110%; color:#999; opacity:.5; }

.events-e-list{ padding:3em; }
.events-e-list .narr-col{ width:33.3%; padding-right:30px; box-sizing:border-box; }
.events-e-list .wide-col{ width:66.7%; box-sizing:border-box; }

.events-e-list .qw{ display:block; width:100%; padding:0; margin:0 0 10px; }
.events-e-list .e-search{ position:relative; margin-bottom:30px; }
.events-e-list .e-search .q{ box-sizing:border-box; width:100%; display:block; padding:13px 50px 13px 17px; border-radius:0; margin:0; border-style:solid; border-width:1px; font-size:18px; border-color:#ccccee; }
.events-e-list .e-search .q-notempty{ padding-right:80px; }
.events-e-list .e-search .q:hover{ color:#444; border-color:#bbbbdd; }
.events-e-list .e-search .q:focus{ color:#000; border-color:#aaaacc; }
.events-e-list .e-search .big-button{ opacity:.9; font-size:0; position:absolute; right:17px; top:13px; z-index:3; width:28px; height:28px; border-width:0; border-radius:0; background-image:url(/img/zoom-icon.png); background-color:transparent; margin:0; }
.events-e-list .e-search .big-button:hover,
.events-e-list .e-search .big-button:focus{ opacity:1; box-shadow:none; }
.search-examples{ margin-left:17px; font-size:110%; line-height:1.25;}
.search-examples .for-example{ color:#999;  } 
.search-examples a{ color:#9292c2;  } 
.search-examples a:hover,
.search-examples a:focus{ color:#f63;  } 

.events-e-list .reset-form{ position:absolute; right:50px; margin-top:-13px; font-size:0; padding:0; width:24px; height:24px; }
.events-e-list .reset-form:before,
.events-e-list .reset-form:after{ position:absolute; top:50%; left:0; z-index:3; content:''; width:100%; height:1px; background-color:#bbbbdd; transform: rotate(45deg); }
.events-e-list .reset-form:after{ transform: rotate(-45deg);  }
.events-e-list .reset-form:hover::before,
.events-e-list .reset-form:hover::after{ background-color:#f63; }
.events-e-list .reset-form:hover{ background-color:transparent; }

.events-e-list .ev-tile{ width:50%; }
.events-e-list .ev-tile:nth-child(2n+1) .tile-content{ margin:0 1.5em 0 0; }
.events-e-list .ev-tile:nth-child(2n+2) .tile-content{ margin:0 0 0 1.5em; }

.e-filters{ border-width:0; padding:0; background-color:#eeeef2; }
.e-filters .filter-group{ margin:0; }
.e-filters .filter-group .h{ position:relative; cursor:pointer; background-color:#dfdff0; font-weight:normal; color:#7d7d9c; text-shadow:1px 1px #fff; padding:11px 17px; margin:0 0 1px; border-style:solid; border-width:1px 0 0; border-color:#f9ac93; line-height:1;  }
.e-filters .filter-group .list{ padding:11px 17px; margin-bottom:0; }
.e-filters .filter-group-closed .list{ display:none; }
.filter-group { position: relative; }
.filter-group .current-double{cursor:pointer; position:absolute; right:34px; top:13px; z-index:4; max-width:40%; overflow:hidden; text-overflow:ellipsis; white-space: nowrap; padding-left:24px; }

.filter-group .arr{	position: absolute; top:50%; margin-top:-2px; right:17px; width:8px; display:block; }
.filter-group .arr:after {	top: 100%;	left: 50%;	border: solid transparent;	content: " ";	height: 0;	width: 0;	position: absolute;	pointer-events: none;	border-color: rgba(167, 167, 180, 0);	border-top-color: #a7a7b4;	border-width: 7px;	margin-left: -7px;}

.layout-switcher{ display:none; text-align:right; position:absolute; bottom:100%; right:3px; z-index:2; margin-bottom:5px; }
.layout-switcher .switch{ display:inline-block; line-height:0; font-size:0; width:14px; margin-left:6px; }
.layout-switcher .switch,
.layout-switcher .switch i{ position:relative; }
.layout-switcher .switch-current:after{ content:''; border-style:solid; border-width:1px; border-color:#bbbbdd; backgruond-color:#fff; position:absolute; top:-3px; left:-3px; width:calc(100% + 4px); height:calc(100% + 3px); }
.layout-switcher .switch i{ z-index:2; }
.switch-to-tiles i{ width:50%; display:inline-block; height:5px; margin:0 0 2px; background-color:#bbbbdd; box-sizing: border-box; border-style:solid; border-width: 0 1px; border-color:#f3f3f3; }
.switch-to-tiles.switch-current i{ background-color:#f63; }
.switch-to-rows i{ width:100%; display:inline-block; height:5px; margin:0 0 2px; background-color:transparent; box-sizing: border-box; border-style:solid; border-width: 1px 1px 1px 7px; border-color:#bbbbdd; }
.switch-to-rows.switch-current i{ border-color:#f63; }

.e-search .filters-toggler{ display:none; }

.e-filters .filter-group .sub-aslist{ padding-top:0; margin-top:-11px; }

/* снятие выбранного фильтра */
.remove-filter-inline{ display:inline-block; width:16px; height:16px; position:absolute; margin-left:8px; opacity:.75; background-color:#a7a7b4; }
.remove-filter-inline:hover,
.remove-filter-inline:focus
{ opacity:1; background-color:#f63; }
.remove-filter-inline:before,
.remove-filter-inline:after{ position:absolute; width:80%; height:2px; top:50%; left:50%; content:''; background-color:#f3f3f3; transform:  translate(-50%, -50%) rotate(45deg);}
.remove-filter-inline:after{ transform: translate(-50%, -50%) rotate(-45deg); }

.remove-filter-head{ margin-left:0; left:0; }

/* активный раздел в главном меню */
.header .current span.link{ border-bottom-width:0; cursor:default; }
.header .current span.link:hover{ color:#444; }

/* расположение в горизонтальные ряды не дружит с узким окном, поэтому включим его только от Nрх */
@media(min-width:720px){
	.events-e-list .layout-switcher{ display:block; }
	.events-e-list .ev-tile-row{ margin:0 0 3em; width:100%; min-height:none; height:auto; }
	.events-e-list .ev-tile-row .tile-content{ clear:both; padding-right:0; margin-left:0 !important; margin-right:0 !important; width:100%; display:block; min-height:0; height:auto; height:185px; }
	.events-e-list .ev-tile-row .tile-content .tile-image{ float:left; min-width:0; max-width:none; width:372px; height:185px; padding:0; }
	.events-e-list .ev-tile-row .tile-content .tile-info{ float:left; box-sizing: border-box; padding-left:15px; width:48%; width:calc(100% - 372px); }
	.events-e-list .ev-tile-row .tile-price{ right:calc(100% - 372px); margin-right:10px; }
	.events-e-list .ev-tile-row .tile-foot{ left:372px; max-width:46%; margin-left:15px; }
	/* .events-e-list .ev-tile-row .tile-content:before{ width:calc(100% - 372px); left:372px; } */
}
/**/

@media(min-width:961px){
	.header .menu{ display:block !important; }
}

@media(max-width:1200px){
	.header .menu{ right:20px; }
	.section-front .body{ padding-left:20px; }
	.section-footer .body,
	.footer .body{ padding-left:20px; }
}

@media(max-width:1280px){
    .section-bslides {
        min-height: 41.666667vw;
    }
}

@media(max-width:1100px){
	.events-e-list .narr-col,
	.events-e-list .wide-col{ width:100%; float:none; display:block; padding:0; position:relative; }
	.events-e-list .e-filters{ display:none; position:absolute; top:50px; right:0; z-index:5; width:90%; max-width:270px; font-size:12px; }
	.events-e-list.filters-shown .e-filters{ display:block; }
	
	/* переключатель фильтров на узких экранах */
	.events-e-list .qw{ padding-right:44px !important; box-sizing:border-box; width:auto; }
	.events-e-list .qw .filters-toggler{ display:block; cursor:pointer; opacity:.75; position:absolute; top:0px; right:0; width:43px; height:100%; background-color:#bbbbdd; font-size:0; }
	.events-e-list .qw .filters-toggler:hover{ opacity:1; }
	.events-e-list .qw .filters-toggler:before{ position:absolute; content:''; background-color:#f3f3f3; width:6px; height:6px; left:15%; bottom:15%; }
	.events-e-list .qw .filters-toggler:after{ position:absolute; content:''; border-color:#f3f3f3; width:6px; height:6px; right:15%; bottom:15%; border-style:solid; border-width:0 6px;}
	.events-e-list .e-search button.big-button{ right:54px; }	
	.events-e-list .reset-form{ right:85px; }
	/**/	
	
}

@media(max-width:960px){
	
	.events-tiles .home-e-list .ev-tile{ width:50%; margin:0 0 3.5em; }
	.events-tiles .home-e-list .ev-tile .tile-content{ margin:0; }
	.events-tiles .home-e-list .ev-tile:nth-child(odd) .tile-content{ margin:0 1em 0 0; }
	.events-tiles .home-e-list .ev-tile:nth-child(even) .tile-content{ margin:0 0 0 1em; }		
	
	.tfe-logo{ max-width:200px; }
	.header .menu{ display:none; }
	.header .sandwich{ display:block; }
	.header .lang-links{ display:none; }
	
	.header .body{ position:static; margin-bottom:0; padding-bottom:0; }
/*	.header{ position:relative; }*/
	.header .menu{ 	  display:none; 	  position: absolute !important; 	  top:108%; 	  right:7px; 	  z-index:109; 	  background-color:#fff !important;	  overflow:hidden !important;	  min-height:220px !important;	  margin:0 !important;	  padding:20px 0 0;	  width:calc(100% - 14px);	  box-shadow:0 0 7px 0 rgba(0,0,0,.5);	}
	
	.menu .item-languages .language-menu{ position:static; display:inline; margin:0; opacity:1; transform:none; box-shadow:none; }
	.menu .item-languages .language-menu .lang{ display:inline-block; }
	.menu .item-languages .language-menu .lng-link{ padding:3px 6px; }
	.menu .item-languages{ float:left; }
	.menu .item-languages .icon{ display:none; }
	.menu .item-languages .ml-icon{ margin-right:2px; }
	.menu .item-languages .current-language{ border-radius:3px; padding:3px 6px; background-color:rgba(0,0,0,.2); }
	.item-createevent{ clear:both; }
	
	.main{ margin-bottom:0; }
	.push{ display:none; }
	.footer{ height:auto; padding-bottom:100px; }
	.footer .footer-info{ padding-left:0; padding-right:0; }

	.menu .item{ display:block !important; margin:0 20px 20px; }	
	.section-front { padding-top:80px; padding-bottom:80px; }
    .section-bslides {        margin-top: 65px;    }
}

@media(max-width:800px){

	.section-front{ padding-top:60px; padding-bottom:60px; }
	.section-front .what-for,
	.section-front #slidePager	{ display:none; }
	.footer .footer-links{ display:block; width:auto; }
}

@media(max-width:728px){
  .section-pbn{ padding:0; margin-top:-30px; margin-left:-3em; margin-right:-3em; background-color:transparent;  }
  .section-pbn .tfe-recommends{ display:none; }
  .section-pbn .body #slyder{ width:100%; max-width:728px; background-color:transparent; }
  .section-pbn .slyde,
  .section-pbn .slyde img{ max-width:100%; background-color:transparent; height:auto !important;}
  .section-pbn .slyde img{ height:auto; }
}


@media(max-width:640px){
	.tfe-logo{ max-width:170px; }	
	.section-front{ padding-top:40px; padding-bottom:40px; }
	.section-front .front-heading{ font-size:4.5px;}
	.section-bslides{ padding:0; }
	.section-search{ margin-top:2em; }
	.section-search .home-search{ padding:10px; }
	.section-search .home-search .qw{ width:80%; }
	.section-search .home-search .q { padding:.5em .6em; margin-right:0;}
	.section-search .home-search .btn-e-search{ padding:.8em 0; text-align:center; line-height:1; font-size:130%; text-shadow:none !important; width:17%; margin-left:0; }
	.ev-tile{ height:290px; }
}

@media(max-width:480px){
	.header{ padding-bottom:23px; }
	.tfe-logo{ max-width:170px; margin-left:-5px; }	

	.section-search{ margin-bottom:2em; }	
	.events-tiles .home-e-list .ev-tile,
	.events-e-list .ev-tile
	{ width:100%; margin:0 0 2em; height:auto; min-height:auto; }	
	.events-tiles .home-e-list .ev-tile .tile-content,
	.events-e-list .ev-tile .tile-content
	{ margin:0; padding-bottom:3em; }
	.events-tiles .home-e-list .ev-tile:nth-child(odd) .tile-content,
	.events-e-list .ev-tile:nth-child(odd) .tile-content
	{ margin:0; }
	.events-tiles .home-e-list .ev-tile:nth-child(even) .tile-content,
	.events-e-list .ev-tile:nth-child(even) .tile-content
	{ margin:0; }
	.ev-tile .tile-title{ max-height:none; }	
	.ev-tile .tile-title .short-title{ display:none; }	
	.ev-tile .tile-title .full-title{ display:inline; }	
	
	.events-e-list{ margin-top:67px; }
	.events-e-list .e-filters{ width:100%; max-width:none; }

	.events-e-list .e-search .q	{ font-size:15px; }
	.events-e-list .e-search .big-button{ top:11px; }
	
	.promoted-event .visit-promoted-event{ font-size:170%; }
	
	.section-front .btn-register-main{ font-size:5px; max-width:85%; }
	.section-front .bg{ max-width:85%; }
	
	.ui-cool-popup{ border-width:0; border-radius:0; }
	.ui-cool-popup .wrappedContent{ max-width:340px !important; }
	.ui-widget .nameContainer,
	.ui-widget .valueContainer
	{ font-size:11px; float:none !important; display:block !important; text-align:left !important; margin:0 0 .8em; width:auto !important; }
	.ui-cool-popup .auth-window{ padding:10px !important; }
	
	.footer .languages{ left:39%; }
}