@charset "UTF-8";
/* ***********************
 * SCSS Definitions: familien-erbenermittlung.de
 * ! Do not add any css in here !
 * Only add necessary scss files here.
 * ***********************
 * Created on : 20.09.2017, 09:37:59
 * Author     : Heiko Goeb, dq180.com
 * Publisher  : initial.de
 * ***********************
*/
/* ***********************
/* Projekt: familien-erbenermittlung.de
/* ************************
*/
/*1em*/
/* ******************************
 * Reset und Clearfix
*******************************/
div {
  box-sizing: border-box;
}

img {
  border: 0px;
  outline: 0px;
}

/* ******************
 * Elemente verstecken und floaten
 * ******************/
.versteckt {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

.inline-block {
  display: inline-block;
}

.align-left {
  float: left;
}

.align-right {
  float: right;
}

.clear-left {
  clear: left;
}

.clear-right {
  clear: right;
}

.clear-both {
  clear: both;
}

.no-padding {
  padding: 0 !important;
}

.no-margin {
  margin: 0 !important;
}

.no-wrap {
  white-space: nowrap !important;
}

/* ******************
 * Clearfix: in den Parent Klasse group einsetzen
 * ******************/
.group:after {
  visibility: hidden;
  display: block;
  content: "";
  clear: both;
  height: 0;
}

/*  * html .group             { zoom: 1; } /* IE6 */
/*  *:first-child+html .group { zoom: 1; } /* IE7 */
/* ******************
 * Scrollbar: Webkit, Chrome, Opera
 * ******************/
::-webkit-scrollbar {
  width: 8px;
  background-color: transparent;
}

/* Trackflaeche */
::-webkit-scrollbar-track {
  width: 10px;
  -webkit-box-shadow: none;
  -webkit-border-radius: 0;
  border-radius: 0;
  background-color: transparent;
}

/* Scrollbar */
::-webkit-scrollbar-thumb {
  width: 6px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  background-color: #97d3dd;
  -webkit-box-shadow: none;
}

::-webkit-scrollbar-thumb:window-inactive {
  background-color: rgba(151, 211, 221, 0.5);
}

/* ******************
 * Gestaltungsraster
 * ******************/
html, body {
  font-size: 14px;
  line-height: 21px;
}

html {
  padding: 0;
  margin: 0;
  overflow: auto;
  background-color: #f5f6fa;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

body {
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 14px;
  left: 14px;
  bottom: 14px;
  right: 3px;
  padding: 0;
  background-color: transparent;
}
body ::selection {
  background: rgba(151, 211, 221, 0.64);
}

.row, .container-fluid {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}

/* Wrapper */
.container-fluid {
  width: calc(100vw - 28px);
}

.blender {
  position: fixed;
  display: block;
  bottom: 0px;
  width: 100vw;
  height: 14px;
  background-color: #f5f6fa;
  z-index: 1000;
}

/* wrapper fuer hintergrundbild: url im template einfuegen */
.wrapper-background {
  position: fixed;
  z-index: 0;
  overflow: hidden;
  top: 14px;
  left: 14px;
  width: calc(100vw - 28px);
  height: calc(100vh - 28px);
  background-color: #e2e2e2;
}
.wrapper-background .bgr-image {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.wrapper-background .bgr-image img {
  width: 100%;
  height: auto;
}

/* wrapper fuer header und main */
.wrapper-content {
  -webkit-overflow-scrolling: touch;
  position: absolute;
  width: 100%;
  min-height: calc(100vh - 28px);
  z-index: 10;
  overflow: hidden;
}

/* Header, Main, Footer */
header, main, footer {
  will-change: transform;
  /*-webkit-font-smoothing: antialiased;*/
  transform: translateY(calc(-72vh - 3em));
  transition: transform 0.62s cubic-bezier(0, 0, 0.1, -0.4);
}

header {
  position: relative;
  z-index: 2;
  text-align: center;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 0;
  /* Logo */
}
header .container-logo {
  position: absolute;
  pointer-events: none;
  display: block;
  overflow: visible;
  bottom: 168px;
  right: 14px;
  height: inherit;
  z-index: -1;
  /* Dreieck im Hintergrund */
}
header .container-logo .logo {
  position: absolute;
  pointer-events: all;
  width: 340px;
  height: auto;
  right: -100px;
  margin-left: 0;
}
header .container-logo .bgr-dreieck {
  position: absolute;
  overflow: visible;
  top: 212px;
  right: 14px;
  width: 100%;
  height: inherit;
  z-index: 0;
}
header .container-logo .bgr-dreieck img {
  position: absolute;
  width: 1400px;
  height: auto;
  right: -644px;
  margin-left: 0px;
  opacity: 0.68;
}

main {
  position: relative !important;
  z-index: 30;
  top: 6rem;
  padding: 0 !important;
  transition-delay: 0.1s;
}

footer, .footer {
  float: left;
  width: 100%;
  margin-top: 140px;
}

.startseite {
  /*    main { border: 1px solid blue}*/
}
.startseite header, .startseite main, .startseite footer {
  transform: translateY(calc(-72vh + 5.5rem));
}

#toggleMainMenu:checked ~ .wrapper-content header {
  transform: translateY(-3em);
  transition: transform 0.62s cubic-bezier(0.5, -0.1, 0, 0.4);
}
#toggleMainMenu:checked ~ .wrapper-content main, #toggleMainMenu:checked ~ .wrapper-content footer {
  transform: translateY(0em);
  transition: transform 0.62s cubic-bezier(0.5, 0.5, 0.1, 0.4);
}

/* ******************
 * Cookie-Hinweis
 * ******************/
#cookie-accept {
  display: block;
  position: fixed;
  visibility: visible;
  z-index: 10000;
  left: 0;
  bottom: 160px !important;
  width: 100vw;
  color: white;
}
#cookie-accept .container {
  background-color: #97d3dd;
  padding-top: 1.2rem;
  padding-bottom: 2rem;
}

/* ***********************
/* Screen Anpassungen
/* ***********************
*/
@media screen and (max-width: 320px) {
  /* verschieben des headers mit ausklappen des menues */
  #toggleMainMenu:checked ~ .wrapper-content header {
    transform: translateY(-3em);
  }
}
@media screen and (min-width: 600px) {
  /* ausgangsposition */
  .startseite header, .startseite main {
    transform: translateY(calc(-72vh + 3.5rem));
  }
}
@media screen and (min-width: 800px) {
  /* manuelles padding */
  main {
    top: 4rem;
    padding-left: 5vw !important;
    padding-right: 5vw !important;
  }
}
@media screen and (min-width: 992px) {
  .wrapper-content {
    overflow: visible;
  }

  main {
    will-change: unset;
    top: 5rem;
    padding-right: 15px !important;
    padding-left: 15px !important;
    transform: none !important;
    transition: none;
  }

  header {
    position: fixed;
    overflow: hidden;
    pointer-events: none;
    z-index: 10;
    top: 14px;
    width: calc(100vw - 28px);
    height: 180vh;
    min-height: calc(100vh - 28px);
    /* header verschieben mit ausklappen des menues */
  }
  header, .startseite header {
    transform: translateY(0px);
    transition: transform 0.25s cubic-bezier(0, 0, 0.1, -0.4);
  }
  header .container-logo {
    position: absolute;
    overflow: visible;
    top: 0;
    right: 6.5vw;
    bottom: initial;
    height: calc(100vh - 28px);
    z-index: 0;
  }
  header .container-logo .logo {
    position: absolute;
    width: 470px !important;
    height: auto;
    top: -42px;
  }
  header .container-logo .bgr-dreieck {
    position: absolute !important;
    width: 1400px;
    top: 250px;
  }
  header .container-logo .bgr-dreieck img {
    position: absolute;
    width: 1400px;
    height: auto;
    right: -579px;
    opacity: 0.48;
  }
  #toggleMainMenu:checked ~ .wrapper-content header {
    transform: translateY(-191px);
    transition: transform 0.45s cubic-bezier(0, 0, 0.1, -0.4);
  }
}
/* ios momentum scrolling */
body.mobile {
  overflow-y: scroll !important;
  -webkit-overflow-scrolling: touch !important;
}

/* ************************
/* Typografie: Standard
/* ************************
*/
/* Globales Basisformat */
html, body {
  font-size: 1em;
}

@media screen and (min-width: 600px) {
  html, body {
    font-size: 21px;
  }
}
body {
  font-family: "EncodeSans", Arial, sans;
  font-weight: 400;
  line-height: 1.6666666667rem;
  color: #212e51;
}

/* Basisfont */
h1, h2, h3, h4, h5, h6, dl, .details, p, q, em, span, table, th, caption, tr, td, ul, ol, li, a, form, input, select, button, textarea {
  font: inherit;
  line-height: inherit;
  font-weight: inherit;
  letter-spacing: 0.03em;
  color: currentColor;
}

h2, h3 {
  font-weight: 800;
  padding-top: 7px;
}
h2:not(:first-of-type), h3:not(:first-of-type) {
  padding-top: 14px;
}

/* Links */
/* Links mit Pfeil */
a.link-pfeil, .container-content a::before {
  content: "→";
  font-size: 0.8rem;
  font-weight: 800;
  margin: 0 0.15rem 0 0.15rem;
}
a:link, a:hover, a:focus, a:active, a:visited {
  color: currentColor;
  text-decoration: none;
}

/* button mit icons */
.link-icon .icon:before {
  display: inline-block;
  position: absolute;
  top: -9px;
  padding: 6px;
  margin: 0 1rem 0 -2.6rem;
  border: 2px solid currentColor;
  border-radius: 7px;
  text-align: center;
  font-size: 1.2rem;
  transition: all 0.14s cubic-bezier(0.4, 0, 0.8, 1);
}
.link-icon[class*=color-dunkelgruen]:hover .icon:before {
  background-color: rgba(1, 97, 70, 0.09);
  color: #016146;
}
.link-icon[class*=color-dunkelgruen]:focus .icon:before, .link-icon[class*=color-dunkelgruen]:active .icon:before, .link-icon[class*=color-dunkelgruen].active .icon:before {
  background-color: rgba(1, 97, 70, 0);
  /*  border-color: $color;
    color: $hellblau; */
}
.link-icon[class*=color-dunkelgruen]:active .icon:before {
  background-color: rgba(1, 97, 70, 0.09);
  box-shadow: 0 0 10px rgba(1, 97, 70, 0.5);
}
.link-icon[class*=color-blaugruen]:hover .icon:before {
  background-color: rgba(43, 151, 138, 0.09);
  color: #2b978a;
}
.link-icon[class*=color-blaugruen]:focus .icon:before, .link-icon[class*=color-blaugruen]:active .icon:before, .link-icon[class*=color-blaugruen].active .icon:before {
  background-color: rgba(43, 151, 138, 0);
  /*  border-color: $color;
    color: $hellblau; */
}
.link-icon[class*=color-blaugruen]:active .icon:before {
  background-color: rgba(43, 151, 138, 0.09);
  box-shadow: 0 0 10px rgba(43, 151, 138, 0.5);
}
.link-icon[class*=color-gruen]:hover .icon:before {
  background-color: rgba(82, 175, 61, 0.09);
  color: #52af3d;
}
.link-icon[class*=color-gruen]:focus .icon:before, .link-icon[class*=color-gruen]:active .icon:before, .link-icon[class*=color-gruen].active .icon:before {
  background-color: rgba(82, 175, 61, 0);
  /*  border-color: $color;
    color: $hellblau; */
}
.link-icon[class*=color-gruen]:active .icon:before {
  background-color: rgba(82, 175, 61, 0.09);
  box-shadow: 0 0 10px rgba(82, 175, 61, 0.5);
}

/* ***********************
/* Dokumenthierarchie    
/* ***********************
*/
/* Artikelformate */
.article-cnt {
  /*    border: 1px solid red;*/
  -webkit-hyphens: auto;
  hyphens: auto;
  margin: 0 4.165%;
  /* Bilder im Text */
  /* Links im Text */
}
.article-cnt.article-header {
  margin-bottom: 5rem;
}
.article-cnt.article-header hr, .article-cnt.article-header .article-divider {
  position: relative;
  height: 2px;
  width: 100%;
  margin: 0.5rem 0 1rem 0;
  background: -moz-linear-gradient(left, rgba(245, 246, 250, 0.5) 0%, rgba(245, 246, 250, 0.9) 10%, rgba(245, 246, 250, 0.01) 80%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(245, 246, 250, 0.5) 0%, rgba(245, 246, 250, 0.9) 10%, rgba(245, 246, 250, 0.01) 80%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(245, 246, 250, 0.5) 0%, rgba(245, 246, 250, 0.9) 10%, rgba(245, 246, 250, 0.01) 80%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  border: 0;
}
.article-cnt.article-header h1, .article-cnt.article-header .h1, .article-cnt.article-header .h1tag {
  position: relative;
  display: flex;
  flex-direction: row;
  width: 100%;
  margin-bottom: 2.9166666667rem;
  font-size: 33.6px;
  line-height: 2.85rem;
  color: #f5f6fa;
  word-break: keep-all;
}
.article-cnt.article-header h1 span, .article-cnt.article-header .h1 span, .article-cnt.article-header .h1tag span {
  display: inline-block;
  flex: 0 1 auto;
  box-sizing: border-box;
}
.article-cnt.article-header h1.icon:before, .article-cnt.article-header h1 .icon:before, .article-cnt.article-header .h1.icon:before, .article-cnt.article-header .h1 .icon:before, .article-cnt.article-header .h1tag.icon:before, .article-cnt.article-header .h1tag .icon:before {
  content: "→";
}
.article-cnt.article-header p {
  margin: 1.25rem 0 1.5rem 0 !important;
}
.article-cnt.article-content .content-segment {
  margin-bottom: 2.5rem;
}
.article-cnt.article-content {
  margin-bottom: 5rem;
}
.article-cnt h2, .article-cnt .h2 {
  margin-top: 0;
  font-size: 21px;
  font-weight: bold;
  line-height: 1.6666666667rem;
  color: #212e51;
  padding-bottom: 10px;
  word-break: keep-all;
}
.article-cnt p, .article-cnt img {
  padding: 0;
  margin: 1.5rem 0;
}
.article-cnt:last-child {
  padding-bottom: 5.5rem;
}
.article-cnt img {
  width: 100%;
  height: auto;
}
.article-cnt img.small {
  float: left;
  width: 100%;
  margin-top: 0;
  margin-right: 25px;
  margin-bottom: 29px;
}
.article-cnt .linkMgTooltip {
  display: none;
}
.article-cnt .textlink {
  display: inline-block;
  position: relative;
  padding: 0 4px;
  left: -2px;
  overflow: hidden;
  text-align: center;
  vertical-align: top;
}
.article-cnt .textlink:after {
  display: block;
  position: absolute;
  z-index: -1;
  content: "";
  top: calc(50% - 5px);
  left: calc(50% - 5px);
  height: 10px;
  width: 10px;
  border-radius: 100%;
  transform-origin: 50% 50%;
  transform: scale(0);
  background-color: rgba(151, 211, 221, 0.24);
  transition: all 0.33s cubic-bezier(0.5, 0.0025, 0.5, 1);
}
.article-cnt .textlink:hover:after {
  z-index: -1;
  transform: scale(32);
  background-color: rgba(151, 211, 221, 0.64);
}
.article-cnt .textlink:before {
  position: relative;
  content: "→";
  font-size: 0.6rem;
  font-weight: bold;
  top: -3px;
  left: -3px;
  padding: 0 1px;
  background-color: rgba(33, 46, 81, 0.2);
}
.article-cnt .textlink:focus, .article-cnt .textlink:active {
  background-color: rgba(43, 151, 138, 0.74);
  color: #fdfeff;
}

/* Trennstrich */
.headline-stroke:after {
  position: absolute;
  display: block;
  content: " ";
  height: 2px;
  width: 100%;
  margin: 0.5rem 0 1rem 0;
  color: currentColor;
  background: -moz-linear-gradient(left, rgba(33, 46, 81, 0.5) 0%, rgba(33, 46, 81, 0.9) 10%, rgba(33, 46, 81, 0.01) 80%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(33, 46, 81, 0.5) 0%, rgba(33, 46, 81, 0.9) 10%, rgba(33, 46, 81, 0.01) 80%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(33, 46, 81, 0.5) 0%, rgba(33, 46, 81, 0.9) 10%, rgba(33, 46, 81, 0.01) 80%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.headline-stroke.text-color-dunkelgruen:after {
  background: -moz-linear-gradient(left, rgba(1, 97, 70, 0.5) 0%, rgba(1, 97, 70, 0.9) 10%, rgba(1, 97, 70, 0.01) 80%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(1, 97, 70, 0.5) 0%, rgba(1, 97, 70, 0.9) 10%, rgba(1, 97, 70, 0.01) 80%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(1, 97, 70, 0.5) 0%, rgba(1, 97, 70, 0.9) 10%, rgba(1, 97, 70, 0.01) 80%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.headline-stroke.text-color-gruen:after {
  background: -moz-linear-gradient(left, rgba(82, 175, 61, 0.5) 0%, rgba(82, 175, 61, 0.9) 10%, rgba(82, 175, 61, 0.01) 80%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(82, 175, 61, 0.5) 0%, rgba(82, 175, 61, 0.9) 10%, rgba(82, 175, 61, 0.01) 80%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(82, 175, 61, 0.5) 0%, rgba(82, 175, 61, 0.9) 10%, rgba(82, 175, 61, 0.01) 80%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.headline-stroke.text-color-blaugruen:after {
  background: -moz-linear-gradient(left, rgba(43, 151, 138, 0.5) 0%, rgba(43, 151, 138, 0.9) 10%, rgba(43, 151, 138, 0.01) 80%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(43, 151, 138, 0.5) 0%, rgba(43, 151, 138, 0.9) 10%, rgba(43, 151, 138, 0.01) 80%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(43, 151, 138, 0.5) 0%, rgba(43, 151, 138, 0.9) 10%, rgba(43, 151, 138, 0.01) 80%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

/* ***********************
/* Farbschema
/* ************************
*/
/* Textfarben */
.text-color-gruen {
  color: #52af3d !important;
}

.text-color-dunkelgruen {
  color: #016146 !important;
}

.text-color-blaugruen {
  color: #2b978a !important;
}

.text-color-hellblau {
  color: #fdfeff !important;
}

.text-color-mittelgrau {
  color: #e2e2e2 !important;
}

.text-color-grau {
  color: #b0b0b0 !important;
}

.text-color-weiss {
  color: #fdfeff !important;
}

.text-color-dunkelblau {
  background-color: #212e51 !important;
}

/* Hintergrundfarben */
.bgr-color-gruen {
  background-color: #52af3d !important;
}

.bgr-color-dunkelgruen {
  background-color: #016146 !important;
}

.bgr-color-blaugruen {
  background-color: #2b978a !important;
}

.bgr-color-hellblau {
  background-color: #fdfeff !important;
}

.bgr-color-mittelgrau {
  background-color: #e2e2e2 !important;
}

.bgr-color-grau {
  background-color: #b0b0b0 !important;
}

.bgr-color-weiss {
  background-color: #fdfeff !important;
}

.bgr-color-dunkelblau {
  background-color: #212e51 !important;
}

/* ***********************
/* Page-Box
/* ************************
*/
.page-box {
  position: absolute;
  background: #97d3dd;
  border-radius: 5px;
  padding: 10px;
}

/* ***********************
/* Screen Anpassungen
/* ***********************
*/
@media screen and (min-width: 600px) {
  .article-cnt.article-header {
    margin-bottom: 6.6666666667rem;
  }
  .article-cnt.article-header h1, .article-cnt.article-header .h1, .article-cnt.article-header .h1tag {
    margin-bottom: 3.3333333333rem;
    padding-bottom: 0;
    font-size: 42px;
    line-height: 2.5rem;
  }
  .article-cnt h2, .article-cnt .h2, .article-cnt .h2tag {
    font-size: 28px;
  }
}
@media screen and (min-width: 992px) {
  .article-cnt.article-header, .article-cnt.article-content {
    margin-left: 4.165%;
    margin-right: 4.165%;
  }
  .article-cnt.article-content .content-segment {
    padding: 0 0 0 8.33%;
  }
  .article-cnt.article-content h2, .article-cnt.article-content .h2, .article-cnt.article-content h2tag {
    margin-left: -8.33%;
  }

  .article-cnt.article-header {
    /* ***********************
    /* Startseitenmenue
    /* ************************
    */
  }
  .article-cnt.article-header p {
    padding-left: 8.33%;
  }
  .article-cnt.article-header .slider-container {
    margin-top: 0;
    padding-bottom: 1rem;
    min-width: 55vw;
  }
  .article-cnt.article-header .slider-container .carousel-inner {
    padding-bottom: 1rem;
    box-sizing: border-box;
  }
  .article-cnt.article-header .slider-container h1, .article-cnt.article-header .slider-container h2 {
    color: #fdfeff;
    margin: 0;
  }
  .article-cnt.article-header .slider-container h1 {
    font-size: 3rem;
    line-height: 3.25rem;
    margin-top: -14px;
  }
  .article-cnt.article-header .slider-container h2 {
    margin-bottom: 0;
    padding-left: 21px;
  }
  .article-cnt.article-header .slider-container .slider-menu {
    margin-top: 1rem;
  }
  .article-cnt.article-header .slider-container p, .article-cnt.article-header .slider-container img {
    padding: 0 0 0 8.33%;
  }
  .article-cnt.article-header .slider-container img.small {
    float: left;
    width: 33%;
    margin-top: 0;
    margin-right: 25px;
    margin-bottom: 29px;
  }
}
@media screen and (min-width: 1200px) {
  .article-cnt.article-header .slider-container h1 {
    font-size: 3.5rem;
    line-height: 3.75rem;
    margin-top: -14px;
  }
  .article-cnt.article-header .slider-container .slider-menu {
    margin-top: 5rem;
  }
}
/* ***********************
/* Navigation
/* ***********************
*/
/* Toggle-Button */
.container-label {
  position: fixed;
  display: block;
  width: 100%;
  top: 1.3rem;
  right: 12vw;
  right: 45vw;
  transform: translateY(75vh);
  padding: 1.8rem 0 0 30%;
  text-align: left;
  line-height: 0.95rem;
  z-index: 100;
}
.startseite .container-label {
  top: 0;
  right: 42vw;
}
.container-label label {
  display: block;
  position: relative;
  overflow: visible;
  cursor: pointer;
  font-weight: bold;
  text-align: center;
}
.container-label label svg {
  border-radius: 100%;
  position: relative;
  width: 28px;
  height: 28px;
  padding: 5px;
  transform-origin: 50% 50%;
  background-color: #212e51;
  transition: background-color 0.17s ease-out, box-shadow 0.27s cubic-bezier(0.1, -0.3, 0.8, -0.4);
}
.container-label label #menu-button {
  fill: #fdfeff;
  width: 22px;
}
.container-label label .label-title {
  display: block;
  position: relative;
  top: 0.2rem;
  font-size: 0.75rem;
}
.container-label label:hover svg:after, #toggleMainMenu:checked ~ .wrapper-content .container-label svg {
  box-shadow: 0 0 10px 0px #2b978a;
  background-color: #26616d;
}

/* Navigation: Hauptmenue */
.container-navigation {
  position: relative;
  z-index: -1;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 0;
  text-align: left;
}
.container-navigation *::selection {
  background: none;
}

.hauptmenue {
  pointer-events: auto;
  height: calc(72vh + 3em);
  text-align: left;
  background: #f5f3f6;
  padding: 3.75rem 0.5rem 9rem 0.5rem;
}
.startseite .hauptmenue {
  background: rgba(253, 254, 255, 0.1);
  transition: background 1.8s 1s ease-out;
}
.hauptmenue .nav-menu-level0 > li {
  margin-bottom: 0.5rem;
  font-size: 1.18rem;
  line-height: 1.25rem;
  list-style-type: none;
  /* markierung der aktuell gewaehlten seite im menue */
  /* mehr abstand im menue */
  /* Anzeige mobile aus desktop ein */
}
.hauptmenue .nav-menu-level0 > li > a {
  display: inline-table;
  position: relative;
}
.hauptmenue .nav-menu-level0 > li > a span {
  display: table-cell;
  font-size: 1em;
}
.hauptmenue .nav-menu-level0 > li.link-icon {
  margin-bottom: 1.3rem;
}
.hauptmenue .nav-menu-level0 > li.text-size-small {
  font-size: 0.9rem;
  line-height: 1.1rem;
}
.hauptmenue .nav-menu-level0 > li.active {
  padding: 0;
  background: linear-gradient(to right, rgba(253, 254, 255, 0) 0%, rgba(253, 254, 255, 0.1) 6%, rgba(253, 254, 255, 0.38) 15%, rgba(253, 254, 255, 0) 40%);
}
.hauptmenue .nav-menu-level0 > li.active a .icon:before {
  opacity: 1;
}
.hauptmenue .nav-menu-level0 > li.link-margin-top, .hauptmenue .nav-menu-level0 > li.link-has-submenue {
  margin: 0 0 1.2rem 0;
}
.hauptmenue .nav-menu-level0 > li.mobile-desktop {
  display: none;
}

/* submenue: ebene 1 */
.nav-menu-level1 {
  padding: 0 1rem 0 1rem;
}
.nav-menu-level1 > li {
  margin-left: 0;
  margin-bottom: 0.2857142857rem;
  font-size: 1rem;
  line-height: 1.1904761905rem;
  list-style-type: none;
}
.nav-menu-level1 > li:first-child {
  margin-top: 0.4rem;
}

/* ***********************
/* Startseiten-Menue: Grosse buttons
/* ***********************
*/
.nav-startmenu {
  position: relative;
  margin-top: 3.3333333333rem;
}
.nav-startmenu .carousel-indicators {
  position: relative;
  bottom: initial;
  left: 0;
  z-index: 15;
  width: 100%;
  padding: 0;
  margin-left: 0;
  text-align: left;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
}
.nav-startmenu .link-std {
  display: inline-flex;
  flex-direction: row;
  /*	align-items: flex-end;*/
  align-items: baseline;
  position: relative;
  left: 0;
  width: 100%;
  min-height: 2.9rem;
  list-style-image: none;
  margin: 0;
  margin-bottom: 2px;
  padding: 0.4rem 4px 0.5rem 14px;
  background-color: currentColor;
  border: 0;
  border-radius: 0;
  text-indent: 0;
  font-size: 1.01rem;
  color: #f5f6fa;
  opacity: 0.9;
}
.nav-startmenu .link-std.bgr-color-dunkelblau {
  opacity: 0.6;
  background-color: rgba(33, 46, 81, 0.5) !important;
}
.nav-startmenu .link-std span {
  -webkit-hyphens: none !important;
  hyphens: none !important;
  word-break: none;
  position: relative;
  display: inline-block;
  flex: 0 1 auto;
  align-self: flex-start;
  vertical-align: middle;
  /*max-width: 50vw;*/
}
.nav-startmenu .link-std span:not(.icon) {
  color: #f5f6fa;
}
.nav-startmenu .link-std .icon:before {
  position: relative;
  top: 0;
  margin: 0 21px 0 0;
  color: #f5f6fa;
  border: 1px solid #f5f6fa;
  opacity: 0.5;
}
.nav-startmenu .link-std:hover .icon:before, .nav-startmenu .link-std:focus .icon:before, .nav-startmenu .link-std:active .icon:before {
  opacity: 1;
  color: #f5f6fa;
  box-shadow: 0 0 10px rgba(151, 211, 221, 0.5);
}

.mobile .carousel {
  margin: 0 !important;
  padding: 0 !important;
}
.mobile .carousel .nav-startmenu .link-std .icon:before {
  margin-right: 5px !important;
}

/* ***********************
/* Sprachwahl
/* ***********************
*/
.language-chooser {
  position: fixed;
  display: block;
  z-index: 1000;
  top: 13.65vh;
  left: -7px;
}
.language-chooser .language-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.language-chooser .language-item a.language-button {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  overflow: hidden;
  box-sizing: content-box;
  padding: 0px 6px 0px 21px;
  background: #f5f6fa;
  border-radius: 8px;
  line-height: 30px;
  opacity: 0.74;
  transform: scale(1);
  transition: all 0.3s ease-out;
  transform-origin: 0% 50%;
  animation: btn-zoom 0.75s ease-in-out 0.75s 1;
}
.language-chooser .language-item .language-button:hover {
  transform: scale(1.26);
  opacity: 1;
  padding-left: 26px !important;
}
.language-chooser .language-item .language-button:active {
  transform: scale(1.3);
}
.language-chooser .language-item .language-text {
  display: inline-block;
  font-size: 15px;
  font-weight: 800;
  color: #212e51;
  text-transform: uppercase;
  padding-right: 6px;
  opacity: 0.86;
}
.language-chooser .language-item .language-icon {
  height: 18px;
  width: 18px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  opacity: 0.76;
}
.language-chooser .language-item .language-icon.de {
  background-image: url(../../img/custom/icons/img-button-flag-de.png);
}
.language-chooser .language-item .language-icon.en {
  background-image: url(../../img/custom/icons/img-button-flag-en.png);
}

/* ***********************
/* Screen Anpassungen
/* ***********************
*/
@media screen and (max-width: 320px) {
  .container-label {
    right: 8rem;
  }
}
@media screen and (min-width: 600px) {
  .hauptmenue {
    padding: 3.75rem 0.5rem 9rem 2rem;
  }
  .hauptmenue .nav-menu-level0 > li {
    margin-bottom: 1rem;
  }
  .hauptmenue li > a span {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 992px) {
  .container-label {
    position: absolute;
    pointer-events: all;
    width: 270px;
    top: 13.5rem !important;
    right: 6.5vw !important;
    bottom: initial;
    transform: none;
    padding: 0;
    text-align: center;
  }

  .container-navigation {
    position: absolute;
    top: 14rem;
    z-index: 1;
    width: initial;
    height: auto;
  }

  .hauptmenue {
    pointer-events: all;
    height: auto;
    background: transparent;
    padding: 4.25rem 0.5rem 0 0;
  }
  .hauptmenue ul.nav-menu-level0 > li {
    will-change: transform, margin-bottom;
    /* Link sichtbar: mobil aus, desktop ein*/
    /* button mit kleiner schrift */
    /* zusaetzlicher abstand oben */
    /* Buttons */
    /* markierung der aktuell gewaehlten seite im menue */
    /* markierung der aktuell gewaehlten seite im menue */
    /* mehr abstand im menue */
  }
  .hauptmenue ul.nav-menu-level0 > li.mobile-desktop {
    display: block;
  }
  .hauptmenue ul.nav-menu-level0 > li.text-size-small {
    font-size: 1rem;
    line-height: 1.25rem;
    margin-bottom: 0.5rem !important;
  }
  .hauptmenue ul.nav-menu-level0 > li.link-margin-top, .hauptmenue ul.nav-menu-level0 > li.link-has-submenue {
    margin-top: 0;
    transition: margin-top 0.23s ease;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible) {
    margin-bottom: 0;
    overflow: visible;
    max-height: 0;
    transform-origin: left 1%;
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.8, 0), background 0.21s cubic-bezier(0.4, 0, 0.8, 0), margin-bottom 0.05s cubic-bezier(0.4, 0, 0.8, 0), max-height 0.1s cubic-bezier(0.4, 0, 0.8, 0);
    /* transition delay fuer auf- und zuklappen */
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible) > a {
    will-change: all;
    position: relative;
    transform: scale3d(0, 0, 1);
    transform-origin: left 3%;
    transition: transform 0.21s cubic-bezier(0.4, 0, 0.8, 1);
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible) > a .icon:before {
    top: -5px;
    padding: 7px;
    margin: 0 1rem 0 -2.5rem;
    font-size: 1rem;
    opacity: 0;
    transition: opacity 0.18s cubic-bezier(0.4, 0, 0.8, 1);
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(1) {
    transition-delay: 0s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(2) {
    transition-delay: 0.02s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(3) {
    transition-delay: 0.04s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(4) {
    transition-delay: 0.06s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(5) {
    transition-delay: 0.08s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(6) {
    transition-delay: 0.1s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(7) {
    transition-delay: 0.12s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(8) {
    transition-delay: 0.14s;
  }
  .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(9) {
    transition-delay: 0.16s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(9) {
    transition-delay: 0.008s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(8) {
    transition-delay: 0.007s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(7) {
    transition-delay: 0.006s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(6) {
    transition-delay: 0.005s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(5) {
    transition-delay: 0.004s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(4) {
    transition-delay: 0.003s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(3) {
    transition-delay: 0.002s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(2) {
    transition-delay: 0.001s;
  }
  #toggleMenu:checked ~ .wrapper-content .hauptmenue ul.nav-menu-level0 > li:not(.state-visible):nth-of-type(1) {
    transition-delay: 0s;
  }
  .hauptmenue ul.nav-menu-level0 > li.active {
    background: none;
  }
  .hauptmenue ul.nav-menu-level0 > li.active a .icon:before {
    opacity: 1;
  }
  .hauptmenue ul.nav-menu-level0 > li.state-visibleactive {
    padding: 7px 0 9px 0;
    background: linear-gradient(to right, rgba(253, 254, 255, 0) 0%, rgba(253, 254, 255, 0.1) 6%, rgba(253, 254, 255, 0.38) 15%, rgba(253, 254, 255, 0) 40%);
  }
  .hauptmenue ul.nav-menu-level0 > li.link-margin-top, .hauptmenue ul.nav-menu-level0 > li.link-has-submenue {
    margin: 0;
    transition: margin 0.25s ease;
  }

  /* startseiten-menue */
  .nav-startmenu {
    margin-top: 0;
  }
  .nav-startmenu .link-std {
    font-size: 1.25rem;
    opacity: 1;
  }
  .nav-startmenu .link-std a {
    display: block;
    opacity: 0.5;
    margin-top: 7px;
    margin-left: 7px;
  }
  .nav-startmenu .link-std .icon:before {
    box-sizing: border-box;
    top: 0px;
    border-width: 2px;
    border-color: transparent;
    opacity: 1;
    padding: 10px;
    font-size: 1.8rem;
  }
  .nav-startmenu .link-std:hover, .nav-startmenu .link-std:focus, .nav-startmenu .link-std:active {
    cursor: pointer;
    opacity: 1;
    outline: 1px solid rgba(151, 211, 221, 0.5);
    box-shadow: 0 0 10px rgba(151, 211, 221, 0.95);
  }
  .nav-startmenu .link-std:hover .icon:before, .nav-startmenu .link-std:focus .icon:before, .nav-startmenu .link-std:active .icon:before {
    background-color: rgba(151, 211, 221, 0.13);
    /*border-color: rgba($hellgrau,.05);*/
  }
  .nav-startmenu .link-std:hover a, .nav-startmenu .link-std:focus a, .nav-startmenu .link-std:active a {
    opacity: 0.9;
  }

  .language-chooser {
    top: 3rem;
  }
}
@media screen and (min-width: 1024px) {
  .hauptmenue li > a span {
    font-size: 1.3rem;
  }

  .nav-startmenu {
    width: 70vw;
    margin-top: 3rem;
  }
  .nav-startmenu .link-std {
    display: inline-block;
    box-sizing: border-box;
    float: left;
    width: 33%;
    max-width: 300px;
    height: 8.5rem;
    margin-right: 2px;
    margin-bottom: 5px;
    padding: 12px 14px 0 14px;
    text-align: center;
    font-size: 1rem;
    opacity: 1;
  }
  .nav-startmenu .link-std span {
    display: block;
  }
  .nav-startmenu .link-std.active:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 40px;
    background: transparent;
    border-radius: 0;
    border-width: 20px;
    border-style: solid;
    border-color: transparent transparent currentColor transparent;
    top: -35px;
    margin-left: -20px;
  }
}
@media screen and (min-width: 1200px) {
  .hauptmenue li > a span {
    font-size: 1.6666666667rem;
  }

  .nav-startmenu {
    width: 100%;
    margin-top: 0;
  }
  .nav-startmenu .link-std {
    font-size: 1.25rem;
  }
}
/* ***********************
/* Animations, Transitions
/* Menue: toggleMainMenue:checked
/* ************************
*/
/* ***********************
/* HAUPTMENUE Label drehen und platzieren
/* ***********************
*/
.container-label g {
  transform: rotate3d(0, 1, 0, 0);
  transform-origin: 50% 50%;
  animation: rotate 6s infinite;
  animation-play-state: running;
}
#toggleMainMenu:checked ~ .wrapper-content .container-label g {
  animation: none;
  transform: rotate3d(0, 1, 0, 0);
}

@-webkit-keyframes rotate {
  0% {
    transform: rotateY(0);
  }
  50% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}
@-webkit-keyframes labelShift {
  0% {
    opacity: 1;
    top: 0.5rem;
  }
  40% {
    opacity: 0;
    top: 0.5rem;
  }
  60% {
    opacity: 0;
    top: -2rem;
  }
  100% {
    opacity: 1;
    top: -2rem;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes rotate {
  0% {
    transform: rotateY(0);
  }
  50% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}
@keyframes labelShift {
  0% {
    opacity: 1;
    top: 0.5rem;
  }
  40% {
    opacity: 0;
    top: 0.5rem;
  }
  60% {
    opacity: 0;
    top: -2rem;
  }
  100% {
    opacity: 1;
    top: -2rem;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* ***********************
/* HAUPTMENUE Ein-/Ausblenden
/* ***********************
*/
.startseite .container-navigation {
  opacity: 0;
  transition: opacity 0.2s 0.1s ease-out;
}
.startseite #toggleMainMenu:checked ~ .wrapper-content .hauptmenue {
  background: #f5f3f6;
  transition: background 0.2s ease-out;
}
.startseite #toggleMainMenu:checked ~ .wrapper-content .container-navigation {
  opacity: 1;
}

/* ***********************
/* Screen Anpassungen
/* ***********************
*/
@media screen and (max-width: 320px) {
  .container-label label {
    right: 1.5rem;
    top: 0rem;
    animation: fadeIn 0.12s ease-in forwards;
  }

  #toggleMainMenu:checked ~ .wrapper-content .container-label label {
    animation: fadeOut 0.2s linear, labelShift 0.4s ease-out forwards;
  }
}
/* ***********************
/* Hauptmenue: Desktop
/* ***********************
*/
@media screen and (min-width: 992px) {
  .startseite .container-navigation {
    opacity: 1;
  }

  .startseite .hauptmenue {
    background: transparent !important;
  }

  #toggleMainMenu:checked ~ .wrapper-content {
    /* navigation einblenden */
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue {
    background: transparent !important;
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std {
    /* li und a animiert skalieren */
    max-height: 10rem;
    margin-bottom: 0.75rem;
    transform: scaleY(1);
    transform-origin: right center;
    /* a-tags skalieren */
    /* markierung der aktuell gewaehlten seite im menue */
    /* seitlich verruecken bei hover */
    /* link mit submenue mehr abstand oben und unten */
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std a {
    transform-origin: 80% top;
    transform: scale3d(1, 1, 1);
    transition: transform 0.23s cubic-bezier(0.4, 0, 0.8, 1);
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std.active {
    padding: 7px 0 9px 0;
    background: linear-gradient(to right, rgba(253, 254, 255, 0) 0%, rgba(253, 254, 255, 0.1) 6%, rgba(253, 254, 255, 0.38) 15%, rgba(253, 254, 255, 0) 40%);
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std:not(.active):hover a {
    transform: translate3d(-1rem, 0, 0) !important;
    transition: transform 0.25s cubic-bezier(1.4, 1.2, 0.4, 1);
    transform-origin: 50% top;
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std:not(.active):hover a .icon:before {
    opacity: 1 !important;
  }
  #toggleMainMenu:checked ~ .wrapper-content .hauptmenue > ul.nav-menu-level0 > .link-std.link-has-submenue {
    margin: 1.5rem 0 1.5rem 0;
  }
}
/* ***********************
/* SPRACHBUTTON
/* ***********************
*/
@-webkit-keyframes btn-zoom {
  0% {
    opacity: 0.74;
    margin-left: 0;
  }
  50% {
    opacity: 1;
    transform: scale(1.3);
    margin-left: 10;
  }
  100% {
    opacity: 0.74;
    margin-left: 0;
  }
}
@keyframes btn-zoom {
  0% {
    opacity: 0.74;
    margin-left: 0;
  }
  50% {
    opacity: 1;
    transform: scale(1.3);
    margin-left: 10;
  }
  100% {
    opacity: 0.74;
    margin-left: 0;
  }
}
/* ***********************
/* Formulare
/* ************************
*/
form .form-input {
  position: relative;
  height: inherit;
}
form label {
  font-weight: 400;
  line-height: 1.6666666667rem;
  color: #212e51;
}
form sup {
  position: absolute;
  display: block;
  z-index: 2;
  top: 0;
  right: 0;
  height: 100%;
  width: 7px;
  color: transparent;
  background-color: transparent;
  transition: background-color 0.15s ease-in;
}
form input:not([type=checkbox]) ~ sup, form textarea ~ sup {
  background-color: #212e51;
  /*Error-farbe rgba(188,6,62,.9);*/
}
form input:focus ~ sup, form textarea:focus ~ sup {
  background-color: transparent;
}
form input[type=text] {
  height: 5rem;
  box-sizing: border-box;
  padding: 7px 14px 28px 14px;
  border: 0;
  outline: 0;
  border-right: 7px solid transparent;
  border-radius: 0;
  box-shadow: none;
  background-color: rgba(151, 211, 221, 0.4);
  font-size: 1.5rem;
  color: #212e51;
  transition: background-color 0.45s ease;
}
form input[type=text] ~ *:not(sup) {
  opacity: 0.4;
}
form input[type=text] ~ label {
  position: absolute;
  display: block;
  bottom: 0;
  width: calc(100% - 7px);
  padding: 7px 14px;
  border-top: 1px solid transparent;
  font-size: 0.75rem;
  font-weight: 800;
  line-height: 0.8333333333rem;
  transition: border-top 0.45s ease;
}
form textarea.form-control {
  position: static;
  resize: none;
  height: 367.5px;
  outline: 0;
  border: 0;
  border-right: 7px solid transparent;
  border-radius: 0;
  box-shadow: none;
  background-color: rgba(151, 211, 221, 0.4);
  padding: 21px 70px 28px 14px;
  margin: 6rem 0 3.3333333333rem 0;
  font-size: 1.5rem;
  line-height: 2.5rem;
  color: #212e51;
  transition: background-color 0.45s ease;
}
form textarea.form-control::-webkit-scrollbar {
  width: 7px;
}
form textarea.form-control::-webkit-scrollbar-thumb {
  background-color: rgba(33, 46, 81, 0.3);
}
form textarea + label {
  position: absolute;
  top: -2rem;
  font-size: 28px;
  font-weight: bold;
}
form input.form-control:focus, form textarea.form-control:focus {
  outline: 0;
  background-color: rgba(151, 211, 221, 0.6);
}
form input.form-control:focus ~ *:not(sup), form textarea.form-control:focus ~ *:not(sup) {
  opacity: 1;
}
form input.form-control:focus ~ label:not(.label-checkbox),
form .captcha:focus ~ label {
  border-top: 1px solid #212e51;
}
form .captcha {
  display: flex;
  flex-direction: row;
  align-content: stretch;
  overflow: visible;
  margin: 2rem 0;
}
form .captcha ~ label {
  position: absolute;
  display: block;
  bottom: 0;
  width: calc(100% - 7px);
  padding: 7px 14px;
  margin-left: calc(30% + 20px);
  border-top: 1px solid transparent;
  font-size: 0.75rem;
  font-weight: 800;
  line-height: 0.8333333333rem;
  transition: border-top 0.45s ease;
  opacity: 0.4;
}
form .captcha .captchapict {
  margin: 0;
  padding: 0;
  height: 5rem;
  width: 30%;
}
form .captcha .captcha {
  flex: 2 2 auto;
  margin: 0;
}
form .captcha ~ sup {
  background-color: #212e51;
  /*Error-farbe rgba(188,6,62,.9);*/
}
form .btn {
  font-size: 1em;
  width: 30%;
  margin: 0 35%;
}
form .btn:active, form .btn:focus {
  background-color: #2b978a;
}

/* ***********************
/* Lightbox
/* ***********************
*/
.galleryCont {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 12px;
  align-content: initial;
}
.galleryCont [class*=group_] {
  flex: 2 2 25%;
  height: inherit;
  margin: 0 0 15px 15px;
}
.galleryCont [class*=group_] img {
  padding: 0;
  margin: 0;
  width: 100%;
  height: auto;
}

.fancybox-wrap {
  position: fixed !important;
}

.fancybox-title {
  font-family: "EncodeSans", Arial, sans;
  font-weight: 400;
}

.startseite .galleryCont {
  float: left;
  margin: 2rem 40px 28px 0;
}

/* ***********************
/* Fallbeispiele
/* ***********************
*/
.link-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.link-expl {
  display: grid;
  grid-template-rows: 170px;
  grid-template-columns: 1fr 5fr;
  background: linear-gradient(to right, white 60%, rgba(255, 255, 255, 0) 100%);
  padding: 0;
  max-height: max-content;
  border-radius: 6px;
}

.link-text {
  padding: 1rem 1.3rem;
}

.link-thumb img {
  height: 100% !important;
  width: auto !important;
  margin: 0;
}

article.expl .expl-header h2 {
  margin-left: 0;
}
article.expl .expl-header pre {
  white-space: break-spaces;
  word-break: break-word;
}
article.expl .imagebox {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 9px;
}

.textbox {
  padding: 1rem 1.5rem;
  border-radius: 5px;
  margin-bottom: 0.7rem;
}
.textbox:last-of-type {
  margin-bottom: 3rem;
}
.textbox.background-darkgreen {
  background-color: #016146;
  color: #fdfeff !important;
}
.textbox.background-white {
  background-color: #fdfeff;
}

@media (min-width: 768px) {
  article.expl .imagebox {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 992px) {
  article.expl .imagebox {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

/*# sourceMappingURL=erbenermittlung_styles.css.map */
