@charset "utf-8";

@font-face {
	font-family: 'Open Sans';
	src: url(../fonts/Open_Sans/OpenSans-Light.ttf);
}
/* Reset */
*, *:after, *:before { box-sizing: border-box; }

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }

html, body {
	font: 100% 'Open Sans', sans-serif;
	color: #333333;
	margin:0;
	padding:0;
	border:0;
	box-sizing: border-box;
}
h1, h2, h3 {
	font-weight:normal;	
}
.col2{
	-webkit-column-count: 1; /* Chrome, Safari, Opera */
    -moz-column-count: 1;
	column-count:1;
}
a { color:rgba(66,95,177,1.00); text-decoration:none; }
table a {color:rgba(91,91,91,1.00); text-decoration:none; }
h1 a {color:black; text-decoration:none; }
a:hover { text-decoration:underline; }
div.text {
	padding:1rem 0rem;
	clear:both
}
img, video {
    max-width: 100%;
    height: auto;
}
header {
	background-image:url(../gfx/startbild_1.png);
	height:50vh;
	background-size:cover;
	background-position:center center;
}
header figure {
	position:absolute;
	top:0.5rem;
	left:1.5rem;
	width:50%;
	margin:0; padding:0;
	display:none;
}

header figure img{
	width:50%;
}
/*----Bilder Startseite----*/
.bilder-startseite{
	display:none;
    position: relative;
	align-content:center;
	z-index:1;
}
.bilder-startseite div{
	width: 200px;
	height:auto;
    position: absolute;
}
.bilder-startseite img{
	-webkit-box-shadow: 0px 0px 19px 1px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 19px 1px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 19px 1px rgba(0,0,0,0.75);
}
#startseite-bild1 {	
	animation-delay:12s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild2 {	 
	animation-delay:2s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild2; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild3 {	 
	animation-delay:4s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild3; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild4 {	 
	animation-delay:16s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild4; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild5 {	 
	animation-delay:16s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild5; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild6 {	 
	animation-delay:16s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild6; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild7 {	 
	animation-delay:16s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild7; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
#startseite-bild8 {	 
	animation-delay:16s;
	animation: 18s ;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-name: startseite-bild8; /* Chrome, Safari, Opera */
	animation-fill-mode:forwards;
}
@-webkit-keyframes startseite-bild {
    0%   { left:0px; top:0px;z-index:1;	opacity:0; }
	50%  {left:800px; top:100px;transform:rotate(-15deg);	opacity:1; }
	100%{left:800px; top:100px;	opacity:1;transform:rotate(-5deg); }
}
@-webkit-keyframes startseite-bild2 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:500px; top:80px;transform:rotate(-5deg);	opacity:1; }
    100%  {left:500px; top:80px;opacity:1;transform:rotate(5deg); }
}
@-webkit-keyframes startseite-bild3 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:650px; top:80px;transform:rotate(-15deg);	opacity:1; }
	100%{left:650px; top:80px;	opacity:1;transform:rotate(-10deg); }
}
@-webkit-keyframes startseite-bild4 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:200px; top:180px;transform:rotate(-5deg); opacity:1; }
    100%  {left:200px; top:180px;opacity:1;transform:rotate(5deg); }
}
@-webkit-keyframes startseite-bild5 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0; }
	50%  {left:650px; top:200px;transform:rotate(-20deg); opacity:1; }
	100%{left:650px; top:200px;	opacity:1;transform:rotate(-10deg); }
}
@-webkit-keyframes startseite-bild6 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:800px; top:200px;transform:rotate(10deg); opacity:1; }
	100%{left:800px; top:200px;	opacity:1;transform:rotate(-8deg); }
}
@-webkit-keyframes startseite-bild7 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:350px; top:80px;transform:rotate(-15deg); opacity:1; }
	100%{left:350px; top:80px;	opacity:1;transform:rotate(-5deg); }
}
@-webkit-keyframes startseite-bild8 {
    0%   { left:0px; top:0px;z-index:1;	opacity:0;}
    50%  {left:400px; top:200px;transform:rotate(10deg);	opacity:1; }
	100%{left:400px; top:200px;	opacity:1;transform:rotate(8deg); }
}

.logo{ 
z-index:2;	
}
main { 
	display:block; /* fallback */
	padding:1% 3%; 
}
footer {
	-webkit-flex: 1; /* Safari 6.1+ */
	display: -webkit-flex; /* Safari */
	-webkit-flex-flow: row-reverse wrap; /* Safari 6.1+ */
	display:flex;
	flex-flow: row wrap;
	color:#ccc;
	background:rgba(92,92,92,1.00);
	padding:0 1rem;
	justify-content:space-between;
}
footer section {
	/*flex:1 1 0%;*/
	margin:0;
	padding:1rem;
	white-space:nowrap;
	border-bottom:1px solid grey;
}
footer section:last-child{
	border-bottom:none;	
}
footer ul {
	list-style: none;
	padding:0;
	margin:0;
	text-transform:uppercase;
}
footer li{ margin:0 0 0 0; }
footer.copyright {
	display:block; /* display:flex aufheben */
	font-size:80%;
	text-align:center;
	padding:.5rem;
	border-top:1px solid grey;
}
footer address { font-style:normal; } /* address wird sonst kursiv dargestellt */
footer a { color:#ccc; }
footer a:hover { color:#fff; }
div#kontakt  {
	-webkit-flex: 1; /* Safari 6.1+ */
	display: -webkit-flex; /* Safari */
	-webkit-flex-flow: row-reverse wrap; /* Safari 6.1+ */
	display:flex;
	flex-flow: row wrap;
	
	padding:0 1rem;
	justify-content:flex-start;
	align-items:baseline;
}
div#kontakt section {
	/*flex:1 1 0%;*/
	margin:0;
	padding:0.5rem 1rem 0.5rem 0.5rem;
	white-space:nowrap;
}
div#projektdurchfuehrung  {
	-webkit-flex: 1; /* Safari 6.1+ */
	display: -webkit-flex; /* Safari */
	-webkit-flex-flow: row-reverse wrap; /* Safari 6.1+ */
	display:flex;
	flex-flow: row wrap;
	padding:0 1rem;
	justify-content:flex-start;
	align-items:flex-start;
}
div#projektdurchfuehrung section {
	/*flex:1 1 0%;*/
	margin:0;
	padding:0.5rem;
	white-space:nowrap;
}
div.video figure{
	border:5px solid black;
}
table  { /* für Tabellen wir Chronik etc. */
	max-width:100%;
	border-collapse: collapse;
    border-spacing: 0;
}
table#kontakt{ 
	max-width:100%;
	border-collapse: collapse;
    border-spacing: 0;
    width: 50%;
}
table#kontakt th, table#kontakt td{ 
	border: none;
    text-align: left;
    padding: 8px;
}
.chronik{
	max-width:100%;
	padding:1rem;
	line-height: 1.5;
}
.chronik table{
	display:grid;
	place-content: center;
}
.chronik th{
	text-align:right;	
	vertical-align:top;
	margin:1rem;
	padding:1rem;
	}
.chronik td{
	border-left:1px solid black;	
	padding:1rem;
	margin:1rem;
}
.chronik a{
}	
.chronik tr:nth-of-type(odd) {
	background-color:rgba(218,218,220,1.00);
}
@media screen and (max-width: 45em) {
	.chronik tr, th, td {
 		display: block;	}
	.chronik th{
		text-align:left;
		margin:0;
		padding-bottom:0;	}
	.chronik td{
		border:none;
		margin:0 0 0 0.5em;	}
 	.chronik a{
		margin-left:-0.5em;	}
}
	
section .bilder-chronik {
	border:medium 3px red;
}
figure { 
	margin:2rem;
	box-sizing: border-box; 
	max-width:100%;
}
figure.left { 
	float:left;
	margin:2rem 2rem 2rem 0;
}
figure.right { 
	float:right;
	margin:2rem 0 2rem 2rem;
}
figcaption { 
	font-style:italic; 	
	box-sizing:border-box;
	font-size:80%;
}
/*----Boxen Standorte-----*/
.boxen  {
	display:flex;
	flex-flow: row wrap;
}
/*einzelner Standort*/
.boxen a{
	flex:0 0 98%;	
	margin: 0 2% 1rem 0;
	box-shadow: 0px 0px 18px -5px rgba(0,0,0,0.75);
	color:black;
}
.boxen a:hover{
	text-decoration:none;
}
@media only screen and (min-width : 565px ){	.boxen a{ flex: 0 0 48%;}}
@media only screen and (min-width : 800px ){	.boxen a{ flex: 0 0 31.3333%;}}
@media only screen and (min-width : 1024px ){	.boxen a{ flex: 0 0 23%;}}
.boxen a section:first-child{
	width:100%;
	height:10rem;
	background-position:center center;
	background-size:cover;
}
.boxen h2, .boxen p {
	padding:0 1rem 0 1rem;	
}
div#bilder-standorte  {
	-webkit-flex: 1; /* Safari 6.1+ */
	display: -webkit-flex; /* Safari */
	-webkit-flex-flow: row-reverse wrap; /* Safari 6.1+ */
	display:flex;
	flex-flow: row wrap;
	padding:0;
	justify-content:space-around;
}
div#bilder-standorte section {
	max-width:100%;
	/*flex:1 1 0%;*/
	margin:0;
	padding:0 2rem 0 0;
}
/*-Navi Standorte-- */
.standorte { float:left; margin: 1em 1em 1em 0 ; }
.standorte li {
	list-style-type:none;
	margin: 0;
	line-height:250%;
	font-size:90%;
}
.standorte li a{ text-decoration:none; }
.standorte .subsubmenu { margin: 0 1em 0 0; }
.standorte .subsubmenu li{
	list-style-type:none;
	font-size:80%;
	line-height:150%;
	margin: 0 0 0.8em 0;
}
.standorte .subsubmenu li a{ text-decoration:none; }
/*------Navi Standorte------- */

nav.standorte {
	font-size:1.1rem;
	letter-spacing:0.1rem;
	margin:0 1rem 0 0;
}
nav.standorte li {
	margin:0 1em 0 0;
	background:none;
	border-radius:3px;
}
nav.standorte a { 
	color:white;
	white-space:nowrap;
	text-decoration:none;
}
nav.standorte a:hover {
	color: rgba(59,184,255,1.00);
  transition:.15s ease-in-out;
	-moz-transition:.15s ease-in-out;
  -webkit-transition:.15s ease-in-out;
}
nav.standorte ul {
	list-style: none;
	margin:0;
	background:rgba(100,100,100,.8);
}nav.standorte ul li ul {
	list-style: none;
	margin:0 1em 0 0;
	background:none;
}
/*------Navi Lichtkunst------- */
nav.standorte-lichtkunst ul {
	width: 20em;
	padding: 0.8em;
	background-color: grey;
}

nav.standorte-lichtkunst li {
	list-style: none;
	margin: 0.4em;
}

nav.standorte-lichtkunst a {
	display: block;
	padding: 0.4em;
	font-weight: bold;
	border-radius: 10px;
	color: withe;
}
nav.standorte-lichtkunst a:focus,
nav.standorte-lichtkunst a:hover {
	color: rgba(59,184,255,1.00);
  transition:.15s ease-in-out;
	-moz-transition:.15s ease-in-out;
  -webkit-transition:.15s ease-in-out;
}

/* die div's zum Einblenden der einzelnen Räume per Javascript - Lichtkunst Una*/
.kellermap {
	position:relative;
	width:900px;
	overflow:hidden;
}
.raum {
	visibility:hidden;
	position:absolute;
	top:20px;
	left:20px;
	width:860px; 
	height:504px;
	color:white;
	padding:20px 360px 20px 40px;
}
.raum img {
	float:right;
}
.close_button {
	position:absolute;
	top:0;
	right:0;
	width:36px;
	height:36px;
	background-color:#184392;
	background-image:url(../objekte/ankerpunkte/lichtkunst/gfx/closebutton.png);
	cursor:pointer;
}
.film {
		padding: 20px 0 0 0;
		text-align:center;
}
.turm {
	float:right;
	padding: 23px 0 30px 30px;	
}

/* -------------- Navi - zunächst die gemeinsamen Sachen für Mobile- und Desktop-Navi -----*/

nav {
	font-size:1.1rem;
	font-variant: small-caps;
	letter-spacing:0.1rem;
	margin:0 1rem 0 0;
	z-index:2;	

}
nav li {
	background:rgba(92,92,92,.5);
	border-radius:3px;
}
nav a, footer a { 
	color:white;
	white-space:nowrap;
	text-decoration:none;
}
nav a:hover {
	color: rgba(59,184,255,1.00);
  transition:.15s ease-in-out;
	-moz-transition:.15s ease-in-out;
  -webkit-transition:.15s ease-in-out;
}
nav ul {
	list-style: none;
	margin:0;
	background:rgba(92,92,92,1.00);
}
/*---------------------------- MOBIL NAVI --------------------*/
.toggleMobile {
	width:60px; height:45px;
	position:absolute;
	top:1.5rem; right:1.5rem;
	transform: rotate(0deg);
	transition:.5s ease-in-out;
	cursor:pointer;
	z-index: 99;
}
.toggleMobile span {
	display:block;
	position:absolute;
	left:0;
	height:9px; width:100%;
	background: #eee;
	border-radius:9px;
	opacity:1;
	transform:rotate(0deg);
	transition:.25s ease-in-out;
}
.toggleMobile span:nth-child(1) { top:0px; }
.toggleMobile span:nth-child(2) { top:18px; }
.toggleMobile span:nth-child(3) { top:36px; }
.toggleMobile.open span:nth-child(1) { top:18px; transform:rotate(135deg);}
.toggleMobile.open span:nth-child(2) { opacity:0; left:-60px;}
.toggleMobile.open span:nth-child(3) { top:18px; transform:rotate(-135deg);}

#mobileMenu {
	display: block;
	z-index:98;
	position:absolute;
	top: 0;
	right: 0;
	max-width: 100%;
	min-width:40%;
	margin:0; padding:0;
	box-shadow: 0px 0px 18px -5px rgba(0,0,0,0.75);
}
#mobileMenu ul li {
	display:block;
	padding: .8rem .8rem .8rem 0;
	margin:0;
	border-bottom: 1px solid #aaa;
}
#mobileMenu ul li:last-child {
	border-bottom: none;
}
#mobileMenu .dropdown > a:hover { /* falls ein Dropdown-Menü-Punkt, dann soll kein Hover-Effekt angezeigt werden */
	color:white;
	cursor:default;
}
/* -------------- Deskktop-Navi -------------- */
#desktopNavi {
	display:none;
	position:absolute;
	right:1.5rem;
	top:1.5rem;
}
#desktopNavi ul {
	margin:0; padding:0;
}
#desktopNavi li{
	position:relative;
	float:left;
	padding:0.4rem;
	margin:0 0 0 0.5rem;
}
#desktopNavi a {
	display:block; /* damit der ganze Button und nicht nur der Text anklickbar ist */
	padding:0.2rem;
}
#desktopNavi .dropdown { /* für den Pfeil des  Dropdown-Menü Platz schaffen*/
	padding-right:28px; 
}
#desktopNavi .dropdown > a:after { /* der Pfeil für das Dropdown-Menü */
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -0px;
	border-width: 6px 6px 0 6px;
	border-style: solid;
	border-color: #fff transparent; 
}
#desktopNavi .dropdown > a:hover { /* falls ein Dropdown-Menü-Punkt, dann soll kein Hover-Effekt angezeigt werden */
	color:white;
	cursor:default;
}
#desktopNavi .dropdown ul { /* Drop-Down Menü */
	display:none;
	position:absolute;
	left: 0rem;
	top:2.4rem;
	min-width:6rem;
	background:rgba(92,92,92,.95);
	box-shadow: 0px 4px 8px 0px rgba(0,0,0,0.2);
}
#desktopNavi .dropdown ul li { /* Drop-Down Menü */
	float:none;
}
#desktopNavi .dropdown:hover ul {
	display:block;
}

@media only screen and (min-width : 565px ){
	footer {
		justify-content:space-around;
		}
	footer section{
	border-bottom:none;
	}
}
@media only screen and (min-width : 640px ){
	header figure{display:block;}
	header figure{width:100%;}

}
@media only screen and (min-width : 700px ){
		header figure{width:100%;}
}

@media only screen and (min-width : 800px ){
		header figure{width:80%;}

}
@media only screen and (min-width : 1020px ){
	.col2 {
	-webkit-column-count: 2; /* Chrome, Safari, Opera */
    -moz-column-count: 2;
	column-count:2;
	-moz-column-gap:4rem;
	-webkit-column-gap:4rem;
	column-gap:4rem;

	}
	.col2 p:first-child{
	margin-top:0;
	}

}

@media only screen and (min-width : 1046px ){
	#desktopNavi { display:block; }
	#mobileNavi{ display:none; }
		header figure{width:50%;}
			.bilder-startseite{ display:block;}

}
