/*
layout2019.css
Projekt: Veranstaltungsbuero Werner Nolden
Copyright: Siegfried Mairböck, Bonn
Datum: März 2019
*/

body, div, dl, dd, form, img, input, figure, menu {
	margin: 0;
	padding: 0;
	font-family: roboto,helvetica,arial,sans-serif;
}
html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

* , * :before, * :after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit
}

.desktop-hide { display: none; }
.desktop-only { display: block; }

.clearfix:after, .quickstart-step:after {
	clear: both;
	content: "";
	display: table;
	height: 0;
	visibility: hidden
}

body, html {
	color: #212121;
	font: 400 16px / 24px sans-serif;
/*	
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
*/
	margin: 0;
}

body {
	font-family: sans-serif;
}


a, a:hover, a:visited, a:link, a:focus { color: #000; }
a { text-decoration: none; border-width: 0 0 1px 0; border-bottom: 1px dotted #000; }
a:hover, a:focus { border-style: solid; color: #000; }

.wrapper {
	margin: 0px auto;
	max-width: 960px;
	display: flex;  
	flex-flow: row wrap;
}

.wrapper > * {
	/*				padding: 10px;*/
	flex: 1 100%;
	background-color: #fff;
}

.header {
	position: relative;
	display: flex;
	flex-flow: row wrap;
	border-bottom: 2px solid #212121;
}
.header > * {
	flex: 1 100%;
}
.header > div.title {
	margin: 0 0px 5px 0px;
	font-size: 26px;
	line-height: 30px;
	font-weight: bold;
	text-align: center;
	color: #000;
	transition: all 1s;
}
.header > .logo {
	position: absolute;
	left: 3%;
	top: 8%;
	bottom: auto;
	width: 34%;
	border: 1px solid #000;
	border-radius: 0px;
	background-color: #fff;
	padding: 4px;
	box-sizing: border-box;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
	transition: all 0.5s;
}
.header > .logo > img {
	width: 100%;
}

#Mobile-Menu-button {
	float: left;
	margin-left: 5px;
	display: block;
}
#Mobile-Menu-button > a { 
	display: block;
	text-decoration: none;
	border: 0;
}
#Mobile-Menu-button > a:before {
	content: "";
	padding-left: 26px;
	background-image: url('/assets/icons/baseline-menu-24px.svg');
	background-repeat: no-repeat;
	background-position: center;
}
#Mobile-Menu-button.aktiv > a:before {
	background-image: url('/assets/icons/baseline-close-24px.svg');
}
#Mobile-Menu-button > a > span {
	display: none;
}
.footer {
}

.main {
	text-align: left;
	padding: 20px 15px;
}


.content-left {
	display: none;
}
.content-left.aktiv {
	display: block;
}

.content-right {}

.content-left { order: 1; } 
.main    { order: 2; }
.content-right { order: 3; }
.footer  { order: 4; }
.aside { flex: 1 0 0; }


.hidden { display: none; }

h1 { display: none; }
h2 { color: #333; font-size: 26px; line-height: 1.4em; font-weight: bold; margin: 0 0 30px 0; }
h3 { color: #333; font-size: 20px; font-weight: bold; line-height: 1.4em; margin: 24px 0 12px 0; }
h4 { color: #666; font-size: 18px; line-height: 1.4em; font-weight: bold; margin: 24px 0 12px 0; }
h5 { color: #333; font-size: 13px; font-weight: bold; margin: 15px 0 5px 0; }
h6 { color: #555; font-size: 12px; font-weight: bold; margin: 15px 0 0px 0; text-decoration: underline; }


ul { }
ul > li { text-align: justify; }

p { margin: 12px 0; }
.main p { 
	text-align: justify;
}


/* Navigation */
.navi
.navi { margin: 0px 0px 0px 0; }
.navi > ul { 
	margin: -1px 0 0 0; 
	padding: 0; 
	list-style: none; 
	border-top: 1px solid #000;
}
.navi > ul > li { 
	margin: 0; padding: 0; 
	border-bottom: 1px solid black;
}
.navi > ul > li > a { 
	display: block; 
	text-decoration: none; 
	background: #fff; 
	color: #000; 
	padding: 10px 5px 10px 15px; 
	text-align: left;
	border: 0;
}
.navi > ul > li > a:hover { 
	background: #e7e7e7; color: black; border: 0; 
}
.navi > ul > li > a.navi-aktiv { 
	color: #000; 
	font-weight: bold; 
}

/** Social Icons **/
#SOCIAL { text-align: center; margin: 50px 0 30px 0; } 

a.social-icon {
	display: inline-block;
	position: relative;
	width: 20px;
	height: 20px;
	background-image: url(../images/fb-icon.png);
	background-position: left top;
	margin-right: 6px;
}
a.social-icon span { display: none; }
a.fb-icon { background-image: url(../images/fb-icon-20.png); border: 0; }
a.go-icon { background-image: url(../images/go-icon-20.png); border: 0; }
a.tw-icon { background-image: url(../images/tw-icon-20.png); border: 0; }

a:hover.social-icon { background-position: right top; }



#FOOTER-INNER { position: relative; min-height: 50px; text-align: center; padding: 0px 20px 0px; border-top: 1px solid #ccc; font-size: 12px; line-height: 1.5em; color: #000; }

.slider {
	position: relative;
}
.slider > div > img { width: 100%; }
.slider > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 0; height:0;
}
.slider > ul > li {
	position: absolute;
	left: 0; top: 0; 
	margin: 0;
	padding: 0;
	display: none;
}
.slider > ul > li > img {
	width: 100%;
}

/* Tabelle */

table.mytab { border-collapse: collapse; font-size: 11px; border-top: 1px solid #ccc; width: 100%;  }
table.mytab th { padding: 5px 5px; font-size: 12px; border-bottom: 1px solid #888; text-align: left; background-color: #f4f4f4; }
table.mytab td { font-size: 15px; padding: 10px 5px; border-bottom: 1px solid #ccc; }
table.mytab td.big { font-size: 15px; font-weight: normal; }

table.veranstaltungen { border-collapse: collapse; font-size: 15px; width: 100%; color: #000;  }
table.veranstaltungen tr:hover td { background: #ccc; }
table.veranstaltungen td { font-size: 15px; padding: 10px 5px; border-bottom: 4px solid #fff;  background: #eee; }

table.programm { border-collapse: collapse; font-size: 15px; border: 0; width: 100%; }
table.programm td { vertical-align: top; padding: 10px 5px; }
table.programm td.zeit { padding-left: 0; width: 100px; color: #000;}
table.programm td.beschreibung { color: #000; }
table.programm td.bilder { padding-right: 0px; width: 90px; text-align: center; }

@media all and (min-width: 800px) {
	
	.content-left { display: block; min-width: 205px; order: 1; } 
	.main    { 	
		flex: 3 0px; 
		order: 2; 
		margin: 0 25px; 
		padding: 0 0 30px 0; 
	}
	.content-right { min-width: 205px;order: 3; }
	.footer  { order: 4; }
	.header {
		margin-top: 15px;
		margin-bottom: 25px;
	}
	.header > div.title {
		font-size: 30px;
		line-height: 36px;
		text-align: right;
	}
	.header > .logo {
		top: auto;
		bottom: 20px;
		width: 25%;
	}
	#Mobile-Menu-button {
		display: none;
	}
	/* Navigation */
	.navi { margin: 0px 0px 20px 0; }
	.navi > ul { margin: 0; padding: 0; border-top: 0; list-style: none; width: 100%; }
	.navi > ul > li { margin: 0px 0; padding: 0; list-style: none; border-bottom: 0px solid #ccc; width: 100%; margin: 3px 0; }

	.navi > ul > li > a { display: block; text-decoration: none; background: #eee; color: #000; padding: 10px 5px 10px 15px; text-align: left; border: 0; }
	.navi > ul > li > a:hover { background: #aaa; color: #fff; border: 0; }
	.navi > ul > li > a.navi-aktiv { background: #ddd; text-shadow: 0px 1px 1px #fff; color: #000; font-weight: bold; border:0;  }
}
@media all and (max-width: 500px) {
	body {
		-webkit-text-size-adjust: 100%;
		-moz-hyphens: auto;
		-o-hyphens: auto;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
	}
	.header > div.title {
		font-size: 20px;
		line-height: 24px;
	}
}
@media all and (max-width: 340px) {
	.header > div.title {
		font-size: 16px;
		line-height: 24px;
	}
}

