/*
 * Created by Digital Dreamer [www.dreamer.de]
 */


/* ================================================================================================================== */
/* Preparations and imports */

/* Fonts */

@import url(http://fonts.googleapis.com/css?family=Roboto:400,700,400italic,700italic);

@import url("//hello.myfonts.net/count/2c01e9");
@font-face {font-family: 'DINNextLTPro-LightCondensed';src: url('../fonts/2C01E9_0_0.eot');src: url('../fonts/2C01E9_0_0.eot?#iefix') format('embedded-opentype'),url('../fonts/2C01E9_0_0.woff') format('woff'),url('../fonts/2C01E9_0_0.ttf') format('truetype');}

@font-face {
	font-family: 'icons'; font-weight: normal; font-style: normal; src: url('../fonts/icons.eot'); src: url('../fonts/icons.eot?#iefix') format('embedded-opentype'), url('../fonts/icons.svg#icons') format('svg'), url('../fonts/icons.woff') format('woff'), url('../fonts/icons.ttf') format('truetype');
}


/* 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,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,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

/* Generic adjustments */

html { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
*, *:before, *:after { -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; }
body { -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; height: auto; }
input { font-size: inherit; font-family: inherit; }
a.blocklink { display: block; }


/* ================================================================================================================== */
/* Page basics */

html {
	height: 100%;
	text-rendering: optimizeLegibility;
}
body {
	height: 100%;
	background: #3b3b3b;
	color: #fff; font: 14px/20px 'Roboto',sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
x:after {
	display: block; content: ' '; clear: both; width: 100%; height: 0; font-size: 0; line-height: 0;
}


/* ================================================================================================================== */
/* Header */

.page_header {
	position: fixed; top: 0; left: 0; z-index: 10000;
	width: 224px; height: 100%; padding: 40px 30px;
	background-color: #3b3b3b;
	color: #fff;
}

/* Logo */

.page_logo {
	max-width: 90px;
	height: 110px; margin-bottom: 21px;
}


/* ================================================================================================================== */
/* Navigation */

/* Reset any content list definitions */
nav ul, nav ul li, nav ul li:before {
	position: static; content: '';
	margin: 0; padding: 0;
}

nav ul {
	margin: 0;
	font: 28px/1 'DINNextLTPro-LightCondensed',sans-serif;
}
nav ul li {
	margin: 0 0 17px;
}
nav a {
	color: #fff; text-decoration: none;
}
nav a:hover {
	color: #f39100; text-decoration: none;
}
nav .children {
	margin-left: 17px;
	font-size: 21px;
}
nav .children li {
	margin-bottom: 0; margin-top: 12px;
}
nav li.active>a {
	color: #f39100;
}
nav li>ul {
	display: none;
}
nav li.active>ul {
	display: block;
}

/* Meta-Nav */

.meta_nav {
	position: absolute; bottom: 30px; left: 30px;
	width: 164px;
}
.meta_nav ul {
	overflow: hidden;
	width: 100%;
}
.meta_nav li {
	float: left;
	margin-right: 8px;
	font-size: 16px; line-height: 20px;
}
.meta_nav .lang_item {
	float: right;
	margin-right: 0; margin-left: 8px;
}
.meta_nav .lang_item a {
	display: inline-block;
	width: 24px; height: 24px; border: 1px solid #f39100; border-radius: 50%;
	text-align: center;
}
.meta_nav .lang_item_active a {
	background: #f39100;
}
.meta_nav .lang_item a:hover {
	background: #c7007f; border-color: #c7007f; color: #fff;
}
.meta_nav_search {
	margin-bottom: 1em;
}
.meta_nav_search input {
	width: 100%; padding: 4px 8px; border: 0; border-radius: 0;
	font: inherit;
	background: #fff;
}


/* ================================================================================================================== */
/* Content areas */


.page_content {
	position: relative; z-index: 0; /* Important for .page_aside */
	overflow: hidden;
	min-height: 100%; max-width: 530px; margin-left: 224px; padding: 40px;
	background: #fff;
	color: #3b3b3b;
}
.page_content_wide {
	max-width: 940px;
}
.page_content_empty {
	width: 0; padding: 0;
}
.page_content_negative {
	background: #f39100;
	color: #fff;
}
.page_content_full {
	max-width: none;
	padding: 0;
}
.page_aside {
	float: left;
	width: 320px; padding: 40px;
	color: #3b3b3b;
}
.page_aside:after {
	display: block; content: '';
	position: absolute; top: 0; left: 0; bottom: 0; z-index: -1;
	height: 100%; width: 320px;
	background: #fff;
}
.page_withaside {
	overflow: hidden;
	margin-left: 320px;
}
.page_topbar {
	max-width: 610px; margin-left: 224px; padding: 8px 40px;
	background: #f39100;
	color: #fff;
}
.page_topbar a:hover {
	color: #fff;
}
.page_topbar_wide {
	max-width: 940px;
}
.page_switchbar {
	display: none;
	overflow: hidden;
	padding: 8px 40px;
	background-color: #3b3b3b;
	color: #fff;
}

/* "Content Header" */

.content_header {
	overflow: hidden;
	height: 110px; margin-bottom: 21px; border-bottom: 1px solid #791f82;
}
.content_header_logo img {
	float: right;
	max-width: auto; max-height: 56px;
}

/* Responsive embeds */

.responsive_embed {
	position: relative;
	width: 100%; height: 0; padding-bottom: 56.25%;
}
.responsive_embed iframe {
	position: absolute; top: 0; left: 0;
	width: 100%; height: 100%;
}


/* ================================================================================================================== */
/* Background image */

.bgimg {
	position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9999;
}



/* ================================================================================================================== */
/* Gallery lists */

.gallery {
	overflow: hidden;
	margin: 0 0 0 -12px;
}
.gallery li {
	float: left;
	margin: 0 0 12px 12px;
}
.gallery li:before { display: none; }



/* ================================================================================================================== */
/* Program Details */

.program_cols {
	overflow: hidden;
	margin-bottom: 2em;
}
.program_col_a {
	float: left;
	width: 530px; margin-right: 30px;
}
.program_col_b {
	float: left;
	width: 298px;
}

.program_header {
	margin-bottom: 1.5em;
}
.program_title {
	margin-bottom: 0;
	color: #3b3b3b; font-size: 40px;
}
.program_subtitle {
	color: #767676; font: 28px/1 'DINNextLTPro-LightCondensed', sans-serif;
}
.program_remark {
	padding: 2px 8px;
	background-color: #f39100;
	color: #fff;
}
.program_main_visual {
	margin-bottom: 1em;
}
.program_detail_logo {
	margin-bottom: 1.5em;
}
.program_copyright {
	font-size: 0.67em;
	color: #ccc;
}

.program_gallery li {
	overflow: hidden;
	border-radius: 50%;
	transition: border-radius 0.25s;
}
.program_gallery li:hover {
	border-radius: 0;
}
.program_gallery img {
	width: 143px;
}

/* ================================================================================================================== */
/* Program Grid */

.grid { position: relative; }
.grid_column_sizer { width: 146px }
.grid_gutter_sizer { width: 12px }

.program_listview .grid_column_sizer { width: auto; max-width: 600px; }
.program_listview grid_gutter_sizer { width: 12 }



/* ================================================================================================================== */
/* Filter list */

.filter {
	font-size: 12px;
}
.filter>li {
	margin-bottom: 0.5em;
}
.filter_category, .filter_term, .view_switch {
	position: relative;
}
.filter_category {
	padding-left: 50px;
	font-weight: 700;
}
.filter_category:before,
.filter_term:before,
.view_switch:before {
	display: block; content: '';
	position: absolute; top: 8px; left: 0;
	width: 25px; height: 14px;
	background: transparent url(../img/assets.png) no-repeat 0 -120px;
}

.filter_term, .view_switch {
	padding-left: 70px;
	cursor: pointer;
}
.filter_term:before, .view_switch:before {
	top: 4px; left: 53px;
	width: 14px;
	background-position: 0 -100px;
}
.filter_term.filter_active:before,
.view_switch.active:before {
	background-position: -20px -100px;
}
.filter_term {
	color: #3b3b3b;
}
.filter_term:hover,
.filter_term.filter_active {
	color: #f39100; text-decoration: none;
}

.view_switch {
	float: left;
	margin-right: 40px;
	padding-left: 20px;
}
.view_switch:before {
	left: 3px;
}

/* Program items */

.section_header h3 {
	margin-top: 0; margin-bottom: 0.7em;
	color: #fff; font: 28px/1 'DINNextLTPro-LightCondensed',sans-serif;
}
section:not(:last-child) {
	margin-bottom: 24px; border-bottom: 1px solid #791f82;
}

.program_item a {
	overflow: hidden;
}

.program_item {
	line-height: 1; text-align: center;
}
.program_item a:hover {
	color: #fff;
}
.program_item a img {
	transition: all 0.25s;
}
.program_item a:hover img {
	transform: scale(1.33);
}

.program_listview {
	padding: 40px 0;
}
.program_gridview {
	padding: 40px;
}
.program_item_image {
	position: relative; z-index: 1; /* Chrome bug workaround */
	float: left; overflow: hidden;
	width: 72px; height: 72px; margin-right: 24px;
	border-radius: 50%;
	background: rgba(255,255,255,0.1);
}

.program_gridview .program_item {
	width: 146px; height: 196px; margin-bottom: 12px;
}
.program_gridview .program_item_image {
	float: none;
	width: 146px; height: 146px; margin-bottom: 8px;
}

/*
.program_listview .program_item:nth-child(even) {
	background: #fff;
}
.program_listview .program_item:nth-child(even) a:hover {
	color: #f39100;
}
*/

.program_gridview .program_item_details {
	display: none;
}

.program_listview .section_header,
.program_listview p {
	padding: 0 40px;
}

.program_listview .program_item {
	float: none;
	width: 100%; height: 88px; padding: 8px 40px;
	text-align: left;
}
.program_listview .program_item_title {
	font: 28px/1 'DINNextLTPro-LightCondensed',sans-serif;
}
.program_listview .program_item_details {
	display: block;
}

/* activated by JS */

.program_filter {
	display: none;
}
.program_item_view {
	display: none;
}
.filter_empty_message {
	display: none;
}
.filter_filtered-out {
	display: none;
}


/* Bottom line content */

.with-bottom-line {
	padding-bottom: 16px; margin-bottom: 21px; border-bottom: 1px solid #791f82;
}


/* Post items */

.post_categories {
	margin-bottom: 1em;
}
.post_item:not(:last-child) {
	margin-bottom: 1.5em;
}
.post_item p {
	margin: 0;
}
.post_item {
	margin-bottom: 1em; padding-bottom: 1em; border-bottom: 1px solid #000;
}
.post_header {
	margin-bottom: 0.5em;
}
.post_header h3 {
	margin: 0;
	font: inherit; font-weight: 700;
}
.post_header a {
	color: #3b3b3b;
}
.post_date {
	color: #791f82;
}
.post_item_withicon {
	position: relative;
	padding-left: 80px;
}
.post_item_withicon:before {
	display: block; position: absolute; top: 5px; left: 5px; content: '';
	width: 60px; height: 60px;
	background: transparent url(../img/post_icon_info.png) no-repeat;
}
.post_item_withicon-merchandise:before { background-image: url(../img/post_icon_merch.png); }
.post_item_withicon-distribution:before { background-image: url(../img/post_icon_dist.png); }
.post_item_withicon-he:before { background-image: url(../img/post_icon_he.png); }
.post_item_withicon-products:before { background-image: url(../img/post_icon_prod.png); }


/* External/download links */

.with-icon {
	margin-right: 0.5em;
	white-space: nowrap;
}
.with-icon:before {
	display: inline-block;
	margin-right: 0.25em;
	font: 0.85em 'icons'; text-decoration: none;
}
.icon-download:before { content: '\e600'; }
.icon-link:before     { content: '\e601'; }
.icon-more:before     { content: '\e601'; }
.icon-back:before     { content: '\e602'; }

.downloads li {
	margin-left: 0;
}
.downloads li:before {
	display: none;
}


.page_content {
}


/* Page Insert Effect */

@media (min-width: 1232px) {

	.page_content, .page_topbar {
		-webkit-transform-origin: 0% 50%;
		-webkit-animation: rotatePullRight 1s both ease;
		-moz-transform-origin: 0% 50%;
		-moz-animation: rotatePullRight 1s both ease;
		transform-origin: 0% 50%;
		animation: rotatePullRight 1s both ease;
	}

}

@-webkit-keyframes rotatePullRight { from { -webkit-transform: rotateY(90deg); } }
@-moz-keyframes rotatePullRight { from { -moz-transform: rotateY(90deg); } }
@keyframes rotatePullRight { from { transform: rotateY(90deg); } }


/* Responsive layout */


@media (max-height: 900px) {
	.page_header {
		position: static; float: left;
	}
	.meta_nav {
		position: static; margin-top: 4em;
	}
}

@media (max-width: 1232px) {
	.page_header {
		width: 160px;
		padding: 20px;
	}
	nav ul {
		font-size: 21px;
	}
	nav .children {
		font-size: 16px;
	}
	.meta_nav {
		left: 20px;
		width: 120px;
	}
	.page_content {
		margin-left: 160px; padding: 20px;
	}
	.page_content_full, .page_content_empty {
		padding: 0;
	}
	.content_header {
		height: 80px;
	}
	.content_header_logo img {
		max-height: 40px;
	}

	.page_aside,
	.page_aside:after {
		width: 240px;
	}
	.page_withaside {
		margin-left: 224px;
	}
	.filter_category:before {
		display: none;
	}
	.filter_category {
		padding-left: 0;
	}
	.filter_term {
		padding-left: 20px;
	}
	.filter_term:before {
		left: 0;
	}

}

@media (max-width: 1023px) {

	.bgimg {
		display: none;
	}

}

@media (max-width: 800px) {

	.page_nav_toggle {
		position: absolute; top: 0; left: 0; z-index: 20000;
		width: 40px; height: 40px; padding: 0 12px 0 12px;
		text-align: center;
		cursor: pointer;
	}
	.page_nav_toggle:before {
		display: inline; content: '\e603';
		font: 24px/44px 'icons';
	}
	.page_nav_open .page_nav_toggle {
		color: #c7007f;
	}
	.page_header {
		position: fixed; top: 0; left: 0;
		width: 100%; height: 48px;
	}
	.page_logo {
		position: absolute; right: 12px; top: 8px;
	}
	.page_logo, .page_logo img {
		max-width: none; height: 32px; width: auto; margin: 0; padding: 0;
	}

	.content_header {
		height: auto; padding-bottom: 12px;
	}
	.content_header_logo img {
		max-height: 32px;
	}

	.page_nav_container {
		position: fixed; top: 0; left: -100%; bottom: 0;
		overflow: auto;
		width: 200px; padding: 12px 12px 12px 56px; border-right: 1px solid #fff;;
		background: #3b3b3b;
		transition: left 0.5s;
	}
	.page_nav_open .page_nav_container {
		left: 0;
	}

	.page_content, .page_topbar {
		max-width: none; margin-left: 0; padding-left: 12px; padding-right: 12px;
	}
	.page_content {
		padding-top: 60px;
	}
	.page_content_wide {
		padding-top: 12px;
	}
	.page_aside {
		display: none;
	}
	.page_content_full, .page_withaside {
		margin-left: 0; padding-left: 0;
	}
	.page_content_empty {
		padding: 0;
	}
	.page_topbar {
		margin-top: 48px;
	}
	.program_listview .section_header, .program_listview p, .program_listview .program_item {
		height: auto; padding-left: 12px; padding-right: 12px;
	}
	.program_item_details_container {
		overflow: hidden;
	}

	.meta_nav {
		position: static;
	}
	nav ul li {
		margin-bottom: 8px;
	}

	body {
		font-size: 12px;
		background-color: #999;
	}
}

*/