* {
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1;
  list-style: none;
  font: inherit;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
  color: inherit;
  text-decoration: none; }

html {
  height: 100%;
  background: linear-gradient(to top right, #F2F2F2 0%, #B2B2B2 100%);
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  font-family: Helvetica, Arial, sans-serif;
  color: #333;
  font-size: 16px; }

body {
  height: 100%;
  position: relative;
  max-width: 1140px;
  display: flex;
  flex-direction: column; }
  @media (max-width: 1140px) {
    body body {
      background-position: left 20px top -18px; } }
img {
  display: block; }

#asddas article {
  width: 100%;
  padding: 56px 20px 0 0; }

#asddas #article {
  border-radius: 0px 20px 20px 0; }

#asddas #footer {
  background: none;
  padding: 200px 20px 40px; }

#asddas #footer p {
  width: 100%; }

#asddas #menuController {
  display: block; }

#cert-thumb {
  margin-top: 35px; }
  #cert-thumb img {
    width: 70px; }

footer {
  padding: 0 20px 50px;
  height: 50px;
  width: 100%;
  font-size: 12px; }
  footer ul {
    width: 65%;
    display: flex;
    padding: 10px;
    justify-content: center; }
    footer ul li {
      padding: 0 10px; }
      footer ul li:nth-of-type(n+2) {
        border-left: 1px solid #000; }
  @media (max-width: 959px) {
    footer {
      padding: 0 20px 70px; }
      footer ul {
        width: 100%;
        flex-wrap: wrap; }
        footer ul li {
          flex-basis: 5%;
          flex-grow: 2;
          flex-shrink: 0;
          padding: 2px 5px;
          text-align: center; }
          footer ul li:first-of-type {
            padding: 0 0 10px 0;
            flex-basis: 100%; }
          footer ul li:nth-of-type(n+2) {
            border-left: 1px solid #000; }
          footer ul li:nth-of-type(2) {
            border-left: 0; }
          footer ul li:nth-of-type(4) {
            flex-grow: 1; } }
#bottom {
  position: fixed;
  bottom: 0;
  left: 740px;
  width: 400px;
  height: 200px;
  background-image: url("/images/elemente.png");
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain; }
  @media (max-width: 959px) {
    #bottom {
      display: none; } }
#gmap_wrapper {
  padding: 10px;
  border-radius: 20px;
  background: #F7F7F7;
  margin: 0 0 20px; }

#gmap {
  height: 300px;
  border-radius: 10px; }

header {
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
  height: 176px; }
  header nav {
    flex: 0 0 65%;
    padding: 82px 20px 0;
    overflow: hidden; }
    header nav ul {
      display: flex;
      flex-direction: row; }
      header nav ul a {
        display: block;
        border-radius: 5px;
        color: #1875BC;
        text-decoration: none;
        margin: 0 20px 0 0;
        padding: 15px 10px 10px 0px; }
        header nav ul a:hover {
          background: #1875BC;
          color: #FFF; }
        header nav ul a span {
          display: block;
          width: 110px;
          height: 30px;
          padding: 5px 0 0 5px;
          border: 0 solid #1875BC;
          border-width: 2px 0 0; }
          header nav ul a span:hover {
            border-style: dotted;
            border-color: #FFF; }
  header div {
    flex: 0 0 35%;
    padding: 10px 0 0 20px; }
    header div h1 {
      margin: 0; }
    header div img {
      height: 150px; }
    header div h2 {
      background: #F57500;
      color: #FFF;
      line-height: 36px;
      border-top-left-radius: 9px;
      border-bottom-left-radius: 9px;
      translate: 0px 15px;
      padding: 0 10px 0 18px;
      white-space: nowrap; }
      @media (max-width: 959px) {
        header div h2 {
          translate: 0 10px;
          left: 20px; } }
  @media (max-width: 959px) {
    header {
      margin-bottom: 50px; }
      header nav {
        display: none;
        opacity: 0; }
        header nav.visible {
          display: block;
          position: fixed;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          width: auto;
          height: auto;
          background: linear-gradient(to top right, #F2F2F2 0%, #B2B2B2 100%);
          opacity: 0.975;
          transition: 250ms opacity ease-in-out;
          padding-top: 50px;
          z-index: 1; }
          header nav.visible ul {
            flex-direction: column; }
            header nav.visible ul li a {
              padding: 2em 0;
              line-height: 1.333em; }
              header nav.visible ul li a:hover {
                background: inherit;
                color: #1875BC;
                border-style: solid; }
              header nav.visible ul li a span {
                display: block;
                width: 100%;
                height: 30px;
                padding: 5px 0 0 5px;
                border: 0 solid #1875BC;
                border-width: 2px 0 0; }
      header div {
        flex-grow: 1; } }
main {
  flex-grow: 1;
  display: flex;
  padding: 0 20px; }
  @media (max-width: 959px) {
    main {
      padding: 0 20px 0 0; } }
  main article {
    clear: both;
    width: 65%;
    background: #FFF;
    padding: 40px 20px;
    line-height: 1.25em;
    border-radius: 20px; }
    @media (max-width: 959px) {
      main article {
        width: 100%;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0; } }
    main article h1 {
      color: #F57500;
      font-size: 1.3em;
      margin: 0 0 .5em; }
    main article h2, main article h3 {
      color: #1875BC;
      margin: 1.5em 0 .5em;
      font-size: 1.15em; }
    main article p, main article ul {
      margin: .5em 0; }
    main article li {
      margin: .2em 0 .2em 26px;
      list-style-position: outside;
      list-style-image: url("/images/arrow.png"); }

abbr {
  border: 0 dotted #000;
  border-width: 0 0 1px; }

#menuController {
  display: none;
  position: absolute;
  top: 35px;
  right: 0;
  cursor: pointer;
  margin: 0 20px 0 0;
  padding: 15px 10px 10px 0px;
  border-radius: 5px;
  color: #1875BC;
  text-decoration: none;
  margin: 0 20px 0 0;
  padding: 15px 10px 10px 0px; }
  @media (max-width: 959px) {
    #menuController {
      display: block; } }
  #menuController:hover {
    background: #1875BC;
    color: #FFF; }
  #menuController span {
    display: block;
    width: 110px;
    height: 30px;
    padding: 5px 0 0 5px;
    border: 0 solid #1875BC;
    border-width: 2px 0 0; }
    #menuController span:hover {
      border-style: dotted;
      border-color: #FFF; }

#top {
  height: 18px;
  width: 100%;
  background: #F57500;
  border-bottom-right-radius: 12px; }
