.mainblock h2 {
	margin-bottom:0;
	border-top: 1px solid #e8e8e8;	
	position:relative;
	border-bottom: none;	
}
.mainblock h2.nav{
	border-top: none;	
	border-bottom: 1px solid #e8e8e8;	
}
.mainblock h2.title{
	border-top: none;	
	border-bottom: 1px solid #e8e8e8;	
}
.mainblock>.content>.page_more>h2{
	cursor:pointer;
}

.mainblock h2 a.switcher{
	display:block;
	width:15px;
	height:15px;
	position:absolute;
	top:30px;
	right:0;
	background: url(../images/sprite.png) -85px 0 no-repeat;
	opacity:0.5;
	transition:0.25s linear opacity;
}
.mainblock h2 a.switcher.open{
	background-position: -100px -3px;
}
.mainblock h2:hover a.switcher{
	opacity:1;
	transition:0.25s linear opacity;
}

.page_more .twocol{
	padding:20px 0;
}

.output{
	border-top: 1px solid #e8e8e8;	
	padding:20px 0;
	display:none;
}

.program, .jury {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 30px;
    width: auto;
}
.jury{
	width: auto !important;
}
.program .item{
	padding-bottom: 36px;
}
.item a{
	text-decoration: none;
}
.jury .item{
	float: none;
	width: auto !important;
	margin: 0 0 24px 0 !important;
}
.program .item>a>img, .jury .item>a>img{
	display:block;
	width:260px;
	height:174px;
}
.program .item h3, .jury .item h3{
	text-transform: uppercase;
    margin: 16px 0 6px 0;
    padding:0;
}
.program .item.winner h3 a{
	display:block;
	padding-left:28px;
	position:relative;
}
.program .item.winner h3 a:before{
	display:block;
	content:'';
	position:absolute;
	width:24px;
	height:24px;
	left:0;
	top:1px;
	background: url(../images/winner.png) 0 0 no-repeat;
}
.program .item.winner h3 a .baloon{
	position:absolute;
	left:-10px;
	top:-7px;
	width:260px;
	opacity:0;
	transition:0.25s linear opacity;
}
.program .item.winner h3 a:hover .baloon{
	opacity:1;
	transition:0.25s linear opacity;
}
.program .item.winner h3 a .baloon>div{
	background:#5B8BCD;
	color:#fff;
	padding:16px;
	text-transform: none;
	font-size:14px;
	font-weight:bold;
	position:absolute;
	left:0;
	bottom:0px;
}
.program .item.winner h3 a .baloon:after{
	display:block;
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 6px 0 6px;
	border-color: #5b8acd transparent transparent transparent;
	position:absolute;
	left:16px;
	bottom:-6px;
}/*5b8acd*/
.program .item h3.etitle{
    margin: 14px 0 6px 0;
}
.program .item .about{
    margin: 0 0 6px 0;
}
.speakers_list, .films_list{
	margin:10px 0 0 0;	
}

.program .item i{
	display:block;
	margin:10px 0 0 0;	
}

.program .item .films_list span.film_title{
	text-transform: uppercase;
}
.program .item .award {
	font-style: italic;
}

.divprogram h2, .divpartners h2{
	font-size:20px;
	border-bottom: 1px solid #e8e8e8;	
	height: 44px;
	margin-bottom:14px;
	padding-bottom: 0;
}
.divprogram h2:first-child, .divpartners h2:first-child{
	border-top: none;	
	padding-top: 0;
}


@media screen and  (max-width:970px) {
	.program, .jury {
	    grid-template-columns: 1fr 1fr 1fr;
	    grid-column-gap: 12px;
	}
	.mainblock h2 {
		width: 100vw;
   		border-bottom: 1px solid #e8e8e8;
	}
	.mainblock h2 a.switcher {
		right: 30px;
	}
	.output{
		border: none;
	}
}
@media screen and  (max-width:640px) {
	.program, .jury {
		width: 100% !important;
	    grid-template-columns: 1fr 1fr;
	    grid-column-gap: 12px;
	}
}


@media screen and  (max-width:500px) {
	.program .item h3, .jury .item h3{
		font-size: 22px;
	}
	.program .item{
		margin-bottom: 14px;
	}
}