/*========================
GLOBAL
=========================*/
html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}
body {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-style:normal;
	font-size : 100%;
	color : #000;
}
/* weitere Schriften */

@font-face {
   font-family:'Amstelvar';
   font-style: normal;
   src: url(../fonts/Amstelvar-Italic[wdth,wght,opsz].ttf);
}
@font-face {
   font-family:'Amstelvar-Regular';
   font-style: normal;
   src: url(../fonts/Amstelvar-Roman[wdth,wght,opsz].ttf);
}
@font-face {
   font-family:'AmstelvarAlpha';
   font-style: normal;
   src: url(../fonts/AmstelvarAlpha-VF.ttf);
}
@font-face {
   font-family:'Mplus1p';
   font-style: normal;
   src: url(../fonts/Mplus1pGX.ttf);
}
@font-face {
   font-family:'Boo Boo';
   font-style: normal;
   src: url(../fonts/BooBooGX.ttf);
}
article p {
	font-family: 'EB Garamond', serif;
}
.variabel {
	font-family: 'Mplus1p', sans-serif;
}
.variabelo {
	font-family: 'Amstelvar', sans-serif;
}
.variabelon {
	font-family: 'AmstelvarAlpha', sans-serif;
}
.variabelboo {
	font-family: 'Boo Boo', sans-serif;
	font-size: 10rem;
	font-weight: 100;
}

/*========================
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;
}
@keyframes fade {
	0% { opacity: 0; }
	50% { opacity: 0.5; }
	100% { opacity: 1; }
}
@-webkit-keyframes fade {
	0% { -webkit-transform: translateY(70vh); opacity: 0; }
	50% { opacity: 0.5; }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
section {
	position: relative;
	width: 100%;
	min-height: 100vh;
    margin: 0 auto 0 auto;
	padding: 0;
	overflow: hidden;
}
section:after {
	content: "";
	display: table;
	clear: both;
}
article {
	max-width: 900px;
}
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
=========================*/
.row, .row-full, .row-big {
	position: relative;
	height: auto;
    margin: 0 auto 0 auto;
	box-sizing: border-box;
	display: flex;
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flex;
	background: none;
}
.row {
	padding: 8px;
}
.row, .row-full {   /*  row-full ist ohne padding fuer bilder  */
	max-width: 1400px;
	width: auto;
}
.row-big {
	width: 100%;
	padding: 0;
}
figure {
	position: relative;
	height: auto;
    margin: 0 auto 0 auto;
	box-sizing: border-box;
	/*
	display: flex;
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flex;
	*/
	background: none;
	max-width: 900px;
	width: auto;
}
/* boxen in 2 gleiche Spalten */
.inrow_l, .inrow_r, .box_1 {
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	flex: auto;  /*gleiche Höhe siehe row display: flex, bei mediaqueries: wrap */
	}
.box_1 {
	display: block;
	width: 100%;
	height: auto;
	/* wegen animierte svg horizontale scrollbalken
	overflow: auto;
	*/
	margin: 0 0 10px 0;
	padding: 1rem 0 0 0;
	background-color: rgba(255, 255, 255, 0);
}
.inrow_l, .inrow_r {
	width: 50%;
/*	overflow: hidden; */
}
.inrow_l {
	margin: 0 4px 0 0;
}
.inrow_r {
	margin: 0 0 0 4px;
}
.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;
  }
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
.pull-right {
	display: block;
    float: right !important;
	margin: 0;
	padding: 0;
}
.pull-left {
	display: block;
    float: left !important;
	margin: 0;
	padding: 0;
}
/* medium tablet */
@media screen and (max-width: 768px) {
	.box_1, .inrow_l, .inrow_r {
		width: 100%;
		margin:0 0 1em 0;
	}
	.row, .row-big {
		flex-wrap: wrap; /* bricht um */
		width: auto;
		margin:0;	
	}
}
/*========================
classes
=========================*/
.homestart {
	background: url('../images/illuster.jpg') no-repeat center center;
    background-size: cover;
}
.sec-red, .sec-blue {   /*  section colored font white  */
	color: white;
}
.sec-red {   /*  section bg color red  */
	background-color: red;
}
.sec-blue {   /*  section bg color blue  */
background-color: rgba(48,153,255,1);
}
.smart-dekor {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-image: url("../images/pp-broken-line.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;	
}
/*  bg-col-* bg color  */
.bg-col-red {
	background-color: red;
}
.bg-col-blue {
background-color: rgba(48,153,255,1);
}
.bg-col-white-blu {
	animation: white-blu-change 10s infinite;
}
@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);
  }
}
/*  font-col-* font color  */
.font-col-white {
	color: white;
}
/*  font-size */
.font-size-mega {
	font-size: 400%;
}
.open_content {
	padding-top: 100px;
}
.logo-z {
	position: relative;
	top: 20vh;
	display: block;
	width: 30vw;
	height: auto;
	margin: 0 auto;
}
.vernissage {
	position: relative;
	top: 20vh;
	display: block;
	height: auto;
	font-weight: 700;
	font-size: 10vw;
}
.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: #000099;
	text-decoration: none;
}
a:hover {
	color: blue;
}
h1 {
	max-width: 900px;
	display: block;
	height: auto;
    margin: 0 0 1rem 0;
	box-sizing: border-box;
	font-size: 2.5rem;
	line-height: 3rem;
	font-weight: 300;
	padding:0;
	color: black;
}
h1.slogan {
	position: absolute;
	color: white;
	font-size: 4rem;
	font-weight: 700;
}
h2 {
	font-weight: 400;
}
h3, h4 {
	display: inline-block;
	font-weight: 300;
	border-bottom: 1px solid black;
}
h3.teaser {
	display: inline-block;
	font-weight: 300;
	line-height: 2.5rem;
	border-bottom: 0;
}
h2, h3, h4 {
	font-size: 1.5rem;
	padding: 0;
	margin: 0 0 1rem 0;
}
article h2, h3, h4 {
	font-weight: 400;
}
article .italic {
	font-style: italic;
}
p {
	display: block;
	margin: 0 0 1rem 0;
	padding: 0;
	font-size: 1.5rem;
	color: black;
}
.copyright p {
	font-size: 0.95rem;
}
ul {
	list-style-type: square;
}
ul, ol {
	display: block;
	margin: 0 0 1rem 1.5rem;
	padding: 0;
	font-size: 1.5rem;
}
.uppercase {
	text-transform: uppercase;
}
img {
	width: 100%;
	height: auto;
	border: 0;
	opacity: 1; /* opacity:0 wenn js zum einsatz kommen soll, js 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 {
	margin: 0 auto 2rem auto;
	max-width: 300px;
	height: auto;
}
img.icon {
	width: auto;
	height: 4.5rem;
	padding: 0;
	margin: 0.5rem;
	border: 0;
}
/* medium tablet */
@media screen and (max-width: 768px) {
	img.icon {
		float: right;
		clear: right;
	}
}
/*========================
Navigation und anker IDs
=========================*/
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;
}
.tease_1 {
	background: rgb(0,59,166);
	background: linear-gradient(36deg, rgba(0,59,166,0.5802696078431373) 50%, rgba(126,203,205,0.8491771708683473) 100%);
}
.tease_2 {
	background-color: rgba(201, 214, 226, 1);
}
.tease_3 {
	background: rgb(94, 85, 106, 1);
}
.tease_4 {
	background-color: rgb(0 ,0 ,102, 1);
}
.tease_5 {
	background-color: rgb(223, 233, 255, 1);
}
.tease_6 {
	background-color: rgb(255, 255, 255, 1);
}
.tease_7 {
	background-color: rgb(232, 89, 0, 1);
}
.downstart {
	position: absolute;
	bottom: 10px;
	left: 50vw;
}
.downopen {
	position: absolute;
	bottom: 110px;
	left: 50vw;
}
.down {
	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;
}
@keyframes hovering {
    from {transform:translate(0, 0px);}
    50% {transform:translate(0, -25px);}
    to {transform: translate(0, -0px);}
}
@-webkit-keyframes hovering {
    from {-webkit-transform:translate(0, 0px);}
    50% {-webkit-transform:translate(0, -25px);}
    to {-webkit-transform: translate(0, -0px);}
}
.down a {
	display: block; 
	width: 2.0rem;
	height: 2.0rem;
	background-image: url("../graphics/down.svg");
	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;
}
@media screen and (min-width: 768px) {
	.down 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;
}
#anfang, #section2, #section3, #section4 {
	display: block;
	height: 4rem;
}
/*========================
Navigation header
=========================*/
.centerbar {
	max-width: 1400px;
	height: 50px;
	margin: 0 auto;
	padding: 0 8px 0 8px;
	box-sizing: border-box;
}
.nav-bar {
	position: fixed;
	top: 0;
	display: block;
	width: 100%;
	height: 50px;
	margin: 0 auto;
	padding: 0;
	z-index: 101;
}
.white {           /*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(230, 230, 230, 1);
	box-shadow: 0 0 1rem 0 rgba(230, 230, 230, 1);
}
nav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
	footer nav ul {
		display: block;
	}
}
nav ul.small {
	display: inline;
	margin: 0;
	padding: 0;
}
/* Menu smartphone and tablet */
#smart_nav {
	position: fixed;
	overflow: hidden;
	right: -100%;
	top: 0;
	display: block;
	width: 100%;
	height: 90vh;
	margin: 0;
	padding: 80px 0 0 0;
	background-color: rgb(219,0,41);
/*
background: linear-gradient(36deg, rgba(219,0,41,0.95) 0%, rgba(255,0,0,0.95) 75%, rgba(255,48,139,0.95) 100%);
*/
         -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: 1001;
}
#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);
        -webkit-transition: 0.25s ease;
        -moz-transition: 0.25s ease;
        -o-transition: 0.25s ease;
        transition: 0.25s ease;
}
#smart_nav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#smart_nav li {
	margin: 0 0 1rem 0;
	padding: 0.3rem 0.3rem 0.3rem 1rem;
	font-size: 2rem;
	font-weight: 400;
	text-align: left;
	border-left: 4px solid #000;
	background-color: rgba(255, 255, 255, 0);
}
#smart_nav a {
	text-decoration: none;
	display: block;
	width: 90%;
	color: white;
}
#smart_nav a:hover {
	color: blue;
}
/* close button */
#close {
	position: absolute;
	width: 3rem; /* 40 */
	height: 3rem; /* 40 */
	text-align: left;
	background-color: rgba(255, 255, 255, 0);
	z-index: 1002;
	top: 10px;
	right: 10px;
}
#close:before,
#close:after {
	position: absolute;
	width: 6px;
	background-color: white;
	content: '';
	top: 0%;
	bottom: 0%;
	left: 50%;
}
#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 );
}
#close:hover {
	cursor: crosshair;
}
/* Ende Menu smartphone and tablet */
nav ul li {
	display: inline-block;
	text-align: center;
	margin: 0;
	padding: 0;
}
nav .pull-right ul li {
	margin: 10px 0 0 10px;
}
@media screen and (max-width: 768px) {
nav ul li {
	min-width: auto;
	border: 0;
	}
}
nav ul li a {
	position: relative;
	display: block;
	z-index: 1;
}
@media screen and (min-width: 768px) {
	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 {
	border-bottom: 1px solid #000099;
}
nav ul li.brand {
	margin: 10px 0 0 0;
	padding: 0px;
}
@media screen and (max-width: 768px) {
	nav ul li.brand {
		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: center;
	width: 90px;
	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 ul li.menu {
	position: relative;
	display: block;
	width:45px;
	height: 45px;
	background-image: url("../graphics/menu.svg");
	background-size: contain;
	background-repeat: no-repeat;
	text-decoration: none;
}
nav ul li.menu:hover {
	cursor: crosshair;
}
.logo {
	position: absolute;
	top: 40px;
	left: 40vw;
	display: block;
	width: 25vw;
	height: auto;
	margin: 0;
	background-color: rgba(255, 255, 255, 0);
	z-index: 102;
}
@media screen and (max-width: 990px) {
.logo {
	display: none;
	}
}
@-webkit-keyframes beben {
0% { -webkit-transform: rotate(0deg) translate(1px,1px); }
10% { -webkit-transform: rotate(2deg) translate(1px,2px); }
20% { -webkit-transform: rotate(-2deg) translate(2px,0px) ; }
30% { -webkit-transform: rotate(0deg) translate(0px,-1px); }
40% { -webkit-transform: rotate(-2deg) translate(-1px,1px); }
50% { -webkit-transform: rotate(2deg) translate(1px,-2px); }
60% { -webkit-transform: rotate(0deg) translate(2px,-1px); }
70% { -webkit-transform: rotate(2deg) translate(-2px,-1px); }
80% { -webkit-transform: rotate(-2deg) translate(1px,1px); }
90% { -webkit-transform: rotate(0deg) translate(-1px,-1px); }
100% { -webkit-transform: rotate(2deg) translate(0px,1px); }
}
.logo:hover {
-webkit-animation-name: beben;
-webkit-animation-duration: 1s;
-webkit-animation-timing-function: linear;
-webkit-animation-iteration-count: infinite;
animation-name: beben;
animation-duration: 3s;
animation-timing-function: linear;
animation-iteration-count: infinite;
}

/*========================
Navigation footer
=========================*/
.totop {
	position: fixed;
	bottom: 20px;
	right: 8px;
	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 black;
}
.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: white;
	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;
}
/* Effekte */
.slideup_1, .slideup_2, .slideup_3, .slideup_4, .slideup_5, .slideup_6 {
	position: absolute;
}
.slideup_1 {
	top: 10vh;
	-webkit-animation: slide-up_1 linear;
	animation: slide-up_1 linear;
	-webkit-animation-duration: 1.6s;
	animation-duration: 1.6s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_1 {
	0% { transform: translateY(70vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_1 {
	0% { -webkit-transform: translateY(70vh); }
	100% { -webkit-transform: translateY(0); }
}
.slideup_2 {
	top: 15vh;
	-webkit-animation: slide-up_2 linear;
	animation: slide-up_2 linear;
	-webkit-animation-duration: 2.0s;
	animation-duration: 2.0s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_2 {
	0% { transform: translateY(85vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_2 {
	0% { -webkit-transform: translateY(85vh); }
	100% { -webkit-transform: translateY(0); }
}
.slideup_3 {
	top: 20vh;
	-webkit-animation: slide-up_3 linear;
	animation: slide-up_3 linear;
	-webkit-animation-duration: 2.2s;
	animation-duration: 2.2s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_3 {
	0% { transform: translateY(85vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_3 {
	0% { -webkit-transform: translateY(85vh); }
	100% { -webkit-transform: translateY(0); }
}
.slideup_4 {
	top: 25vh;
	-webkit-animation: slide-up_4 linear;
	animation: slide-up_4 linear;
	-webkit-animation-duration: 2.5s;
	animation-duration: 2.5s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_4 {
	0% { transform: translateY(90vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_4 {
	0% { -webkit-transform: translateY(90vh); }
	100% { -webkit-transform: translateY(0); }
}
.slideup_5 {
	top: 30vh;
	-webkit-animation: slide-up_5 linear;
	animation: slide-up_5 linear;
	-webkit-animation-duration: 2.6s;
	animation-duration: 2.6s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_5 {
	0% { transform: translateY(95vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_5 {
	0% { -webkit-transform: translateY(95vh); }
	100% { -webkit-transform: translateY(0); }
}
.slideup_6 {
	top: 35vh;
	-webkit-animation: slide-up_6 linear;
	animation: slide-up_6 linear;
	-webkit-animation-duration: 2.8s;
	animation-duration: 2.8s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 111;
}
@keyframes slide-up_6 {
	0% { transform: translateY(95vh); }
	100% { transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
@-webkit-keyframes slide-up_6 {
	0% { -webkit-transform: translateY(95vh); }
	100% { -webkit-transform: translateY(0); }
	0%   { opacity: 0; }
	100% { opacity: 1; }
}
.risingfont4 {
	animation: fontrise4 linear infinite;
		-webkit-animation: fontrise4 linear infinite;
		-moz-animation: fontrise4 linear infinite;
		-o-animation: fontrise4 linear infinite;
		-ms-animation: fontrise4 linear infinite;
	animation-duration: 8s;
		-webkit-animation-duration: 8s;
		-moz-animation-duration: 8s;
		-0-animation-duration: 8s;
		-ms-animation-duration: 8s;
	animation-delay: 0s;
		-webkit-animation-delay: 0s;
		-moz-animation-delay: 0s;
		-o-animation-delay: 0s;
		-ms-animation-delay: 0s;
}
@keyframes fontrise4 {
	0% { font-variation-settings: "wght" 100; }
	25% { font-variation-settings: "wght" 200; }
	50% { font-variation-settings: "wght" 300; }
	75% { font-variation-settings: "wght" 400; }
	100% { font-variation-settings: "wght" 100; }
}
.risingfont3 {
	animation: fontrise3 linear infinite;
		-webkit-animation: fontrise3 linear infinite;
		-moz-animation: fontrise3 linear infinite;
		-o-animation: fontrise3 linear infinite;
		-ms-animation: fontrise3 linear infinite;
	animation-duration: 8s;
		-webkit-animation-duration: 8s;
		-moz-animation-duration: 8s;
		-o-animation-duration: 8s;
		-ms-animation-duration: 8s;
	animation-delay: 0s;
		-webkit-animation-delay: 0s;
		-moz-animation-delay: 0s;
		-o-animation-delay: 0s;
		-ms-animation-delay: 0s;
}
@keyframes fontrise3 {
	0% { font-variation-settings: "wght" 100; }
	50% { font-variation-settings: "wght" 900; }
	100% { font-variation-settings: "wght" 100; }
}
.risingfont2 {
	animation: fontrise2 linear infinite;
		-webkit-animation: fontrise2 linear infinite;
		-moz-animation: fontrise2 linear infinite;
		-o-animation: fontrise2 linear infinite;
		-ms-animation: fontrise2 linear infinite;
	animation-duration: 8s;
		-webkit-animation-duration: 8s;
		-moz-animation-duration: 8s;
		-o-animation-duration: 8s;
		-ms-animation-duration: 8s;
	animation-delay: 0s;
		-webkit-animation-delay: 0s;
		-moz-animation-delay: 0s;
		-o-animation-delay: 0s;
		-ms-animation-delay: 0s;
}
@keyframes fontrise2 {
	0% { font-variation-settings: "wght" 100; }
	50% { font-variation-settings: "wght" 900; }
	100% { font-variation-settings: "wght" 100; }
}
.risingfont {
	animation: fontrise linear infinite;
		-webkit-animation: fontrise linear infinite;
		-moz-animation: fontrise linear infinite;
		-o-animation: fontrise linear infinite;
		-ms-animation: fontrise linear infinite;
	animation-duration: 4s;
		-webkit-animation-duration: 4s;
		-moz-animation-duration: 4s;
		-o-animation-duration: 4s;
		-ms-animation-duration: 4s;
	animation-delay: 0s;
		-webkit-animation-delay: 0s;
		-moz-animation-delay: 0s;
		-o-animation-delay: 0s;
		-ms-animation-delay: 0s;
}
@keyframes fontrise {
	0% { font-weight: 300; }
	25% { font-weight: 400; }
	50% { font-weight: 500; }
	75% { font-weight: 700; }
	100% { font-weight: 900; }
	0%   { opacity: 1; }
	100% { opacity: 1; }
}
.o1 {
	animation: o1count ease infinite;
		-webkit-animation: o1count ease infinite;
		-moz-animation: o1count ease infinite;
		-o-animation: o1count ease infinite;
		-ms-animation: o1count ease infinite;
	animation-duration: 3s;
		-webkit-animation-duration: 3s;
		-moz-animation-duration: 3s;
		-o-animation-duration: 3s;
		-ms-animation-duration: 3s;
}
@keyframes o1count {
	0% {transform: translateY(-100vh); }
		0% { -webkit-transform: translateY(-100vh); }
		0% { -moz-transform: translateY(-100vh); }
		0% { -o-transform: translateY(-100vh); }
		0% { -ms-transform: translateY(-100vh); }
	50% { transform: translateY(0); }
		50% { -webkit-transform: translateY(0); }
		50% { -moz-transform: translateY(0); }
		50% { -o-transform: translateY(0); }
		50% { -ms-transform: translateY(0); }
	100% { transform: translateY(100vh); }
		100% { -webkit-transform: translateY(100vh); }
		100% { -moz-transform: translateY(100vh); }
		100% { -o-transform: translateY(100vh); }
		100% { -ms-transform: translateY(100vh); }
}
.o2 {
	animation: o2count ease infinite;
		-webkit-animation: o2count ease infinite;
		-moz-animation: o2count ease infinite;
		-o-animation: o2count ease infinite;
		-ms-animation: o2count ease infinite;
	animation-duration: 2.5s;
		-webkit-animation-duration: 2.5s;
		-moz-animation-duration: 2.5s;
		-o-animation-duration: 2.5s;
		-ms-animation-duration: 2.5s;
}
@keyframes o2count {
	0% {transform: translateY(100vh); }
		0% { -webkit-transform: translateY(100vh); }
		0% { -moz-transform: translateY(100vh); }
		0% { -o-transform: translateY(100vh); }
		0% { -ms-transform: translateY(100vh); }
	50% { transform: translateY(0); }
		50% { -webkit-transform: translateY(0); }
		50% { -moz-transform: translateY(0); }
		50% { -o-transform: translateY(0); }
		50% { -ms-transform: translateY(0); }
	100% { transform: translateY(-100vh); }
		100% { -webkit-transform: translateY(-100vh); }
		100% { -moz-transform: translateY(-100vh); }
		100% { -o-transform: translateY(-100vh); }
		100% { -ms-transform: translateY(-100vh); }
}
.o3 {
	animation: o3count ease infinite;
		-webkit-animation: o3count ease infinite;
		-moz-animation: o3count ease infinite;
		-o-animation: o3count ease infinite;
		-ms-animation: o3count ease infinite;
	animation-duration: 2.5s;
		-webkit-animation-duration: 2.5s;
		-moz-animation-duration: 2.5s;
		-o-animation-duration: 2.5s;
		-ms-animation-duration: 2.5s;
}
@keyframes o3count {
	0% {transform: translateY(-100vh); }
		0% { -webkit-transform: translateY(-100vh); }
		0% { -moz-transform: translateY(-100vh); }
		0% { -o-transform: translateY(-100vh); }
		0% { -ms-transform: translateY(-100vh); }
	50% { transform: translateY(0); }
		50% { -webkit-transform: translateY(0); }
		50% { -moz-transform: translateY(0); }
		50% { -o-transform: translateY(0); }
		50% { -ms-transform: translateY(0); }
	100% { transform: translateY(100vh); }
		100% { -webkit-transform: translateY(100vh); }
		100% { -moz-transform: translateY(100vh); }
		100% { -o-transform: translateY(100vh); }
		100% { -ms-transform: translateY(100vh); }
}
.o1, .o2, .o3, .risingfont, .risingfont2, .risingfont3, .risingfont4 {
	display: inline-block;
}

/* hover */
.overtease {
	position: absolute;
	display: block;
	bottom: 0;
	height: 0;
	width: 100%;
	background-color: rgba(0, 0, 30, 0.7);
	opacity: 0;
	transition: .5s ease;
	color: white;
	margin: 0;
	padding: 0 0 0 0;
	box-sizing: border-box;
}
.preview ul li:hover .overtease {
	opacity: 1;
	height: 100%;
}
img .tease_img {
	width: 100%;
	height: auto;
}
/*  home-1  */
.big-picture {
	width: 100%;
	height: 50vh;
	background-color: rgba(220, 230, 255, 0);
	background-image: url("../images/wuerfel.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
}
.big-picture-1 {
	width: 100%;
	height: 50vh;
	background-color: rgba(220, 230, 255, 0);
	background-image: url("../images/wuerfel.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
}
.big-picture-full {   /*  section class home-2 startseite full screen  */
	width: 100vw;
	height: 100vh;
	background-image: url("../images/muenchen-blue.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
}
.big-picture img {
	width: 100%;
	height: auto;
}
.overbigpic {
	position: absolute;
	display: block;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0);
	color: white;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	/*
	-webkit-animation: bigpic linear;
	animation: bigpic linear;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	*/
}
@keyframes bigpic {
	from { height: 20vh; }
	50% { height: 30vh; }
	to { height: 20vh; }
}
@-webkit-keyframes bigpic {
	from { height: 20vh; }
	50% { height: 30vh; }
	to { height: 20vh; }
}
.oversign {
	position: absolute;
	display: block;
	top: 18vh;
	width: 100%;
	height: 20vh;
	background-color: rgba(240, 230, 255, 0);
	background-image: url("../images/oversign-w.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
	-webkit-animation: bigpic linear;
	animation: bigpic linear;
	-webkit-animation-duration: 2.0s;
	animation-duration: 2.0s;
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s;
}
/*========================
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%;
}
/*
.transeff1 {
	opacity: 0.2;
	transition: all 0.5s ease-in-out;
	-webkit-transform: rotateY(10deg);
	-moz-transform: rotateY(10deg);
	transform: rotateY(10deg);
}
.visible {
	-webkit-transform: rotateY(0deg);
	-moz-transform: rotateY(0deg);
	transform: rotateY(0deg);
	opacity: 1;
}
*/
/*  transformscroll.js  */
.fadescroll {
	transition: all 800ms;
	opacity: 0.2;
}
.fade {
	opacity: 1;
}
/*
.moveleft {
	transition: all 400ms;
	opacity: 0.5;
}
.left {
	transform: translate(200px,0);
	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(-5deg) rotateY(-3deg) rotateZ(-3deg) translateX(100%);
	-moz-transform: rotateX(-5deg) rotateY(-3deg) rotateZ(-3deg) translateX(100%);
	transform: rotateX(-5deg) rotateY(-3deg) rotateZ(-3deg) translateX(100%);
}
.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);
}
/* accordeon */
.openacc {
	display: inline-block;
	height: 18px;
	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: 18px;
	width: 25px;
	margin: 0 3px 0 2px;
	background-image: url("../graphics/totop.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 */
.accordion-content {
	display: none;
}
.accordion-title a { background:white; }
.accordion-title.open a {
	color: blue;
	}
/* accordeon ende */
/* 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 */






