@charset "UTF-8";
:root {
  --bg-main-content: #f0f0f0;
  --bg-header-footer: #90a9ad;
  --color-body: #33414b;
  --color-footer: white;
  --color-menu-a: white;
  --color-a-link: #29343c;
  --bg-menu-link: rgba(83, 112, 116, 0.35);
  --bg-menu: #e4e4e4;
  --bg-menu-pure: hsl(188, 15%, 62%);
  --color-h: #4c6367;
  --bg-body: hsl(188, 15%, 91%);
  --bg-menu-hasChildA: hsl(188, 17%, 39%);
  --bg-menu-active: hsl(188, 17%, 39%);
  --bg-focus: hsl(188, 17%, 39%);
}
#layout,
#menu,
.menu-link {
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -ms-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
#layout {
  position: relative;
  padding-left: 0;
}
#layout.active #menu {
  left: 250px;
  width: 250px;
}
#menu {
  margin-left: -250px;
  width: 250px;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 1000;
  background: var(--bg-menu);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
#menu a {
  font-size: 95%;
  color: var(--color-menu-a);
  padding: 0.6em 0 0.6em 1.4em;
  border: none;
  border-right: 4px solid var(--bg-menu);
  border-left: 4px solid var(--bg-menu);
  border-bottom: 4px solid var(--bg-menu);
}
#menu .pure-menu-has-children {
  background-color: var(--bg-menu);
}
#menu .pure-menu-has-children > a {
  background-color: var(--bg-menu-hasChildA);
  border-bottom: 0;
}
#menu .pure-menu-has-children > .pure-menu-link::after {
  content: "";
}
#menu .pure-menu-has-children .pure-menu-children {
  display: block;
  position: relative;
  width: 95%;
  left: 5%;
}
#menu .pure-menu-has-children .pure-menu-children .pure-menu-item,
#menu .pure-menu-has-children .pure-menu-children .pure-menu-item a {
  position: relative;
}
#content-menu .pure-menu,
#content-menu .pure-menu ul,
#menu .pure-menu,
#menu .pure-menu ul {
  border: none;
  background-color: var(--bg-menu-pure);
}
#menu .pure-menu .menu-item-divided,
#menu .pure-menu ul {
  border-top: 5px solid var(--bg-menu);
}
#content-menu .pure-menu li a:focus,
#content-menu .pure-menu li a:hover,
#menu .pure-menu li a:focus,
#menu .pure-menu li a:hover {
  background-color: var(--bg-focus);
}
#content-menu .pure-menu-has-children .pure-menu-children {
  margin-top: 2px;
  margin-left: -8px;
  border: 4px solid var(--bg-menu);
  width: 220px;
}
#content-menu .pure-menu-has-children .pure-menu-children li:last-child a {
  border-bottom: 0;
}
.menu-link {
  position: fixed;
  display: block;
  top: 30px;
  left: 10px;
  background-color: var(--bg-menu-link);
  font-size: 20px;
  z-index: 10;
  width: 30px;
  height: 30px;
  padding: 25px 15px 0 15px;
  border-radius: 5px;
}
.menu-link span {
  position: relative;
  display: block;
}
.menu-link span,
.menu-link span:after,
.menu-link span:before {
  background-color: var(--bg-menu);
  width: 100%;
  height: 0.2em;
}
.menu-link span:after,
.menu-link span:before {
  position: absolute;
  margin-top: -0.6em;
  content: " ";
}
.menu-link span:after {
  margin-top: 0.6em;
}
@media (min-width: 769px) {
  .content,
  .header {
    padding-left: 2em;
    padding-right: 2em;
  }
  #layout {
    left: 0;
  }
  .menu-link {
    position: fixed;
    left: 250px;
    display: none;
  }
  #layout.active .menu-link {
    left: 250px;
  }
}
@media (max-width: 768px) {
  #layout.active {
    position: relative;
    left: 250px;
  }
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  /* EOT und SVG entfernt */
  src: local("Montserrat Regular"), local("Montserrat-Regular"),
    url(../fonts/montserrat-v12-latin-ext_latin-regular.woff2) format("woff2"),
    url(../fonts/montserrat-v12-latin-ext_latin-regular.woff) format("woff"),
    url(../fonts/montserrat-v12-latin-ext_latin-regular.ttf) format("truetype");
}

body {
  background-color: var(--bg-body);
  color: var(--color-body);
  font-family: Montserrat, sans-serif;
  font-size: 0.91rem;
}
.pure-g [class*="pure-u"] {
  font-family: Montserrat, sans-serif;
}
.nowrap {
  white-space: nowrap;
}
img {
  max-width: 100%;
}
h1,
h2,
h3,
h4 {
  color: var(--color-h);
  font-weight: 400;
  font-family: Montserrat, sans-serif;
}
h3 {
  margin: 5px 0 10px 0;
}
h4 {
  margin: 20px 0 0 0;
}
a:link {
  color: var(--color-a-link);
  text-decoration: none;
}
#layout {
  margin: 36px auto;
}
.content {
  margin: 0 auto;
  padding: 0 2em;
  max-width: 800px;
  margin-bottom: 50px;
  line-height: 1.6em;
}
#main .content {
  padding: 0 0;
  max-width: 960px;
  margin-bottom: 10px;
  line-height: 1.3em;
  min-height: 500px;
  background-color: var(--bg-main-content);
}
#inhalt-links-frame {
  background-color: transparent;
}
#inhalt-links {
  background-color: var(--bg-menu);
  margin: 5px;
}
#content-menu a {
  font-size: 85%;
  color: var(--color-menu-a);
  padding: 0.5em 0 0.5em 1.4em;
  border: none;
  border-bottom: 3px solid var(--bg-menu);
}
.aerzte #content-menu .aerzte,
.arzt_sander #content-menu .arzt_sander,
.arzt_zeller #content-menu .arzt_zeller,
.datenschutz #content-menu .datenschutz,
.impressum #content-menu .impressum,
.index #content-menu .index,
.kontakt #content-menu .kontakt,
.leistungen #content-menu .leistungen,
.praxis #content-menu .praxis {
  background-color: var(--bg-menu-active);
}
#kontakt,
#oeffnungszeiten {
  line-height: 1.4em;
  font-size: 0.8em;
  margin: 5% 10% 0 10%;
  padding: 8px 0;
}
#oeffnungszeiten span.nowrap.b {
  color: #29343c;
  display: block;
}
#kontakt {
  padding: 8px 0 8px 0;
  border-bottom: 1px solid #fff;
}
#adress,
#eigentlicher_inhalt {
  padding: 1% 2.5% 1% 2.5%;
  font-size: 93%;
}
#adress {
  display: none;
  background-color: var(--bg-body);
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #fff;
  font-size: 0.8em;
}
#adress span.nowrap.b,
#kontakt_oeffnungszeiten span.nowrap.b {
  color: #29343c;
  display: inline-block;
  min-width: 72px;
}
#eigentlicher_inhalt #kontakt_oeffnungszeiten p {
  padding-bottom: 10px;
}
#kontakt_oeffnungszeiten span.nowrap.b {
  min-width: 100px;
}
#eigentlicher_inhalt div p,
.datenschutz #eigentlicher_inhalt p,
.impressum #eigentlicher_inhalt p {
  padding: 0 10px 0 0;
  margin: 0;
  text-align: justify;
}
#eigentlicher_inhalt ul {
  padding: 0 7% 0 7%;
  margin: 0;
}
#eigentlicher_inhalt ul li {
  padding: 0 0 10px 6px;
  margin: 0;
}
.content-footer,
.content-header {
  width: 100%;
  margin: 0;
  background-color: var(--bg-header-footer);
}
.content-header {
  padding: 15px 0 15px 0;
}
.content-footer {
  padding: 0;
  color: var(--color-footer);
  text-align: center;
  font-size: 70%;
  letter-spacing: 0.42px;
  clear: both;
}
#logopic {
  display: block;
  width: 300px;
  margin: 0 auto 0 auto;
}
table.vita td {
  vertical-align: top;
  padding-bottom: 20px;
}
table.vita tr td:first-child {
  padding-right: 20px;
}
.headerpic {
  margin-top: 5px;
  width: 100%;
  height: 238px;
  background-image: url(../img/content_header.jpg);
  background-size: cover;
  background-position: center top;
}

@media (max-width: 768px) {
  #logopic {
    margin: 0 10px 0 auto;
  }
  #layout {
    margin: 0 auto;
  }
  #inhalt-links-frame {
    display: none;
  }
  #eigentlicher_inhalt-frame {
    width: 100%;
  }
  #adress {
    display: block;
  }
}
.img-right {
  width: 48%;
  float: right;
  margin-bottom: 20px;
}
.has-img-right {
  width: 50%;
}
@media (max-width: 919px) {
  .has-img-right {
    width: 100%;
  }
  .img-right {
    width: 100%;
  }
}

a img + span {
  color: var(--color-body);
  font-size: 94%;
}
