body:before {
  content: '';
  position: fixed;
  top: 0;
  left: 44px;
  width: 0;
  height: 100%;
  border-left: 1px solid black;
}


nav {
  text-align: right;
  position: relative;
  padding: 38px 15px 5px 0;
  border-bottom: 1px solid black;
  margin-bottom: 40px; /* Höhe von olejko_u.gif + 1px border */
}

nav > a {
  position: absolute;
  left: 64px;
  bottom: 0;
  width: 242px;
  height: 51px;
  overflow: hidden; /* Linktext verdecken */
}

nav > a:before {
  content: url('Layout/olejko_o.gif');
  display: block;
}

nav:before {
  content: url('Layout/olejko_u.gif');
  position: absolute;
  bottom: -40px;
  left: 64px;
  height: 39px;
  width: 242px;
}

nav:after {
  content: url('Layout/graueck.gif');
  position: absolute;
  bottom: -127px;
  left: 0;
  height: 126px;
  width: 44px;
}


nav ul {
  margin: 0;
}


@media (max-width: 820px), print {
  nav {
    text-align: left;
    padding: 5px 15px 60px 64px;
  }

  nav li {
    display: block;
  }

  nav li:before {
    display: none;
  }

  nav li a {
    display: inline-block;
    padding: 8px 0;
  }
}


main {
  display: block; /* MSIE 9 */
}

@media screen {
  main {
    padding: 20px 15px 20px 64px;
    max-width: 744px;
    margin: 0 auto;
  }
}


@media (max-width: 480px), print {
  body:before,
  nav:after {
    display: none;
  }
}


@media (max-width: 480px) {
  nav {
    padding-left: 15px;
  }
  nav > a,
  nav:before {
    left: 15px;
  }
  main {
    padding: 20px 15px;
  }
}


@media print {
  nav {
    padding-left: 0;
  }
  nav > a,
  nav:before {
    left: 0;
  }
  main {
    padding: 20px 0 0 0;
  }
}


h1 {
  font-size: 1.25em;
  font-weight: normal;
}

h2 {
  font-size: 1.25em;
  font-weight: normal;
}

h3 {
  font-size: 1.15em;
  font-weight: normal;
}


p,
dl {
  margin: 0 0 1em 0;
}

dd {
  margin: 0 0 1em 0;
}


.vita dt {
  text-transform: lowercase;
  font-style: italic;
}


@media (min-width: 480px) {
  .vita dt {
    float: left;
    min-width: 190px;
    clear: right;
  }
  .vita dd {
    margin-left: 190px;
  }
}


ul.subnav li b {
  font-weight: normal;
}

@media (max-width: 767px), print {
  ul.subnav li {
    display: block;
  }

  ul.subnav li:before {
    display: none;
  }

  ul.subnav li a,
  ul.subnav li b {
    display: inline-block;
    padding: 8px 0;
  }
}


.buch {
  margin-bottom: 2em;
}

hr + .buch {
  margin-top: 2em;
}

@media (min-width: 550px) {
  .buch + hr {
    visibility: hidden;
  }
  .buch > img {
    float: left;
    clear: right;
  }
  .buch > div {
    margin-left: 170px;
  }
}