.icon80 img {
	width: 100%;
	height: 100%;
}

.wrapper_program_list, .wrapper_articles, .wrapper_versions {
	overflow: hidden;
	margin-bottom: 35px;
}

.overflow {overflow: hidden;}

.absolute_link {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

/*title: start*/
.title_block {
	position: relative;
	margin-bottom: 16px;
}

.title_block  .headline {
	/*padding-right: 100px;*/
	color: #333;
	border-bottom: 1px solid #c7c7c7;
	font: 300 28px "Roboto Condensed", "Segoe Ui", "Helvetica Neue", "Ubuntu", "Roboto", "Arial", "Helvetica", sans-serif;
	
}
.title_block  .headline a {
	text-decoration: none;
}

.title_block .headline > span {
	display: inline-block;
	position: relative;
	padding-right: 16px;
	padding-bottom: 10px;
}

.title_block .headline > span:before {
	content: '';
	display: block;
	width: 100%;
	height: 3px;
	position: absolute;
	bottom: -1px;
	left: 0;
	background-color: #0078d7;
}

.title_block .all_link {
	display: inline-block;
	position: absolute;
	top: 4px;
	right: 0;
	font-size: 14px;
	line-height: 24px;
	font-weight: 300;
	padding: 0 8px;
	color: #fff;
	background-color: #0078d7;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
/*title: end*/

/*top block info: start*/
.main_container .top_info {
	margin-bottom: 8px;
	overflow: hidden;
}

.top_info > div {overflow: hidden;}

.top_info .icon80 {
	float: left;
	margin-right: 20px;
}

.icon80 {
	width: 80px;
	height: 80px;
}

.top_info .icon80 img {
	width: 100%;
	height: 100%;
}

.icon80.small {
	position: relative;
	overflow: hidden;
}

.icon80.small .blur_bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-size: 100%;
	-webkit-filter: blur(20px);
	-moz-filter: blur(20px);
	-o-filter: blur(20px);
	-ms-filter: blur(20px);
	filter: blur(20px);
}

.icon80.small img {
	width: 48px;
	height: 48px;
	position: relative;
	z-index: 10;
	margin: 12px auto 0;
	padding: 4px;
	background: #fff;
	display: block;
}

h1 {
	font-size: 34px;
	line-height: 45px;
	margin-top: 0;
	display: inline-block;
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

.teaser {
	color: #777;
	font: 300 22px "Roboto Condensed", "Segoe Ui", "Helvetica Neue", "Ubuntu", "Roboto", "Arial", "Helvetica", sans-serif;
	overflow: hidden;
	margin-top: 4px;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.teaser.teaser2 {font-size: 20px;}
.teaser.teaser3 {font-size: 18px;}
/*top block info: end*/

/*navigation: start*/
.program_nav {
	width: 100%;
	position: relative;
	margin-bottom: 20px;
	font: 300 0 "Roboto Condensed", "Segoe Ui", "Helvetica Neue", "Ubuntu", "Roboto", "Arial", "Helvetica", sans-serif;
	border-bottom: 1px solid #bfc3c7;
}

.program_nav a {
	position: relative;
	display: inline-block;
	padding: 0 16px 10px;
	font-size: 28px;
}

.program_nav a:first-child {padding-left: 0;}

.program_nav a.active {
	cursor: default;
	color: #000;
}

.program_nav a.active:before {
	content: '';
	display: block;
	height: 3px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	background-color: #0078d7;
}

.program_nav a:hover {text-decoration: none;}
/*navigation: end*/

/*articles: start*/
.article_block {
	float: left;
	width: 178px;
	height: 241px;
	margin-right: 20px;
	line-height: 24px;
	overflow: hidden;
	position: relative;
	border: 1px solid transparent;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.article_block:hover:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100;
	border: 1px solid #ccc;
}

.article_block:hover .article_title, .article_block:hover h3 {border-color: #fafafa;}

.article_block.wide {width: 200px;}

.article_block:last-child {margin-right: 0;}

.article_block img {
	height: 112px;
	width: 100%;
	display: block;
	object-fit: cover;
	border-bottom: 3px solid #0078d7;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.article_block h3, .article_block .article_title {
	padding: 17px 15px;
	height: 127px;
	width: 100%;
	font-size: 16px;
	position: relative;
	overflow: hidden;
	border: 1px solid #e6e6e6;
	background-color: #fafafa;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-weight: 300;
}
/*articles: end*/

/*program list: start*/
.wrapper_program_list .list {
	overflow: hidden;
	margin: 0 -10px -20px;
}

.wrapper_program_list .item {
	float: left;
	width: 178px;
	height: 298px;
	margin: 0 10px 20px;
	position: relative;
	border: 1px solid #e6e6e6;
	background-color: #fafafa;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.wrapper_program_list .item.wide {width: 200px;}

.wrapper_program_list .item:hover {border-color: #ccc;}

.wrapper_program_list .item .info {
	padding: 16px;
	position: relative;
	height: 185px;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.wrapper_program_list .item .label_free, .wrapper_programs .item .label_free, .item.wide .label_free {
	position: absolute;
	z-index: 1000;
	bottom: 7px;
	right: 18px;
	font-size: 14px;
	text-transform: uppercase;
	color: #689f38;
	background-color: #fafafa;
}

.wrapper_program_list .item .label_free:before {
	content: '';
	display: block;
	width: 15px;
	height: 17px;
	position: absolute;
	z-index: 1;
	left: -15px;
	background: -moz-linear-gradient(top, rgba(250,250,250,0) 0%, rgba(250,250,250,1) 40%);
	background: -webkit-linear-gradient(top, rgba(250,250,250,0) 0%,rgba(250,250,250,1) 40%);
	background: linear-gradient(to left, rgba(250,250,250,1) 0, rgba(250,250,250,0) 39px);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00fafafa', endColorstr='#fafafa',GradientType=1 );
}

.article_block h3:before, .article_title:before {
	content: '';
	display: block;
	height: 20px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 50;
	background: -moz-linear-gradient(top, rgba(250,250,250,0) 0%, rgba(250,250,250,1) 50%);
	background: -webkit-linear-gradient(top, rgba(250,250,250,0) 0%,rgba(250,250,250,1) 50%);
	background: linear-gradient(to bottom, rgba(250,250,250,0) 0%,rgba(250,250,250,1) 50%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00fafafa', endColorstr='#fafafa',GradientType=0 );

}

.wrapper_program_list .item .top {
	background-color: #fff;
	text-align: center;
	padding: 15px 0 12px;
}

.wrapper_program_list .item .top .icon80 {margin: 0 auto;}

.wrapper_program_list .title {
	font-size: 18px;
	margin-bottom: 5px;
	line-height: 22px;
	/*max-height: 46px;*/
	/*overflow: hidden;*/
	font-weight: 400;
}

.stars {
	width: 73px;
	height: 12px;
	overflow: hidden;
	margin-bottom: 10px;
	background: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2273%22%20height%3D%2212%22%20viewBox%3D%220%200%2073%2012%22%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill%3A%239a9a9a%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Ctitle%3Egrey_stars%3C%2Ftitle%3E%3Cpolygon%20class%3D%22a%22%20points%3D%226.5%200%208.51%203.95%2013%204.58%209.75%207.66%2010.52%2012%206.5%209.95%202.48%2012%203.25%207.66%200%204.58%204.49%203.95%206.5%200%22%2F%3E%3Cpolygon%20class%3D%22a%22%20points%3D%2221.5%200%2023.51%203.95%2028%204.58%2024.75%207.66%2025.52%2012%2021.5%209.95%2017.48%2012%2018.25%207.66%2015%204.58%2019.49%203.95%2021.5%200%22%2F%3E%3Cpolygon%20class%3D%22a%22%20points%3D%2236.5%200%2038.51%203.95%2043%204.58%2039.75%207.66%2040.52%2012%2036.5%209.95%2032.48%2012%2033.25%207.66%2030%204.58%2034.49%203.95%2036.5%200%22%2F%3E%3Cpolygon%20class%3D%22a%22%20points%3D%2251.5%200%2053.51%203.95%2058%204.58%2054.75%207.66%2055.52%2012%2051.5%209.95%2047.48%2012%2048.25%207.66%2045%204.58%2049.49%203.95%2051.5%200%22%2F%3E%3Cpolygon%20class%3D%22a%22%20points%3D%2266.5%200%2068.51%203.95%2073%204.58%2069.75%207.66%2070.52%2012%2066.5%209.95%2062.48%2012%2063.25%207.66%2060%204.58%2064.49%203.95%2066.5%200%22%2F%3E%3C%2Fsvg%3E') no-repeat;
	margin-top:4px;
}

.stars .fill {
	height: 12px;
	overflow: hidden;
}

.stars img {
	display: block;
	margin: 0;
}

.wrapper_program_list .description {
	line-height: 22px;
	font-weight: 300;
}

.wrapper_program_list .version, .item.wide .version {
	font-size: 13px;
	color: #999;
	position: absolute;
	bottom: 8px;
	left: 16px;
	z-index: 1000;
}
/*program list: end*/

/*set: start*/
.wrapper_set .item {
	float: left;
	margin-left: 20px;
	width: 277px;
	height: 290px;
	position: relative;
	background-color: #fafafa;
	border: 1px solid #e6e6e6;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.wrapper_set .item:hover {border-color: #ccc;}

.wrapper_set .item.wide {
	margin-left: 0;
	width: 376px;
}

.wrapper_set .wrapper_image {
	height: 154px;
	width: 100%;
	overflow: hidden;
	position: relative;
}

.wrapper_set .wrapper_image img {
	width: 100%;
	height: 154px;
	display: block;
	object-fit: cover;
}

.wrapper_set .info {
	padding: 16px 8px 16px 16px;
	height: 135px;
	position: relative;
	overflow: hidden;
	border-top: 1px solid #e6e6e6;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.wrapper_set .icon48 {
	margin-right: 12px;
	float: left;
}

.wrapper_set .title {
	font-size: 20px;
	margin-bottom: 3px;
	font-weight: 400;
}

.wrapper_set .relative {
	height: 50px;
	overflow: hidden;
	position: relative;
}

.wrapper_set .stars {
	position: absolute;
	margin-top: 1px;
}

.wrapper_set .description {
	line-height: 22px;
	font-weight: 300;
	max-height: 48px;
	overflow: hidden;
	position: relative;
	margin-top:12px;
}

.wrapper_program_list .item:before, .left_column .wide .info:before {
	content: '';
	display: block;
	width: 100%;
	height: 52px;
	position: absolute;
	z-index: 1;
	top: 244px;
	right: 0;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fafafa+0,fafafa+100&0+0,1+100 */
	background: -moz-linear-gradient(top,  rgba(250,250,250,0) 0%, rgba(250,250,250,1) 40%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(250,250,250,0) 0%,rgba(250,250,250,1) 40%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(250,250,250,0) 0%,rgba(250,250,250,1) 40%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00fafafa', endColorstr='#fafafa',GradientType=1 ); /* IE6-9 */
}

.wrapper_program_list .item .description {
	max-height: 68px;
	/*overflow: hidden;*/
	position: relative;
}

.wrapper_program_list .item .description:before {top: 68px;}
/*set: end*/

/*tags: start*/
.wrapper_tags a {
	display: block;
	float: left;
	margin-right: 8px;
	margin-bottom: 8px;
	color: #000;
	font-weight: 300;
	line-height: 31px;
	padding: 0 15px;
	background-color: #f5f5f5;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
/*tags: end*/

/*main styles for service pages: start*/
.adst2 {padding-top: 0;}

.adst3, .adst1 {
	padding: 0;
	margin: 0 0 20px 22px;
}

.top_b {
	width: 100%;
	margin-bottom: 20px;
}

.main_container .top_info {margin-bottom: 30px;}


.wrapper_cnt {width: 640px;}
/*main styles for service pages: end*/