@import url(https://fonts.googleapis.com/css?family=Merriweather:400,700|Merriweather+Sans:400,700);

/************************************************
* html elements
*/
html {
	overflow-y: scroll;	
}

body {
	background: 		
		url(../media/img-header.jpg) top center no-repeat,
		url(../media/bg-header.gif) top left repeat-x
	;
	font-family: "Merriweather", Georgia, Times, serif;
	font-size: 15px;
	line-height: 25px;
	color: #333;
	min-height: 800px;
}

#bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 241px;
	background-color: gray;
	z-index: 0;
	overflow: hidden; 
}

#bg video {
	position: absolute;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    transform: translateX(calc((100% - 100vw) / 2));
}

#bg-mobile {
	display: none;
}

hr {
	display: none;
}

h1 {
	display: inline-block;
	padding-bottom: 10px;
	color: #666;
	text-transform: uppercase;
	font-family: "Merriweather Sans", sans-serif;
	font-size: 15px;
	font-weight: normal;
	margin: 0 0 25px 0;
	letter-spacing: 1px;
	background:
		url(../media/bg-h1-right.gif) bottom right no-repeat,
		url(../media/bg-h1-left.gif) bottom left no-repeat
	;
}

h2 {
	color: #AE0000;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: normal;
	font-size: 27px;
	margin: 0 0 15px 0;
	line-height: 37px;
}

h2 .sidehead {
	display: block;
	font-size: 15px;
	color: #333;
	margin-bottom: 5px;
}

h3 {
	font-family: "Merriweather Sans", sans-serif;
	margin: 0 0 13px 0;
	color: #AE0000;
	font-size: 15px;
}

p {
	margin: 13px 0 15px 0;
}

table {
	width: 100%;
	border-spacing: 0;
    border-collapse: separate;
}

th, 
td {
	text-align: left;
	vertical-align: top;
	padding: 0 10px;	
}

.page ul,
.page li {
	margin: 0 0 0 1em;
	padding: 0 0 0 1em;
}

a {
	text-decoration: none;	
	color: #333;
}

a img {
	border: 0;
}

.page a {
	color: #666; 
	font-family: "Merriweather Sans";
	font-weight: bold;
}

.page a[target=_blank] {
	padding-right: 19px;
	background: url(../media/spritesheet.png) right 1px no-repeat;
	background-size: 15px;
}

time {
	display: block;
	background: url(../media/bg-line.gif) bottom left no-repeat;
	padding-bottom: 15px;
	margin: 0 0 15px 0;
}


/************************************************
* structure elements
*/
#wrapper {
	position: relative;
	margin: 0 auto;
	min-height: 100%;
	width: 1000px;
	padding-top: 285px;
}


.row {
	margin-left: -36px;
}

.row:after {
	content: " "; 
	visibility: hidden;
	display: block;
	height: 0;
	clear: both;
}

.col-1-3 {
	width: 310px;
	float: left;
	padding-left: 35px;
	box-sizing: content-box;
}

.col-2-3 {
	width: 655px;
	float: left;
	padding-left: 35px;
	box-sizing: content-box;
}

.col-2-3 + .col-1-3 {
	width: 275px
}

/**************************************
* navigations
*/
/* meta */
#nav-meta {
	font-family: "Merriweather Sans", sans-serif;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 12px;
	text-transform: uppercase;
}

#nav-meta ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#nav-meta li {
	float: left;
	margin-right: 7px;
	padding-left: 7px;
	border-left: 1px solid gray;
	height: 14px;
}

#nav-meta li:first-child {
	border: 0;
	padding-left: 0;
}

#nav-meta a {
	color: gray;
}

/* main */
#nav-main {
	font-family: "Merriweather Sans", sans-serif;
	position: absolute;
	top: 186px;
	left: 0;
	font-size: 20px;
	letter-spacing: 1.2px;
}

#nav-main ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#nav-main > ul > li {
	float: left;
	position: relative;
}

#nav-main > ul > li > a {
	padding: 15px 30px 16px;
	text-transform: uppercase;
}

#nav-main > ul > li:hover > a {
	background-color: #666;
	color: white;
	box-shadow: 5px 5px 5px #666;
} 

#nav-main > ul > li > a.active {
	background-color: #666;
	color: white;
}

#nav-main a {
	color: #666;
}

#nav-main ul ul {
	position: absolute;
	top: -10000px;
	left: -10000px;
	font-size: 15px;
	font-weight: normal;
	padding: 27px 0;
	background: url(../media/bg-nav.gif) center 26px no-repeat;
	box-shadow: 5px 5px 5px #666;
	z-index: 1;
}

#nav-main ul ul li {
	display: block;
	background: url(../media/bg-nav.gif) bottom center no-repeat;
	padding-bottom: 1px;
	min-width: 1px;
}

#nav-main ul ul li a {
	display: block;
	text-align: center;
	line-height: 22px;
	padding: 10px;
	color: white;
}

#nav-main ul ul li a:hover {
	background-color: #AE0000;
}

#nav-main > ul > li:hover ul {
	top: 30px;
	left: 0;
	background-color: #666;
}

#nav-main > ul > li.active > a {
	background-color: #666;
	color: white;
}

#nav-main ul ul li.active > a {
	background-color: #AE0000;
	color: white;
}

#nav-main .parent,
#nav-main .mobnav-back {
	position: absolute;
	top: -10000px;
	left: -10000px;
}


/**************************************
* elements
*/
/* Logo and claim */
.logo {
	position: absolute;
	top: 30px;
	right: 0;
	width: 195px;
}

.claim {
	position: absolute;
	top: 50px;
	right: 350px;
	width: 339px;
}

/* Lead */
.lead {
	font-family: "Merriweather sans", Verdana, sans-serif;
}

/* site search */
#site-search {
	position: absolute;
	top: 190px;
	right: 0;
}

#site-search label {
	position: absolute;
	top: -10000px;
	left: -10000px;
}

#site-search input {
	font-family: "Merriweather Sans", Verdana, sans-serif;
	background-color: #A39F9E;
	border: 1px solid white;
	width: 160px;
	vertical-align: top;
	color: white;
	padding-left: 5px;
	height: 22px;
}

#site-search button {
	background-color: transparent;
	height: 27px;
	vertical-align: top;
	border: 0;
}

#site-search input::-webkit-input-placeholder { color:#ddd; }
#site-search input::-moz-placeholder { color:#ddd; } 
#site-search input:-ms-input-placeholder { color:#ddd; } 
#site-search input:-moz-placeholder { color:#ddd; }

/* boxes */
.box {
	margin-bottom: 30px;	
	hyphens: auto;
}

.box.box-bordered {
	border: 2px solid #666;
	padding: 15px;
	margin-bottom: 20px;
}

.box.box-special {
	padding: 15px;
	background-color: #666;
	margin-bottom: 20px;
}

.box.box-special h2,
.box.box-special p {
	color: white;
}

.box.box-special i.icon-download {
	background-position: 0 -300px;
}

.box.box-gray {
	background-color: #E5E4E4;
	padding: 15px;
}

.box.box-gray img {
	display: block;
	width: 100%;
	margin-bottom: 30px;
}

.box.box-gray h2 {
	background: url(../media/bg-line.gif) bottom left no-repeat;
	padding-bottom: 15px;
}

.box p,
.box time {
	color: black;
}

.box p.lead {
	font-family: "Merriweather Sans", Verdana, sans-serif;
}

.box p {
	margin: 25px 0;
}

/* download */
.download {
	font-family: "Merriweather", serif;
	text-transform: uppercase;
	position: relative;
	padding-left: 50px;
	line-height: 25px;
}

a:hover .download {
	color: #AE0000;
}

a:hover .box-special .download {
	color: white;
}

a:hover .download i {
	background-position: 0 -250px;
}

.download i {
	position: absolute;
	top: 3px;
	left: 0;
}

.download span.file-info {
	font-size: 12px;
}


/* list */
section.list article {
	margin-bottom: 30px;
}

ul.linklist {
	list-style: none;
	font-family: "Merriweather Sans", sans-serif;
	padding: 0;
	margin: 0;
}

ul.linklist a {
	display: block;
	padding: 5px 0 0 50px;
	height: 45px;
	background: url(../media/spritesheet.png) 0 -800px no-repeat;
	background-size: 35px;
}

ul.linklist-turned a {
	background-position: 0 -600px;
}

ul.linklist a:hover,
ul.linklist a.active {
	color: #AE0000;
	background-position: 0 -700px;
}

ul.linklist-turned a:hover {
	background-position: 0 -600px;
}

.dokuthek {
	border-bottom: 2px solid #757575;
	padding-bottom: 20px;
	margin-bottom: 0;
}

.dokuthek article {
	font-family: "Merriweather Sans", sans-serif;
}

.dokuthek .download {
	padding-bottom: 20px;
	background: url(../media/bg-line.gif) bottom left no-repeat;
	margin-bottom: 20px;
}

.dokuthek article:last-of-type .download {
	background: none;
}

.dokuthek h2 {
	margin-top: 20px;
}

.dokuthek:first-of-type h2 {
	margin-top: 0;
}

.dokuthek a.more {
	display: block;
	height: 50px;
	cursor: pointer;
	width: 100%;
}

.address {
	font-family: "Merriweather Sans", sans-serif;
	padding: 20px 15px 30px 15px;
}

.address:nth-child(even) {
	background-color: #E5E4E4;
}

.address table th {
	font-family: "Merriweather Sans", sans-serif;
	font-size: 12px;
	font-weight: normal;
	width: 120px;
	padding-top: 1px;
}

.team h2 {
	margin: 40px 0 30px 0;
}

.team article {
	font-family: "Merriweather Sans", sans-serif;
	position: relative;
	background-color: #E5E4E4;
	padding: 15px 230px 15px 15px;
	margin-bottom: 6px;
	cursor: pointer;
}

.team article:hover i.icon-close {
	background-position: 0 -500px;
}

.team article:hover i.icon-open {
	background-position: 0 -400px;
}

.team article img {
	position: absolute;
	top: 20px;
	right: 70px;
}

.team article h3 {
	margin: 0;
	color: #333;
}

.team article p.function {
	margin: 0;
}

.team article .body a {
	color: #666;
	font-weight: bold;
}

.team article .toggle {
	position: absolute;
	top: 20px;
	right: 10px;
}

#subscribe table td,
#subscribe_1_ table td,
#subscribe_2_ table td {
	padding-bottom: 10px;
}

#subscribe table input,
#subscribe_1_ table input,
#subscribe_2_ table input,
#subscribe table textarea,
#subscribe_1_ table textarea,
#subscribe_2_ table textarea {
	width: 100%;
	background-color: white;
	border: 1px solid #999;
	padding: 5px 10px;
}

#subscribe table select,
#subscribe_1_ table select,
#subscribe_2_ table select {
	background-color: white;
	border: 1px solid #999;
	padding: 5px 10px;
}

/*********************************************
* icons
*/
.icon {
	display: inline-block;
	width: 35px;
	height: 35px;
	background-image: url(../media/spritesheet.png);
	background-size: 35px;
	background-repeat: no-repeat;
}

.icon-more { 				
	background-position: 0 0 
}

.icon-more:hover,
a:hover .box .icon-more { 		
	background-position: 0 -50px; 
}

.icon-download { 			
	background-position: 0 -200px; 
}

.icon-download:hover,
a:hover .box .icon-download { 	
	background-position: 0 -250px; 
}

.icon-download-invert {
	background-position: 0 -300px;
}

.icon-file { 				
	background-position: 0 -300px; 
}

.icon-search {
	background-position: 0 -100px;
	width: 25px;
	height: 25px;
}

.icon-mobile-nav {
	background-position: 0 -750px;
	position: absolute;
	top: -10000px;
	right: 10000px;
}

.icon-close {
	background-position: 0 -450px;
}

.icon-close:hover {
	background-position: 0 -500px;
}

.icon-open {
	background-position: 0 -350px;
}

.icon-open:hover {
	background-position: 0 -400px;
}


/************************************************
* structure elements
*/
footer {
	font-family: "Merriweather Sans", sans-serif;
	margin: 50px auto 0;
	width: 960px;
	padding: 30px 20px;
	text-indent: -21px;
	background:
		url(../media/bg-h1-right.gif) top right no-repeat,
		url(../media/bg-h1-left.gif) top left no-repeat
	;
	border-bottom: 1px solid #ae0000;
	margin-bottom: 100px;
}

footer a {
	color: black;
}


/*********************************************
* Generic
*/
.hidden {
	position: absolute;
	top: -10000px;
	left: -10000px;
}

.link-block,
.link-block-doc {
	display: block;
	position: relative;
	min-height: 40px;
	font-family: "Merriweather Sans", sans-serif;
	padding-left: 50px;
}
.link-block:before,
.link-block-doc:before {
	content: " ";
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
	background-image: url(../media/spritesheet.png);
	background-size: 35px;
	background-repeat: no-repeat;
}

.link-block:hover,
.link-block a:hover {
	color: #AE0000 !important;
}
.link-block:hover:before {
	background-position: 0 -50px;
}

.link-block-doc:before {
	background-position: 0 -200px;
}

.link-block-doc:hover,
.link-block-doc a:hover {
	color: #AE0000 !important;
}

.link-block-doc:hover:before {
	background-position: 0 -250px;
}

section.editorial article {
	width: 45%;
	float: left;
	background-color: #e6e7e6;
	padding: 10px;
	margin-right: 10px;
	margin-bottom: 10px;
	overflow: hidden;
}

section.editorial article img {
	max-width: 100%;
	min-width: 100%;
	margin-bottom: 20px;
}

section.editorial .body {
	display: none;
}

section.editorial .toggler {
	text-align: center;
}

section.editorial .toggler a {
	cursor: pointer;
}

.social {
	width: auto;
	padding: 0;
	margin: 0;
	float: right;
}

.social li {
	list-style: none;
	float: left;
	padding: 0 8px;
	margin: 0;
}

.social a {
	color: #999;
}

.social a:hover {
	color: #AE0000;
}


.social-home {
	margin-top: -15px;
}

section.editorial .toggler a {
	display: inline-block;
	padding: 5px 0 0 50px;
	height: 45px;
	background: url(../media/spritesheet.png) 0 -450px no-repeat;
	background-size: 35px;
}

section.editorial .toggler a:hover {
	background-position: 0 -500px;
}

section.editorial .toggler a.active {
	background-position: 0 -350px;
}

section.editorial .toggler a.active:hover {
	background-position: 0 -400px;
}


#bfi-task td {
	border-bottom: 1px solid gray;
	border-right: 1px dotted lightgray;
	text-align: center;
	vertical-align: middle;
	line-height: 20px;
}