/**--------------------------------- Globals ---------------------------------**/

#content {
  margin-bottom: 0 !important;
}

#content .wpb-content-wrapper {
  max-width: 1110px;
}

#wrapper .vc_row.wpb_row:not(.einleitung) {
  margin-top: var(--cont-gap);
}

#wrapper .vc_row.wpb_row.weniger-abstand-oben {
  margin-top: var(--gap-xl);
}

#wrapper .vc_row.wpb_row.kein-abstand-oben {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

#wrapper .vc_row.wpb_row.etwas-abstand-oben {
  margin-top: var(--gap-m) !important;
}

#content .vc_row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#content .wpb_content_element {
  margin-bottom: 0 !important;
}

.wpb_wrapper:has(.button) .wpb_text_column:has(.button) {
  margin-top: var(--gap-m);
}

@media (max-width: 900px) and (min-width: 576px) {
  #icons {
    left: 12vw;
  }
}

@media (max-width: 576px) {
  body > .container {
    padding: 0 7.335vw !important;
  }

  .col-md-12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #content {
    max-width: 85.33vw;
    margin-left: auto;
    margin-right: auto;
  }
}

/**---------------------------------- Buttons ---------------------------**/

#content .button a {
  font-size: var(--btn-font-size);
  font-family: var(--mainfont);
  font-weight: 500;
  border-radius: 100px;
  text-decoration: none;
  color: var(--color-weiss);
  background-color: var(--color-gruen);
  padding: 1em 2em;
  text-align: center;
  transition: all 0.5s ease-in-out;
  line-height: 1.2 !important;
}

#content .button a:hover {
  background-color: var(--color-anthrazit);
  color: var(--color-weiss);
}

#content .button-block a {
  font-size: var(--btn-font-size);
  font-family: var(--mainfont);
  font-weight: 500;
  border-radius: 100px;
  text-decoration: none;
  color: var(--color-weiss);
  background-color: var(--color-gruen);
  padding: 1em 2em;
  text-align: center;
  border: 1px solid var(--color-gruen) !important;
  line-height: 1.2 !important;
}

@media (max-width: 576px) {
  #content .button a,
  #content .button-block a {
    padding: 0.714em 1.429em;
  }
}

/**--------------------------------- Startseite Box --------------------------------- **/
#startseite-box {
  max-width: 1200px;
  position: relative;
  margin-top: calc((var(--gap-xl) + var(--gap-m) + var(--gap-s)) * -1);
  z-index: 9999;
  margin-bottom: var(--cont-gap);
}

#startseite-box .row {
  display: flex;
  gap: 7px;
  padding-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#startseite-box .col-xs-4 {
  background-color: var(--color-shade-1);
  padding: calc(var(--gap-l) - 5px) calc(var(--gap-m) + 3px);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-m);
  border-radius: var(--border-radius-10);
  max-width: 395px;
  min-width: 34.65%;
  justify-content: flex-start;
}

#startseite-box .col-xs-4 * {
  color: var(--color-anthrazit);
}

#startseite-box .col-xs-4 h3 {
  margin: 0 !important;
}

#startseite-box .col-xs-4 p span {
  display: block;
}

#startseite-box .col-xs-4.box-startseite-1 .textwidget span:last-child,
#startseite-box .col-xs-4.box-startseite-2 .textwidget span:last-child {
  margin-top: calc(var(--gap-s) * 1.4);
}

#startseite-box .col-xs-4.box-startseite-3 .textwidget {
  display: flex;
  flex-direction: column;
  gap: var(--gap-s);
}

#startseite-box .col-xs-4.box-startseite-3 a.button {
  font-size: var(--btn-font-size);
  font-family: var(--mainfont);
  border-radius: 100px;
  text-decoration: none;
  color: var(--color-weiss);
  background-color: var(--color-gruen);
  padding: 1em 2em;
  text-align: center;
  transition: all 0.5s ease-in-out;
  line-height: 1.2 !important;
}

#startseite-box .col-xs-4.box-startseite-3 a.button:hover {
  background-color: var(--color-anthrazit);
}

.vc_row.wpb_row .vc_column-inner {
  margin: 0 !important;
  padding: 0 !important;
}

/* responsive */
@media (max-width: 1200px) {
  #startseite-box .row {
    justify-content: center;
    flex-wrap: wrap;
  }
}

@media (max-width: 1024px) {
  #startseite-box {
    display: none;
  }

  /* mobile acc */
  .vc_row.wpb_row.acc-home-mobile.einleitung {
    margin-bottom: 37px;
    margin-top: -50px;
    width: 85.33vw;
    justify-self: center !important;
  }
  .vc_row.wpb_row.acc-home-mobile .vc_general.vc_tta .vc_tta-panel {
    border-radius: var(--border-radius-10);
    overflow: hidden;
  }

  .vc_row.wpb_row.acc-home-mobile
    .vc_tta.vc_general
    .vc_tta-panel-title
    > a:hover {
    background: var(--color-shade-1) !important;
    color: var(--color-anthrazit) !important;
  }

  .vc_row.wpb_row.acc-home-mobile .vc_tta.vc_general .vc_tta-panel-title > a {
    padding: 15px var(--gap-l) !important;
  }

  .vc_row.wpb_row.acc-home-mobile .vc_tta-title-text {
    margin-left: 0 !important;
    display: flex;
    gap: calc(var(--gap-m) + var(--gap-s));
  }

  .vc_row.wpb_row.acc-home-mobile .vc_tta-title-text::before {
    content: "";
    background-image: url(../img/icon-uhr.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
    display: block;
  }
  .vc_row.wpb_row.acc-home-mobile
    .vc_tta-panel:last-child
    .vc_tta-title-text::before {
    background-image: url(../img/icon-notdienst.svg);
  }

  .vc_row.wpb_row.acc-home-mobile
    .vc_general.vc_tta
    .vc_tta-panel
    .vc_tta-panel-body {
    padding: 0 var(--gap-l) 15px var(--gap-l);
  }

  .vc_row.wpb_row.acc-home-mobile
    .vc_tta-panels
    .vc_tta-panel:last-child
    .vc_tta-panel-body {
    padding-bottom: calc(var(--gap-l) * 1.4);
  }

  .vc_row.wpb_row.acc-home-mobile
    .vc_general.vc_tta
    .vc_tta-panel
    .vc_tta-panel-body
    * {
    font-size: calc(var(--base-font-size) * 0.9);
  }
}

@media (min-width: 1024px) {
  .vc_row.wpb_row.acc-home-mobile.einleitung {
    display: none !important;
  }
}

/**--------------------------------- Einleitung --------------------------------- **/
.vc_row.wpb_row.einleitung {
  max-width: 1110px;
  justify-content: space-between;
  /*gap: var(--gap-l);*/
  display: flex !important;
}

.vc_row.wpb_row.einleitung
  .col-headline
  .vc_column-inner
  .wpb_wrapper
  .wpb_text_column
  .wpb_wrapper {
  gap: var(--gap-m);
  display: flex;
  flex-direction: column;
  margin-bottom: 0 !important;
}

@media (min-width: 1025px) {
  .vc_row.wpb_row.einleitung .col-headline {
    padding-right: calc(var(--gap-l) / 2) !important;
  }

  .vc_row.wpb_row.einleitung .col-txt {
    padding-left: calc(var(--gap-l) / 2) !important;
  }
}

@media (max-width: 1024px) {
  .vc_row.wpb_row.einleitung:not(.acc-home-einleitung) {
    flex-direction: column;
  }
  .vc_row.wpb_row.einleitung .col-headline,
  .vc_row.wpb_row.einleitung .col-txt {
    width: 100% !important;
  }

  .vc_row.wpb_row.einleitung .col-txt {
    margin-top: var(--gap-l);
  }
}

/**--------------------------------- Accordion --------------------------------- **/
.vc_tta-container {
  margin-top: var(--gap-l);
  margin-bottom: 0 !important;
}
.vc_tta.vc_general .vc_tta-panel-title > a {
  font-size: var(--base-font-size) !important;
  color: var(--color-anthrazit) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  padding: calc(var(--gap-s) * 2) var(--gap-m) !important;
  background: var(--color-shade-1) !important;
  line-height: 1.87 !important;
}

.vc_tta .vc_tta-panels .vc_tta-panel:first-child {
  border-radius: var(--border-radius-10) var(--border-radius-10) 0 0;
  overflow: hidden;
}

.vc_tta .vc_tta-panels .vc_tta-panel:last-child {
  border-radius: 0 0 var(--border-radius-10) var(--border-radius-10);
  overflow: hidden;
}

.vc_tta.vc_general .vc_tta-panel-title > a:hover {
  background: var(--color-gruen) !important;
  color: var(--color-weiss) !important;
}

.vc_tta.vc_tta-accordion
  .vc_tta-controls-icon-position-left
  .vc_tta-controls-icon {
  left: var(--gap-m);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-title-text {
  margin-left: 10px;
}

.vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-panel-body {
  background-color: var(--color-shade-1) !important;
  border: none !important;
  padding: 15px 30px;
}

.vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-panel-body ul {
  padding-left: 15px !important;
}

.vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-panel-body .vc_row.wpb_row {
  margin-top: var(--gap-m) !important;
}

.vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading {
  border: none;
}

.vc_tta .vc_tta-controls-icon {
  width: 10px !important;
  height: 10px !important;
}

.vc_tta-panels {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

#content .vc_tta-panels .wpb_text_column:has(p):not(:last-child) {
  margin-bottom: calc(var(--gap-s) * 1.5) !important;
}

.vc_tta .vc_tta-panels .vc_tta-controls-icon:before,
.vc_tta .vc_tta-panels .vc_tta-controls-icon:after {
  border-color: var(--color-anthrazit) !important;
}

/*
.vc_tta.vc_general .vc_tta-panel-title > a:hover .vc_tta-controls-icon:before,
.vc_tta.vc_general .vc_tta-panel-title > a:hover .vc_tta-controls-icon:after {
  border-color: var(--color-weiss) !important;
}
  */

@media (max-width: 896px) {
  .vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-title-text {
    margin-left: 20px;
  }
}

@media (max-width: 576px) {
  .vc_tta .vc_tta-panels .vc_tta-panel .vc_tta-title-text {
    display: flex;
    line-height: 1.5;
    margin-left: 30px;
  }
}

/**--------------------------------- 2 Bilder --------------------------------- **/

.vc_row.zwei-bilder {
  display: flex;
}

.vc_row.wpb_row.zwei-bilder .wpb_column:first-child {
  margin-right: 4.5px !important;
}

.vc_row.wpb_row.cont-zwei-bilder .wpb_column:last-child {
  margin-left: 4.5px !important;
}

.vc_row.zwei-bilder .vc_column-inner,
.vc_row.zwei-bilder .wpb_wrapper,
.vc_row.zwei-bilder .wpb_wrapper * {
  height: 100%;
  width: 100%;
}

.vc_row.zwei-bilder img {
  border-radius: var(--border-radius-10);
  overflow: hidden;
}

@media (max-width: 576px) {
  .vc_row.zwei-bilder {
    flex-direction: column;
    gap: var(--gap-s);
  }
}

/**--------------------------------- Ärzte & Detail --------------------------------- **/

.vc_row.wpb_row.cont-aerzte {
  display: flex;
  max-width: 1110px;
  margin-bottom: 0 !important;
  margin-top: 100px !important;
}

.vc_row.wpb_row.cont-aerzte .team {
  margin: 0 !important;
  border-radius: var(--border-radius-10);
  overflow: hidden;
  background-color: var(--color-shade-1);
  width: 50% !important;
  border: none !important;
}

.vc_row.wpb_row.cont-aerzte .team .wpb_text_column.col-txt .wpb_wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--gap-s);
  padding: calc(var(--gap-l) - 7px) 0 var(--gap-m) 0;
}

.vc_row.wpb_row.cont-aerzte .team .wpb_text_column .wpb_wrapper:has(.button) {
  padding-bottom: calc(var(--gap-l) + 15px);
}

@media (min-width: 576px) {
  .vc_row.wpb_row.cont-aerzte .wpb_column:first-child {
    margin-right: calc(var(--gap-s) / 2) !important;
  }
  .vc_row.wpb_row.cont-aerzte .wpb_column:last-child {
    margin-left: calc(var(--gap-s) / 2) !important;
  }
}
@media (max-width: 576px) {
  .vc_row.wpb_row.cont-aerzte {
    flex-direction: column;
    gap: var(--gap-s);
  }

  .vc_row.wpb_row.cont-aerzte .team {
    width: 100% !important;
  }

  .vc_row.wpb_row.cont-aerzte .team .wpb_text_column.col-txt .wpb_wrapper {
    padding-left: var(--gap-s);
    padding-right: var(--gap-s);
  }

  html .mdp-readabler-trigger-button-box button#mdp-readabler-trigger-button {
    background: var(--color-gruen) !important;
  }
}

/* Detail */
.vc_row.wpb_row.cont-aerzte-detail .main-info {
  background-color: var(--color-shade-1);
  border-radius: var(--border-radius-10);
  overflow: hidden;
  display: flex;
  flex-direction: row;
  margin-top: 0 !important;
}

.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:first-child
  .vc_column-inner,
.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:first-child
  .wpb_wrapper,
.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:first-child
  .wpb_single_image,
.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:first-child
  .vc_single_image-wrapper {
  height: 100% !important;
}

.vc_row.wpb_row.cont-aerzte-detail .main-info .wpb_column:first-child img {
  height: 100% !important;
  object-fit: cover;
}

.vc_row.wpb_row.cont-aerzte-detail .main-info .wpb_column:last-child {
  padding: var(--gap-l);
  align-items: center;
  display: flex;
}

.vc_row.wpb_row.cont-aerzte-detail .main-info .wpb_column:last-child ul,
.vc_row.wpb_row.cont-aerzte-detail .add-info ul {
  padding-left: 1em !important ;
}

.vc_row.wpb_row.cont-aerzte-detail .add-info h5 {
  margin-bottom: calc(var(--gap-s) * 1.2) !important;
}

.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:last-child
  .wpb_column,
.vc_row.wpb_row.cont-aerzte-detail
  .main-info
  .wpb_column:last-child
  .wpb_wrapper {
  justify-content: center;
  display: flex;
  flex-direction: column;
}

.vc_row.wpb_row.cont-aerzte-detail .main-info .wpb_column:last-child h3 {
  margin-bottom: var(--gap-s) !important;
}

.vc_row.wpb_row.cont-aerzte-detail .main-info .wpb_column:last-child h4 {
  color: var(--color-gruen) !important;
  margin-bottom: var(--gap-m) !important;
}

.vc_row.wpb_row.cont-aerzte-detail .add-info {
  margin-top: var(--gap-l) !important;
}

@media (max-width: 876px) {
  .vc_row.wpb_row.cont-aerzte-detail .main-info {
    flex-direction: column;
    display: flex;
  }

  .vc_row.wpb_row.cont-aerzte-detail .main-info > .wpb_column,
  .vc_row.wpb_row.cont-aerzte-detail
    .main-info
    > .wpb_column
    .wpb_single_image
    * {
    width: 100%;
  }
  .page-id-34 .cont-img-txt .wpb_single_image img {
    object-fit: cover;
  }
}

/**---------------------------------- Container Image and Text ---------------------------**/

.vc_row.wpb_row.cont-img-txt {
  background-color: var(--color-shade-1);
  border-radius: var(--border-radius-10);
  overflow: hidden;
  display: flex;
  flex-direction: row;
}

.vc_row.wpb_row.cont-img-txt .wpb_column:last-child {
  justify-content: center;
  display: flex;
  padding: var(--gap-l);
}

.vc_row.wpb_row.cont-img-txt .wpb_column:first-child * {
  height: 100%;
}
.vc_row.wpb_row.cont-img-txt .wpb_column:last-child h2 {
  margin-bottom: var(--gap-m) !important;
}

.vc_row.wpb_row.cont-img-txt .wpb_wrapper {
  height: 100%;
  justify-content: center;
  display: flex;
  flex-direction: column;
}

.vc_row.wpb_row.cont-img-txt
  .wpb_column:last-child
  .wpb_wrapper
  .wpb_text_column:last-child {
  margin-top: var(--gap-m) !important;
}

.vc_row.wpb_row.cont-img-txt.lage .wpb_single_image img {
  margin: 0 !important;
}

.vc_row.wpb_row.cont-img-txt.lage {
  border: 1px solid var(--color-shade-1);
  overflow: hidden;
}

@media (max-width: 767px) {
  .vc_row.wpb_row.cont-img-txt.lage {
    flex-direction: column;
  }

  .vc_row.wpb_row.cont-img-txt img {
    width: 100%;
  }
}

/**---------------------------------- Mitarbeiterinnen ---------------------------**/
.vc_row.wpb_row.cont-mitarbeitende {
  margin-top: var(--gap-l) !important;
  display: flex;
}
.vc_row.wpb_row.cont-mitarbeitende
  .wpb_column.vc_column_container.vc_col-sm-3:not(:last-child) {
  margin-right: var(--gap-m);
}

.vc_row.wpb_row.cont-mitarbeitende img {
  border-radius: var(--border-radius-10);
  overflow: hidden;
}

.vc_row.wpb_row.cont-mitarbeitende p {
  text-align: left !important;
  margin-top: calc(var(--gap-s) * 1.5) !important;
}

@media (max-width: 768px) {
  .vc_row.wpb_row.cont-mitarbeitende {
    grid-template: repeat(2, 1fr) / repeat(2, 1fr);
    display: grid;
    gap: 10px;
  }

  .vc_row.wpb_row.cont-mitarbeitende::before,
  .vc_row.wpb_row.cont-mitarbeitende::after {
    display: none;
  }

  .vc_row.wpb_row.cont-mitarbeitende p {
    margin-top: 5px !important;
    line-height: 1.1;
  }
}

/**---------------------------------- Ordizeiten & Termine ---------------------------**/
.vc_row.wpb_row.cont-ordizeiten .wpb_column {
  background-color: var(--color-shade-1);
  border-radius: var(--border-radius-10);
  margin-bottom: 0 !important;
}

.vc_row.wpb_row.cont-ordizeiten
  > .wpb_column
  > .vc_column-inner
  > .wpb_wrapper {
  padding: var(--gap-l);
}

.vc_row.wpb_row.cont-ordizeiten .wpb_column h3 {
  margin-bottom: var(--gap-s) !important;
}

.vc_row.wpb_row.cont-ordizeiten .wpb_column h4 {
  color: var(--color-gruen);
}

.vc_row.wpb_row.cont-ordizeiten
  > .wpb_column
  .wpb_text_column
  > .wpb_wrapper:has(h4) {
  margin-bottom: var(--gap-m) !important;
}

.termin-vereinbarung h3 {
  margin-bottom: var(--gap-m) !important;
}

@media (max-width: 576px) {
  .vc_row.wpb_row.cont-ordizeiten .wpb_column .wpb_text_column:last-child * {
    font-size: calc(var(--base-font-size) * 0.8);
  }
  .vc_row.wpb_row.cont-ordizeiten .wpb_column h3 {
    font-size: calc(var(--h3-font-size) * 1.2) !important;
  }
  .vc_row.wpb_row.cont-ordizeiten .wpb_column h4 {
    line-height: 1.3 !important;
  }
}

/**---------------------------------- Notruf ---------------------------**/
.vc_row.wpb_row.cont-notruf {
  padding: var(--gap-l);
}

.vc_row.wpb_row.cont-notruf h3 {
  margin-bottom: var(--gap-m) !important;
  color: var(--color-gruen);
}

/**---------------------------------- Map ---------------------------**/
.vc_row.wpb_row .mapp-layout {
  border-radius: var(--border-radius-10);
  overflow: hidden;
  border: none;
}

#content .vc_row.wpb_row .wpb_raw_code:has(.mapp-layout) {
  margin-bottom: var(--gap-m) !important;
}

/** Readabler **/
@media (prefers-color-scheme: dark) {
  #mdp-readabler-popup .mdp-readabler-statement-content p,
  #mdp-readabler-popup .mdp-readabler-statement-content li,
  #mdp-readabler-popup .mdp-readabler-statement span {
    color: var(--readabler-text-dark);
  }
}
