@import "MyFontsWebfontsKit.css";
/*
 * Emigre web font kit 566a0b9d70f3f
 *
 * These fonts are not shareware.
 * Use of these fonts requires the purchase
 * of a license from Emigre, www.emigre.com
 * Please contact sales@emigre.com
 *
 * To purchase a license to use this font go to:
 * http://www.emigre.com/WebFonts/Vista-Slab/Book-and-Alternates
 *
 * © 2015 Emigre, Inc
 */
@font-face {
  font-family: 'vistaslab-book';
  src: url('../fonts/vistaslab-book-020415006EmigreWebOnly.eot');
  src: url('../fonts/vistaslab-book-020415006EmigreWebOnly.eot?#iefix') format('embedded-opentype'), url('../fonts/vistaslab-book-020415006EmigreWebOnly.woff2') format('woff2'), url('../fonts/vistaslab-book-020415006EmigreWebOnly.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'vistaslabalt-book';
  src: url('../fonts/vistaslabalt-book-020415006EmigreWebOnly.eot');
  src: url('../fonts/vistaslabalt-book-020415006EmigreWebOnly.eot?#iefix') format('embedded-opentype'), url('../fonts/vistaslabalt-book-020415006EmigreWebOnly.woff2') format('woff2'), url('../fonts/vistaslabalt-book-020415006EmigreWebOnly.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}
::selection {
  background: #b3d4fc;
  text-shadow: none;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
img {
  max-width: 100%;
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}
/* ===================
    general text styles
=================== */
body {
  font: 13px/1.5em FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  color: #676961;
}
h1,
h2.h-title {
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 20px;
  line-height: 1.2em;
  color: #676961;
  margin-top: 0.6em;
  margin-bottom: 0.9em;
}
h2 {
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.22em;
  color: #afc944;
  margin-bottom: 0.8em;
}
h3 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 22px;
  line-height: 1.25em;
  color: #afc944;
  margin-top: 0;
  margin-bottom: 0.625em;
}
h4 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.25em;
  color: #676961;
  margin-top: 0;
  margin-bottom: 0.8em;
}
p,
ul {
  margin-top: 0;
  margin-bottom: 0;
}
a {
  color: #9a9c94;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
.video-wrapper {
  width: 1020px;
  max-width: 100%;
  position: relative;
  padding-bottom: 56.5%;
  height: 0;
  box-sizing: border-box;
}
.video-wrapper img {
  cursor: pointer;
}
.video-wrapper a.video-overlay {
  position: absolute;
  display: block;
  background: url('../images/icon-video.png');
  background-repeat: no-repeat;
  background-position: left 2em bottom 2em;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.video-wrapper iframe {
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
/* ==========================================================================
   Helper classes
   ========================================================================== */
.hidden {
  display: none !important;
  visibility: hidden;
}
.filter-hidden {
  display: none !important;
}
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
.invisible {
  visibility: hidden;
}
.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
/* ===================
    basic page layout
=================== */
.wrapper {
  *zoom: 1;
  padding: 0;
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
}
.wrapper:before,
.wrapper:after {
  content: " ";
  display: table;
}
.wrapper:after {
  clear: both;
}
.wrapper .wrapper {
  width: auto;
  margin-left: 0;
  margin-right: 0;
}
.highlight {
  padding: 0.5rem 0;
  background-color: #afc944;
}
.header-container {
  background: #676961;
  position: relative;
}
.header-container a {
  transition: top 0.3s ease;
}
.header-container header {
  height: 118px;
  text-align: center;
}
.header-container header img.logo {
  margin-top: 20px;
  display: inline-block;
  border: none;
}
.header-container header .top-logo img {
  width: 248px;
  height: auto;
}
.header-container header .logo-small img {
  width: 32px;
  height: auto;
}
.header-container header .logo-small {
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.3s, opacity 0.3s linear;
  position: absolute;
  bottom: 8px;
  left: 8px;
}
@media only screen and (min-width: 1020px) {
  .header-container header img.logo {
    margin-top: 7px;
  }
  .header-container header .logo-small {
    left: -38px;
  }
}
@media only screen and (min-width: 1020px) {
  .header-container.sticky header {
    height: 48px;
  }
  .header-container.sticky .top-logo {
    display: none;
  }
  .header-container.sticky .logo-small {
    display: block;
    visibility: visible;
    opacity: 1;
  }
}
.breadcrumbs {
  width: 100%;
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 13px;
  margin-top: 0.8em;
  margin-bottom: 0.8em;
  color: #676961;
}
.breadcrumbs a {
  font-family: inherit;
  color: inherit;
  text-decoration: none;
}
.breadcrumbs a.current,
.breadcrumbs span {
  color: #afc944;
}
.breadcrumbs div {
  *zoom: 1;
  padding: 0;
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  width: 92%;
  margin: 0 auto;
}
.breadcrumbs div:before,
.breadcrumbs div:after {
  content: " ";
  display: table;
}
.breadcrumbs div:after {
  clear: both;
}
.breadcrumbs div .wrapper {
  width: auto;
  margin-left: 0;
  margin-right: 0;
}
@media only screen and (min-width: 1020px) {
  .header-container header {
    position: relative;
  }
}
@media only screen and (min-width: 1138px) {
  /* ===============
          Maximal Width
       =============== */
  .wrapper {
    width: 910px;
    margin: 0 auto;
  }
  .wrapper .wrapper {
    width: auto;
    margin: 0;
  }
  .breadcrumbs div {
    width: 1046.5px;
    margin: 0 auto;
  }
}
.sticky-substitute {
  display: none;
}
@media only screen and (min-width: 1020px) {
  .sticky {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 100;
    border-top: 0;
  }
  .sticky-substitute {
    height: 118px;
  }
  .sticky-display {
    display: block;
  }
}
.main-container {
  position: relative;
}
.footer-container {
  margin-top: 3rem;
  background-color: #676961;
}
.columns {
  *zoom: 1;
}
.columns:before,
.columns:after {
  content: " ";
  display: table;
}
.columns:after {
  clear: both;
}
.column2 {
  width: 100%;
  margin: 0;
}
.column3 {
  width: 100%;
  margin: 0;
}
@media only screen and (min-width: 760px) {
  .column2 {
    float: left;
    width: 48%;
    width: calc(50% - 1rem);
    margin-left: 0;
    margin-right: 2rem;
  }
  .column2:nth-child(2n + 1) {
    margin-right: 2rem;
  }
  .column2:nth-child(2n) {
    margin-right: 0;
  }
  .column2 h1:first-child,
  .column2 h2:first-child,
  .column2 h3:first-child,
  .column2 h4:first-child {
    margin-top: 0;
  }
  .column3 {
    float: left;
    width: 48%;
    width: calc(50% - 1rem);
    margin-left: 0;
    margin-right: 2rem;
  }
  .column3:nth-child(2n + 1) {
    margin-right: 2rem;
  }
  .column3:nth-child(2n) {
    margin-right: 0;
  }
}
.columns + .columns {
  margin-top: 2rem;
}
.floatLeft,
.floatLeftHalf,
.floatRight,
.fullWidth,
.userWidth {
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 1020px) {
  .column2 .floatLeft {
    max-width: 49%;
  }
  .column2 .floatRight {
    max-width: 49%;
  }
  .column2 .floatLeftHalf {
    max-width: 23.5%;
  }
}
@media only screen and (min-width: 760px) {
  .floatLeft {
    float: left;
    max-width: 48%;
    margin-right: 4%;
    margin-bottom: 0.5em;
  }
  .floatLeftHalf {
    float: left;
    max-width: 48%;
    margin-right: 4%;
    margin-bottom: 0.5em;
  }
  .column2 .floatLeft {
    max-width: 100%;
  }
  .column2 .floatRight {
    max-width: 100%;
  }
  .column2 .floatLeftHalf {
    max-width: 48%;
  }
  .floatRight {
    float: right;
    max-width: 48%;
    margin-left: 4%;
    margin-bottom: 0.5em;
  }
  .fullWidth {
    width: 100%;
    margin-bottom: 0.5em;
  }
  .userWidth {
    float: left;
    max-width: 100%;
    margin-right: 4%;
    margin-bottom: 0.5em;
  }
  .floatLeft .floatLeft,
  .floatLeftHalf .floatLeft,
  .floatRight .floatLeft,
  .userWidth .floatLeft,
  .floatLeft .floatLeftHalf,
  .floatLeftHalf .floatLeftHalf,
  .floatRight .floatLeftHalf,
  .userWidth .floatLeftHalf,
  .floatLeft .floatRight,
  .floatLeftHalf .floatRight,
  .floatRight .floatRight,
  .userWidth .floatRight,
  .floatLeft .userWidth,
  .floatLeftHalf .userWidth,
  .floatRight .userWidth,
  .userWidth .userWidth {
    float: none;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .floatLeft .floatLeft:last-child,
  .floatLeftHalf .floatLeft:last-child,
  .floatRight .floatLeft:last-child,
  .userWidth .floatLeft:last-child,
  .floatLeft .floatLeftHalf:last-child,
  .floatLeftHalf .floatLeftHalf:last-child,
  .floatRight .floatLeftHalf:last-child,
  .userWidth .floatLeftHalf:last-child,
  .floatLeft .floatRight:last-child,
  .floatLeftHalf .floatRight:last-child,
  .floatRight .floatRight:last-child,
  .userWidth .floatRight:last-child,
  .floatLeft .userWidth:last-child,
  .floatLeftHalf .userWidth:last-child,
  .floatRight .userWidth:last-child,
  .userWidth .userWidth:last-child {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1020px) {
  .floatLeftHalf {
    max-width: 23%;
  }
}
.caption {
  font-size: 15px;
  line-height: 1.6em;
}
.userWidth {
  float: left;
  margin-right: 1em;
}
.video-wrapper {
  margin: 1.5rem 0;
}
/* ==============
     general: Top navigation
   ============== */
.header-container nav {
  font-family: FrutigerLTPro-Condensed, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  line-height: 1em;
  color: white;
  white-space: nowrap;
  /* common */
}
.header-container nav ul {
  list-style-type: none;
  margin: 0;
}
.header-container nav ul li {
  list-style-type: none;
  white-space: nowrap;
}
.header-container nav ul a {
  font-family: inherit;
  text-decoration: none;
  color: inherit;
}
.header-container nav ul a:hover,
.header-container nav ul a:visited {
  color: inherit;
}
.header-container nav ul a:hover {
  text-decoration: underline;
}
.header-container nav a.open-mobile-nav {
  display: block;
  height: 28px;
  width: 39px;
  position: absolute;
  top: 8px;
  right: 4px;
  background-image: url('../images/icon-navi.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 39px 28px;
}
.header-container nav a.open-mobile-subnav {
  display: none;
}
.header-container .language-switch {
  font-family: FrutigerLTPro-Condensed, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
}
/* ==============
     MOBILE: Top navigation
   ============== */
@media only screen and (max-width: 1019px) {
  /*  .hide-mobile-nav {
    display:none;
  }*/
  .header-container nav {
    /* level 1 */
    /* level 2 */
  }
  .header-container nav ul.level1 {
    display: block;
    position: absolute;
    top: 100%;
    height: auto;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    background-color: rgba(103, 105, 97, 0.7);
    z-index: 100;
    font-size: 22px;
    line-height: 1em;
  }
  .header-container nav ul.level1 li {
    padding: 0.7em 0.5em;
    position: relative;
    border-bottom: 1px solid white;
  }
  .header-container nav ul.level1 > li {
    padding-right: 2.5em;
  }
  .header-container nav ul.level1 li a {
    padding-top: 0;
    text-align: left;
    display: block;
    width: 100%;
  }
  .header-container nav ul.level1 a.open-mobile-subnav {
    display: block;
    width: 2.5em;
    height: 2em;
    position: absolute;
    top: 0.2em;
    right: 0px;
    background-image: url('../images/icon-nav-arrow-d.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 12px;
  }
  .header-container nav ul.level1 > li.children > a:after {
    /*content: '';
          width: 0;
          height: 0;
          position: absolute;
          right: 12px;
          top: 24px;*/
  }
  .header-container nav ul.level1 > li.open {
    padding-bottom: 0;
  }
  .header-container nav ul.level1 > li.open a.open-mobile-subnav {
    background-image: url('../images/icon-nav-arrow-u.png');
  }
  .header-container nav ul.level2 {
    position: static;
    height: auto;
    background-color: transparent;
    z-index: 100;
    padding: 0;
    display: none;
    margin: 0 -2.5em 0 -0.5em;
  }
  .header-container nav ul.level2 li {
    padding-top: 0.1em;
    padding-bottom: 0.5em;
    border-bottom: none;
    padding-left: 1em;
  }
  .header-container nav ul.level2 li:first-child {
    border-top: 1px solid white;
    margin-top: 0.7em;
    padding-top: 0.5em;
  }
  .header-container nav ul.level2 li a {
    margin-top: 0;
    text-align: left;
  }
  .header-container nav li.open ul.level2 {
    display: block;
  }
  .header-container nav.hidenav {
    /*      a.open-mobile-nav {
        background-color: transparent;
        background-image: url('../images/icon-navi.png');
      }*/
  }
  .header-container nav.hidenav ul.level1 {
    display: none;
  }
}
/* ====================
     INTERMEDIATE: Top navigation
   ==================== */
@media only screen and (min-width: 1020px) {
  .mobile-nav {
    display: none;
  }
  .header-container nav {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    /* level 2 */
    /* --- level 2 */
  }
  .header-container nav a.open-mobile-nav {
    display: none;
  }
  .header-container nav ul.level1 {
    padding: 0;
    display: inline-block;
    height: 100%;
    font-size: 16px;
    line-height: 1.2em;
  }
  .header-container nav ul.level1 > li {
    display: inline-block;
    float: left;
    margin: 0 2.5em;
    position: relative;
  }
  .header-container nav ul.level1 > li:first-child {
    margin-left: 0;
  }
  .header-container nav ul.level1 > li:last-child {
    margin-right: 0;
  }
  .header-container nav ul.level1 > li.active > a {
    color: #afc944;
  }
  .header-container nav ul.level1 > li > a {
    position: relative;
    top: -4px;
  }
  .header-container nav ul.level2 {
    position: absolute;
    margin: 0;
    padding: 0.65em 2.6em 1.3em 1.3em;
    height: auto;
    background-color: rgba(103, 105, 97, 0.7);
    z-index: 100;
    font-family: FrutigerLTPro-LightCn, Helvetica Neue, Arial, sans-serif;
    font-weight: normal;
    font-size: 15px;
    line-height: 1.5em;
    display: none;
    top: 100%;
    text-align: left;
    /*
        // centered:
        left: 50%;
        transform: translateX(-50%);
        */
    left: -1.3em;
  }
  .header-container nav ul.level2 > li a {
    display: inline;
    margin-top: 0;
    text-align: left;
  }
  .header-container nav ul.level2 > li {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
  }
  .header-container nav ul.level2 li.section {
    margin-top: 1em;
  }
  .header-container nav ul.level2 li.section:before {
    content: ' ';
    position: absolute;
    top: -0.3em;
    left: -1.3em;
    right: -2.6em;
    display: block;
    height: 5px;
    border-top: 1px solid white;
  }
  .header-container nav li:hover ul.level2,
  .header-container nav li.open ul.level2 {
    display: block;
  }
  .header-container nav.hidenav ul.level1 {
    display: inline-block;
  }
  .header-container.sticky ul.level1 > li > a {
    top: -12px;
  }
}
@media only screen and (max-width: 1150px) {
  .header-container nav ul.level1 > li {
    margin: 0 1.5em;
  }
}
.footer-container footer {
  *zoom: 1;
  position: relative;
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 13px;
  line-height: 1.5em;
  color: white;
  padding: 1em 0 1em 0;
}
.footer-container footer:before,
.footer-container footer:after {
  content: " ";
  display: table;
}
.footer-container footer:after {
  clear: both;
}
.footer-container footer > p {
  width: 100%;
  margin: 0;
  margin-bottom: 1em;
  text-align: center;
}
.footer-container footer a {
  color: inherit;
  text-decoration: inherit;
}
.footer-container footer a[href^="mailto"] {
  display: inline-block;
  margin-top: 0.75em;
}
.footer-container footer a[href^="mailto"]:before {
  content: '';
  display: inline-block;
  width: 15px;
  height: 12px;
  position: relative;
  left: 0;
  top: 2px;
  margin-right: 10px;
  color: transparent;
  background-size: 15px, 12px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('../images/icon-mail.png');
}
.footer-container footer a[href^="tel"] {
  display: inline-block;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.4em;
  line-height: 1.07142857 em;
}
.footer-container footer a[href^="tel"]:before {
  content: '';
  display: inline-block;
  width: 14px;
  height: 17px;
  position: relative;
  left: 0;
  top: 2px;
  margin-right: 10px;
  color: transparent;
  background-size: 14px, 17px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('../images/icon-tel.png');
}
@media only screen and (min-width: 760px) {
  .footer-container footer > p {
    float: left;
    text-align: left;
    width: 49%;
    margin-right: 2%;
  }
  .footer-container footer > p:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1020px) {
  .footer-container footer > p {
    float: left;
    width: 23.5%;
    margin-right: 2%;
    margin-bottom: 0;
  }
  .footer-container footer > p:nth-child(2n) {
    margin-right: 2%;
  }
  .footer-container footer > p:nth-child(4n) {
    margin-right: 0;
  }
}
.footer-container footer .sociallink {
  display: inline-block;
  margin-bottom: 0.5em;
}
.footer-container footer .sociallink:first-child {
  margin-top: -10px;
}
.footer-container footer .facebook:before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
  left: 0;
  top: 7px;
  margin-right: 10px;
  color: transparent;
  background-size: 24px, 24px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('../images/icon-facebook.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {
  .footer-container footer .facebook:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    position: relative;
    left: 0;
    top: 7px;
    margin-right: 10px;
    color: transparent;
    background-size: 24px, 24px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('../images/icon-facebook@2x.png');
  }
}
.footer-container footer .instagram:before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
  left: 0;
  top: 7px;
  margin-right: 10px;
  color: transparent;
  background-size: 24px, 24px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('../images/icon-instagram.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {
  .footer-container footer .instagram:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    position: relative;
    left: 0;
    top: 7px;
    margin-right: 10px;
    color: transparent;
    background-size: 24px, 24px;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('../images/icon-instagram@2x.png');
  }
}
.footer-container footer .language-switch {
  text-align: center;
  /*
    position:absolute;
    top:1em;
    right:0;
    */
  font-family: FrutigerLTPro-Condensed, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.25em;
}
.footer-container footer .language-switch p {
  margin-bottom: 0.8em;
}
.footer-container footer .language-switch a,
.footer-container footer .language-switch span {
  font-family: inherit;
  margin-left: 1em;
}
.footer-container footer .language-switch a:before,
.footer-container footer .language-switch span:before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
  left: -10px;
  top: 7px;
  color: transparent;
  background-size: 24px 24px;
  background-position: center;
  background-repeat: no-repeat;
}
.footer-container footer .language-switch a {
  color: white;
  text-decoration: none;
}
.footer-container footer .language-switch span {
  color: #afc944;
}
.footer-container footer .language-switch span.de_DE:before {
  background-image: url('../images/icon-flag-de-active.png');
}
.footer-container footer .language-switch a.de_DE:before {
  background-image: url('../images/icon-flag-de-inactive.png');
}
.footer-container footer .language-switch span.en_GB:before {
  background-image: url('../images/icon-flag-en-active.png');
}
.footer-container footer .language-switch a.en_GB:before {
  background-image: url('../images/icon-flag-en-inactive.png');
}
@media only screen and (min-width: 760px) {
  .footer-container footer .language-switch {
    float: left;
    width: 49%;
    text-align: left;
  }
}
@media only screen and (min-width: 1020px) {
  .footer-container footer .language-switch {
    float: right;
    width: auto;
    position: relative;
    top: 0.5em;
  }
}
/* ---------------------- */
/* teaser layout */
.teaserbar {
  margin-top: 1rem;
  margin-bottom: 0;
}
.teaserbar h1 {
  margin-bottom: 0.4em;
}
.wrapper_highlight_teaser {
  margin-top: 1rem;
  margin-bottom: -1rem;
}
.teasers {
  margin: 0;
  padding: 0;
}
.teaser {
  margin: 0;
  margin-bottom: 2rem;
  padding: 0;
  min-width: 1px;
}
.teaser p {
  font-family: Frutiger, sans-serif;
  font-size: 13px;
  line-height: 1.5em;
}
.teaser a {
  color: #afc944;
}
@media only screen and (min-width: 400px) {
  .teasers {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin-right: -2rem;
  }
  .teaser {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column;
    flex-flow: column;
    justify-content: flex-start;
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 48%;
    width: calc(50% - 2rem);
    margin-left: 0;
    margin-right: 2rem;
  }
  .teasers_icons .teaser {
    justify-content: space-between;
  }
  .teasers_doctor .teaser {
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1020px) {
  .teaser {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 23%;
    width: calc(25% - 2rem);
    margin-left: 0;
    margin-right: 2rem;
  }
  .teasers_big .teaser {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 48%;
    width: calc(50% - 2rem);
    margin-left: 0;
    margin-right: 2rem;
  }
}
/* ---------------------- */
/* teaser fonts etc. */
.teasers_default h1,
.teasers_doctor h1,
.teasers_magazine h1,
.teasers_publications h1,
.teasers_big h1 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.2em;
  margin-top: 0;
  margin-bottom: 0.6em;
}
.teasers_default h1 a,
.teasers_doctor h1 a,
.teasers_magazine h1 a,
.teasers_publications h1 a,
.teasers_big h1 a,
.teasers_default h1 a:visited,
.teasers_doctor h1 a:visited,
.teasers_magazine h1 a:visited,
.teasers_publications h1 a:visited,
.teasers_big h1 a:visited,
.teasers_default h1 a:active,
.teasers_doctor h1 a:active,
.teasers_magazine h1 a:active,
.teasers_publications h1 a:active,
.teasers_big h1 a:active {
  color: inherit;
  text-decoration: none;
}
.teasers_default img,
.teasers_doctor img,
.teasers_magazine img,
.teasers_publications img,
.teasers_big img {
  border: none;
  margin-bottom: 1.2em;
  width: 100%;
}
.teasers_default .readmore,
.teasers_doctor .readmore,
.teasers_magazine .readmore,
.teasers_publications .readmore,
.teasers_big .readmore {
  font-family: FrutigerLTPro-Bold, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  text-decoration: none;
}
.teasers_doctor h1 {
  font-size: 14px;
}
.teasers_icons {
  text-align: center;
}
.teasers_icons img {
  width: 50px;
  height: auto;
  border: none;
  margin-bottom: 0.5em;
}
.teasers_icons p {
  text-align: left;
}
.teasers_icons h1 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
}
.teasers_icons h1 a,
.teasers_icons h1 a:visited,
.teasers_icons h1 a:active {
  text-decoration: none;
}
.teasers_magazine h1 {
  font-size: 13px;
  line-height: 1.5em;
  color: white;
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
}
.embed-privacy {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.embed-privacy-back {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.embed-privacy-back img {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.embed-privacy-text {
  padding: 0.5rem;
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow-y: scroll;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: space-between;
  text-align: center;
  font-size: 15px;
  color: black;
}
@media only screen and (min-width: 760px) {
  .embed-privacy-text {
    padding: 2rem;
  }
}
.embed-privacy-text > * {
  -webkit-box-flex: 0 0 auto;
  -moz-box-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.embed-privacy-text p {
  margin-bottom: 0.5em;
}
.embed-privacy-text p:last-child {
  margin-bottom: 0;
}
.embed-privacy-text a {
  color: inherit;
  text-decoration: underline;
}
.embed-privacy-text button {
  background-color: transparent;
  border: none;
  color: #676961;
  margin-bottom: 0.5em;
  display: inline-block;
  font-size: 18px;
  font-weight: normal;
  text-transform: uppercase;
  color: black;
}
.embed-privacy-text button:before {
  content: '';
  background: url('../images/icon-video.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 48px 48px;
  width: 48px;
  height: 48px;
  display: block;
  margin: 0.5em auto;
}
@media only screen and (min-width: 480px) {
  .embed-privacy-text p {
    margin-bottom: 1.5em;
  }
  .embed-privacy-text button:before {
    background-size: 78px 78px;
    width: 78px;
    height: 78px;
  }
}
.video-wrapper .embed-privacy-back {
  opacity: 0.5;
}
.map-wrapper .embed-privacy-back {
  background-color: #ccc;
}
@media only screen and (max-width: 759px) {
  .map-wrapper .embed-privacy-text {
    padding: 2rem 0.5rem;
  }
}
.map-wrapper .embed-privacy-text button:before {
  display: inline-block;
  margin: 0;
  margin-right: 1em;
  position: relative;
  top: 18px;
}
@media only screen and (min-width: 480px) {
  .map-wrapper .embed-privacy-text button:before {
    top: 32px;
  }
}
/* forms basic, mobile */
input[type=text],
input[type=email],
input[type=password],
select,
textarea {
  border-radius: 2px;
  background-color: #fff;
  border: 1px solid black;
  color: #666;
  font-size: 14px;
  margin: 0;
  margin-bottom: 1.2em;
  max-width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type=text],
input[type=email],
input[type=password],
select {
  height: 28px;
  padding: 0px 12px;
  width: 100%;
}
textarea {
  min-height: 85px;
  padding: 10px 12px;
  width: 100%;
}
.textarea {
  margin: 1em 0;
}
.textarea label {
  display: block;
}
select {
  padding: 0;
  width: 100%;
}
form .message {
  color: #afc944;
  margin: 1em 0;
}
.fieldgroup {
  margin: 0 0 3em 0;
}
.fieldgroup > label {
  display: block;
  margin-bottom: 1em;
}
.fieldgroup .fieldgroup-items {
  width: 100%;
  max-width: 100%;
}
.fieldgroup .fieldgroup-field {
  vertical-align: top;
}
.fieldgroup .fieldholder-label {
  vertical-align: top;
}
.fieldgroup .fieldholder-field {
  width: 100%;
  max-width: 100%;
}
.fieldgroup input[type=text],
.fieldgroup input[type=email],
.fieldgroup input[type=password],
.fieldgroup textarea {
  width: 100%;
}
.fieldgroup select {
  width: 100%;
}
input[type="checkbox"],
input[type="radio"] {
  vertical-align: middle;
  margin-left: 1px;
}
input[type="checkbox"] + label,
input[type="radio"] + label {
  cursor: pointer;
}
input[type="checkbox"] + label:before,
input[type="radio"] + label:before {
  content: "";
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 16px 0 -20px;
  vertical-align: middle;
  border: 1px solid black;
  background-color: #ffffff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 22px 22px;
}
input[type="checkbox"] + label:before {
  border-radius: 2px;
}
input[type="radio"] + label:before {
  border-radius: 11px;
}
input[type="checkbox"]:checked + label:before {
  background-image: url('../images/btn-checkbox-checked.png');
}
input[type="radio"]:checked + label:before {
  background-image: url('../images/btn-radio-checked.png');
}
input[type="submit"] {
  margin-bottom: 1em;
}
.Actions {
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}
/* forms only mobile */
@media only screen and (max-width: 759px) {
  .Actions {
    width: 100%;
  }
  input[type="submit"],
  a.button,
  a.button-blue {
    width: 100%;
  }
}
/* forms tablet portrait */
/* forms tablet landscape, desktop */
@media only screen and (min-width: 1020px) {
  input[type=text],
  input[type=email],
  input[type=password],
  select {
    width: 100%;
  }
  textarea {
    width: 100%;
  }
  select {
    width: 100%;
  }
  .fieldgroup .fieldgroup-items {
    display: table;
    width: 100%;
  }
  .fieldgroup .fieldgroup-field {
    display: table-row;
  }
  .fieldgroup .fieldholder-label {
    display: table-cell;
  }
  .fieldgroup .fieldholder-field {
    display: table-cell;
    width: 65%;
  }
}
/* ==========================================================================
   Print styles
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
.top-slider {
  width: 100%;
  position: relative;
  margin-bottom: 0.8em;
}
.top-slider .slide-content {
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.top-slider .text {
  display: block;
  position: absolute;
  text-align: center;
}
.top-slider .slide-control {
  position: absolute;
  width: 30px;
  height: 55px;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: transparent;
  border: none;
  background-size: 30px 55px;
  background-position: center center;
  background-repeat: no-repeat;
}
.top-slider .slide-control-prev {
  left: 25px;
  background-image: url('../images/icon-arrow-l.png');
}
.top-slider .slide-control-next {
  right: 25px;
  background-image: url('../images/icon-arrow-r.png');
}
.slider-link {
  position: absolute;
  right: 28%;
  top: calc(50% - 65px);
  text-align: right;
}
.slider-link-title {
  display: block;
  background-color: #bbd157;
  color: white;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 30px;
  line-height: 1;
  padding: 0.25em 0.6em;
  margin-bottom: 0.6em;
}
.slider-link-text {
  background-color: white;
  color: #676961;
  font-family: FrutigerLTPro-Bold, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1;
  padding: 0.6em 1.2em;
}
/*
This is the visible area of you carousel.
Set a width here to define how much items are visible.
The width can be either fixed in px or flexible in %.
Position must be relative!
*/
.jcarousel {
  position: relative;
  overflow: hidden;
}
/*
This is the container of the carousel items.
You must ensure that the position is relative or absolute and
that the width is big enough to contain all items.
*/
.jcarousel ul {
  width: 20000em;
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
These are the item elements. jCarousel works best, if the items
have a fixed width and height (but it's not required).
*/
.jcarousel li {
  float: left;
  width: 800px;
  height: 400px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  overflow: hidden;
}
/** Carousel Pagination **/
/*
.jcarousel-pagination {
  position: absolute;
  bottom: 0;
  left: 0;
  right:0;
  text-align:center;
}


.jcarousel-pagination a {
  text-decoration: none;
  display: inline-block;

  font-size: 11px;
  color: @red;
  text-indent: -9999px;

  height: 10px;
  width: 10px;

  background: transparent;
  border-radius: 6px;
  border:1px solid @red;

  margin-right: 8px;
}

.jcarousel-pagination a.active {
  background: @red;
}
*/
@media only screen and (min-width: 760px) {
  .jcarousel li {
    height: 400px;
  }
}
.DepartmentPage article ul {
  color: #afc944;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.33em;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.DepartmentPage article li {
  padding-left: 1em;
  text-indent: -1em;
}
.DepartmentPage article li:before {
  content: '-';
  display: inline-block;
  width: 1em;
  text-indent: 0;
}
.DepartmentPage .teaserbar {
  margin-top: 2rem;
}
.SymptomHolder h2,
.SymptomPage h2 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
}
.SymptomHolder h2 span,
.SymptomPage h2 span {
  color: #676961;
}
.SymptomHolder h2 span:before,
.SymptomPage h2 span:before {
  content: '> ';
  display: inline-block;
  width: 18px;
}
.SymptomHolder h2 span.current,
.SymptomPage h2 span.current {
  margin-left: 0.4em;
  color: #afc944;
}
.SymptomHolder h2 span.current:before,
.SymptomPage h2 span.current:before {
  width: 0.8em;
}
.SymptomHolder .switchable-closed .switchable-content,
.SymptomPage .switchable-closed .switchable-content {
  display: none;
}
@media only screen and (min-width: 400px) {
  .SymptomHolder .maincontent,
  .SymptomPage .maincontent {
    float: left;
    width: 65%;
    width: calc(65% - 2em);
  }
  .SymptomHolder .sidecontent,
  .SymptomPage .sidecontent {
    float: right;
    width: 35%;
  }
  .SymptomHolder .sidecontent img,
  .SymptomPage .sidecontent img {
    margin-bottom: 5em;
  }
}
@media only screen and (min-width: 1020px) {
  .SymptomHolder .maincontent,
  .SymptomPage .maincontent {
    float: left;
    width: 60%;
    width: calc(100% - 300px - 2em);
  }
  .SymptomHolder .sidecontent,
  .SymptomPage .sidecontent {
    float: right;
    width: 300px;
  }
}
.SymptomHolder ul.switchable-group,
.SymptomPage ul.switchable-group,
.SymptomHolder .switchable-group ul,
.SymptomPage .switchable-group ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.SymptomHolder .switchable,
.SymptomPage .switchable {
  margin: 1.5em 0;
}
.SymptomHolder .switchable .switch,
.SymptomPage .switchable .switch {
  cursor: pointer;
}
.SymptomHolder .switchable h4,
.SymptomPage .switchable h4 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  color: #afc944;
}
.SymptomHolder .switchable h4:before,
.SymptomPage .switchable h4:before {
  content: '> ';
  transform: translate(-2px, 4px) rotate(90deg);
  display: inline-block;
  width: 18px;
}
.SymptomHolder .switchable.switchable-closed h4:before,
.SymptomPage .switchable.switchable-closed h4:before {
  transform: none;
}
.SymptomHolder .switchable-content,
.SymptomPage .switchable-content {
  padding-left: 50vw;
  padding-left: calc(50vw + 18px);
  margin-right: -2em;
  margin-left: -50vw;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  /*
    padding-top:1em;
    padding-bottom:1em;
    */
  color: #676961;
}
.SymptomHolder .switchable-content a,
.SymptomPage .switchable-content a {
  color: inherit;
  text-decoration: underline;
}
.SymptomHolder .switchable-content a:hover,
.SymptomPage .switchable-content a:hover {
  text-decoration: underline;
}
.SymptomHolder .switchable-content li,
.SymptomPage .switchable-content li {
  margin-bottom: 0.3em;
}
.map-wrapper {
  width: 100%;
  height: 400px;
  margin-top: 2rem;
  position: relative;
}
#map {
  width: 100%;
  height: 100%;
}
.map-infobox-content {
  color: black;
}
.map-infobox-content h3 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 22px;
  line-height: 1.25em;
  color: #afc944;
  margin-top: 0;
  margin-bottom: 0.625em;
  margin-bottom: 0.5em;
}
.map-infobox-content p {
  margin: 0;
}
/* -------------------------
 * Übersicht Ärzte
 * ------------------------- */
ul.specialism-filter {
  list-style-type: none;
  padding: 0;
  margin-top: 2rem;
  display: block;
  *zoom: 1;
}
ul.specialism-filter:before,
ul.specialism-filter:after {
  content: " ";
  display: table;
}
ul.specialism-filter:after {
  clear: both;
}
ul.specialism-filter li {
  list-style-type: none;
  background-color: #676961;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 14px;
  color: white;
  padding: 0.2em;
  margin: 0;
  margin-bottom: 0.5em;
  text-align: center;
}
ul.specialism-filter li a {
  color: inherit;
  text-decoration: inherit;
}
ul.specialism-filter .active {
  color: #afc944;
}
@media only screen and (min-width: 760px) {
  ul.specialism-filter li {
    float: left;
    width: 48%;
    width: calc(50% - 0.5rem - 0.4em);
    margin-left: 0;
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(2n + 1) {
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1020px) {
  ul.specialism-filter li {
    float: left;
    width: 23%;
    width: calc(25% - 0.75rem - 0.4em);
    margin-left: 0;
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(4n + 3) {
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(4n + 2) {
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(4n + 1) {
    margin-right: 1rem;
  }
  ul.specialism-filter li:nth-child(4n) {
    margin-right: 0;
  }
}
ul.doctor-list {
  list-style-type: none;
  margin: 0;
  margin-top: 2rem;
  padding: 0;
  display: block;
}
ul.doctor-list li {
  list-style-type: none;
  padding: 0;
  margin-bottom: 2.5rem;
}
@media only screen and (min-width: 400px) {
  ul.doctor-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin-right: -1rem;
  }
  ul.doctor-list li {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 48%;
    width: calc(50% - 1rem);
    margin-left: 0;
    margin-right: 1rem;
  }
}
@media only screen and (min-width: 760px) {
  ul.doctor-list li {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 31.33333333%;
    width: calc(33.333333333333336% - 1rem);
    margin-left: 0;
    margin-right: 1rem;
  }
}
@media only screen and (min-width: 1020px) {
  ul.doctor-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin-right: -5rem;
  }
  ul.doctor-list li {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 31.33333333%;
    width: calc(33.333333333333336% - 5rem);
    margin-left: 0;
    margin-right: 5rem;
    margin-bottom: 4rem;
  }
}
ul.doctor-list img {
  margin-bottom: 1rem;
}
ul.doctor-list p {
  margin: 0;
  font-family: FrutigerLTPro-Condensed, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 14px;
}
ul.doctor-list a {
  color: inherit;
  text-decoration: inherit;
}
ul.doctor-list p.readmore {
  font-family: FrutigerLTPro-Bold, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 13px;
  color: #afc944;
  margin-top: 0.5rem;
}
ul.doctor-list p.readmore:after {
  content: ' >';
}
/* -------------------------
 * Einzelansicht Arzt
 * ------------------------- */
.doctor header h1 {
  margin-bottom: 0.2em;
}
.doctor header h2 {
  margin-top: 0;
}
.doctor-portrait {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 400px) {
  .doctor-portrait {
    width: auto;
    max-width: 50%;
    float: right;
    margin: 0 0 1em 1em;
  }
}
.doctor-content {
  margin-top: 1.5em;
  *zoom: 1;
}
.doctor-content:before,
.doctor-content:after {
  content: " ";
  display: table;
}
.doctor-content:after {
  clear: both;
}
.doctor-content p {
  line-height: 1.5em;
  margin-bottom: 1.5em;
}
.doctor-info {
  padding: 2rem 0 2rem 0;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
}
.doctor-info div {
  /*.flex-item();
    flex-basis:100%;*/
  padding: 0;
  padding-bottom: 2rem;
  /*margin-bottom: 2rem;*/
}
.doctor-info div h4 {
  margin-top: 1.5rem;
}
@media only screen and (min-width: 400px) {
  .doctor-info {
    padding-left: 10%;
    padding-right: 10%;
  }
}
@media only screen and (min-width: 760px) {
  .doctor-info {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin-right: -1rem;
    padding-left: 15%;
    padding-right: 10%;
    position: relative;
  }
  .doctor-info div {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 48%;
    width: calc(50% - 1rem);
    margin-left: 0;
    margin-right: 1rem;
  }
  .doctor-info.doctor-info-sms .doctor-contact:before,
  .doctor-info .doctor-tum:before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    border-top: 1px solid #676961;
  }
}
.doctor-quote {
  background-color: #afc944;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  color: white;
  padding: 2.5rem 0;
}
.doctor-quote p {
  margin: 0;
}
.doctor-quote section {
  font-size: 30px;
  line-height: 1.2em;
}
.doctor-quote footer {
  margin-top: 3rem;
  font-size: 18px;
}
.doctor-gallery {
  width: 100%;
}
.doctor-gallery > * {
  float: left;
  margin: 0;
  padding: 0;
  letter-spacing: 0;
  position: relative;
}
.doctor-gallery > * img {
  width: 100%;
  height: auto;
}
.doctor-gallery > * p {
  display: none;
  background: white;
  line-height: 1em;
  padding: 0.6em 1.2em;
  position: absolute;
  left: 2rem;
  bottom: 3rem;
}
.doctor-gallery > * p:before {
  content: '>';
  font-size: 18px;
  color: #afc944;
  margin-right: 0.3em;
}
.doctor-gallery > *:hover p {
  display: block;
}
.DoctorPage .footer-container {
  margin-top: 0rem;
}
@media only screen and (min-width: 1020px) {
  .MagazinePage .magazin_content,
  .BlogPage .magazin_content {
    float: left;
    width: 70%;
    margin-bottom: 0;
  }
  .MagazinePage aside.magazin_teasers,
  .BlogPage aside.magazin_teasers {
    float: right;
    width: 25%;
  }
}
.MagazinePage .teaserbar,
.BlogPage .teaserbar {
  margin-top: 0;
}
.MagazinePage .magazin_content,
.BlogPage .magazin_content {
  padding-bottom: 3rem;
  margin-bottom: 2rem;
}
.MagazineHolder aside,
.BlogHolder aside {
  background-color: #afc944;
  padding: 1.8em 1.2em;
  margin-bottom: 1.5rem;
  color: white;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.5em;
}
.MagazineHolder aside p,
.BlogHolder aside p {
  margin-bottom: 0.7em;
}
.MagazineHolder aside p:last-child,
.BlogHolder aside p:last-child {
  margin-bottom: 0;
}
.MagazineHolder aside em,
.BlogHolder aside em {
  font-size: 1.7rem;
  line-height: 1.2em;
  font-style: normal;
}
.MagazineHolder aside a,
.BlogHolder aside a {
  color: inherit;
  text-decoration: underline;
}
.MagazineHolder .portrait,
.BlogHolder .portrait {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 400px) {
  .MagazineHolder .portrait,
  .BlogHolder .portrait {
    width: auto;
    max-width: 50%;
    float: right;
    margin: 0 0 1em 1em;
  }
}
.MagazineHolder .blog_image,
.BlogHolder .blog_image {
  margin-bottom: 1.5rem;
}
.MagazineHolder .blog_intro,
.BlogHolder .blog_intro {
  margin-bottom: 3rem;
}
.MagazineHolder .magazin_content,
.BlogHolder .magazin_content {
  margin-bottom: 1.5rem;
}
.magazin_content {
  background-color: #f0f0f0;
  padding: 1rem;
}
.magazin_content p img {
  margin-bottom: 0.75rem;
}
.magazin_content header img {
  margin-bottom: 1.5rem;
}
.magazin_content h1,
.magazin_content h2 {
  font-size: 1rem;
  line-height: 1.5em;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
}
.magazin_content h1 a,
.magazin_content h2 a {
  color: inherit;
  text-decoration: none;
}
.magazin_content h1 {
  color: #676961;
  margin-top: 0;
  margin-bottom: 0.75em;
}
.magazin_content h2 {
  color: black;
  margin: 0;
}
.magazin_content p {
  margin-bottom: 0.75em;
}
.magazin_content .readmore {
  color: #afc944;
}
.magazin_teasers section {
  margin-bottom: 2rem;
}
.magazin_teasers h2,
.magazin_teasers h3 {
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.2rem;
  color: #676961;
  margin-top: 0;
}
.magazin_teasers h3 {
  margin-bottom: 0.5em;
}
.magazin_teasers h4 {
  font-size: 13px;
  line-height: 1.5em;
  font-family: FrutigerLTPro-Roman, Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  margin: 0;
  margin-left: 80px;
}
.magazin_teasers h4 {
  color: #676961;
}
.magazin_teasers a {
  color: inherit;
  text-decoration: none;
}
.magazin_teaser {
  padding: 0 0 1rem 0;
  margin-bottom: 1rem;
  border-bottom: 1px solid #ccc;
}
.magazin_teaser img {
  float: left;
}
.magazine_columns {
  *zoom: 1;
}
.magazine_columns:before,
.magazine_columns:after {
  content: " ";
  display: table;
}
.magazine_columns:after {
  clear: both;
}
.magazine_column {
  width: 100%;
  margin: 0;
}
@media only screen and (min-width: 760px) {
  .magazine_column {
    float: left;
    width: 48%;
    width: calc(50% - 0.75rem);
    margin-left: 0;
    margin-right: 1.5rem;
  }
  .magazine_column:nth-child(2n + 1) {
    margin-right: 1.5rem;
  }
  .magazine_column:nth-child(2n) {
    margin-right: 0;
  }
  .magazine_column h1:first-child,
  .magazine_column h2:first-child,
  .magazine_column h3:first-child,
  .magazine_column h4:first-child {
    margin-top: 0;
  }
}
/*
@circle-size: calc(e(%("%a - %A", 25%, 4rem)));
@half-circle-size:5.5em;
*/
#startanimation {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../images/animationbg.jpg");
  width: 100%;
  padding-top: 0.5em;
  font-family: "vistaslab-book", Helvetica Neue, Arial, sans-serif;
  font-weight: normal;
  color: #676961;
  font-size: 18px;
}
#startanimation h1 {
  font-size: 18px;
  margin-top: 0.8em;
  color: white;
}
#startanimation h2 {
  color: white;
}
#startanimation h4 {
  color: #afc944;
  font-size: 52px;
  margin-bottom: 0;
}
#startanimation .circle {
  position: relative;
  width: 11rem;
  height: 11rem;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.7);
}
#startanimation .circle *,
#startanimation .circle *:before,
#startanimation .circle *:after {
  box-sizing: content-box;
}
#startanimation .circle .text {
  box-sizing: border-box;
  position: absolute;
  width: 100%;
  z-index: 1;
  left: 0;
  right: 0;
  top: 0;
  display: block;
  padding: 2em 1em 0 1em;
  text-align: center;
}
#startanimation .circle .slice {
  position: absolute;
  width: 1em;
  height: 1em;
  clip: rect(0em, 11rem, 11rem, 5.5em);
}
#startanimation .circle .bar {
  position: absolute;
  border: 3px solid white;
  /*
  width: @circle-size - (2 * @circle-width);
  height: @circle-size - (2 * @circle-width);
  */
  box-sizing: border-box;
  width: 11rem;
  height: 11rem;
  clip: rect(0em, 5.5em, 11rem, 0em);
  border-radius: 50%;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: -webkit-transform 0.1s linear;
  -moz-transition: -moz-transform 0.1s linear;
  -o-transition: -o-transform 0.1s linear;
  -ms-transition: -ms-transform 0.1s linear;
  transition: transform 0.1s linear;
}
#startanimation .circle.half .slice {
  clip: auto;
}
#startanimation .circle.half .fill {
  position: absolute;
  border: 3px solid white;
  /*
  width: @circle-size - (2 * @circle-width);
  height: @circle-size - (2 * @circle-width);
  */
  box-sizing: border-box;
  width: 11rem;
  height: 11rem;
  clip: rect(0em, 5.5em, 11rem, 0em);
  border-radius: 50%;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#startanimation .circles {
  margin: 0;
  padding: 0;
}
#startanimation .circle-holder {
  height: 11rem;
  padding-bottom: 2.5rem;
  text-align: center;
}
#startanimation .circle {
  display: inline-block;
}
@media only screen and (min-width: 400px) {
  #startanimation .circles {
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin-right: -2rem;
  }
  #startanimation .circle-holder {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 48%;
    width: calc(50% - 2rem);
    margin-left: 0;
    margin-right: 2rem;
  }
}
@media only screen and (min-width: 1020px) {
  #startanimation .circle-holder {
    -webkit-box-flex: 0 1 auto;
    -moz-box-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 23%;
    width: calc(25% - 2rem);
    margin-left: 0;
    margin-right: 2rem;
    text-align: left;
    padding-top: 1rem;
    padding-bottom: 2.5rem;
  }
}
.booking-wrapper {
  width: 100%;
  height: calc(100vh - 118px - 260px);
  min-height: 240px;
  max-height: 640px;
}
.booking-wrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
