@charset "utf-8";
/* CSS Document */

/* Grundlayout für SELFHTML-Beispiele */

html {
        background: transparent!important;    background: pink;
}

body {
	margin: 1em auto;
	max-width: 80em;
	/*font-family: 'Abel', sans-serif;*/
	font-family: 'Roboto Condensed', sans-serif;
	color: #333333;
}

main, aside, main svg {
	border-radius: 0 8px 8px;
	border: 1px solid;
	padding: 1em;
	margin: 1em;
}

main {
	display: block;     /* für IE */	
	min-height: 400px;
}

/* responsives Layout */

body {
  display: flex;
  flex-flow: row wrap;
}

/* Mobile first - alle Dokument-Blöcke bekommen 100% Breite */
header, aside, article, footer {
  border-radius: 0px 0.5em 0.5em;
  border: 1px solid;
  padding: 1em;
  margin: 1em;
  flex: 1 100%;
}

nav, nav a {
  border-radius: 0px 0.5em 0.5em;
  padding: 0.5em;
  margin: 1em;
  flex: 1 100%;
}

header {
  background: #e4ebf2;
  border-color: #8a9da8;
}

header * {
  flex: 1 1 0%;
  margin: 0;
}

header img {
  flex: 0 0 150px;
  margin-right: 20px;
}
header nav {
  flex: 1 1 100%;
  margin: .5em 2em;
  border-color: #d5d5d5;
}

aside nav {
  padding: 0;
  flex-direction: column;
  border-color: #d5d5d5;
}

aside nav ul {
  display: block;
  column-count: 2;
  column-gap: 1em;
}

aside nav ul li {
  margin-top: 0em;
  margin-bottom: 1em;
  border: 0;
}

nav ul, nav li{
  margin: 0 0.5em;
  padding: 0 0.5em;
  border: 0;
}
nav ul {
  display: flex;
  flex-direction: column;
}
nav li {
  list-style-type:none;
  margin: 1.3em 0;
  flex: 1 1 100%;
}
nav a {
  display:inline-block;
  width:95%;
  background: #fffbf0;
  border: 1px solid #dfac20;
  margin: 0;
  text-decoration: none;
  text-align: center;
}
nav a:hover, nav a:focus {
  background-color: #dfac20;
}

nav a[aria-current=page] {
	color:black;
	font-weight:bold;
}

ul {
	list-style: none square;
}

aside {
  background: #F1F3F4;
  border-color: slateblue;
}

article {
  background: #fffbf0;
  border-color: #dfac20;
}
footer {
  background: #e4ebf2;
  border-color: #8a9da8;
  display: flex;
  flex-flow: row wrap;
}
footer * {
  flex: 1 1 0%;
  justify-content: space-between;
}
footer p:last-child {
  text-align: right;
}

.UIElement
{
	max-width: 100%;
}

h4
{
	margin-top: 2em;
}

/* Smart Phones und Tablets mit mittlerer Auflösung */
@media all and (min-width: 35em) {
	header img {
	  margin-right: 50px;
	}
	nav ul {
	  flex-direction: row;
	}
	nav li {
	  margin: 0 10px;
	  flex: 1 1 0%;
	}
	aside {
	/* durch auto werden die beiden asides in eine Zeile gesetzt */
	  flex: 1 auto;
	  order: 2;
	  border-color: #8a9da8;
	  background: #e4ebf2;
	}
	article {
	  order: 3;
	}
	footer {
	  order: 4;
	}
	.UIElement
	{
		float: none;
	}
}

/* Large screens */
@media all and (min-width: 50em) {
  aside {
	position: sticky;
	top: 1em;
	
    flex: 1 1 0%;
	order: 2;
    align-self: flex-start;
	border-color: #8a9da8;
	background: #e4ebf2;
  }
  article {    /* Der Article wird 2.5x so breit wie die beiden asides! */
    order: 3;
    flex: 3 1 0%;
  }
}

th, td {
  text-align: left;
  vertical-align: top;
  padding-right: 1em;
  padding-bottom: 1.5em;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
	font-style: normal;
	font-weight: bold;
	font-variant: small-caps;
}

strong {
	font-style: normal;
	font-weight: normal;
	font-variant: small-caps;
}
