@charset "utf-8";
/*=====================================
Stylesheet für den Web-Auftritt
von *Torsten* aus ***Hettstedt***
Datei: style.css
Datum: 2016-08-17
Author: Torsten Lücke
Aufbau:	0. CSS-Resets
		1. Font-Definitionen
		2. Grundlegende Einstellungen
		3. Definition des Layouts
		4. Definition des Responsive Layouts
		5. Sonstige CSS-Klassen
  =====================================*/
/*	0. CSS-Resets
	============= */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
@media screen {
  html,
  body,
  div,
  span,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  img,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  b,
  u,
  i,
  center,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td,
  article,
  aside,
  canvas,
  details,
  embed,
  figure,
  figcaption,
  footer,
  header,
  hgroup,
  menu,
  nav,
  output,
  ruby,
  section,
  summary,
  time,
  mark,
  audio,
  video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
  }
  /* HTML5 display-role reset for older browsers */
  article,
  aside,
  details,
  figcaption,
  figure,
  main,
  footer,
  header,
  hgroup,
  menu,
  nav,
  section {
    display: block;
  }
  body {
    line-height: 1;
  }
  ol,
  ul {
    list-style: none;
  }
  blockquote,
  q {
    quotes: none;
  }
  blockquote:before,
  blockquote:after,
  q:before,
  q:after {
    content: none;
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
}
/* END:  meyer_resets */
/*	1. Font-Definitionen
	==================== */
@font-face {
  font-family: UglyQua;
  src: url(./fonts/uglyqua.eot);
  src: url(./fonts/uglyqua.eot?#iefix) format("embedded-opentype"), url(./fonts/uglyqua.svg#uglyquaregular) format("svg"), url(./fonts/uglyqua.woff) format("woff"), url(./fonts/uglyqua.ttf) format("truetype");
  font-style: normal;
}
@font-face {
  font-family: UglyQua;
  src: url(./fonts/uglyqua-italic.eot);
  src: url(./fonts/uglyqua-italic.eot?#iefix) format("embedded-opentype"), url(./fonts/uglyqua-italic.svg#uglyquaregular) format("svg"), url(./fonts/uglyqua-italic.woff) format("woff"), url(./fonts/uglyqua-italic.ttf) format("truetype");
  font-style: italic;
}
/*	2. Grundlegende Einstellungen
	============================= */
@media screen {
  nav#jump-nav {
    display: none;
  }
  nav header h2 {
    display: none;
  }
  footer nav h2 {
    display: none;
  }
}
@media screen {
  body {
    font-size: 0.85em;
    background: linear-gradient(0deg, hsl(61, 98%, 98%), hsl(61, 98%, 12%)) no-repeat;
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Helvetica, Arial, sans-serif;
  }
  a {
    color: hsl(151, 98%, 38%);
  }
  a:visited {
    color: hsl(151, 98%, 23%);
  }
  article {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    color: hsl(61, 98%, 12%);
  }
  article h1,
  article h2,
  article h3,
  article h4,
  article h5,
  article h6,
  article thead th {
    font-family: UglyQua, serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
    clear: both;
  }
  article h1 a,
  article h2 a,
  article h3 a,
  article h4 a,
  article h5 a,
  article h6 a,
  article thead th a {
    color: hsl(61, 98%, 12%);
    text-decoration: underline;
  }
  article h1,
  article h2,
  article h3,
  article h4,
  article h5,
  article h6 {
    margin-top: 1.25rem;
  }
  article h1 {
    font-size: 2rem;
  }
  article h2 {
    font-size: 1.75rem;
  }
  article h3 {
    font-size: 1.66rem;
  }
  article h4 {
    font-size: 1.5rem;
  }
  article h5 {
    font-size: 1.33rem;
  }
  article h6 {
    font-size: 1.17rem;
  }
  article thead th {
    font-size: 1.17rem;
  }
  article q,
  article p,
  article blockquote {
    margin: 1em auto;
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Helvetica, Arial, sans-serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  article p:last-child {
    margin-bottom: 0;
  }
  article ul {
    padding: 0.5rem 1.5rem;
    list-style: disc;
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Helvetica, Arial, sans-serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  article q,
  article blockquote {
    quotes: "\276D" "\276C";
    margin-left: 2em;
    margin-right: 2em;
  }
  article q:before,
  article blockquote:before {
    content: open-quote;
  }
  article q:after,
  article blockquote:after {
    content: close-quote;
  }
  article em,
  article i {
    font-style: oblique;
  }
  article em {
    font-variant: small-caps;
    font-weight: lighter;
  }
  article b,
  article strong {
    font-weight: bolder;
  }
  article strong {
    text-transform: uppercase;
  }
  article img {
    float: left;
    margin: 0 0.5em 0.5em 0;
  }
  article figure {
    float: left;
    background-color: hsla(61, 98%, 12%, 0.27);
    margin: 1em 0.5em 0.5em 0;
    padding: 0.25em;
  }
  article figure figcaption {
    font: lighter italic 0.75rem/1rem serif;
  }
  article figure img {
    float: none;
    margin: 0;
  }
  article table th,
  article table td {
    padding: 0.25rem 0.5rem;
    text-align: left;
    border-color: hsl(61, 98%, 12%);
    border-width: medium;
    border-style: none ;
  }
  article table th {
    font-weight: bolder;
    font-family: UglyQua, serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  article table td {
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Helvetica, Arial, sans-serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
  }
  article table thead td {
    font-style: oblique;
  }
  article table thead th,
  article table thead td {
    font-weight: bolder;
    text-align: left;
  }
  article table tfoot tr:last-child th,
  article table tfoot tr:last-child td {
    border-top-width: thin;
  }
  article table tfoot td {
    padding-left: 1em;
  }
  article table tfoot th {
    font-weight: bolder;
  }
  article table tbody tr:hover,
  article table tbody tr:focus {
    background-color: hsla(61, 98%, 12%, 0.2);
  }
  article table tbody tr:last-child th,
  article table tbody tr:last-child td {
    border-bottom-width: thin;
  }
  article table tbody tr:not(:last-child) th:last-child,
  article table tbody tr:not(:last-child) td:last-child {
    border-bottom-width: thin;
  }
  article footer p {
    padding: 0.75em;
    text-align: right !important;
    font-style: italic;
  }
  article form {
    box-sizing: border-box;
  }
  article form section {
    padding: 0;
    margin: 0;
    width: auto;
  }
  article form fieldset {
    box-sizing: border-box;
    padding: 1.5rem/3;
  }
  article form fieldset::before,
  article form fieldset::after {
    box-sizing: border-box;
  }
  article form fieldset section {
    margin: 1.5rem/3;
  }
  article form fieldset legend {
    margin: 1.5rem/3 0;
    border-bottom: thin solid;
    padding: 1.5rem/3/2;
    font-family: UglyQua, serif;
    font-size: 1.33rem;
  }
  article form fieldset legend::before,
  article form fieldset legend::after {
    box-sizing: border-box;
  }
  article form fieldset label {
    box-sizing: border-box;
    vertical-align: top;
  }
  article form fieldset input,
  article form fieldset textarea {
    box-sizing: border-box;
  }
  article form fieldset textarea {
    height: 8em;
  }
  article form fieldset.button {
    margin: 0;
    padding: 1.5rem/3;
    background: hsla(61, 98%, 12%, 0.27);
    color: hsl(61, 98%, 98%);
  }
  nav ul li.aktiv {
    font-weight: 900 !important;
  }
  nav ul li a {
    text-decoration: none;
  }
  nav ul li a:hover,
  nav ul li a:focus {
    text-decoration: underline;
  }
  body > header {
    background-image: url(./images/weg_flach.png);
    background-repeat: no-repeat;
    background-size: cover;
  }
  body > header h1#title {
    font-size: 450%;
    color: hsl(61, 98%, 12%);
    font-family: UglyQua, serif;
  }
  .wrapper {
    background: hsl(61, 98%, 98%);
    color: hsl(61, 98%, 12%);
  }
  main section {
    padding: 1.5rem;
  }
  main section header h2 {
    font-family: UglyQua, serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
    font-size: 2rem;
    margin-bottom: 1.5rem;
    text-shadow: 0.2rem 0.2rem 0.2rem rgba(0, 0, 0, 0.5);
  }
  main section article h1,
  main section article h2,
  main section article h3,
  main section article h4,
  main section article h5,
  main section article h6,
  main section article thead th {
    font-family: UglyQua, serif;
    line-height: 1.3;
    letter-spacing: 0.05em;
    color: hsl(61, 98%, 22%);
  }
  main section article img {
    height: 5em;
    width: auto;
  }
  main section article p {
    text-align: justify;
  }
  main section#breadcrumb {
    margin-bottom: 0;
    padding: 1rem 1.5rem 0;
  }
  main footer {
    background: hsla(61, 98%, 12%, 0.6);
  }
  aside.zusatz article {
    background: hsla(61, 98%, 12%, 0.27);
    margin: 0.5rem;
  }
  aside.zusatz article h1,
  aside.zusatz article h2,
  aside.zusatz article h3,
  aside.zusatz article h4,
  aside.zusatz article h5,
  aside.zusatz article h6 {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    padding: 0.25rem 0.25rem 0.25rem 0.5rem;
    margin: 0;
    background: hsl(61, 98%, 12%);
    color: hsl(61, 98%, 98%);
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Helvetica, Arial, sans-serif;
  }
  aside.zusatz article h1 {
    font-size: 1.1rem;
  }
  aside.zusatz article h2 {
    font-size: 0.9625rem;
  }
  aside.zusatz article h3 {
    font-size: 0.913rem;
  }
  aside.zusatz article h4 {
    font-size: 0.825rem;
  }
  aside.zusatz article h5 {
    font-size: 0.7315rem;
  }
  aside.zusatz article h6 {
    font-size: 0.6435rem;
  }
  aside.zusatz article thead th {
    font-size: 0.96525rem;
  }
  aside.zusatz article p {
    font-size: 75%;
    margin: 0;
    padding: 0.5rem;
  }
  aside.zusatz article p img {
    width: 100%;
    height: auto;
  }
  footer {
    background: hsl(61, 98%, 12%);
    color: hsl(61, 98%, 98%);
    font-size: 0.75rem;
  }
  footer nav ul li.aktiv a,
  footer nav ul li.aktiv a:visited {
    color: hsl(61, 98%, 68%);
  }
  footer nav ul li a,
  footer nav ul li a:visited {
    color: hsl(61, 98%, 98%);
  }
  footer div#copyright {
    padding: 0.75em;
    font-style: italic;
    font-weight: lighter;
    text-align: right;
  }
  address .p-name {
    font-weight: bolder;
  }
  address .p-adr {
    font-style: italic;
  }
  address .p-adr .p-locality,
  address .p-adr .p-postal-code {
    font-weight: bolder;
  }
  address .p-adr .p-country-name {
    font-weight: lighter;
  }
}
@media screen and (max-width: 400px) {
  article h1,
  article h2,
  article h3,
  article h4,
  article h5,
  article h6,
  article thead th {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  article q,
  article p,
  article blockquote {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  article ul {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  article table th {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  article table td {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  main section header h2 {
    line-height: 1.2;
  }
}
@media screen and (max-width: 400px) {
  main section article h1,
  main section article h2,
  main section article h3,
  main section article h4,
  main section article h5,
  main section article h6,
  main section article thead th {
    line-height: 1.2;
  }
}
/*	3. Definition des Layoutes
	========================== */
@media screen and (min-width: 1025px) {
  body {
    width: 90%;
    max-width: 1200px;
    height: 100%;
    margin: 1rem auto;
  }
  body > header {
    height: 10rem;
    position: relative;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
  }
  body > header h1#title {
    position: absolute;
    right: 4rem;
    top: 1rem;
  }
  nav {
    position: relative;
  }
  nav ul.main-nav > li {
    flex-grow: 1;
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    flex-grow: 1.25;
  }
  nav ul.main-nav {
    width: 100%;
    display: flex;
    top: -2.25rem;
    position: absolute;
  }
  nav ul.main-nav > li {
    box-sizing: border-box;
    color: hsl(61, 98%, 98%);
    min-height: 2.25rem;
    background: hsl(61, 98%, 12%);
    font-size: 1rem;
    padding: 1.5rem/3 1.5rem;
    border-color: hsl(61, 98%, 98%);
    border-width: medium thin;
  }
  nav ul.main-nav > li.aktiv {
    font-weight: 900;
  }
  nav ul.main-nav > li.aktiv > a {
    color: hsl(61, 98%, 68%);
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    background: hsl(181, 98%, 22%);
  }
  nav ul.main-nav > li > a {
    color: hsl(61, 98%, 98%);
    height: 1.25rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  nav ul.main-nav > li > a:hover,
  nav ul.main-nav > li > a:focus {
    white-space: normal;
  }
  nav ul.main-nav li {
    flex-flow: row;
  }
  nav ul.main-nav > li {
    padding-top: 0.5rem;
    background: hsla(61, 98%, 12%, 0.5);
    text-align: center;
    transition: background-color, flex;
    transition-duration: 0.5s;
  }
  nav ul.main-nav > li:not(:last-child) {
    border-right-style: solid;
  }
  nav ul.main-nav ul.sub-nav {
    z-index: 1;
    top: 2.25rem;
    left: 0;
    right: 0;
  }
  nav ul.sub-nav {
    width: 100%;
    position: absolute;
    width: 20%;
  }
  nav ul.sub-nav > li {
    box-sizing: border-box;
    color: hsl(61, 98%, 98%);
    min-height: 2.25rem;
    background: hsl(61, 98%, 12%);
    font-size: 1rem;
    padding: 1.5rem/3 1.5rem;
    border-color: hsl(61, 98%, 98%);
    border-width: medium thin;
  }
  nav ul.sub-nav > li.aktiv {
    font-weight: 900;
  }
  nav ul.sub-nav > li.aktiv > a {
    color: hsl(61, 98%, 68%);
  }
  nav ul.sub-nav > li:hover,
  nav ul.sub-nav > li:focus {
    background: hsl(181, 98%, 22%);
  }
  nav ul.sub-nav > li > a {
    color: hsl(61, 98%, 98%);
    height: 1.25rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  nav ul.sub-nav > li > a:hover,
  nav ul.sub-nav > li > a:focus {
    white-space: normal;
  }
  nav ul.sub-nav li {
    transition: background-color, width;
    transition-duration: 0.5s;
    padding: 0.5em;
    margin: 0.25em 2.5%;
    border-radius: 0, 2.25rem/2, 2.25rem/2, 0;
    width: 95%;
  }
  nav ul.sub-nav li:hover,
  nav ul.sub-nav li:focus {
    width: 118.75%;
  }
  .wrapper {
    position: relative;
  }
  main section {
    width: 60%;
    margin-left: 20%;
    box-sizing: border-box;
  }
  main table {
    width: 90%;
    margin: 0 auto;
  }
  main table th:first-child,
  main table td:first-child {
    border-right-style: solid;
  }
  main table thead tr:last-child th,
  main table thead tr:last-child td {
    border-bottom-style: solid;
  }
  main table tfoot tr:last-child th,
  main table tfoot tr:last-child td {
    border-top-style: solid;
  }
  main table tbody tr:last-child th,
  main table tbody tr:last-child td {
    border-bottom-style: solid;
  }
  main form fieldset legend {
    width: 100%;
  }
  main form fieldset label {
    display: inline-block;
    width: 20%;
    text-align: right;
    padding: 1.5rem/3/2 1.5rem/3;
  }
  main form fieldset input,
  main form fieldset textarea {
    display: inline-block;
    width: 50%;
  }
  aside.zusatz {
    box-sizing: border-box;
    position: absolute;
    top: 0;
    right: 0;
    width: 20%;
  }
  aside.zusatz article {
    border-radius: 0.5rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
  }
  aside.zusatz article h1,
  aside.zusatz article h2,
  aside.zusatz article h3,
  aside.zusatz article h4,
  aside.zusatz article h4,
  aside.zusatz article h5,
  aside.zusatz article h6 {
    border-radius: 0.5rem 0.5rem 0 0;
  }
  footer nav ul.foot-nav {
    display: flex;
  }
  footer nav ul.foot-nav li {
    flex-flow: row;
  }
  footer nav ul.foot-nav li {
    padding: 0.75em 0;
  }
  footer nav ul.foot-nav li:not(:last-child):after {
    content: " | ";
  }
  footer nav ul.foot-nav li a {
    padding: 0 0.75rem;
  }
}
/*	4. Definition des Responsive Layouts
	==================================== */
@media screen and (max-width: 1024px) and (min-width: 801px) {
  body {
    background: hsl(61, 98%, 98%);
    color: hsl(61, 98%, 12%);
  }
  body > header {
    height: 7rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
    position: relative;
  }
  body > header h1#title {
    position: absolute;
    right: 1rem;
    top: 0.5rem;
  }
  nav {
    position: relative;
  }
  nav ul.main-nav > li {
    flex-grow: 1;
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    flex-grow: 1.25;
  }
  nav ul.main-nav {
    width: 100%;
    display: flex;
    top: -2.25rem;
    position: absolute;
  }
  nav ul.main-nav > li {
    box-sizing: border-box;
    color: hsl(61, 98%, 98%);
    min-height: 2.25rem;
    background: hsl(61, 98%, 12%);
    font-size: 1rem;
    padding: 1.5rem/3 1.5rem;
    border-color: hsl(61, 98%, 98%);
    border-width: medium thin;
  }
  nav ul.main-nav > li.aktiv {
    font-weight: 900;
  }
  nav ul.main-nav > li.aktiv > a {
    color: hsl(61, 98%, 68%);
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    background: hsl(181, 98%, 22%);
  }
  nav ul.main-nav > li > a {
    color: hsl(61, 98%, 98%);
    height: 1.25rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  nav ul.main-nav > li > a:hover,
  nav ul.main-nav > li > a:focus {
    white-space: normal;
  }
  nav ul.main-nav li {
    flex-flow: row;
  }
  nav ul.main-nav > li {
    padding-top: 0.5rem;
    background: hsla(61, 98%, 12%, 0.5);
    text-align: center;
    transition: background-color, flex;
    transition-duration: 0.5s;
  }
  nav ul.main-nav > li:not(:last-child) {
    border-right-style: solid;
  }
  nav ul.main-nav ul.sub-nav {
    z-index: 1;
    top: 2.25rem;
    left: 0;
    right: 0;
  }
  nav ul.sub-nav {
    width: 100%;
    position: absolute;
    width: 20%;
  }
  nav ul.sub-nav > li {
    box-sizing: border-box;
    color: hsl(61, 98%, 98%);
    min-height: 2.25rem;
    background: hsl(61, 98%, 12%);
    font-size: 1rem;
    padding: 1.5rem/3 1.5rem;
    border-color: hsl(61, 98%, 98%);
    border-width: medium thin;
  }
  nav ul.sub-nav > li.aktiv {
    font-weight: 900;
  }
  nav ul.sub-nav > li.aktiv > a {
    color: hsl(61, 98%, 68%);
  }
  nav ul.sub-nav > li:hover,
  nav ul.sub-nav > li:focus {
    background: hsl(181, 98%, 22%);
  }
  nav ul.sub-nav > li > a {
    color: hsl(61, 98%, 98%);
    height: 1.25rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  nav ul.sub-nav > li > a:hover,
  nav ul.sub-nav > li > a:focus {
    white-space: normal;
  }
  nav ul.sub-nav li {
    transition: background-color, width;
    transition-duration: 0.5s;
    padding: 0.5em;
    margin: 0.25em 2.5%;
    border-radius: 0, 2.25rem/2, 2.25rem/2, 0;
    width: 95%;
  }
  nav ul.sub-nav li:hover,
  nav ul.sub-nav li:focus {
    width: 118.75%;
  }
  .wrapper {
    position: relative;
  }
  main {
    width: 80%;
    margin-left: 20%;
    box-sizing: border-box;
  }
  main table {
    width: 90%;
    margin: 0 auto;
  }
  main table th:first-child,
  main table td:first-child {
    border-right-style: solid;
  }
  main table thead tr:last-child th,
  main table thead tr:last-child td {
    border-bottom-style: solid;
  }
  main table tfoot tr:last-child th,
  main table tfoot tr:last-child td {
    border-top-style: solid;
  }
  main table tbody tr:last-child th,
  main table tbody tr:last-child td {
    border-bottom-style: solid;
  }
  main form fieldset legend {
    width: 100%;
  }
  main form fieldset label {
    display: inline-block;
    width: 20%;
    text-align: right;
    padding: 1.5rem/3/2 1.5rem/3;
  }
  main form fieldset input,
  main form fieldset textarea {
    display: inline-block;
    width: 50%;
  }
  aside.zusatz {
    width: 80%;
    margin-left: 20%;
    display: flex;
    box-sizing: border-box;
  }
  aside.zusatz article {
    margin: 1.5rem/3 1.5rem 1.5rem;
  }
  aside.zusatz article:not(:last-child) {
    margin-right: 0;
  }
  aside.zusatz article p img {
    width: 10rem;
    height: auto;
  }
  aside.zusatz article {
    border-radius: 0.5rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
  }
  aside.zusatz article h1,
  aside.zusatz article h2,
  aside.zusatz article h3,
  aside.zusatz article h4,
  aside.zusatz article h4,
  aside.zusatz article h5,
  aside.zusatz article h6 {
    border-radius: 0.5rem 0.5rem 0 0;
  }
  footer nav ul.foot-nav {
    display: flex;
  }
  footer nav ul.foot-nav li {
    flex-flow: row;
  }
  footer nav ul.foot-nav li {
    padding: 0.75em 0;
  }
  footer nav ul.foot-nav li:not(:last-child):after {
    content: " | ";
  }
  footer nav ul.foot-nav li a {
    padding: 0 0.75rem;
  }
}
@media screen and (max-width: 800px) and (min-width: 501px) {
  body {
    background: hsl(61, 98%, 98%);
    color: hsl(61, 98%, 12%);
  }
  body > header {
    height: 7rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
    position: relative;
  }
  body > header h1#title {
    position: absolute;
    right: 1rem;
    top: 0.5rem;
  }
  nav {
    position: relative;
  }
  nav ul.main-nav > li {
    flex-grow: 1;
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    flex-grow: 1.25;
  }
  nav ul.main-nav {
    width: 100%;
    display: flex;
    top: -2.25rem;
    position: absolute;
  }
  nav ul.main-nav > li {
    box-sizing: border-box;
    color: hsl(61, 98%, 98%);
    min-height: 2.25rem;
    background: hsl(61, 98%, 12%);
    font-size: 1rem;
    padding: 1.5rem/3 1.5rem;
    border-color: hsl(61, 98%, 98%);
    border-width: medium thin;
  }
  nav ul.main-nav > li.aktiv {
    font-weight: 900;
  }
  nav ul.main-nav > li.aktiv > a {
    color: hsl(61, 98%, 68%);
  }
  nav ul.main-nav > li:hover,
  nav ul.main-nav > li:focus {
    background: hsl(181, 98%, 22%);
  }
  nav ul.main-nav > li > a {
    color: hsl(61, 98%, 98%);
    height: 1.25rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  nav ul.main-nav > li > a:hover,
  nav ul.main-nav > li > a:focus {
    white-space: normal;
  }
  nav ul.main-nav li {
    flex-flow: row;
  }
  nav ul.main-nav > li {
    padding-top: 0.5rem;
    background: hsla(61, 98%, 12%, 0.5);
    text-align: center;
    transition: background-color, flex;
    transition-duration: 0.5s;
  }
  nav ul.main-nav > li:not(:last-child) {
    border-right-style: solid;
  }
  nav ul.main-nav ul.sub-nav {
    position: absolute;
    bottom: -3.5rem;
    left: 0;
    right: auto;
  }
  nav ul.main-nav ul.sub-nav li {
    font-weight: initial;
    font-size: 0.85rem;
    color: hsl(61, 98%, 12%);
  }
  nav ul.sub-nav {
    padding: 1.5rem/3 1.5rem;
    display: flex;
  }
  nav ul.sub-nav li {
    flex-flow: row;
  }
  nav ul.sub-nav li {
    padding: 0.75em 0;
  }
  nav ul.sub-nav li:not(:last-child):after {
    content: " | ";
  }
  nav ul.sub-nav li a {
    padding: 0 0.75rem;
  }
  nav ul.sub-nav li:last-child a {
    padding-right: 0;
  }
  nav ul.sub-nav li:first-child a {
    padding-left: 0;
  }
  nav ul.sub-nav li a {
    color: hsl(151, 98%, 38%);
  }
  nav ul.sub-nav li a:visited {
    color: hsl(151, 98%, 23%);
  }
  main {
    width: auto;
  }
  main > section#breadcrumb:first-child {
    margin-top: 3.5rem;
    padding-top: 0;
  }
  main table {
    width: 90%;
    margin: 0 auto;
  }
  main table th:first-child,
  main table td:first-child {
    border-right-style: solid;
  }
  main table thead tr:last-child th,
  main table thead tr:last-child td {
    border-bottom-style: solid;
  }
  main table tfoot tr:last-child th,
  main table tfoot tr:last-child td {
    border-top-style: solid;
  }
  main table tbody tr:last-child th,
  main table tbody tr:last-child td {
    border-bottom-style: solid;
  }
  main form fieldset legend {
    width: 100%;
  }
  main form fieldset label {
    display: inline-block;
    width: 20%;
    text-align: right;
    padding: 1.5rem/3/2 1.5rem/3;
  }
  main form fieldset input,
  main form fieldset textarea {
    display: inline-block;
    width: 50%;
  }
  aside.zusatz {
    display: flex;
    box-sizing: border-box;
  }
  aside.zusatz article {
    margin: 1.5rem/3 1.5rem 1.5rem;
  }
  aside.zusatz article:not(:last-child) {
    margin-right: 0;
  }
  aside.zusatz article p img {
    width: 10rem;
    height: auto;
  }
  aside.zusatz article {
    border-radius: 0.5rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
  }
  aside.zusatz article h1,
  aside.zusatz article h2,
  aside.zusatz article h3,
  aside.zusatz article h4,
  aside.zusatz article h4,
  aside.zusatz article h5,
  aside.zusatz article h6 {
    border-radius: 0.5rem 0.5rem 0 0;
  }
  footer nav ul.foot-nav {
    display: flex;
  }
  footer nav ul.foot-nav li {
    flex-flow: row;
  }
  footer nav ul.foot-nav li {
    padding: 0.75em 0;
  }
  footer nav ul.foot-nav li:not(:last-child):after {
    content: " | ";
  }
  footer nav ul.foot-nav li a {
    padding: 0 0.75rem;
  }
}
@media screen and (max-width: 500px) {
  header h1#title {
    padding: 0.5rem;
  }
  nav#sitenav {
    color: white;
    width: 3rem;
    height: 2rem;
    border-radius: 4px;
    border: none;
    background: linear-gradient(0deg, #000, #555) no-repeat;
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    left: auto;
  }
  nav#sitenav > ul {
    height: auto;
    width: auto;
    position: absolute;
    right: 0;
    top: 100%;
    background: rgba(0, 0, 0, 0.8);
    border-radius: 5px;
    display: none;
  }
  nav#sitenav > ul > li {
    display: block;
    text-align: left;
    line-height: normal;
    border: none;
  }
  nav#sitenav > ul > li:not(:first-child) {
    border-top: 1px #888 solid;
  }
  nav#sitenav > ul > li a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    height: auto;
    width: auto;
    padding: 0.5rem 1rem;
    color: white;
  }
  nav#sitenav > ul > li a:hover,
  nav#sitenav > ul > li a:focus {
    color: white;
    background: linear-gradient(0deg, #0560e8, #59b4fd) no-repeat;
  }
  nav#sitenav > ul > li:first-child a {
    border-radius: 5px 5px 0 0 ;
  }
  nav#sitenav > ul > li:last-child a {
    border-radius: 0 0 5px 5px ;
  }
  nav#sitenav:hover ul,
  nav#sitenav:focus ul,
  nav#sitenav:active ul {
    display: block;
  }
  nav#sitenav:before {
    content: "\2261";
    font-size: 2rem;
    text-align: center;
    line-height: 0.8em;
    display: block;
    cursor: pointer;
  }
  nav#sitenav ul.sub-nav {
    padding-left: 2rem;
  }
  nav.navigation ul.sub-nav {
    padding: 0.5rem 1.5rem;
    list-style: disc;
    line-height: 1.75;
  }
  main section#breadcrumb {
    padding: 0.5rem;
  }
  main section {
    padding: 0.5rem;
  }
  main section h1 {
    font-size: 1.7rem;
  }
  main section h2 {
    font-size: 1.4875rem;
  }
  main section h3 {
    font-size: 1.411rem;
  }
  main section h4 {
    font-size: 1.275rem;
  }
  main section h5 {
    font-size: 1.1305rem;
  }
  main section h6 {
    font-size: 0.9945rem;
  }
  main section thead th {
    font-size: 0.9945rem;
  }
  main section article img {
    height: 10em;
  }
  main table {
    width: 100%;
    margin: 0 auto;
  }
  main table tr {
    display: block;
    background-color: hsla(61, 98%, 12%, 0.12);
  }
  main table tr td,
  main table tr th {
    display: block;
  }
  main table thead tr:last-child th:last-child,
  main table tbody tr:last-child th:last-child,
  main table thead tr:last-child td:last-child,
  main table tbody tr:last-child td:last-child {
    border-bottom-style: solid;
  }
  main table tbody tr:not(:last-child) th:last-child,
  main table tbody tr:not(:last-child) td:last-child {
    border-bottom-style: solid;
  }
  main form fieldset legend {
    width: 100%;
  }
  main form fieldset label {
    display: block;
    width: 75%;
    text-align: left;
    padding: 1.5rem/3 0;
  }
  main form fieldset input,
  main form fieldset textarea {
    display: block;
    width: 75%;
  }
  aside.zusatz {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
  }
  aside.zusatz article {
    margin: 1.5rem/3 1.5rem/3 1.5rem;
  }
  aside.zusatz article:not(:last-child) {
    margin-right: 0;
  }
  aside.zusatz article p img {
    width: 10rem;
    height: auto;
  }
  aside.zusatz article {
    border-radius: 0.5rem;
    box-shadow: 0rem 0rem 1rem rgba(0, 0, 0, 0.5);
  }
  aside.zusatz article h1,
  aside.zusatz article h2,
  aside.zusatz article h3,
  aside.zusatz article h4,
  aside.zusatz article h4,
  aside.zusatz article h5,
  aside.zusatz article h6 {
    border-radius: 0.5rem 0.5rem 0 0;
  }
  footer nav ul.foot-nav {
    display: flex;
  }
  footer nav ul.foot-nav li {
    flex-flow: row;
  }
  footer nav ul.foot-nav li {
    padding: 0.75em 0;
  }
  footer nav ul.foot-nav li:not(:last-child):after {
    content: " | ";
  }
  footer nav ul.foot-nav li a {
    padding: 0 0.75rem;
  }
}
@media screen and (max-width: 350px) {
  body > header h1#title {
    font-size: 2.5rem;
  }
  main section article img,
  main section article figure {
    float: none;
    width: 80%;
    height: auto;
    margin: 0.5em auto;
    display: block;
  }
  main section article figure img {
    width: 100%;
    margin: 0;
  }
  main section article form fieldset label {
    width: 100%;
  }
  main section article form fieldset input,
  main section article form fieldset textarea {
    width: 100%;
  }
}
/*	5. Sonstige CSS-Klassen
	======================= */
