/* Basis */

body {
	box-sizing: border-box;
	min-width: calc(320px);
	width: 100%;
	max-width: 100%;
	margin: 0;
	background-color: #ffffff;
	text-align: center;
	padding: 0;
	font: normal 1.2em sans-serif;
	color: #000000;
}

@media (min-width: 960px) {
	body {
		font-size: 1.1em;
	}
	body p {
		line-height: 1.4em;
	}
}
	
div, a, img {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: none;
	line-height: 160%;
}

h1, h2, h3, p {
	margin-bottom: 0.5em;
}

h1 {
	margin-top: 2em;
	font-size: 1.4em;
	font-weight: bold;
	font-family: Comic sans MS, sans-serif;
	color: #f98903;
}

h2 {
	margin-top: 2em;
	font-size: 1em;
	font-weight: bold;
	color: #f98903;
}

h3 {
	margin-top: 2em;
	margin-bottom: 0.5em;
	font-size: 1em;
	font-weight: normal;
}

strong {
	font-weight: bold;
	color: #f98903;
}

a, a:link, a:active, a:visited, a:hover {
	font-weight: normal;
	color: #1010aa;
}

a {
	text-decoration: none;
}

a:visited {
	color: #101088;
}

a:active, a:hover {
	text-decoration: underline;
}

.left {
	display: block;
	float: left;
}

.right {
	display: block;
	text-align: right;
}

/* Ausgabegeräte-abhängig

a:active, a:hover {
	font-weight: normal;
	text-decoration: underline;
	color: #101088;
}

*/

/* Wrapper */

#wrapper {
	margin: 0 auto 0;
	width: 100%;
	min-width: 320px;
	max-width: 680px;
	text-align: center;
}

/* Header */

#header {
	width: 100%;
	text-align: center;
}

/* Formatierung Menü-Switch */

.menu-switch-framework {
	display: block;
	position: relative;
	top: 1.5em;
	margin-left: 1em;
	width: 1.4em;
	height: 1.4em;
	background-image: url("../artwork/menu.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

@media (min-width: 480px) {
	.menu-switch-framework {
		width: 1.8em;
		height: 1.8em;
	}
}

.menu-switch {
	width: 100%;
	height: 100%;
}

/* Sichtbarkeit der Links zum Ein- bzw. Ausblenden des Menüs */

#header:target .menu_closed, .menu_open {
	display: none;
	}

.menu_closed, #header:target .menu_open {
	display: block;
	}

/* Menü */

/* Menü Grundformatierung */

.moduletable {
	position: absolute;
	top: 3em;
	left: 0;
	text-align: left;
	overflow: hidden;
	white-space: nowrap;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	}

.moduletable ul {
	padding-left: 0;
}

.moduletable li {
	margin: 0 0 0.5em;
	border-style: solid;
	border-width: 0 0.2em 0;
	border-radius: 0 3em 3em 0;
	padding: 0 1em 0 0;
	list-style: none;
	border-color: #3fbe28;
	background-color: #3fbe28;
}

.moduletable .item-120 {
	margin: 0 0 0.5em;
	border-style: solid;
	list-style: none;
	border-color: #f98903;
	background-color: #f98903;
}

.moduletable a {
	padding: 0.5em 1em;
	display: block;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: #ffffff;
	}

.nav-child {
	display: none;
}

/* Menü einblenden */

.moduletable {
	width: 0;
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
	}

.moduletable li {
	padding-left: 0;
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

#header:target .moduletable {
	width: 10em;
	-moz-transition: all 0.25s ease 0.1s;
	-o-transition: all 0.25s ease 0.1s;
	-webkit-transition: all 0.25s ease 0.1s;
	transition: all 0.25s ease 0.1s;
	}

/* nur wenn Aufklapp-Menü bleiben soll
	
@media (min-width: 640px) {
	#header:target .moduletable {
	width: calc(50% - 320px + 10em);
	}
}

*/

#header:target .moduletable li {
	padding-left: calc(100% - 11em);
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
	
@media (min-width: 960px) {
	.moduletable, #header:target .moduletable {
		position: fixed;
		top: 1em;
		width: 100%;
		left: calc(50% - 320px - 13em);
		font-size: 0.9em;
		-moz-transition: none;
		-o-transition: none;
		-webkit-transition: none;
		transition: none;	}
	.moduletable li, #header:target .moduletable li {
		position: relative;
		width: 10em;
		border-width: 0 0.2em 0;
		border-radius: 2em;
		padding: 0 0.5em;
		-moz-transition: none;
		-o-transition: none;
		-webkit-transition: none;
		transition: none;	}
	.moduletable a {
		padding: 0.5em;
		-moz-transition: none;
		-o-transition: none;
		-webkit-transition: none;
		transition: none;
	}
	#Titel {
		position: relative;
		top: 1em;
	}
	#unterstuetzen {
		display: none;
	}
	.menu-switch-framework {
		display: none;
	}
}

/* Menü Farbwechsel */

.moduletable li:hover, .moduletable li:focus {
	border-color: #000000;
	background-color: #000000;
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

/* Unterstützen-Button */

#unterstuetzen {
	margin: 0 1em 3em 0;
	text-align: right;
	font-size: 0.9em;
	line-height: 1em;
}

#unterstuetzen a {
	font-weight: bold;
	text-decoration: none;
	color: #ffffff;
	border-radius: 3em;
	border-width: 0em 0.2em 0em;
	border-style: solid;
	border-color: #f98903;
	padding: 0.5em 1em;
	background-color: #f98903;
}

#unterstuetzen a:hover, #unterstuetzen a:focus {
	border-color: #000000;
	background-color: #000000;
	-moz-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	-webkit-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

/* Titelbild */
	
#Titel {
	width: 240px;
	height: 240px;
}
	
@media (min-width: 480px) {
	#Titel {
		width: 300px;
		height: 300px;
	}
}


/* Mittlerer Bereich */

#content {
	margin: 0 1em;
	padding: 0;
	text-align: left;
}

.list-style_none {
	padding-left: 1em;
	list-style-type: none;
}

.item-title::before {
	content: "+++ "
}
	
.item-title::after {
	content: " +++"
}

.article-info {
	text-align: right;
	margin: 0;
	font-size: 0.8em;
	font-style: italic;
}

.published {
	margin: 0;
}

.published::before {
	content: "- "
}
	
.published::after {
	content: " -"
}

.pull-left {
	float: left;
	margin-right: 1em;
}

.pull-right {
	float: right;
	margin-left: 1em;
}

.item-image img {
	border: solid 1px #eeeeee;
	margin-bottom: 0.5em;
	width: 160px;
}

@media (min-width: 640px) {
	.item-image img {
		width: 240px;
	}
}

@media (min-width: 960px) {
	p {
		text-align: justify;
	}
	.item-image {
		position: fixed;
		top: 1em;
		left: calc(50% + 320px + 0.5em);
		width: 10em;
	}
	.item-image img {
		border: solid 1px #eeeeee;
		border-radius: 0.2em;
		background-color: #eeeeee;
	}
}

/* Unterer Bereich */
#bottom {
	margin: 1.2em 1em;
	border-top: solid 1px #cccccc;
	padding-top: 0.5em;
	width: 100%
	margin: 0 1em;
	text-align: center;
	font-size: 0.8em;
	}

/* Barrierefreiheit */

acronym {
	speak: normal;
	border: none;
	}

abbr {
	border: none;
	}

abbr.init {
	speak: spell-out;
	}

abbr.trunc {
	speak: normal;
	}