/*
	Reset by Eric Meyer
	http://meyerweb.com/eric/tools/css/reset/
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

sup, sub {
	font-size: 70%;
	vertical-align: baseline;
	position: relative;
}

sup {
	top: -0.4em;
}

sub {
	bottom: -0.4em;
}

/*
	Main styles
*/

@font-face {
	font-family: "Flaticon";
	src: url("../fonts/flaticon.eot");
	src: url("../fonts/flaticon.eot#iefix") format("embedded-opentype"),
	url("../fonts/flaticon.woff") format("woff"),
	url("../fonts/flaticon.ttf") format("truetype"),
	url("../fonts/flaticon.svg") format("svg");
	font-weight: normal;
	font-style: normal;
}

html {
	width: 100%;
}

body {
	background: #fff;
	color: #000;
	position: relative;
	padding-bottom: 15px;
}

body, textarea, input, select {
	font: 12px/16px Arial, Verdana, Tahoma;
}

p {
	margin: 10px 0 0 0;
}

ul, ol, dl {
	margin: 5px 0 5px 20px;
}

blockquote {
	margin: 10px 0 0 20px;
	font-style: italic;
}

pre {
	font: 14px/18px "Courier New", Courier, monospace;
	color: #333;
	margin: 10px 0;
}

a {
	color: #000;
}

a:hover {
	text-decoration: none;
}

hr {
	border: 0;
	border-bottom: 1px solid #ddd;
	height: 1px;
	margin: 10px 0;
}

/*
	Global styles
*/

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.overflow {
	overflow: hidden;
}

.more {
	text-decoration: none;
}

/*
	Layonts
*/

#top {
	background: #2d3249;
	width: 100%;
}

#wrapper {
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	width: 1000px;
}

#page {
	float: left;
	margin: 20px 0 0;
	overflow: hidden;
	width: 100%;
}

#content {
	float: left;
	margin: 0 0 0 20px;
	width: 480px;
}

#aside {
	float: left;
	margin: 0;
	width: 280px;
}

#right {
	float: left;
	margin: 0 0 0 20px;
	width: 200px;
}

footer {
	display: block;
	background-color:#2D3249;
	/*border-top:5px solid #939598;*/
	color: #fff;
	border-top: 2px solid #ddd;
	margin: 20px 0;
	overflow: hidden;
	width: 100%;
}

#upartners {
	border-top: 2px solid #ddd;
	font: 12px/16px Arial;
	text-align: center;
	width: 100%;
}

#partners {
	margin: 20px 0;
	overflow: hidden;
	width: 100%;
}

/*
	Header
*/

header {
	display: block;
	height: 110px;
	margin: 0 auto;
	width: 1000px;
}

/* Logo */

#logo {
	float: left;
	display: inline;
	height: 80px;
	margin: 15px 0 0;
	width: 300px;
}

	#logo h1, #logo h2 {
		display: block;
		height: 80px;
		font: 2em Verdana, Tahoma, Geneva;
		position: relative;
		width: 300px;
	}

		#logo h1 span, #logo h2 span {
			background: url("../images/logo_be.png") right 0 no-repeat;
			height: 80px;
			left: 0;
			position: absolute;
			top: 0;
			width: 300px;
		}

			#logo h1.lang_en span, #logo h2.lang_en span {
				background-image: url("../images/logo_en.png");
			}

		#logo h1 a, #logo h2 a {
			display: block;
			text-decoration: none;
		}

/* Tools */

#tools {
	float: right;
	height: 100px;
	width: 300px;
}

	#tools .auth {
		float: right;
		font: 11px/12px Arial;
		margin: 6px 10px 0 5px;
	}

		#tools .auth li {
			float: left;
			margin: 0 5px;
		}

			#tools .auth li a {
				color: #ddd;
			}

	#tools .lang {
		float: right;
		margin: 0 0 0;
		width: 105px;
	}

		#tools .lang li {
			float: left;
			margin: 0 0 0 3px;
		}

			#tools .lang li a {
				background: #949598;
				color: #fff;
				display: block;
				padding: 2px 5px 3px;
			}

				#tools .lang li.active a {
					background: #4b4f60;
					text-decoration: none;
				}

	#tools .form {
		float: left;
		margin: 30px 0 0 0;
		width: 300px;
	}

		#tools .form input.text {
			background: #545867;
			border: 0;
			color: #fff;
			float: left;
			font: 12px/20px Arial;
			height: 24px;
			margin: 1px 0 0 10px;
			width: 220px;
		}

		#tools .form input.button  {
			background: #939597;
			border: 0;
			color: #2d3248;
			cursor: pointer;
			float: left;
			font: bold 14px/25px Arial;
			height: 25px;
			margin: 1px 0 0 3px;
			padding: 0;
			text-align: center;
			width: 60px;
		}

/* Menu */

nav {
	display: block;
	background: #939598;
	float: left;
	height: 35px;
	width: 100%;
}

	#menu ul {
		font: 15px/35px Arial;
		height: 35px;
		list-style-type: none;
		margin: 0 auto;
		width: 1000px;
	}

		#menu ul li {
			float: left;
			margin: 0;
			position: relative;
		}

			#menu ul li a {
				color: #fff;
				display: block;
				padding: 0 10px;
			}

				#menu ul li a:hover, #menu ul li a.active, #menu ul li a.hover {
					background: #484a5d;
				}

				#menu ul li ul {
					background: #474a5d;
					display: none;
					float: left;
					font: 14px/30px Arial;
					height: auto;
					left: 0;
					margin: 0;
					position: absolute;
					width: 150px;
					z-index: 1;
				}

					#menu ul li ul li {
						height: 30px;
						text-transform: none;
						width: 150px;
					}

						#menu ul li ul li a {
							color: #fff;
							height: 30px;
							text-decoration: none;
							padding: 0 10px;
						}

						#menu ul li ul li a:hover, #menu ul li ul li a.active {
							background: #636880;
						}

				#menu ul li#item_about ul,
				#menu ul li#item_about ul li {
					width: 260px;
				}
				
				#menu ul li#item_campaigns ul,
				#menu ul li#item_campaigns ul li {
					width: 260px;
				}

				#menu ul li#item_publications ul,
				#menu ul li#item_publications ul li {
					width: 500px;
				}
				
				#menu ul li#item_podcasts ul,
				#menu ul li#item_podcasts ul li {
					width: 260px;
				}

/*
	Content
*/

/* Sidebar */

#aside .topnews {
	float: left;
	width: 100%;
}

	#aside .topnews .image {
		float: left;
		width: 100%;
	}

		#aside .topnews .image img {
			float: left;
			margin: 0;
			max-width: 100%;
		}

	#aside .topnews .text {
		background: url("../images/gradient.png") 0 0 repeat-x;
		float: left;
		padding: 10px;
		width: 260px;
	}

		#aside .topnews .text h3 {
			font: bold 16px/20px Arial;
		}

#aside .news {
	float: left;
	margin: 0 0 10px;
	width: 100%;
}

	#aside h2 {
		background: #7b7b7b;
		color: #fff;
		font: bold 14px/16px Arial;
		padding: 5px 10px;
		float:left;
		width:92%;
	}
	
		#aside .regions ul {
			float: left;
			margin: 10px 0 0;
			padding: 0;
			width: 100%;
		}
	
		#aside .regions ul li {
			float: none;
			list-style-type: square;
			margin: 5px 0 10px 50px;
		}

	#aside h2 a {
		color: #fff;
		text-decoration: none;
	}

	#aside ul{
		float: left;
		margin: 10px 0 0;
		padding: 0;
		width: 100%;
	}

		#aside ul li {
			float: left;
			list-style-type: none;
			margin: 5px 0 5px 10px;
		}

		#aside ul li .time {
			background: #a1a1a1;
			color: #fff;
			padding: 1px 3px;
			margin: 0 3px 0 0;
		}

		#aside ul li .source {
			color: #999;
			margin-left: 3px;
		}

#aside .calendar {
	float: left;
	margin: 0 0 10px;
	width: 100%;
}

	#aside .calendar table {
		border: 2px solid #fff;
		margin: 10px 0 10px 30px;
		width: 200px;
	}

		#aside .calendar table th {
			border: 1px solid #fff;
			font: bold 13px/16px Arial;
			text-align: center;
			padding: 2px;
		}

			#aside .calendar table th a {
				text-decoration: none;
			}

		#aside .calendar table td {
			border: 1px solid #ddd;
			text-align: center;
			padding: 2px;
		}

			#aside .calendar table td a {
				font-weight: bold;
			}

#aside .monthes {
	float: left;
	margin: 0 0 10px;
	width: 100%;
}

/* Typography */

#content ul {
	list-style: disc;
	font-size: 13px;
}

#content ul li {
  padding-bottom: 3px;
}

#content ol {
	list-style: decimal;
}

	#content ol ol li {
		list-style-type: lower-alpha;
	}

	#content ul ul li {
		list-style-type: circle;
	}

#content dt {
	font-weight:bold;
}

#content dd {
	margin: 0 0 10px 10px;
}

/* Banner */

#content .banner {
	float: left;
	margin: 0 0 10px;
	text-align: center;
}

/* News */

#content .topnews {
	border-bottom: 1px solid #ddd;
	float: left;
	padding: 0 0 10px;
	width: 100%;
}

	#content .topnews .article {
		float: left;
		margin: 0 15px 0 0;
		width: 150px;
	}

	#content .topnews .article.last {
		margin-right: 0;
	}

		#content .topnews .article .image {
			background-position: center center;
			background-repeat: no-repeat;
			float: left;
			height: 120px;
			width: 100%;
		}

		#content .topnews .article .text {
			background: url("../images/gradient.png") 0 -50px repeat-x;
			float: left;
			padding: 6px 6px 10px;
			width: 138px;
		}

			#content .topnews .article .text h3 {
				font: bold 14px/16px Arial;
			}

#content article p {
	/* margin: 3px 0 0 0; */
	font-size: 13px;
}

#content h1 {
	font: bold 16px/20px Arial;
}

#content h2 {
	font: bold 14px/20px Arial;
}

#content h3 {
	font: bold 14px/18px Arial;
}

	#content .time {
		background: #ddd;
		margin: 0 3px 0 0;
		padding: 2px 5px;
	}

#content .news {
	float: left;
	margin: 10px 0 0;
	padding: 0 0 10px;
	width: 100%;
}

	#content .news .article {
		border-bottom: 1px solid #ddd;
		float: left;
		margin: 0 0 10px;
		padding: 0 0 10px;
		width: 100%;
	}

		#content .news .article .image {
			float: left;
			width: 150px;
		}

			#content .news .article .image img {
				/*float: left;*/
				margin: 0;
				max-width: 100%;
			}

		#content .news .article .text {
			float: left;
			padding: 0 0 0 10px;
			width: 315px;
		}

			#content .news .article .text.full {
				width: 470px;
			}

		#content .news .article.original {
			background: url("../images/via.gif") no-repeat top right;
		}

#content .full {
	float: left;
	margin: 0;
	padding: 0 0 10px;
	width: 100%;
}

	#content .full .article {
		border-bottom: 1px solid #ddd;
		float: left;
		margin: 0 0 10px;
		padding: 0 0 10px;
		width: 100%;
	}

		#content .full .article img {
			/*float: left;
			margin: 10px 10px 10px 0;*/
			max-width: 100%;
		}

		#content .full .article .text a {
			color: #004080;
		}

		#content .full .article .image_container {
			background: #eee;
			float: left;
			margin: 10px 10px 10px 0;
			/*width: -moz-min-content;*/
			max-width: 480px;
		}

			#content .full .article .image_container img {
				margin: 0;
				padding: 5px;
				max-width: 470px;
			}

			#content .full .article .image_container .desc {
				clear: both;
				color: #747474;
				float: left;
				font-size: 11px;
				margin: 0 5px 5px;
			}

#content .gallery {
	float: left;
	margin: 10px 0;
	width: 100%;
}

#content .gallery .gth{
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 150px;
	height: 100px;
	overflow: hidden;
}

/* Files */

#content .files {
	float: left;
	margin: 10px 0;
	width: 100%;
}

	#content .files th,
	#content .files td {
		padding: 5px;
	}

/*
	Right
*/

#right .banners {
    background: #e0e0e0;
    padding: 10px 0 20px;
}

#right ul, #right ul ol {
	float: left;
	margin: 20px 0 0;
	padding: 0;
	width: 100%;
}

	#right ul li {
		float: left;
		list-style-type: none;
		margin: 0 0 30px;
	}

		#right ul ul, #right ul ol {
			margin: 10px 0 0 0;
		}

		#right ul ul ul, #right ul ol {
			margin: 0 0 0 10px;
		}

		#right ol li, #right ul ol li {
			list-style: decimal outside;
		}

		#right ul ul li, #right ul ol li {
			border-bottom: 1px solid #ccc;
			margin: 5px 0;
			padding: 5px 0;
		}

#right p {
	text-align: center;
}

/* Partners */

#partners .wrapper {
	margin: 0 auto;
	text-align: center;
	height: 100px;
}

/* Footer */

footer .wrapper {
	margin: 0 auto;
	width: 1000px;
}

footer .copy {
	color: #8a8a8a;
	color: #fff;
	float: left;
	font: 11px/14px Arial;
	margin: 10px 0 20px 0;
}

	footer .copy p {
		margin: 5px 0 0;
	}

	footer .copy a {
		color: #8a8a8a;
	}

footer .counters {
	float: right;
	margin: 5px 0;
}

.adv {
	color: #999;
	font: 10px/12px Arial;
	margin: 0 0 10px;
    text-align: center;
	position: absolute;
	left: 20%;
	bottom: 0;
}

	.adv a {
		color: #999;
	}

/* Tagcloud */

#tagcloud {
	line-height: 24px;
}

	#tagcloud .tag_10, #tagcloud .tag_11 { color: #aaa; }
	#tagcloud .tag_12, #tagcloud .tag_13 { color: #747474; }
	#tagcloud .tag_14, #tagcloud .tag_15 { color: #6a6a6a; }
	#tagcloud .tag_16, #tagcloud .tag_17 { color: #5f5f5f; }
	#tagcloud .tag_18, #tagcloud .tag_19 { color: #555; }
	#tagcloud .tag_20, #tagcloud .tag_21 { color: #4a4a4a; }
	#tagcloud .tag_22, #tagcloud .tag_23 { color: #3f3f3f; }
	#tagcloud .tag_24, #tagcloud .tag_25 { color: #353535; }
	#tagcloud .tag_26, #tagcloud .tag_27 { color: #2a2a2a; }
	#tagcloud .tag_28, #tagcloud .tag_29 { color: #1f1f1f; }
	#tagcloud .tag_30, #tagcloud .tag_31 { color: #151515; }
	#tagcloud .tag_32 { color: #000; }

/* Meta */

#content .meta {
	color: #999;
	font-size: 11px;
	margin: 5px 0;
	padding-right: 100px;
}

	#content .meta a {
		color: inherit;
	}

/* Social */

.social_sites {
	text-align: center;
}

.social {
	float: right;
	margin: 20px 0 0;
}

	.social ul {
		float: left;
		list-style-type: none;
		margin: 0;
	}

		.social ul li {
			float: left;
			height: 16px;
			margin: 0 2px;
			list-style-type: none;
			width: 16px;
		}

			.social ul li a {
				background: url("../images/social.png") 0 0 no-repeat;
				display: block;
				height: 16px;
				width: 16px;
			}

				.social ul li a.vk {
					background-position: 0 0;
				}

					.social ul li a:hover.vk {
						background-position: 0 -16px;
					}

				.social ul li a.fb {
					background-position: -16px 0;
				}

					.social ul li a:hover.fb {
						background-position: -16px -16px;
					}

				.social ul li a.tw {
					background-position: -32px 0;
				}

					.social ul li a:hover.tw {
						background-position: -32px -16px;
					}

				.social ul li a.lj {
					background-position: -48px 0;
				}

					.social ul li a:hover.lj {
						background-position: -48px -16px;
					}

/*
	Auth
*/

.auth .error {
	color: red;
	margin: 10px;
}

.auth table {
	width: 100%;
}

.auth table td {
	padding: 2px;
}

	.auth table td input[type=text],
	.auth table td input[type=password] {
		padding: 5px;
		width: 250px;
	}

/*
	Search
*/

#extended_search input.search {
	font: 16px/20px Arial;
	padding: 2px;
	width: 95%;
}

#extended_search .options {
	float: left;
	padding: 2px;
	width: 100%;
}

	#extended_search .options .option {
		float: left;
		margin: 5px 0;
		width: 100%;
	}

		#extended_search .options .label {
			float: left;
			width: 85px;
		}

		#extended_search .options .field {
			float: left;
		}

#extended_search .button {
	border-bottom: 1px solid #ddd;
	float: left;
	margin: 5px 0 10px;
	padding: 0 0 10px;
	width: 100%;
}

/*
	Other
*/

.headline {
	border-bottom: 1px solid #ddd;
	margin: 0 0 10px;
	padding: 5px 10px;
}

    .headline.lg {
        font-size: 24px;
        padding-bottom: 10px;
    }

.player {
	margin: 10px 0;
}

.img-circle {
    border-radius: 50%;
}

/*
    Blogs
*/

#right .blogs, #right .newsletter  {
    /*border: 2px solid #939598;*/
    /*background: #eee;*/
    /*padding: 10px 15px;*/
    padding: 0;
    margin-bottom: 10px;
    overflow: hidden;
}

#right .blogs h2, #right .newsletter {
	font: bold 16px/20px Arial;
    border-bottom: 1px solid #ddd;
    margin: 0 0 10px;
    padding: 5px;
}

    #right .blogs h2 a, #right .newsletter {
        text-decoration: none;
    }

#right .blogs .blog {
    border-bottom: 1px solid #ddd;
    float: left;
    margin-bottom: 10px;
    padding-bottom: 10px;
}

    #right .blogs .blog:last-child {
        border: 0;
    }

    #right .blogs .blog img {
        float: left;
    }

    #right .blogs .blog .text {
        float: left;
        margin-left: 10px;
        width: 110px;
    }

        #right .blogs .blog h3 {
            font: bold 14px/18px Arial;
            display: inline-block;
            margin: 0;
        }

        #right .blogs .blog p {
            text-align: left;
            font-size: 11px;
            color: #747474;
            margin-top: 5px;
        }

#content .article .blog {
	border: 1px solid #939598;
    border-radius: 5px;
	float: left;
	margin: 15px 0 0;
	padding: 10px 15px;
	width: 100%;
    box-sizing: border-box;
}

    #content .article .blog img {
        margin: 10px 10px 10px 0;
		float: left;
    }

    #content .article .blog p {
        margin: 10px 0 0;
    }
	
/*
    Newsletter
*/

#right .newsletter form input.button {
  background: #ccc;
  border: 0;
  color: #2d3248;
  cursor: pointer;
  font: bold 12px/12px Arial;
  height: 22px;
  margin-left: 3px;
  padding: 0;
  text-align: center;
  width: 30px;
  clear: both;
 }
 
#right .newsletter form {
  margin-top: 10px;
}

#right .newsletter p {
  font-size: 11px;
  color: #747474;
  margin-top: 5px;
  font-variant: normal;
}

/*
	copyright js script
*/
#ctrlcopy {
	color:transparent;
	height:1px;
	overflow:hidden;
	position:absolute;
	width:1px;
}

/*
	html5 tags must be blocks
*/

article, section, aside, figure {
	display: block;	
}

article table td {
    border: 1px solid black;
    padding: 0 2px;
}

.print {
	background-image: url("/static/images/image-print-version.jpg");
    background-position: left center;
    background-repeat: no-repeat;
    float: right;
    margin-top: -5px;
    padding-bottom: 5px;
    padding-left: 20px;
    padding-top: 5px;
	margin-right: -100px;
}

.schema {
    display: none;
}

.ribbon {
  background-color: #a00;
  overflow: hidden;
  white-space: nowrap;
  /* top left corner */
  position: absolute;
  left: -67px;
  top: 77px;
  /* 45 deg ccw rotation */
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
  /* shadow */
  -webkit-box-shadow: 0 0 10px #888;
     -moz-box-shadow: 0 0 10px #888;
          box-shadow: 0 0 10px #888;
	
	/* FOR CHROME */
    -webkit-filter: blur(0px); /* or any other filter*/
    
    /* FOR FIREFOX */
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
}
.ribbon a {
  border: 1px solid #faa;
  color: #fff;
  display: block;
  font: bold 15px 'Helvetica Neue', Helvetica, Arial, sans-serif;
  margin: 1px 0;
  padding: 10px 50px;
  text-align: center;
  text-decoration: none;
  /* shadow */
  text-shadow: 0 0 5px #444;
}

/* WP */

img[class*="align"], img[class*="wp-image-"] {
    height: auto;
}

img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
    margin-bottom: 10px;
}

img.alignleft {
	float: left;
    margin: 5px 5px 5px 0;
}

img.alignright {
	float: right;
    margin: 5px 0 5px 5px;
}

.wp-caption {
    margin: 10px 0 20px;
    padding: 0;
    text-align: center;
    font-style: italic;
    color: #777;
}

    .wp-caption.aligncenter {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .wp-caption.alignleft {
        margin: 10px 10px 10px 0;
    }

    .wp-caption.alignright {
        margin: 10px 0 10px 10px;
    }

    .wp-caption img {
        margin: 0;
        padding: 0;
        border: 0 none;
    }

#content .socialquotes {
    border-left: 3px solid #ddd;
    padding: 5px 0 0 10px;
    margin-left: 10px;
    clear: both;
}

    #content .socialquotes p {
        margin: 0 0 10px;
        position: relative;
    }

    #content .socialquotes a {
        font-style: normal;
        padding-left: 20px;
    }

    #content .socialquotes a:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        height: 15px;
        width: 15px;
        font-family: "Flaticon";
        font-size: 15px;
        font-style: normal;
    }

    #content .socialquotes a[href^="http://twitter.com"]:before,
    #content .socialquotes a[href^="https://twitter.com"]:before {
        content: "\e002";
        color: #00abed;
    }

    #content .socialquotes a[href^="http://www.facebook.com"]:before,
    #content .socialquotes a[href^="https://www.facebook.com"]:before,
    #content .socialquotes a[href^="http://facebook.com"]:before,
    #content .socialquotes a[href^="https://facebook.com"]:before {
        content: "\e000";
        color: #4c68b3;
    }

    #content .socialquotes a[href^="http://vk.com"]:before,
    #content .socialquotes a[href^="https://vk.com"]:before {
        content: "\e003";
        color: #4c68b3;
    }

    #content .socialquotes a[href^="http://instagram.com"]:before,
    #content .socialquotes a[href^="https://instagram.com"]:before {
        content: "\e001";
        color: #517fa4;
    }

/* New books */

.row {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}

.col-lg,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12 {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.col-lg-3 {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
}

.col-lg-4 {
    -webkit-flex-basis: 33.33333%;
    -ms-flex-preferred-size: 33.33333%;
    flex-basis: 33.33333%;
    max-width: 33.33333%;
}

.col-lg-5 {
    -webkit-flex-basis: 41.66667%;
    -ms-flex-preferred-size: 41.66667%;
    flex-basis: 41.66667%;
    width: 41.66667%;
}

.col-lg-6 {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    width: 50%;
}

.col-lg-7 {
    -webkit-flex-basis: 58.33333%;
    -ms-flex-preferred-size: 58.33333%;
    flex-basis: 58.33333%;
    width: 58.33333%;
}

.col-lg-12 {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}

/* Books */

.book {
    background-position: 0 0;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 340px;
    margin-bottom: 20px;
    position: relative;
}

    .book > a {
        display: block;
        text-decoration: none;
        height: 99%;
        border: 1px solid #ddd;
    }

    .book > a:hover {
    }

    .book > a:after {
        content: '';
        position: absolute;
        bottom: 0;
        height: 200px;
        width: 100%;
        left: 0;
        background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%); /* FF3.6+ */
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.65))); /* Chrome,Safari4+ */
        background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* Opera 11.10+ */
        background: -ms-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* IE10+ */
        background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
    }

    .book .title {
        position: absolute;
        bottom: 12px;
        left: 15px;
        right: 15px;
        z-index: 1;

        color: #fff;
        font-size: 16px;
        line-height: 1.2;
        font-weight: bold;
        text-decoration: none;
    }

    .book .desc {
        display: none;
        position: absolute;
        background-color: #676767;
        color: #fff;
        width: 230px;
        right: -229px;
        z-index: 2;
        top: 0;
        height: 100%;
        overflow: hidden;
    }

        .row div:nth-child(4n+4) .book .desc {
            right: auto;
            left: -229px;
        }

        .book .desc p {
            margin: 0;
            padding: 10px;
        }

        .book .desc a {
            color: inherit;
        }

    .book .data {
        display: none;
        color: #fff;
        font-size: 12px;
        font-weight: bold;
        text-decoration: none;
        padding: 15px;
        text-shadow: 1px 1px 1px #3c3c3c;
    }

        .book .data span {
            text-transform: uppercase;
            padding-right: 10px;
        }

.book > a:hover .data {
    display: inline-block;
}

.book > a:hover .desc {
    display: block;
}

/* Video */

.video {
    float: left;
    position: relative;
    width: 100%;
}

.video .desc {
    background-position: 0 0;
    background-size: cover;
    background-repeat: no-repeat;
    width: 99%;
    height: 200px;
    position: relative;
    margin: 25px 0 10px;
}

    .video .desc > a {
        display: block;
        text-decoration: none;
        height: 100%;
    }

    .video .desc > a:after {
        content: '';
        position: absolute;
        bottom: 0;
        height: 100px;
        width: 100%;
        left: 0;
        background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%); /* FF3.6+ */
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.65))); /* Chrome,Safari4+ */
        background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* Chrome10+,Safari5.1+ */
        background: -o-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* Opera 11.10+ */
        background: -ms-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* IE10+ */
        background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* W3C */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */
    }

    .video .desc .title {
        position: absolute;
        bottom: 12px;
        left: 15px;
        right: 15px;
        z-index: 1;

        color: #fff;
        font-size: 16px;
        line-height: 1.2;
        font-weight: bold;
        text-decoration: none;
    }

.filter {
    border-bottom: 1px solid #ddd;
    margin-bottom: 15px;
}

.filter .btn-group {
    margin: 0 0 10px;
}

.btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

    .btn-group .btn+.btn,
    .btn-group .btn+.btn-group,
    .btn-group .btn-group+.btn,
    .btn-group .btn-group+.btn-group {
        margin-left: -1px;
    }

    .btn-group > .btn {
        position: relative;
        float: left;
    }

    .btn-group > .btn:first-child {
        margin-left: 0;
    }

    .btn-group > .btn:first-child:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .btn-group > .btn:not(:first-child):not(:last-child) {
        border-radius: 0;
    }

    .btn-group > .btn:last-child:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }


.btn {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
    text-decoration: none;
}

.btn-default {
    color: #333;
    background-color: #fff;
    border-color: #ccc;
}

.btn-default.active, .btn-default.focus, .btn-default:active, .btn-default:focus, .btn-default:hover, .open>.dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
}

.form-inline {

}

@media (min-width: 768px) {
    .form-inline .form-group {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: middle;
    }
    .form-inline .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle;
    }
}

.form-control {
    display: block;
    width: 100%;
    height: 20px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857;
    color: #555555;
    background-color: white;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 3px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
    -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-control:focus {
    border-color: #ccc;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(204, 204, 204, 0.6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(204, 204, 204, 0.6);
}

.form-control::-moz-placeholder {
    color: #ccc;
    opacity: 1;
}

.form-control:-ms-input-placeholder {
    color: #ccc;
}

.form-control::-webkit-input-placeholder {
    color: #ccc;
}

select.form-control {
    height: 34px;
}


.form-control-static {
    padding-bottom: 7px;
    margin-bottom: 0;
}