body {
	margin:0 auto 2em;
	padding:0 2em;
	max-width:50em;
	background-color:#356;
	background-image:url("img/back.png");
	background-attachment:fixed;
	font-family:nimbus,helvetica,sans-serif;
	font-weight:light;
	font-size:large;
	line-height:1.5em;
	hyphens:auto;
}
main {
	margin:3em 0;
	padding:0;
	background-color:rgba(255,255,255,0.7);
	border-radius:.5em;
	box-shadow:0 0 2em rgba(0,0,0,0.5);
	overflow:hidden;
}
a:hover,
a:focus {
	color:#fff;
	background-color:#48a;
	text-decoration:none;
}
q {
	font-style:italic;
}
q:before {
	content:"„";
}
q:after {
	content:"“";
}
main > a,
main > a:hover,
main > a:focus {
	display:block;
	padding:2em;
	height:10em;
	color:inherit;
	background:url("img/wiese.jpg") bottom center;
	background-size:cover;
	font-weight:bold;
	font-size:1.6em;
	text-align:center;
	text-decoration:none;
	text-shadow:0 0 .3em #fff;
}
nav {
	margin:0;
	padding:0;
	background-color:#48a;
	box-shadow:0px 2px 10px rgba(0,0,0,0.2);
}
nav ul {
	max-width:calc(800px + 1.4em);
	margin:0 auto;
	padding:0;
	list-style-type:none;
}
nav li {
	display:inline-block;
	margin:0;
	padding:0;
}
nav a {
	display:inline-block;
	font-size:large;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	padding:.4em .7em;
}
nav a:hover,
nav a:focus {
	color:#356;
	background-color:#fff;
}
article {
	clear:left;
	max-width:800px;
	margin:0 auto;
}
article a {
	padding:0 .3em;
	color:#356;
}
h1 {
	margin-top:2em;
	font-size:xx-large;
	line-height:1.1em;
}
h2 {
	margin-top:2em;
	color:#356;
}
h3 {
	margin-top:1.5em;
}
h3 > time {
	float:right;
	font-size:smaller;
	font-weight:100;
}
h3 > small {
	display:block;
	font-size:smaller;
	font-weight:normal;
	font-style:italic;
}
script + h3 > small:before,
.proglist + h3 > small:before {
	content:"–";
	padding:0 1em 0 .6em;
}
table {
	margin:2em 0;
	border-collapse:collapse;
}
th {
	color:#fff;
	background-color:#48a;
	text-align:left;
}
td {
	background-color:rgba(255,255,255,1);
}
tr:nth-child(even) td {
	background-color:rgba(255,255,255,0.5);
}
th, td {
	padding:.3em .6em;
}
th:nth-child(2),
td:nth-child(2) {
	padding-left:2em;
	text-align:right;
}
dl {
	margin-bottom:2em;
}
dt {
	font-weight:bold;
}
dd + dt {
	margin-top:1em;
}
.rechts {
	padding-left:2em;
	text-align:right;
}
q:before {
	content:"„";
}
q:after {
	content:"“";
}
blockquote {
	margin:0;
	padding-left:1em;
	border-left:solid 3px #fff;
}
cite {
	font-size:smaller;
}
form select,
form input,
form textarea {
	font-size:inherit;
}
form input[type=email],
form input[type=text],
form textarea {
	display:block;
	box-sizing:border-box;
	width:100%;
	padding:.5em;
	border:none;
}
form textarea {
	min-height:7em;
}
form small {
	display:block;
	margin-top:.5em;
	color:rgba(0,0,0,0.6);
	font-size:small;
	line-height:1.4em;
}
form input[type=button],
form input[type=submit] {
	padding-right:0;
	padding-left:0;
}
form input[disabled] {
	color:#fff;
	background-color:rgba(17,88,113,0.3);
}
#interests {
	display:none;
}
.finform {
	padding-top:1.5em;
	border-top:dotted 1px rgba(255,255,255,0.5);
	text-align:right;
}
.finform input:first-child {
	float:left;
}
#person > div {
	display:block;
	clear:right;
	float:right;
	width:200px;
	padding-top:3em;
	margin:1.5em 0 1em 1em;
	font-size:smaller;
	font-style:italic;
	line-height:1.4em;
}
#person > div > img {
	width:200px;
	border-radius:.3em;
	overflow:hidden;
	box-shadow:0 0 .5em rgba(0,0,0,0.5);
}
#person > h3 {
	margin-top:2em;
	padding-top:2em;
	border-top:dotted 3px #356;
}
.float {
	display:block;
	float:right;
	width:200px;
	margin-left:1em;
}
.ort {
	padding:.3em .8em;
	background-color:rgba(255,255,255,0.3);
	text-align:right;
	font-size:smaller;
	line-height:1.4em;
	overflow:visible;
	border-radius:.3em;
}
.ort time {
	display:block;
	float:left;
	margin-right:1em;
}
.ort strong {
	white-space:nowrap;
}

.angepasste-breite {
	overflow:hidden;
}
.angepasste-breite img {
  width:100%;
  height:auto;
}
.responsive-video-4-3 iframe,
.responsive-video-16-9 iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.responsive-video-4-3,
.responsive-video-16-9 {
	position:relative;
	padding-top:0;
	height:0;
	overflow:hidden;
}
.responsive-video-16-9 {
	padding-bottom: 56.25%;
}
.responsive-video-4-3 {
	padding-bottom: 75.00%;
}

#form {
	margin-bottom:3em;
}
#form select {
	margin-bottom:.5em;
}
form + h3,
.proglist + h3 {
	margin:3em 0 0 0;
}
.proglist {
	clear:both;
	margin:1em 0;
}
.proglist dt {
	float:left;
	box-sizing:border-box;
	width:100%;
	padding:.2em .5em;
	background-color:#fff;
	border-radius:.3em;
	border-left:solid 2em #193e08;
}
.proglist dt.gap {
	margin-top:3em;
}
.proglist dt.all {
	border-color:#0a0;
}
.proglist dt a {
	padding:0;
	color:#000;
	text-decoration:none;
}
.proglist dt a:hover,
.proglist dt a:focus {
	color:#193e08;
	background-color:transparent;
	text-decoration:underline;
}
.proglist dt time {
	float:right;
	padding-left:.5em;
	font-weight:100;
	font-style:normal;
}
.proglist dd + dt {
	margin-top:.5em;
}
.proglist dd {
	clear:both;
	margin:0;
	padding:.2em .5em .2em 2.5em;
	text-align:right;
	overflow:visible;
}
.proglist dd span {
	float:left;
	padding-right:.5em;
	text-align:left;
}
.proglist dd span small {
	text-transform:uppercase;
}
.proglist dd aside {
	display:inline-block;
	font-style:italic;
	padding:0 0 0 .5em;
}
.proglist dd aside i {
	color:#555;
}
.button {
	margin-top:1.5em;
	text-align:right;
}
.button a {
	padding:.3em .7em;
	color:#fff;
	background-color:#193e08;
	font-weight:bold;
	text-decoration:none;
	border-radius:.3em;
	box-shadow:2px 2px 3px rgba(0,0,0,0.3);
}
.button a:first-child {
	display:block;
	float:left;
}
.button a:hover,
.button a:focus {
	color:#115871;
	background-color:#fff;
}
.err {
	padding:.5em 1em;
	color:#fff;
	font-weight:bold;
	background-color:#f00;
}
.em {
	border:solid 1px #f00 !important;
	box-shadow:0 0 2px #f00;
}
.ok {
	padding:.5em 1em;
	color:#fff;
	font-weight:bold;
	background-color:#090;
}

#legend {
	font-size:smaller;
	text-align:right;
}
#legend strong {
	display:inline-block;
	margin:0 .3em 0 1.5em;
	padding:0 .4em;
	border-radius:.3em;
	color:#fff;
}
#legend .blue {
	background-color:#15404f;
}
#legend .red {
	background-color:#c00;
}
#legend .green {
	background-color:#0a0;
}
.dezent {
	color:rgba(0,0,0,0.4);
	font-style:italic;
	list-style-type:none;
}
.note {
	float:left;
	box-sizing:border-box;
	width:100%;
	padding:.4em .8em;
	background-color:#fff;
	border-radius:.3em;
}
.floatright {
	float:right;
	width:200px;
	margin:0 0 1em 2em;
	font-size:smaller;
	line-height:1.4em;
	text-align:center;
}
.floatright img {
	width:200px;
}
#kreisweiss {
	border-radius:100px;
	overflow:hidden;
	box-shadow:0 0 5px rgba(0,0,0,0.3);
}
#sponsor {
	text-align:center;
}
#sponsor > * {
	display:inline-block;
	vertical-align:middle;
}
#sponsor > *:hover,
#sponsor > *:focus {
	background-color:transparent;
}
#sponsor img {
	width:180px;
}
#achtung {
	margin-top:2.5em;
	padding:1em 1.5em;
	background-color:#fff;
	border:solid 2px #f55;
	border-radius:.3em;
	box-shadow:0 0 1em rgba(0,0,0,0.3);
}
#achtung h2 {
	margin-top:1rem;
}
footer {
	margin:3em 0 2em;
	text-align:right;
	font-size:smaller;
}
footer p {
	margin:0;
}
footer p:first-child {
	color:#445;
	font-style:italic;
}
footer p + p {
	border-top:solid 1px #356;
}
footer p a:first-child {
	display:block;
	float:left;
}

@media screen and (max-width:62em) {
	body {
		font-size:medium;
	}
	main {
		margin:2em 0;
	}
	main > a,
	main > a:hover,
	main > a:focus {
		height:8em;
	}
	nav {
		padding:0 1em;
	}
	h1 {
		margin-top:1em;
	}
	article {
		padding:0 30px;
	}
}
@media screen and (max-width:619px) {
	main > a,
	main > a:hover,
	main > a:focus {
		padding:1em;
		height:6em;
	}
	nav a {
		font-size:large;
	}
	#person > div {
		clear:both;
		float:none;
		margin:5em auto 0;
	}
	#person h3 {
		padding-top:.5em;
	}
	.ort {
		text-align:left;
	}
	.ort time {
		float:none;
	}
	section h3 {
		margin-top:1em;
	}
	.floatright,
	.floatright img {
		width:120px;
	}
}
@media screen and (max-width:379px) {
	main > a,
	main > a:hover,
	main > a:focus {
		height:4em;
	}
	#person > div > img {
		width:100%;
	}
	.floatright,
	.floatright img {
		display:block;
		float:none;
		width:auto;
		margin:auto;
	}
	.floatright img {
		margin-bottom:1em;
	}
}
