/* @override 
	http://echolot-berlin.de/css/basic.css #### */


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

/* @group Standards */

body {
	color: #65809C;	
	font: 16px/22px 'Raleway', sans-serif;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	text-rendering: optimizeLegibility;
	font-weight: 400;
}

body.index {
	background-position: 0 50px !important;
}
	
a:link, a:visited, a:active {
	color: inherit; 
}

article a:hover {
	color: #ECAB06;
	text-decoration: underline;
}

nav a, nav a:hover {
	text-decoration: none;
}

a:visited {
	color: rgba(100, 128, 156, 0.21);
}

nav a:visited {
	color: inherit;
}

a:focus {
	-moz-outline-style: none;
}

 [class^="icon-"]:before, [class*=" icon-"]:before, article a[target=_blank]:before, article a[rel=external]:before, article a.external:before {
  font-family: "fa";
  font-style: normal;
  font-weight: normal;
  speak: none;
 
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-file-pdf:before { content: '\f1c1'; } /* '' */

aside a {
	text-decoration: none;
}

article a[target=_blank]:before, article a[rel=external]:before, article a.external:before {
	content: '\f08e';
	text-decoration: none!important;
	display: inline-block;
	margin-right: 3px;
}

i, em {
	font-style: italic;
}

b, strong {
	font-weight: 600;
}

.clearfloat {
	clear: both;
	display: block;
}

h1 {
	font-size: 40px;
	font-weight: 800;
	line-height: 44px;
	margin-bottom: 22px;
}

h2 {
	font-size: 32px;
	font-weight: 800;
	line-height: 36px;
	margin-bottom: 18px;
}

h3 {
	font-size: 28px;
	font-weight: 800;
	line-height: 32px;
	margin-bottom: 16px;
}

h4 {
	font-size: 24px;
	font-weight: 800;
	line-height: 28px;
	margin-bottom: 14px;
}

h5 {
	font-size: 20px;
	font-weight: 800;
	line-height: 24px;
	margin-bottom: 12px;
}

h6 {
	font-size: 16px;
	font-weight: 800;
	line-height: 20px;
	margin-bottom: 10px;
}

.small, blockquote, figcaption {
	font-size: 12px;
	line-height: 16px;
}

p {
	margin-bottom: 1em;
}

.highlight {
	background-color: yellow;
}

img[src*=svg] { width: 100%;}

/* @end */

/* @group wrapper */

#wrapper {
}

.inner {
	width: 74%;
	max-width: 960px;
	float: right;
}

.outer {
	width: 90%;
	float: none;
	margin-right: auto;
	margin-left: auto;
}

#wrapper > header {
	position: relative;
	width: 100%;
}

#wrapper > header a:hover {
	text-decoration: none;
}

.logo {
	display: inline-block;
	float: left;
}

.logo img {
	width: 60px;
	margin-top: -7px;
}

/* @group headerimage */

#headerImage {
	position: relative;
	height: 200px
	overflow: hidden;
	margin-top: 78px;
}

#headerImage img {
	width: 100%;
}

.back {
	position: absolute;
	left: 0;
	top: -9px;
}

.front {
	top: 2px;
	position: relative;
}

#headerImage hgroup {
	position: absolute;
	top: 23%;
	left: 20%;
	color: white;
	text-transform: uppercase;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	width: 580px;
}

#headerImage hgroup img {
	width: 68px;
	float: left;
	margin-right: 35px;
	margin-top: -30px;
}

#headerImage hgroup h1 {
	font-size: 46px;
	line-height: 1.2em;
	margin-left: 103px;
	letter-spacing: 1px;
}


#headerImage a {
	text-decoration: none;
	font-size: 29px;
	font-weight: bold;
}

#headerImage .link {
	position: absolute;
	right: 25px;
	font-weight: 600;
	font-size: 24px;
	color: white;
	line-height: 160%;
	bottom: 120px;
	padding: 5px;
	background-color: #EEA543;
	transform: rotate(-7deg);
}

/* @end */

/* @end */

/* @group nav */

/* @group main */

#main {
	font-weight: 600;
	z-index: 2;
	position: fixed;
	background-color: white;
	top: 0;
	padding-top: 40px;
	height: 50px;
	text-align: right;
}

#main > ul {
	margin-right: 200px;
}

.smaller #main {
	height: 40px;
	padding-top: 20px;
}

#main .active > a {
	color: #3b4753;
}

#main li {
	display: inline-block;
	margin-right: 21px;
}

#main > ul > li:last-of-type {
	margin-right: 0;
}


#main a:hover {
	color: #ECAB06;
}

#main.active {
	background-color: orange;
	min-height: calc(66vh + 00px);
}

#main.active a:hover {
	color: white;
}

#main a:after {
}

/* @end */

/* @group language */

#language {
	font-size: 11px;
	float: right;
	margin-top: -20px;
	font-weight: 400;
	text-transform: uppercase;
	margin-right: 20px;
}

#language li {
	float: left;
	margin-left: 20px;
	margin-right: 0;
}

#language a {
}

#language a:hover {
}

/* @end */

/* @group subnav */

.subnav {
	text-align: left;
	position: absolute;
	top: 86px;
	width: calc(80% - 20px);
	right: 10%;
	color: white;
	padding: 20px 0 20px 20px;
	border: 1px solid white;
	display: none;
}

.smaller .subnav {
	top: 65px;
}

.subnav a:hover {
	color: #65809C !important;	
}

.subnav .active > a {
	color: #65809C;	
}

#main.active .subnav {
	display: block;
	float: right;
}

#main.active > ul > li.hasSub:before {
	content: " ";
	border-left: 1px solid white;
	position: relative;
	top: 26px;
	left: 50%;
	background-color: silver;
}


.subnav > li {
	float: left;
	width: calc(29% - 10px);
	margin-bottom: 20px;
	height: 110px;
	background-color: #f49d00;
	padding: 5px;
}

.subnav > li > ul {
	font-weight: 400;
	letter-spacing: 0.04em;
}

.subnav > li > ul > li {
	width: calc(100% - 10px);
}

.subnav > li > ul > li:before {
	content: "–";
	margin-right: 3px;
}

/* @end */

/* @end */

/* @group content */

main {
	position: relative;
	display: block;
	padding: 50px 20px 20px;
	margin-top: -6px;
	width: calc(100% - 40px)!important;
}

main::after {
	content: " ";
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1;
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
}

/* @group article */

article {
	float: left;
	width: calc(90% - 240px);
	margin-right: calc(10% + 40px);
	max-width: 900px!important;
}

figure {
	width: calc(50% - 20px);
	margin-right: 20px;
	float: left;
}

figure.full {
	width: 100%;
}

figure img {
	width: 100%;
}

figcaption {
	margin-bottom: 8px;
}

.back {
	text-align: right;
	font-size: 40px;
	color: gray;
	margin-top: 10px;
}

.block {
	clear: both;
	margin-bottom: 20px;
}

article ol li {
	list-style-type: decimal;
	list-style-position: outside;
	margin-left: 20px;
}

#content ul li {
	list-style-position: inside;
}

article ul li:before {
	content: "–";
	margin-right: 10px;
}

article ul, article ol {
	margin-bottom: 1em;
}

.videoWrapper {
	position: relative;
	padding-bottom: 51%; /* 16:9 */
	padding-top: 25px;
	height: 0;
	width: 100%;
}

.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* @end */

/* @group aside */

aside {
	float: left;
	width: 200px;
	font-size: 0.8em;
}

aside div {
	background-color: orange;
	height: 80px;
	margin-bottom: 20px;
	padding: 5px;
	width: 200px;
}

aside div a {
	width: 100%;
	height: 100%;
	display: block;
	line-height: 1.4em;
}

aside div h4 {
	margin-bottom: 1px;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 20px;
	line-height: 21px;
}

aside a:hover {
	color: white;
}

/* @end */

/* @end */

/* @group footer */

footer {
	clear: both;
}

footer section {
	background-color: #8ea7c5;
	clear: both;
	padding-top: 10px;
	padding-bottom: 10px;
	color: white;
	text-align: center;
}

footer nav li {
	display: inline-block;
	margin-right: 20px;
}

footer nav li:last-of-type {
	margin-right: 0;
}

footer a:hover {
	color: #65809C;	
}

.backtotop {
	float: left;
	width: 100%;
}

.backtotop a {
	margin-bottom: 10px;
}

.backtotop a:before {
	content: "↑ ";
}

/* @end */

@media screen and (max-width: 1600px) {
	
	.outer {
		width: 90%;
		position: relative;
		max-width: 1440px;
		float: right;
	}

	#headerImage hgroup {
		top: 23%;
		left: 20%;
		width: 39vw;
	}
	
	#headerImage hgroup img {
		width: 4.4vw;
		margin-right: 2vw;
		margin-top: -1.7vw;
	}
	
	#headerImage hgroup h1 {
		font-size: 3vw !important;
		margin-left: 6.4vw;
	}
	
	#headerImage a {
		font-size: 1.75vw!important;
	}
	
	#headerImage .link {
		font-size: 1.3vw!important;
	}

}

@media screen and (max-width: 980px) {
	
	article {
		width: 100%;
		margin-right: 0;
	}
	
	aside {
		width: 100%;
	}
	
	aside .theme {
		float: left;
		margin-right: 20px;
	}
	
	#main {
		text-align: center;
	}
	
	#main > ul {
		margin: 0;
	}
	
	.subnav > li {
		width: calc(50% - 40px)!important;
	}

}

@media screen and (max-width: 780px) {
	
	main {
		margin-top: 200px;
	}
	
	#main.active > ul > li.hasSub:before {
		top: 18px;
		font-size: 10px;
	}

	.outer {
		margin-left: 0;
		margin-top: 0;
		padding-right: 20px;
		padding-left: 20px;
		width: calc(100% - 40px)!important;
	}
	
	article {
		width: calc(100% - 20px);
	}
		
	#main.active {
	}
	
	#main {
		padding: 20px 0;
	}
	
	.logo {
		margin-left: auto;
		margin-right: auto;
		position: relative;
		width: 200px;
		float: none;
		top: 0;
		margin-bottom: 6px;
	}
	
	#language {
		position: absolute;
		top: 41px;
		right: 0;
	}
	
	header {
		margin-bottom: -6px;
	}
	
	.smaller .subnav {
		top: 95px;
	}
	
	}

@media only screen and (max-width : 580px) {

	figure {
		width: 100%;
		margin-right: 0;
	}
	
	#main {
		width: calc(100% - 0px)!important;
		padding-right: 0!important;
		margin-right: 0!important;
	}
	
	#headerImage .link {
		bottom: 30px;
		right: 20px;
	}
	
	.subnav > li {
		width: calc(100% - 30px)!important;
		height: auto;
	}

	#language {
	}
	
	article {
		padding-right: 20px;
		padding-left: 20px;
		width: calc(100% - 40px);
	}
	
	aside {
		margin-left: 20px;
		width: calc(100% - 20px)!important;
	}

	.smaller #main {
		padding-top: 12px;
		height: 50px;
	}
	
	.smaller .subnav {
		top: 87px;
	}

	.outer {
		padding-right: 0;
		padding-left: 0;
		width: calc(100% - 0px)!important;
		margin-left: 0;
		margin-right: 0;
		float: none;
	}
	
	.backtotop {
		margin-left: 5px;
	}

}

@media only screen and (max-width : 480px) {

	#main {
		margin-right: 0;
		margin-left: 0;
		padding-right: 0;
		padding-left: 0;
		visibility: visible;
	}
	
	article {
		width: calc(100% - 40px);
		margin-right: 0;
		margin-left: 0;
		padding-right: 0;
	}
	
	.subnav nav {
		width: calc(100% - 40px);
		margin: 0;
	}
			
}
