/* COLORS */

/* -------------------------------- */

.hp_t{
  text-align:right;
  padding-right:5px;
  margin-right:5px;
  border-right:1px solid #0063A6;
}
.err {
  font-size:12pt;
  color:red;
}

.submit {
  font-size:14pt;
  border-radius:6px;
  font-weight:bold;
}

.style_input {
  background-color:rgba(255, 255, 255, 0.8);
  border-radius:10px;
  border:2px solid #fff;
  padding:10px;
  width:100%;
  opacity: 1;
}

.style_title {
  color:#0063A6;
  font-family: serif;
  padding-top:15px;
  font-size:16pt;
  font-weight:bold;
}

.style_select {
  padding:5px;
  border-radius:0px;
  width:97%;
  font-weight:bold;
}

.style_text {
  padding:5px;
  border-radius:2px;
  width:97%;
  font-weight:bold;
}

.style_textarea {
  font-family: sans-serif;
  padding:5px;
  border-radius:0px;
  width:97%;
  font-weight:bold;
  font-size:10pt;
}

.style_text:focus{background-color:#7ba7bc;color:#fff;}
.style_select:focus{background-color:#7ba7bc;color:#fff;}
.style_textarea:focus{background-color:#7ba7bc;color:#fff;}

.style_question {
  color:#000;
  font-size:10pt;
  font-family: Sans-serif;
  padding-top:5px;
}

/* compile with lessc strobl18.less > strobl18.css */
/* http://lesscss.org/features/#features-overview-feature */
html {
  color: #000000;
  background-color: #ffffff;
  font-size: 13pt;
}
@media (max-width: 700px) {
  html {
    font-size: 12pt;
  }
}
body {
/*  display: flex; */
/*  flex-direction: column; */
  font-family: Georgia, Lucida Bright, Book Antiqua, Georgia,  Cambria, Lucida Bright, Palatino, Times New Roman, serif;
  max-width: 940px;
  min-height: 100vh;
  margin: 0 auto;
  padding: 0 0px;
}
/* the S-header */
header.s-header {
  background-color: #fff;
/*  background-image: url(dateien/_template_bg.jpg); */
  background-attachment: local;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: auto 100%;
  color: #0063A6;
  display: flex;
  align-items: flex-end;
  font-weight: bold;
  margin-top: 10px;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (max-width: 700px) {
  header.s-header {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 940px) {
  header.s-header {
    margin-top: 0px;
  }
}
header.s-header h1 {
  color: #0063A6;
  font-size: 2rem;
  margin: 0;
}
@media (max-width: 360px) {
  header.s-header h1 {
    font-size: 2.2rem;
  }
}
header.s-header h1 a {
  color: #0063A6;
  text-decoration: none;
}
header.s-header h1 .year {
  color: #c0dcf2;
}
header.s-header div.subheader {
  font-size: 0.8rem;
  margin-bottom: 15px;
  margin-left: 15px;
}
@media (max-width: 360px) {
  header.s-header div.subheader {
    font-size: 0.6rem;
  }
}
@media (max-width: 360px) {
  header.s-header div.subheader {
    margin-left: 5px;
  }
}
header.s-header div.subheader p {
  margin: 0;
}
header.s-header div.subheader p#subtitle {
  font-size: 1.1rem;
}
@media (max-width: 360px) {
  header.s-header div.subheader p#subtitle {
    font-size: 0.8rem;
  }
}
/* the menu */
nav {
  font-size: 1rem;
}
@media (max-width: 360px) {
  nav {
    font-size: 0.8rem;
    padding-top: 1rem;
  }
}
@media  (max-width: 700px) {
  nav {
    margin-bottom: 1em;
  }
}
nav input.trigger {
  position: absolute;
  top: -9999px;
  left: -9999px;
}
nav input.trigger:checked ~ ul,
nav input.trigger:checked ~ ul li ul {
  display: block !important;
}
@media (min-width: 700px) {
  nav input.trigger:checked ~ ul,
  nav input.trigger:checked ~ ul li ul {
    /* older flexbox */
    display: -webkit-box;
    display: -moz-box;
    display: box;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    /* newer flexbox */
    display: flex;
    flex-direction: row;
  }
}
nav label {
  position: relative;
  display: block;
  min-height: 2em;
  padding: .45em;
  font-size: 1.1em;
  margin: 0;
  margin-top: -60px;
  cursor: pointer;
  line-height: 2em;
  color: #ffffff;
}
nav label:after {
  position: absolute;
  right: 1em;
  top: .2em;
  content: "\2261";
  font-size: 1.8em;
  color: #7ba7bc;
}
nav ul {
  display: none;
  list-style: none;
  padding: 0px;
  margin-bottom: 0px;
  margin-left: 2rem;
  margin-right: 2rem;
  margin-top: 0px;
}
@media  (max-width: 700px) {
  nav ul {
    margin-top: 1em;
  }
}
nav ul li a {
text-align:center;
  background: #ffffff;
  color: #1f5d7a;
  display: block;
  text-decoration: none;
  white-space: nowrap;
}
nav ul li a:hover {
  background: #f2f2f2;
}
@media  (max-width: 700px) {
  nav ul li ul {
    margin-left: 1rem;
    margin-top: 0;
  }
}
@media (min-width: 700px) {
  nav label {
    display: none;
  }
  nav > ul > li {
    border-right: 1px solid #e6e6e6;
  }
  nav > ul > li:last-of-type {
    border-right: 0px;
  }
  nav ul {
    /* older flexbox */
    display: -ms-flexbox;
    flex-direction: -ms-row;
    display: -webkit-box;
    display: -moz-box;
    display: box;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    box-orient: horizontal;
    /* newer flexbox */
    display: flex;
    flex-direction: row;
  }
  nav ul li {
    position: relative;
    text-align: center;
    /* older flexbox */
    -ms-flex: 1;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    box-flex: 1;
    /* newer flexbox */
    flex: 1;
  }
  nav ul li:hover > ul {
    display: block !important;
  }
  nav ul li:last-of-type ul {
    width: auto;
  }
  nav ul li:last-of-type li {
    text-align: right;
    margin-right: 2rem;
  }
  nav ul li a {
    padding-left: 0px;
  }
  nav ul li ul {
    display: none !important;
    position: absolute;
    width: 100%;
    margin: 0;
    right: 0;
    z-index: 200;
  }
  nav ul li ul li {
    text-align: center;
  }
}
/* the main content */
main.content {
border-top:8px solid #0061a4;
background-color: rgba(255, 255, 255, .6);
  display: flex;
  flex: 1;
  flex-direction: column;
  margin-top: 0rem;
  padding-bottom: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0rem;
}
@media  (max-width: 700px) {
  main.content {
    padding-top: 1%;
  }
}
main.content article > header {
  color: #7ba7bc;
  font-size: 1.6em;
  font-weight: bold;
  position: relative;
  top: -0.25em;
  text-transform: uppercase;
}
main.content article > header.hide {
  display: none;
}
@media  (max-width: 700px) {
  main.content article > header {
    display: block;
  }
}
main.content article > header h2 {
  font-size: 1.5rem;
  margin-top: 0.6rem;
  margin-bottom: 0.6rem;
}
main.content article section {
  font-size: 0.8rem;
}
main.content article section a {
  color: #1f5d7a;
  text-decoration: none;
}
main.content article section a:hover {
  color: #297ca3;
}
main.content article section h13 {
  color: #0063A6;
  font-size: 1.2rem;
  font-weight: bold;
  margin-top: 0.4em;
  margin-bottom: 0.2em;
}
main.content article section h3 {
  color: #0063A6;
  font-size: 1.2rem;
  font-weight: bold;
  margin-top: 1.4em;
  margin-bottom: 1.2em;
}
/*
main.content article section h3::after {
  content: ":";
}
*/

main.content article section img.frontpage {
  display: block;
  width: 60%;
}
@media  (min-width: 700px) {
  main.content article section img.frontpage {
    float: right;
    padding-left: 10px;
    width: 300px;
  }
}
/* sticky footer */
footer {
  font-size: 0.6rem;
  margin-left: 2rem;
  margin-right: 2rem;
  position: fixed; 
  left: 0px; 
  bottom: 0px; 
  text-align:left;
}
