/*========================
GLOBAL
=========================*/
html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}
body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	font-style:normal;
	font-size : 100%;
	color : rgba(0,0,0,1);
}
/*========================
container styles
=========================*/
.page-wrapper {
	width: 100%;
	margin:0;
	padding:0;
	background-color: white;
	overflow: auto;
}
header {
	position: absolute;
	top: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	z-index: 100;
}
nav {
	margin:0 auto;
	padding:0;
}
main {
	position: relative;
	background-color: rgba(255, 255, 255, 1);
	-webkit-animation: fade linear;
	animation: fade linear;
	-webkit-animation-duration: 1.0s;
	animation-duration: 1.0s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 6;
} /* -- fade siehe Effekte --*/
section {
	position: relative;
	width: 100%;
    margin: 0 auto 0 auto;
	padding: 0;
	overflow: hidden;
}
section:after {
	content: "";
	display: table;
	clear: both;
}
.fullheight {
	min-height: 100vh;
}
article {
	width: auto;
}
aside {
	position: relative;
	background-color: rgba(255, 255, 255, 1);
	border-left: 0.9rem solid grey;
	padding: 1rem 1rem 0 1rem;
	height: 93vh;
} /*-- liegt in preblog --*/
#preblog {
	position: absolute;
	right: 0;
	top: 50px;
	width: 23rem;
	height: 95vh;
	padding: 0 0 0 1.5rem;
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
	background-color: rgba(255, 255, 255, 0);
	transition-timing-function: ease-in-out;
	transition: all 1s;
	-webkit-transition: all 1s;
	-webkit-transform: translateX(20.6rem);
	-moz-transform: translateX(20.6rem);
	-o-transform: translateX(20.6rem);
	-ms-transform: translateX(20.6rem);
	transform: translateX(20.6rem);
	z-index: 112;
}
@media screen and (max-width: 600px) {
	#preblog {
		padding: 0 0 0 0.8rem;
		width: 20rem;
		-webkit-transform: translateX(17.9rem);
		-moz-transform: translateX(17.9rem);
		-o-transform: translateX(17.9rem);
		-ms-transform: translateX(17.9rem);
		transform: translateX(17.9rem);
		}
}
#preblog.mouseHover:hover {
	-webkit-transform: translateX(0rem);
	-moz-transform: translateX(0rem);
	-o-transform: translateX(0rem);
	-ms-transform: translateX(0rem);
	transform: translateX(0rem);
	cursor: crosshair;
}
#preblog.tap {
	-webkit-transform: translateX(0rem);
	-moz-transform: translateX(0rem);
	-o-transform: translateX(0rem);
	-ms-transform: translateX(0rem);
	transform: translateX(0rem);
}
.mouseHover {
	/* klasse hinzugefügt bei erkennen von maus device via touch.js*/
}
.touchHover {
	/* klasse hinzugefügt bei erkennen von touch device via touch.js*/
}
.open_blog {
	padding-top: 120px;
	min-height: auto;
}
@media screen and (max-width: 990px) {
	.open_content, .open_blog, .black {
	padding-top: 15px;
	min-height: auto;
	}
}
/*  Blog  */
.open_blog {     /* section mit Jahresmenu  */
	position: relative;
	width: 100%;
    margin: 0 auto 0 auto;
	background-color: rgba(255, 255, 255, 0);
}
.blogs {         /* section ohne rows */
	max-width: 990px;
	height: auto;
    margin: 0 auto 0 auto;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0);
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
	box-sizing: border-box;
}
#rightbox {
	display: block;
	position: absolute;
	top: 60px;
	right: 10px;
	margin: 0;
	padding: 0px;
	line-height: 0.85rem;
}
#rightbox a.subselected {
	color: blue;
}
#rightbox a.subnav, a.subselected {
	display: block;
	margin: 0;
	padding: 0;
}
#rightbox a:hover {
	color: blue;
}
footer {
	position: relative;
	top: 0px;
	background-color: rgba(255, 255, 255, 1);
	width: 100%;
	padding-top: 1rem;
	margin: 0 auto 0 auto;
	-webkit-box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.3);
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.3);
	z-index: 7;
}
/*========================
Klassen Layout
=========================*/
.sec-first {
	padding-top: 20px;
	border-top: 55px solid black;
} /* section unterhalb der Nav-Leiste*/
.no-h1 {
	height: 4rem; /* abstand falls keine h1 */
}
.row, .row-full, .row-big, .row-big-bild, .row-big-image, .description {
	position: relative;
	height: auto;
    margin: 0 auto 0 auto;
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
	display: flex;
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flex;
	background: none;
}
.row {
	padding: 10px;
}
.row, .row-full {   /*  row-full ist ohne padding fuer bilder  */
	max-width: 1400px;
	width: auto;
}
.row-big {   /*  row-big  fuer bildschirmbreite  */
	width: 100%;
	padding: 10px;
}
.row-big-bild {   /*  row-big  fuer bildschirmbreite mit 20px aussen für bilder anordnung  */
	width: 100%;
	padding: 10px;
}
.row-big-image {   /*  row-big-image  fuer bildschirmbreite ohne padding fuer bilder  */
	width: 100%;
	padding: 0;
}
/* Spalten */
.clmn_2l, .clmn_2r, .clmn_3l, .clmn_3m, .clmn_3r, .clmn_1-3l, .clmn_2-3r {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	flex: 1 1 auto;  /*gleiche Höhe siehe row display: flex, float bei mediaqueries allerdings aufgehoben */
	margin: 0;
	padding: 0;
}
/* 2 gleiche Spalten */
.clmn_2l, .clmn_2r {
	width: 50%;
}
.clmn_2l {
	margin: 0 5px 0 0;
}
.clmn_2r {
	margin: 0 0 0 5px;
}
@media screen and (max-width: 768px) {	
	.clmn_2l, .clmn_2r {
		width: 100%;
		margin-bottom: 0.6rem;
	}
}
/* 3 gleiche Spalten */
.clmn_3l, .clmn_3m, .clmn_3r {
	width: 33.3333333328%;
}
.clmn_3l {
	margin-right: 5px;
}
.clmn_3m {
	margin-right: 5px;
	margin-left: 5px;
}
.clmn_3r {
	margin-left: 5px;
}
@media screen and (max-width: 768px) {	
	.clmn_3l, .clmn_3m, .clmn_3r, .clmn_1-3l, .clmn_2-3r {
		width: 100%;
		margin-bottom: 0.6rem;
	}
}
/* 3 Spalten, 1zu2 */
.clmn_1-3l {
	width: 33.3333333328%;
	margin-right: 5px;
}
.clmn_2-3r {
	width: 66.6666666656%;
	margin-left: 5px;
}
/* verschachtelung */
.clmn_row {
	position: relative;
	padding: 0;
	width: 100%;
	height: auto;
    margin: 0 auto 0 auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flex;
	display: flex;
}
/*========================
1 box in row
=========================*/
.box_1 {
	width: 100%;
	max-width: 990px;
	height: auto;
	padding: 0;
}
.box_100 {
	width: 100%;
	height: auto;
	padding: 0;
}
/*========================
2 gleiche boxen in row
=========================*/
.box_2l, .box_2r, .box_2 {
	width: 50%;
/*	overflow: hidden; */
}
.box_2l {
	padding: 0 10px 0 0;
}
.box_2r {
	padding: 0 0 0 10px;
}
.box_2 {
	padding: 0 10px 0 10px;
}
/*========================
3 gleiche boxen in row
=========================*/
.box_3l, .box_3m, .box_3r {
	width: 33.3333333328%;
	overflow: hidden;
}
.box_3l {
	padding: 0 5px 0 0;
}
.box_3m {
	padding: 0 5px 0 5px;
}
.box_3r {
	padding: 0 0 0 5px;
}
/*========================
4 gleiche boxen in row
=========================*/
.box_4l, .box_4lm, .box_4rm, .box_4r {
	width: 25%;
	overflow: hidden;
}
.box_4l {
	padding: 0 5px 0 0;
}
.box_4lm {
	padding: 0 5px 0 5px;
}
.box_4rm {
	padding: 0 5px 0 5px;
}
.box_4r {
	padding: 0 0 0 5px;
}
/*========================
2 boxen 3:1 in row mit box_4r
=========================*/
.box_3-4l {
	width: 75%;
	overflow: hidden;
}
/*========================
1 bild in row
=========================*/
.bild_100 {
	width: 100%;
	height: auto;
	margin: 0;
}
/*========================
2 gleiche bilder in row
=========================*/
.bild_2l, .bild_2r, .bild_2 {
	width: 50%;
/*	overflow: hidden; */
}
.bild_2l {
	margin: 0 5px 0 0;
}
.bild_2r {
	margin: 0 0 0 5px;
}
.bild_2 {		/* in 4er reihe mit 4left und 4right*/
	margin: 0 5px 0 5px;
}
/*========================
3 gleiche bilder in row
=========================*/
.bild_3l, .bild_3m, .bild_3r {
	width: 33.3333333328%;
	overflow: hidden;
}
.bild_3l {
	margin: 0 5px 0 0;
}
.bild_3m {
	margin: 0 5px 0 5px;
}
.bild_3r {
	margin: 0 0 0 5px;
}
/*========================
4 gleiche bilder in row
=========================*/
.bild_4l, .bild_4lm, .bild_4rm, .bild_4r {
	width: 25%;
	overflow: hidden;
}
.bild_4l {
	margin: 0 5px 0 0;
}
.bild_4lm {
	margin: 0 5px 0 5px;
}
.bild_4rm {
	margin: 0 5px 0 5px;
}
.bild_4r {
	margin: 0 0 0 5px;
}
/*===================================
alle boxen in row flex und box-sizing
===================================*/
.clmn_2l, .clmn_2r, .clmn_sub2l, .clmn_sub2r, .box_1, .box_100, .box_2l, .box_2r, .box_2, .box_3l, .box_3m, .box_3r, .box_4l, .box_4lm, .box_4rm, .box_4r, .box_3-4l {
	display: block;
	margin: 0;
	box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	flex: auto;  /*gleiche Höhe siehe row display: flex, bei mediaqueries: wrap */
}
.clmn_sub2l {
	margin: 0 5px 0 0;
}
.clmn_sub2r {
	margin: 0 0 0 5px;
}
/* medium tablet */
@media screen and (max-width: 800px) {
	.clmn_sub2l, .clmn_sub2r {
		width: 100%;
		margin:10px 0 10px 0;
		padding: 0;
	}
	.clmn_2l, .clmn_2r, .box_1, .box_2l, .box_2r, .box_2, .box_3l, .box_3m, .box_3r, .box_4l, .box_4lm, .box_4rm, .box_4r, .box_3-4l {
		width: 100%;
		margin:0 0 20px 0;
		padding: 0 10px 0 10px;
	}
	.box_100 {
		padding:0;
		margin: 0 0 20px 0;
	}
	.row, .row-big, .row-big-image, .row-big-bild, .clmn_row {
		flex-wrap: wrap; /* bricht um */
		width: auto;
		margin:0;
	}
	.row, .row-big, .row-big-bild, .clmn_row  {
		padding: 0 20px 0 20px;
	}
}
/*===================================
alle bilder in row flex und box-sizing
===================================*/
.bild_1, .bild_100, .bild_2l, .bild_2r, .bild_2, .bild_3l, .bild_3m, .bild_3r, .bild_4l, .bild_4lm, .bild_4rm, .bild_4r {
	display: block;
	padding: 0;
	box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	flex: auto;  /*gleiche Höhe siehe row display: flex, bei mediaqueries: wrap */
}
/* medium tablet */
@media screen and (max-width: 800px) {
	.bild_1, .bild_100, .bild_2l, .bild_2r, .bild_2, .bild_4l, .bild_4lm, .bild_4rm, .bild_4r {
		width: 100%;
		margin:0 0 20px 0;
	}
}

figure {
	position: relative;
	height: auto;
    margin: 0 auto 0 auto;
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
	background: none;
	max-width: 900px;
	width: auto;
}
figcaption {
/* in imagelightbox */	
}
.map {
	position: relative;
	width: 100%;
	padding-bottom: 40%;
	height: 0;
	overflow: hidden;
 }
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
  }
.youtube {
	position: relative;
	width: 100%;
	padding-bottom: 50%;
	padding-left: 10px;
	padding-right: 10px;
	height: 0;
	overflow: hidden;
 }
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
  }
.description {
	position: relative;
	padding: 10px 20px 10px 20px;
	max-width: 1400px;
	height: auto;
    margin: 0 auto 0 auto;
}
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
.pull-right {
	display: block;
    float: right !important;
	margin: 0 20px 0 0;
	padding: 0;
}
.pull-left {
	display: block;
    float: left !important;
	margin: 0 0 0 10px;
	padding: 0;
}
.copyright {
	display: block;
	margin: 10px 20px 0px 20px;
	padding: 0 0 20px 0;
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
}
/*========================
imagelightbox
=========================*/
.gallery {
	/*
	max-width: 990px;
	*/
    margin: 0 auto 0 auto;
}
.detail {  /* Bilder Vorschau */
		padding: 0.3rem 0 0 0;
}
.detail img {
	float: left;
	max-width: 50%;
	height: auto;
	padding: 0;
	margin: 0;
}
/* detail_s detail_m img in lightbox.css */
/*========================
colors
=========================*/
.bg-col-black {
	background-color: rgba(0,0,0,1);
}
.bg-col-red {
	background-color: rgba(255,0,0,1);
}
.bg-col-blue {
background-color: rgba(48,153,255,1);
}
.bg-col-darkblue {
background-color: rgba(0,10,64,1);
}
.bg-col-aqua {
/*
	background-color: rgba(0,231,228,1);
*/
	background-color: rgba(210,241,242,1);
}
.bg-col-white-blu {
	animation: white-blu-change 10s infinite;
}
.bg-col-grey {
	background-color: rgba(237,237,237,1);
}
.bg-col-beige {
	background-color: rgba(237,235,230,1);
}
.bg-col-bleu {
	background-color: rgba(230,233,237,1);
}
.bg-col-schilf {
	background-color: rgba(230,237,235,1);
}
.bg-col-mauve {
	background-color: rgba(232,230,237,1);
}
.bg-col-rose {
	background-color: rgba(237,230,234,1);
}
@keyframes white-blu-change {
  0% {
	background-color: rgba(255, 255, 255, 1);
  }
  50% {
	background-color: rgba(40, 0, 255, 1);
  }
  100% {  
	background-color: rgba(255, 255, 255, 1);
  }
}
.startbild {
	background-image: url("../images/drape06blu.jpg");
	background-size: auto auto;
	background-repeat: no-repeat;
	background-position: center;
	animation: landscape 40s linear infinite;
}
/*
@keyframes landscape {
	0% { background-position: 0px -400px }
	25% { background-position: -200px -300px }
	50% { background-position: -400px -200px }
	75% { background-position: -100px -300px }
	100% { background-position: 0px -400px }
}
*/
@keyframes landscape {
	0% { background-position: center top }
	25% { background-position: left center }
	50% { background-position: center center }
	75% { background-position: right center }
	100% { background-position: center top }
}
@keyframes landscape_s {
	0% { background-position: center top }
	25% { background-position: left center }
	50% { background-position: center center }
	75% { background-position: right bottom }
	100% { background-position: center top }
}
/* medium tablet */
@media screen and (max-width: 1024px) {
	.startbild {
		background-image: url("../images/drape06blu_s.jpg");
		background-size: auto auto;
		background-repeat: no-repeat;
		background-position: center;
		animation: landscape_s 40s linear infinite;
	}
}
.bio {
	background-image: url("../images/profil-wind.jpg");
	background-size: auto auto;
	background-repeat: no-repeat;
	background-position: center top;
}
.zitat {
	background-image: url("../images/spiegel.jpg");
	background-size: auto auto;
	background-repeat: no-repeat;
	background-position: center center;
}
/*  font color  */
.font-col-white {
	color: rgba(255,255,255,1);
}
.font-col-red {
	color: rgba(255,0,0,1);
}
.font-col-blue {
	color: rgba(0,0,255,1);
}
/*========================
font style
=========================*/
.font-size-mega {
	font-size: 400%;
}
.font-garam {
	font-family: 'EB Garamond', serif;
}
.slogan {
	text-align: center;
	font-size: 3.6rem;
	line-height: 3.2rem;
}
.size2rem {
	font-size: 1.9rem;
}
@media screen and (max-width: 660px) {
	.slogan {
		font-size: 2.5rem;
		line-height: 2.0rem;
	}
	.size2rem {
		font-size: 1.2rem;
	}
}
.teaser {
	display: inline-block;
	font-weight: 300;
	line-height: 2.5rem;
	border-bottom: 0;
}
.italic {
	font-style: italic;
}
.uppercase {
	text-transform: uppercase;
}
.copyright p {
	font-size: 0.95rem;
}
/*========================
more style
=========================*/
.logo-z {
	position: relative;
	top: 20vh;
	display: block;
	width: 30vw;
	height: auto;
	margin: 0 auto;
} /* artwork */
.vernissage {
	position: relative;
	top: 20vh;
	display: block;
	height: auto;
	font-weight: 700;
	font-size: 10vw;
} /* artwork */
.shadow {
  -webkit-filter: drop-shadow( 3px 3px 2px rgba(40, 0, 255, 0.7));
  filter: drop-shadow( 3px 3px 2px rgba(40, 0, 255, 0.7));
}

/*========================
Semantik
=========================*/
a {
	color: rgba(0,0,153,1);
	text-decoration: none;
}
a:hover {
	color: rgba(0,0,255,1);
}
#aside a {
	color: rgba(0,0,153,1);
}
#aside a:hover {
	color: rgba(0,0,255,1);
}
nav ul li a {
	color: white;
}
footer a {
	color: grey;
}
h1 {
	max-width: 900px;
	display: block;
	height: auto;
    margin: 0 0 20px 0;
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
	font-size: 2.5rem;
	line-height: 3rem;
	font-weight: 300;
	padding: 0;
}
h1.topmargin {
    margin: 55px 0 20px 0;
}
h2 {
	font-weight: 400;
	font-size: 1.5rem;
}
aside h2 {
	writing-mode: vertical-lr;
	text-transform: uppercase;
	color: black;
	position: absolute;
	top: 2px;
	left: -40px;
}
h3, h4 {
	display: inline-block;
	font-size: 1.3rem;
	font-weight: 300;
	border-bottom: 1px solid black;
}
h2, h3, h4 {
	padding: 0;
	margin: 0 0 1rem 0;
}
article h2, h3, h4 {
	font-weight: 400;
}
aside h3 {
	max-width: 19rem;
	font-size: 1.2rem;
	font-style: normal;
	text-transform: uppercase;
	font-weight: 300;
	line-height: 1.6rem;
	display: inline-block;
	margin: 0 0 0.3rem 0;
}
p {
	display: block;
	margin: 0 0 1rem 0;
	padding: 0;
	font-size: 1.3rem;
}
p.last {
	margin: 0;
}
aside p {
	max-width: 19em;
	font-size: 1.0rem;
	font-style: normal;
	font-weight: 300;
	line-height: 1.2rem;
	padding: 0;
	margin: 0 0 0.3rem 0;
	color: rgba(0,0,0,1);
	/* display: block; */
}
ul {
	list-style-type: square;
}
ul, ol {
	display: block;
	margin: 0 0 1rem 1.5rem;
	padding: 0;
	font-size: 1.0rem;
}
img {
	width: 100%;
	height: auto;
	border: 0;
	opacity: 0; /*0 bei js, script in footer wenn seiten content geladen dann opacity:1 mit klasse img-loaded*/
	transition: opacity 1s;
}
.img-loaded {
        opacity: 1;
}	
img.left {
	float: left;
}
img.leftsmall {
	max-width: 100px;
	height: auto;
	margin: 0 1rem 0 0;
}
img.right {
	float: right;
}
img.center {
	max-width: 100%;
	height: auto;
	max-height: 100%;
	display: block;
	margin: 10px auto;
}
img.subfirst {
	max-width: 100%;
	height: auto;
	max-height: 100%;
	display: block;
	margin: 10px auto 0 auto;
}
img.center_300 {
	max-width: 300px;
	height: auto;
	max-height: 100%;
	display: block;
	margin: 10px auto;
}
img.center_990 {
	max-width: 990px;
	height: auto;
	max-height: 100%;
	display: block;
	margin: 10px auto;
}
img.blur {
	display: block;
	margin: 0px auto;
	-webkit-filter: blur(10px);
	filter: blur(10px);
}
img.blur:hover,
img.blur:focus {
	-webkit-filter: blur(1px);
	filter: blur(1px);
	-webkit-box-shadow: 0 0 0.938rem rgba( 0, 0, 0, .25 );
	box-shadow: 0 0 0.938rem rgba( 0, 0, 0, .25 );
}
img.icon {
	width: auto;
	height: 4.0rem;
	padding: 0;
	margin: 0;
	border: 0;
}
/* medium tablet */
@media screen and (max-width: 768px) {
	img.icon {
		float: right;
		clear: right;
	}
}
/*========================
Navigation und anker IDs
=========================*/
#anfang, #section2, #section3,#section3-opener, #section4, #section5, #section6, #section7, #section8, #section9 {
	display: block;
	height: 4rem;
}
nav.preview ul {          /* Navigation für Vorschau-Boxen mit Teaser Text*/
	display: block;
	font-size: 1.5rem;
}
nav.preview ul li {
	display: block;
	padding: 2rem;
}
nav.preview h2 {
	padding: 0;
	color: rgba(255, 255, 255, 1);
	font-weight: 300;
	font-size: 2rem;
	line-height: 3rem;
	margin: 0;
}
nav.preview h2.dark {
	color: rgba(0, 0, 102, 1);
}
nav.preview h2.dark:hover {
	color: rgba(0, 0, 255, 1);
}
nav.preview h3 {
	padding: 0;
	color: rgba(0, 0, 0, 1);
	font-weight: 300;
	font-size: 2rem;
	line-height: 3rem;
	margin: 0;
	border: 0;
}
.downstart {
	position: absolute;
	bottom: 10px;
	left: 50vw;
}
.downopen {
	position: absolute;
	bottom: 110px;
	left: 50vw;
}
.down, .wdown {
	display: block; 
	width: 2.0rem;
	height: 2.0rem;
	margin: 0 auto 0 auto;
	z-index: 200;
	animation-name: hovering;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
} /* hovering siehe effekte */
.down a, .wdown a {
	display: block; 
	width: 2.0rem;
	height: 2.0rem;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
		-webkit-transition: background 1s ease-in-out;
		-moz-transition: background 1s ease-in-out;
		-ms-transition: background 1s ease-in-out;
		-o-transition: background 1s ease-in-out;
		transition: background 1s ease-in-out;
}
.down a {
	background-image: url("../graphics/down.svg");
}
.wdown a {
	background-image: url("../graphics/down-white.svg");
}
@media screen and (min-width: 768px) {
	.down a:hover, .wdown a:hover {
		background-image: url("../graphics/down-mo.svg");
		background-position: bottom left;
	}
}
.nexti {
	display: inline-block; 
	width: 1.5rem;
	height: 1.5rem;
	margin: 0 0 0 1.5rem;
	background-image: url("../graphics/next.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
/*========================
Navigation header
=========================*/
.nav-bar {
	position: fixed;
	top: 0;
	display: block;
	width: 100%;
	height: 55px;
	margin: 0 auto;
	padding: 0;
	background-color: rgba(255, 255, 255, 0);
	transition: all 800ms;
	z-index: 101;
}
.nav-bar.scrolled {
	background-color: rgba(255, 255, 255, 1);
	-webkit-box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);
	transition: all 800ms;
}
.nav-bar ul li a {
	color: rgba(255, 255, 255, 1);
}
.nav-bar ul li a:hover {
	color: blue;
}
.nav-bar.scrolled ul li a {
	color: grey !important;
}
.nav-bar.scrolled ul li a:hover {
	color: blue !important;
}
.nav-bar.scrolled ul li a.active {
	color: red !important;
}
.bg-navbar {           /*liegt hinter nav-bar wird beim scrollen eingeblendet*/
	display: none; /* per js fade in script.inc */
	position: fixed;
	width: 100%;
	height: 55px;
	top: 0;
	padding: 0;
	margin: 0 auto 0px auto;
	background-color: rgba(255, 255, 255, 0.9);
	-webkit-box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);
}
nav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: 1.25rem;
}
@media screen and (max-width: 990px) {
	footer nav ul {
		display: block;
	}
}
@media screen and (max-width: 990px) {
header nav ul {
	display: none;
	}
}
@media screen and (max-width: 990px) {
nav ul.small {
	display: inline;
	}
}
@media screen and (min-width: 990px) {
nav ul.small {
	display: none;
	}
}
/* Menu smartphone and tablet */
#smart_nav {
	position: fixed;
	overflow: hidden;
	right: -100%;
	top: 0;
	display: block;
	width: 100%;
	height: 100vh;
	margin: 0;
	padding: 0;
	background-color: rgba(0, 0, 0, 0.95);
         -webkit-transform: translate(0px,0px);
        -moz-transform: translate(0px,0px);
        -o-transform: translate(0px,0px);
        -ms-transform: translate(0px,0px);
        transform: translate(0px,0px);
        -webkit-transition: 0.25s ease;
        -moz-transition: 0.25s ease;
        -o-transition: 0.25s ease;
        transition: 0.25s ease;
	z-index: 201;
}
#smart_nav.active {
	-webkit-transform: translate(-100%,0px);
	-moz-transform: translate(-100%,0px);
	-o-transform: translate(-100%,0px);
	-ms-transform: translate(-100%,0px);
	transform: translate(-100%,0px);
}
#smart_nav ul {
	list-style-type: none;
	margin: 55px 0 0 0;
	padding: 0;
}
#smart_nav li {
	padding: 10px;
	text-align: center;
	border-top: 1px solid white;
}
#smart_nav a {
	text-decoration: none;
	font-weight: 300;
	font-size: 1rem;
	color: white;
}
/* close button */
#close {
	width: 2.5rem; /* 40 */
	height: 2.5rem; /* 40 */
	text-align: left;
	background-color: rgba(0, 0, 0, 1);
	border: 2px solid white;
	border-radius: 50%;
	position: absolute;
	z-index: 10002;
	top: 3px;
	right: 3px;
	-webkit-box-shadow: 0 0 1rem 0 black;
	box-shadow: 0 0 1rem 0 black;
}
#close:before,
#close:after {
	width: 2px;
	background-color: white;
	content: '';
	position: absolute;
	top: 20%;
	bottom: 20%;
	left: 50%;
	margin-left: -1px;
}
#close:before {
	-webkit-transform: rotate( 45deg );
	-ms-transform: rotate( 45deg );
	transform: rotate( 45deg );
}
#close:after {
	-webkit-transform: rotate( -45deg );
	-ms-transform: rotate( -45deg );
	transform: rotate( -45deg );
}
/* Ende Menu smartphone and tablet */
nav ul li {
	display: inline-block;
	text-align: center;
	margin: 0;
	padding: 0;
}
nav .pull-left ul li {
	margin: 10px 10px 0 0;
}
nav .pull-right ul li {
	margin: 10px 0 0 10px;
}
@media screen and (max-width: 990px) {
nav ul li {
	min-width: auto;
	border: 0;
	}
}
nav ul li a {
	position: relative;
	display: block;
	z-index: 1;
}
@media screen and (min-width: 990px) {
	nav ul li a:hover {
		transition: all 900ms;
		-webkit-transition: all 900ms;
		-moz-transition: all 900ms;
		-o-transition: all 900ms;
		-ms-transition: all 900ms;
	}
}
.selected {
	text-decoration: underline;
} /* siehe highlight.js */
nav ul li.brand {
	margin: 5px 0 0 0;
	padding: 0px;
	display: block;
}
nav ul li.brand a {
	position: relative;
	display: block;
	background-image: url("../graphics/brand.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	width: 48px;
	height: 48px;
	text-decoration: none;
}
nav ul li.brand a:hover {
	background-image: url("../graphics/brand-mo.svg");
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
}
nav.nav-bar ul li.menu {
	position: relative;
	display: block;
	width:41px;
	height: 41px;
	margin: 5px 0 0 0;
	background-image: url("../graphics/menu.svg");
	background-size: contain;
	background-repeat: no-repeat;
	text-decoration: none;
}
nav.nav-bar.scrolled ul li.menu {
	background-image: url("../graphics/menu-grey.svg");
}
.logo {
	position: absolute;
	top: 150px;
	left: 10vw;
	display: block;
	width: 60vw;
	height: auto;
	margin: 0;
	background-color: rgba(255, 255, 255, 0);
	z-index: 102;
}

/*========================
Navigation footer
=========================*/
.totop {
	position: fixed;
	bottom: 100px;
	right: 0px;
	display: none; /* fade in mit smoothscroll.js */
	width: 3rem;
	height: 3rem;
	padding: 0;
	margin: 0 auto 0 auto;
	z-index: 200;
}
.totop a {
	display: block;
	width: 2rem;
	height: 2rem;
	background-image: url("../graphics/totop.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
@media screen and (min-width: 990px) {
	.totop a:hover {
		background-image: url("../graphics/totop-mo.svg");
		-webkit-transition: background 1s ease-in-out;
		-moz-transition: background 1s ease-in-out;
		-ms-transition: background 1s ease-in-out;
		-o-transition: background 1s ease-in-out;
		transition: background 1s ease-in-out;
	}
}
footer nav {
		margin: 0;
}
.footer_nav-bar {
	width: 100%;
	margin: 0 auto 0 auto;
	height: auto;
	padding: 0;
	overflow: auto;
}
footer nav ul {
	margin: 0 2rem 0 0;
	float: left;
}
footer nav ul li {
	min-width: 1rem;
	text-align: left;
	margin: 0;
	padding: 0;
}
footer nav ul a {
	padding: 0;
}
 nav ul.sm {
	margin: 0 0 0 1rem;
}
.mail, .fb, .x, .in, .be, .pi, .insta {
	display: block;
	float: right;
	margin: 0 8px 0 0;
	padding: 4px;
	border-radius: 50%;
	border: 1px solid white;
}
.mail a, .fb a, .x a, .in a, .be a, .pi a, .insta a {
	display: block;
	width: 1em;
	height: 1em;
	margin: 0;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.mail a {
	background-image: url("../sm/mail.svg");
}
.fb a {
	background-image: url("../sm/fb.svg");
}
.x a {
	background-image: url("../sm/x.svg");
}
.in a {
	background-image: url("../sm/in.svg");
}
.be a {
	background-image: url("../sm/be.svg");
}
.pi a {
	background-image: url("../sm/pi.svg");
}
.insta a {
	background-image: url("../sm/insta.svg");
}
.mail a:hover, .fb a:hover, .x a:hover, .in a:hover, .g a:hover, .be a:hover, .pi a:hover, .insta a:hover {
	background-color: black;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.mail a:hover {
	background-image: url("../sm/mail-mo.svg");
}
.fb a:hover {
	background-image: url("../sm/fb-mo.svg");
}
.x a:hover {
	background-image: url("../sm/x-mo.svg");
}
.in a:hover {
	background-image: url("../sm/in-mo.svg");
}
.be a:hover {
	background-image: url("../sm/be-mo.svg");
}
.pi a:hover {
	background-image: url("../sm/pi-mo.svg");
}
.insta a:hover {
	background-image: url("../sm/insta-mo.svg");
}

/*========================
Browser Präfixe
=========================*/
body {
-webkit-box-sizing: border-box; /* ältere Wbkit-Browser */
-moz-box-sizing: border-box; /* Firefox */
box-sizing: border-box; /* W3C/Chrome//Opera/IE */
-webkit-background-size: cover;
}
/* toggling */
.toggle {
 padding-top: 10px;
 padding-bottom : 20px;
 clear: left;
}
.toggleOpen {
 display: block;
 color: grey;
}
.toggleOpen:hover {
 cursor: pointer;
 color: blue;
}
.toggleBody {
 display: none;
}
.toggleClose {
 clear: both;
 display: block;
 color: grey;
}
.toggleClose:hover {
 cursor: pointer;
 color: blue;
}
/* accordeon */
.openacc {
	display: inline-block;
	height: 13px;
	width: 25px;
	margin: 0 3px 0 2px;
	background-image: url("../graphics/down.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.openacc:hover {
	background-image: url("../graphics/down-mo.svg");
}
.closeacc {
	display: inline-block;
	height: 13px;
	width: 25px;
	margin: 0 3px 0 2px;
	background-image: url("../graphics/totop-black.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.closeacc:hover {
	background-image: url("../graphics/totop-mo.svg");
}
.close:hover {
	background-image: url("../graphics/totop-mo.svg");
}
.trigger {
	cursor: pointer;
}
/* accordeon test mit scroll to top kulturbanause siehe script_accordion.inc */
.accordion-content {
	display: none;
}
.accordion-title {
	background: rgba(255,255,255,0);
}
.accordion-title a {
	background: rgba(255,255,255,0);
}
.accordion-title.open a {
	color: blue;
	}
/* accordeon ende */
/*========================
Transformationen
=========================*/
/*  Element von Perspektive bis komplett in viewport */
.persp1 {   /*Elternelement z.B. section*/
	-webkit-perspective: 300px;
	-moz-perspective: 300px;
	perspective: 300px;
	-webkit-perspective-origin: 25% 75%;
	-moz-perspective-origin: 25% 75%;
	perspective-origin: 25% 75%;
}
/*  transformscroll.js  */
.fadescroll {
	transition: all 800ms;
	opacity: 0.2;
}
.fade {
	opacity: 1;
}
.drehenscroll, .gedreht, .drehenscroll_right, .gedreht_right {
	font-size: 4rem;
	font-weight: 700;
	color: white;
}
@media screen and (max-width: 768px) {
	.drehenscroll, .gedreht, .drehenscroll_right, .gedreht_right {
	font-size: 3.0rem;
	}
}

.drehenscroll {
	transition: all 800ms;
	-webkit-transform: rotateX(5deg) rotateY(3deg) rotateZ(3deg) translateX(-50%);
	-moz-transform: rotateX(5deg) rotateY(3deg) rotateZ(3deg) translateX(-50%);
	transform: rotateX(5deg) rotateY(3deg) rotateZ(3deg) translateX(-50%);
}
.gedreht {
	-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
	-moz-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
	transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
}
.drehenscroll_right {
	transition: all 800ms;
	-webkit-transform: rotateX(10deg) rotateY(5deg) rotateZ(5deg) translateX(50%);
	-moz-transform: rotateX(10deg) rotateY(5deg) rotateZ(5deg) translateX(50%);
	transform: rotateX(10deg) rotateY(5deg) rotateZ(5deg) translateX(50%);
}
.gedreht_right {
	-webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
	-moz-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
	transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateX(0);
}
/* Cookie */
#cookiedingsbums a {color:blue; text-decoration:none;}
#cookiedingsbums a:hover {text-decoration:underline;}
#cookiedingsbums div {padding:10px; padding-right:40px;}
#cookiedingsbums { 
   text-align:right; 
   border:1px solid #fff;
   background: rgba(230, 230, 255, 0.9); 
   padding:4px;
   position:fixed;
   bottom:0; 
   z-index:10000; 
   width:50%; 
   font-size:0.95rem; 
}
#cookiedingsbumsCloser {
   color: blue;
   text-decoration: none;
   cursor:pointer;
   padding:0 4px 0 4px;
   background: rgba(230, 230, 255, 0.6); 
 }
#cookiedingsbumsCloser:hover {
   color: red;
}
/* Ende Cookies */






