@import url('https://fonts.googleapis.com/css2?family=Assistant&family=Swanky+and+Moo+Moo&display=swap');

body {
  margin: 10px auto;
  padding: 0;
  color: #060;
  background-color: #007030;
  font-family: 'Assistant', sans-serif;
  font-size: 1em;
  }

#wrapper {
  background-color: #FFFFFF;
  margin: 0 auto;
  width: 90%;
  border-radius: 15px;
  padding: 20px;
}
/* oben*/
header {
  margin: 0;
}

div#topl {
  margin-top: 10px;
  padding: 0;
  background-color: #FFFFFF;
  color: #000000;
  float: left;
  width: 20%;
}

div#topr {
  margin-top: 10px;
  padding: 0;
  background-color: #FFFFFF;
  color: #000000;
  float: right;
  width: 20%;
}

.portrait {
  width: 100%;
  margin: 0;
  padding: 0px 0px 10px 0px;
  background-color: #FFFFFF;
  color: #000000;
  border: 1px solid #C0C0C0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;}

.toptext {
  margin: 0;
  padding: 10px 0px 0px 0px;
  text-align: center;
  font-size: 5em;
  font-family: 'Swanky and Moo Moo', cursive;
  font-weight: bold;
  line-height: 0.7em;
  color: #00B050;
}

.toptextklein {
 margin: 0;
  padding: 0;
  text-align: center;
  font-size: 2em;
  font-family: 'Swanky and Moo Moo', cursive;
  font-weight: 500;
  color: #00B050;
}

.toptextsuperklein {
  margin: 0;
  padding: 0px 0px 10px 0px;
  text-align: center;
  font-size: 0.95em;
  font-family: 'Assistant', sans-serif;
  font-weight: normal;
  color: #a0a0a0;
  font-style: italic;
}

div#navhor {
  background-color: #00B050;
  margin: 20px 0px;
  padding: 10px 20px 10px 0px;
  height: 30px;
  border-radius: 5px;
  background-image: linear-gradient(#20D070 0%, #00A047 100%);
  background-image: -webkit-linear-gradient(#20D070 0%, #00A047 100%);
}

.hornav a:link, .hornav a:active, .hornav a:visited {
  color: #FFFFFF;
  background-color: transparent;
  text-decoration: none;
  font-family: 'Assistant', sans-serif;
  font-size: 1.3em;
  padding: 5px 20px;
  margin: 5px;
  text-align: left;
  line-height: 30px;
  font-weight: bold;
}

.hornav a:hover, hornavi a:focus {
  color: #FFFFFF;
  background-color: #206040;
  text-decoration: none;
  font-family: 'Assistant', sans-serif;
  border-radius: 5px;
}

.exnav a:link, .exnav a:active, .exnav a:visited {
  color: #0000F0;
  background-color: transparent;
  text-decoration: none;
  padding: 0px 5px;
  margin: 0px;
  font-weight: normal;
}

.exnav a:hover, hornavi a:focus {
  color: #FFFFFF;
  background-color: #206040;
  text-decoration: none;
}

/* Navigation links*/
nav {
  width: 20%;
  float: left;
  padding: 0;
  margin: 0;
}

nav p {
  padding: 5px;
  margin: 0;
}

nav h2 {
  color: #ffffff;
  background-color: #00B050;
  font-size: 1.15em;
  text-align: center;
  font-weight: bold;
  margin: 0px 0px 10px 0px;
  padding: 5px;
  font-family: 'Assistant', sans-serif;
  border-radius: 5px;
  background-image: linear-gradient(#60F090 0%, #00B050 100%);
  background-image: -webkit-linear-gradient(#60CF090 0%, #00B050 100%);
}

nav ul {
  padding: 0;
  margin: 5px 5px 5px 0px;
}

nav li {
  padding: 0px;
  margin: 0px 0px 10px 24px;
}

aside {
  width: 20%;
  float: right;
}

aside h2 {
  color: #ffffff;
  background-color: #60F090;
  font-size: 1.15em;
  text-align: center;
  font-weight: bold;
  margin: 0px 0px 10px 0px;
  padding: 5px;
  font-family: 'Assistant', sans-serif;
  border-radius: 5px;
  background-image: linear-gradient(#60F090 0%, #00B050 100%);
  background-image: -webkit-linear-gradient(#60CF090 0%, #00B050 100%);
}

aside p {
  padding: 5px;
  margin: 0;
}

.textboxrighttext {
  text-align: justify;
  font-size: 0.9em;
  font-style: normal;
  border: 1px solid #90D0B0;
  border-radius: 5px;
  background-color: #F0FFF4;
  margin: 10px 0px;
}

/* Hauptteil*/
main {
  display: block;  /*wegen Fehldarstellung IE*/
}

/* Inhalt*/
article {
  margin-left: 21%;
  margin-right: 21%;
  margin-top: 0;
  margin-bottom: 10px;
  padding: 0 10px;
  font-size: 1.15em;
  font-weight: normal;
  text-align: justify;
  line-height: 22px;
}

article h1 {
  font-size: 2.5em;
  padding: 10px 0px;
  margin: 0;
  color: #00B050;
  font-family: 'Swanky and Moo Moo', cursive;
  text-align: left;
}

article h2 {
  color: #00a040;
  font-family: 'Assistant', sans-serif;
  font-size: 1em;
  text-align: left;
  padding-top: 20px;
  margin: 0;
}

article h3 {
  color: #00B050;
  background-color: inherit;
  font-family: 'Assistant', sans-serif;
  font-size: 1.15em;
  padding: 10px 0px 15px 0px;
  font-weight: bold;
}

article p {
  margin: 8px 2px;
}

table {
  margin: 0;
  padding: 0;
  border-collapse: collapse;
}

tr {
  margin: 0;
  padding: 0;
}

td {
  margin: 0;
  padding-right: 10px;
  min-width: 5em;
  text-align: left;
  vertical-align: bottom;
}

footer {
  background-color: #339966;
  color: #FFFFFF;
  margin: 20px 0px 0px 0px;
  padding: 10px 0;
  min-height: 30px;
  text-align: center;
  border-radius: 5px;
  font-size: 1.15em;
  line-height: 30px;
  background-image: linear-gradient(#20D070 0%, #00A047 100%);
  background-image: -webkit-linear-gradient(#20D070 0%, #00A047 100%);
}

/* allgemeine Angaben*/
a:link, a:visited, a:active {
  color: #FFFFFF;
  background-color: transparent;
  text-decoration: none;
  font-weight: bold;
  padding: 0px 20px;
  margin: 0;
}

a:hover {
  color: #FFFFFF;
  background-color: #206040;
  text-decoration: none;
  font-weight: bold;
  padding: 0px 20px;
  margin: 0;
  border-radius: 5px;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
  display: block;
}

.clear {
 clear: both;
 margin: 0;
 padding: 0;
 line-height: 1px;
}



/******************Besonderheiten für Bildschirmgroesse max. 768px**********************/

@media (max-width: 768px) {

header {
  font-size: 0.7em;
}

div#top {
  margin-bottom: 0;
  padding: 0;
}

.toptext {
  margin: 0 0 0 10px;
  padding: 0;
}

.toptextklein {
  padding: 0;
}

div#navhor {
  height: 100%;
  padding: 10px 0px;
  font-size: 1.25em;
}

.hornav a:link, .hornav a:active, .hornav a:visited {
  display: block;
  text-align: center;
}

.hornav a:hover, hornav a:focus {
  display: block;
}

.exnav a:link, .exnav a:active, .exnav a:visited {
  display: swap;
  text-align: center;
  color: #0000F0;
  background-color: transparent;
  text-decoration: none;
  padding: 0px 5px;
  margin: 0px 0px;
  font-weight: normal;
}

.exnav a:hover, exnav a:focus {
  display: swap;
  padding: 0px 5px;
  margin: 0px;
  color: #FFFFFF;
  background-color: #206040;
  text-decoration: none;
}

nav{
  float: none;
  width: 100%;
  text-align: center;
  margin-bottom: 10px;
  padding: 0;
}

main {
  text-align: center;
}

aside {
  width: 100%;
  float: none;
}

article {
  margin: 0;
  padding: 10px 0;
  font-size: 10pt;
  font-weight: normal;
  text-align: justify;
  line-height: 20px;
}

footer {
  margin: 0;
  padding: 10px 0;
}

td {
  border-bottom: 1px solid lightgray;
}

/*****************Besonderheiten für Bildschirmgroesse max. 480px***********************/

@media (max-width: 480px) {

#wrapper {
  width: 85%;
}

td {
  border-bottom: 1px solid lightgray;
}

}