@font-face {
   font-family: 'GildaDisplay';
   src: url('../fonts/GildaDisplay-Regular.ttf');
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-Italic.ttf');
   font-style: italic;
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-Light.ttf');
   font-weight: 300;
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-LightItalic.ttf');
   font-weight: 300;
   font-style: italic;
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-Regular.ttf');
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-Semibold.ttf');
   font-weight: 600;
}

@font-face {
   font-family: 'SourceSansPro';
   src: url('../fonts/SourceSansPro-SemiboldItalic.ttf');
   font-weight: 600;
   font-style: italic;
}

body {
   color: #394346;
   font-family: SourceSansPro, sans-serif;
   background: #e5e5e2;
}

body:not(.frontpage) {
   /*padding-top: 64px;*/
}

@media (min-width: 992px) {
   body:not(.frontpage) {
      padding-top: 80px;
   }
}

.container-2 {
   margin: 0 auto;
   padding-left: 20px;
   padding-right: 20px;
   max-width: 1920px;
}

@media (min-width: 768px) {
   .container-2 {
      padding-left: 140px;
      padding-right: 140px;
   }
}

.container-3 {
   margin: 0 auto;
   padding-left: 20px;
   padding-right: 20px;
}

@media (min-width: 768px) {
   .container-3 {
      padding-left: 40px;
      padding-right: 40px;
   }
}

.container-3 {
   max-width: 1920px;
}

#navbar {
   padding: 0;
   position: fixed;
   left: 0;
   right: 0;
   align-items: flex-start;
   z-index: 10000;
}

@media (min-width: 992px) {
   #navbar {
      position: absolute;
      top: 80px;
   }
}

#navbar li:focus,
#navbar a:focus,
#navbar button:focus {
   outline: none;
}

#navbar.fixed-top-2 {
   position: fixed;
   top: 0;
   align-items: center;
   background: #fff;
}

#navbar.fixed-top-2 .navbar-logo {
   height: 64px;
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-logo {
      height: 80px;
   }
}

#navbar.fixed-top-2 .navbar-logo > a::before {
   background: no-repeat url(../images/logo-inner.svg) center/contain;
   width: 71px;
   height: 44px;
   margin-top: 0;
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-logo > a::before {
      width: 91px;
      height: 57px;
   }
}

#navbar.fixed-top-2 .navbar-logo .header-slogan {
   display: none;
}

#navbar.fixed-top-2 .navbar-toggler::before {
   content: url(../images/menu-grey.svg);
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-collapse .navbar-nav > .nav-item {
      padding-bottom: 0;
   }
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-collapse .navbar-nav > .nav-item.active {
      border-bottom: none;
   }
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-collapse .navbar-nav > .nav-item.active > a {
      border-bottom: 2px solid #394346;
   }
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-collapse .navbar-nav > .nav-item > a {
      color: #394346;
      border-bottom: 2px solid transparent;
   }
}

@media (min-width: 992px) {
   #navbar.fixed-top-2 .navbar-collapse .navbar-nav > .nav-item .dropdown-menu {
      margin-top: 17px;
   }
}

#navbar .navbar-logo,
#navbar .navbar-logo-helper {
   flex-grow: 1;
}

#navbar .navbar-logo {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}

#navbar .navbar-logo > a::before {
   content: '';
   display: block;
   background: url(../images/logo.svg);
   background-position: 124px 87px;
   width: 55px;
   height: 70px;
   margin-top: 10px;
}

@media (min-width: 992px) {
   #navbar .navbar-logo > a::before {
      width: 193px;
      height: 171px;
      background-position: 0% 0%;
      margin-top: 0;
   }
}

#navbar .navbar-logo .header-slogan {
   font-size: 20px;
   font-family: GildaDisplay, serif;
   color: #fff;
   position: absolute;
   top: 0;
   left: 20px;
   padding-top: 60px;
}

@media (min-width: 576px) {
   #navbar .navbar-logo .header-slogan {
      left: 40px;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-logo .header-slogan {
      font-size: 34px;
      position: relative;
      top: auto;
      left: auto;
   }
}

#navbar .navbar-toggler {
   position: absolute;
   top: 20px;
   left: 20px;
   padding: 0;
   border-radius: 0;
   z-index: 10001;
}

@media (min-width: 576px) {
   #navbar .navbar-toggler {
      left: 40px;
   }
}

#navbar .navbar-toggler[aria-expanded='true']::before,
#navbar .navbar-toggler::before {
   content: url(../images/menu.svg);
}

#navbar .navbar-collapse {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   justify-content: center;
   background: #024624;
}

@media (min-width: 992px) {
   #navbar .navbar-collapse {
      position: static;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-collapse {
      background: none;
   }
}

#navbar .navbar-collapse .logo-mobile {
   padding-top: 5px;
   text-align: center;
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .logo-mobile {
      display: none;
   }
}

#navbar .navbar-collapse .navbar-nav {
   padding: 20px 20px 10px;
}

@media (min-width: 576px) {
   #navbar .navbar-collapse .navbar-nav {
      padding-left: 40px;
      padding-right: 40px;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav {
      padding: 0;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item {
   border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item {
      padding-bottom: 4px;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item:first-child {
   border-top: 1px solid rgba(255, 255, 255, 0.5);
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item:first-child {
      border-top: none;
   }
}

@media (max-width: 991px) {
   #navbar .navbar-collapse .navbar-nav .nav-item:last-child {
      border-bottom: none;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item.active {
      border-bottom: 2px solid #fff;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item.dropdown.show > a {
   border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item.dropdown.show > a {
      border-bottom: none;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item + .nav-item {
      padding-left: 25px;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item a {
   color: #fff;
   font-size: 18px;
   padding-left: 0;
   padding-right: 0;
}

@media (min-width: 576px) {
   #navbar .navbar-collapse .navbar-nav .nav-item a {
      font-size: 19px;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item a.dropdown-toggle[aria-expanded='true']::after {
   content: url(../images/arrow-down.svg);
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item a.dropdown-toggle[aria-expanded='true']::after {
      content: none;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item a.dropdown-toggle::after {
   content: url(../images/arrow-right-2.svg);
   position: absolute;
   right: 0;
   border: none;
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item a.dropdown-toggle::after {
      content: none;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu {
   padding: 0 20px;
   margin-left: -20px;
   margin-right: -20px;
   background: rgba(32, 115, 49, 0.5);
   border-radius: 0;
}

@media (min-width: 576px) {
   #navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu {
      padding-left: 40px;
      padding-right: 40px;
      margin-left: -40px;
      margin-right: -40px;
   }
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu {
      padding-left: 0;
      padding-right: 0;
      margin-left: 0;
      margin-right: 0;
      background: #024624;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu .dropdown-item {
   font-size: 15px;
   display: block;
   padding: 8px 8px 8px 15px;
   text-decoration: none;
}

@media (min-width: 992px) {
   #navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu .dropdown-item {
      padding: 10px;
   }
}

#navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover,
#navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu .dropdown-item.active {
   color: #80a291;
   background-color: transparent;
}

#navbar .navbar-collapse .navbar-nav .nav-item .dropdown-menu .dropdown-item + .dropdown-item {
   border-top: 1px solid rgba(255, 255, 255, 0.5);
}

#header {
   position: relative;
   /*
		background-image: url(../images/bg-index-2.png),
						url(../images/bg-index.jpg);
		background-repeat: no-repeat, repeat-x;
		background-position: left -30px bottom, center;
		background-size: 850px 589px, auto auto;
	*/
   background-position: top center;
   background-size: cover;
   height: 100vh;
   min-height: 500px;
   background-color: #207331;
   /*
    @media(min-width: $bs-sm) {
        background-position: left 100px bottom, center;
        background-size: auto auto, auto auto;
    }
    */
}

.section-top img {
   -o-object-position: center top;
   object-position: center top;
   max-height: 760px;
   -o-object-fit: cover;
   object-fit: cover;
   width: 100%;
   height: auto;
}

.section-1 {
   color: #207331;
   font-size: 24px;
   font-weight: 300;
   font-style: italic;
   padding-top: 40px;
   padding-bottom: 40px;
   background: #fff;
}

@media (min-width: 576px) {
   .section-1 {
      font-size: 34px;
      padding-top: 50px;
      padding-bottom: 50px;
   }
}

.section-2 {
   padding-top: 60px;
   padding-bottom: 30px;
}

.section-2 .section-2-box {
   margin-bottom: 30px;
}

.section-2 .module-title {
   color: #207331;
   font-family: GildaDisplay, serif;
   font-size: 20px;
   margin-bottom: 10px;
}

@media (min-width: 576px) {
   .section-2 .module-title {
      font-size: 26px;
   }
}

.section-2 .module-title::before {
   content: url(../images/arrow-right-m.svg);
   margin-right: 5px;
   vertical-align: middle;
}

@media (min-width: 992px) {
   .section-2 .module-title::before {
      content: url(../images/arrow-right.svg);
   }
}

.section-2 .section-2-box-content {
   font-size: 15px;
}

.section-2 .section-2-box-content a {
   color: #207331;
}

@media (min-width: 576px) {
   .section-2 .section-2-box-content {
      font-size: 18px;
   }
}

.section-3 {
   padding-top: 50px;
   padding-bottom: 50px;
}

.section-3 a {
   color: #207331;
}

.section-3 h1 {
   margin-bottom: 30px;
}

@media (min-width: 576px) {
   .section-3 h1,
   .section-3 .section-3-content,
   .section-3 .breadcrumb-container {
      padding-left: 20px;
   }
}

@media (min-width: 768px) {
   .section-3 h1,
   .section-3 .section-3-content,
   .section-3 .breadcrumb-container {
      padding-left: 40px;
   }
}

.section-3 .section-3-aside {
   color: #207331;
   font-size: 19px;
   font-style: italic;
}

@media (min-width: 576px) {
   .section-3 .section-3-aside {
      text-align: right;
   }
}

@media (min-width: 992px) {
   .section-3 .section-3-aside {
      font-size: 26px;
   }
}

.section-3 .section-3-content p {
   font-size: 15px;
}

@media (min-width: 992px) {
   .section-3 .section-3-content p {
      font-size: 18px;
   }
}

.section-3 .section-3-content p.mitarbeiter-name {
   font-size: 20px;
   margin-top: 20px;
}

@media (min-width: 992px) {
   .section-3 .section-3-content p.mitarbeiter-name {
      font-size: 24px;
   }
}

.section-3 .section-3-content p.mail-tel {
   color: #207331;
}

.section-3 .section-3-content p.mail-tel a {
   color: #207331;
}

.section-3 .section-3-content b {
   font-weight: 600;
}

.section-3 .section-3-content h2 {
   font-weight: 300;
   font-size: 26px;
   margin-bottom: 20px;
}

.section-3 .section-3-intro {
   font-size: 18px;
   margin-bottom: 85px;
}

.section-3 .section-3-box-container {
   justify-content: space-evenly;
}

.section-3 .section-3-box-container .section-3-box {
   color: #207331;
   margin-bottom: 60px;
   text-decoration: none;
}

.section-3 .section-3-box-container .section-3-box:hover {
   color: #394346;
}

.section-3 .section-3-box-container .section-3-box:hover .active-image {
   display: none;
}

.section-3 .section-3-box-container .section-3-box:hover .hover-image {
   display: inline;
}

.section-3 .section-3-box-container .section-3-box > div {
   margin-bottom: 20px;
}

.section-3 .section-3-box-container .section-3-box .hover-image {
   display: none;
}

.section-image img {
   max-width: 100%;
   height: auto;
}

#footer {
   font-size: 14px;
   border-top: 1px solid #fff;
   padding-top: 25px;
   padding-bottom: 25px;
   text-align: center;
}

#footer a {
   color: #207331;
   margin-right: 15px;
}

#footer .menu {
   padding-left: 0;
   list-style-type: none;
   margin-bottom: 0;
}

@media (min-width: 992px) {
   #footer .menu {
      display: inline-block;
   }
}

#footer .menu li {
   display: inline-block;
}

#footer .menu li a {
   display: inline;
   padding: 0;
}

#footer .custom {
   display: inline-block;
}

.cookie-container {
   position: fixed;
   left: 0;
   right: 0;
   bottom: 0;
   padding-top: 5px;
   padding-bottom: 5px;
   background: rgba(255, 255, 255, 0.85);
   box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.3);
   z-index: 1000;
}

.cookie-container .cookie-inner {
   font-size: 14px;
   margin-bottom: 10px;
}

@media (min-width: 1200px) {
   .cookie-container .cookie-inner {
      margin-bottom: 0;
   }
}

.cookie-container .cookie-inner a {
   color: #207331;
}

.cookie-container .cookie-button-container {
   text-align: center;
}

@media (min-width: 1200px) {
   .cookie-container .cookie-button-container {
      text-align: right;
   }
}

.cookie-container .cookie-button {
   color: #fff;
   font-size: 14px;
   display: inline-block;
   padding: 8px;
   background: #024624;
   text-decoration: none;
}

.h1-style-c {
   font-family: GildaDisplay, serif;
   font-size: 24px;
}

@media (min-width: 992px) {
   .h1-style-c {
      font-size: 40px;
   }
}

.h1-style-c::after {
   content: '';
   display: block;
   border-bottom: 1px solid #707070;
   margin-top: 15px;
   max-width: 110px;
}

.h1-style-c.line-margin-auto {
   padding-bottom: 20px;
}

.h1-style-c.line-margin-auto::after {
   margin-left: auto;
   margin-right: auto;
}

.contact-email a {
   color: #207331;
}

.text-green {
   color: #207331;
}

.breadcrumb {
   padding: 0;
   background: none;
}

.breadcrumb li a {
   color: #207331;
   text-decoration: none;
}

/*
    // jaralax
    .jarallax {
        position: relative;
        z-index: 0;
    }
    .jarallax img {
        position: absolute;
        object-fit: cover;
        / * support for plugin https://github.com/bfred-it/object-fit-images * /
        font-family: 'object-fit: cover;';
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1;
    }
    */

.cat-blog-title {
   padding-left: 0px !important;
}

hr#cat_blog_header {
   border-top: solid white 0.3em;
   position: absolute;
   left: 0;
   right: 0;
}

h1.cat-blog-item-title {
   margin-top: 50px;
}

.h1-style-c.h1-style-c-blog {
   font-size: 20px;
}

@media (min-width: 576px) {
   .h1-style-c.h1-style-c-blog {
      font-size: 26px;
   }
}

.cat-blog-item-title > img {
   max-width: 40px;
   max-height: 40px;
}

/* MHP-Hack Icons */
img.mr-2 {
   max-height: 1.3em;
   max-width: 1.3em;
}

#header {
   height: 85vh !important;
   min-height: 300px !important;
}

.section-1 {
   padding-top: 25px !important;
   padding-bottom: 25px !important;
}

.eb-dialog {
   overflow: hidden !important;
   max-width: 422px !important;
}

.contentpane.modal {
   background: none !important;
}

@media (max-width: 992px) {
   #navbar.fixed-top-2 {
      position: relative !important;
   }
}

/* ..................... */
.section-2-box .custom p {
   font-size: 18px;
}

.section-2-box .custom p a {
   color: #207331;
}

ul.fields-container {
   padding: 0;
}

ul.fields-container li {
   list-style: none;
}

.section-top p {
   margin-bottom: 0;
}

dd {
   margin: 0;
}

body.contentpane .eb-inst {
   display: none;
}

/* .................... */
/** Inputs **/

.bfQuickMode .bfSignatureWrap .control-label {
   vertical-align: top !important;
}

.bfQuickMode .bfSignature {
   width: 45%;
   display: inline-block;
}

.bfQuickMode .bfSignature canvas {
   width: 100%;
   height: 200px;
}

.bfQuickMode .bfSignatureCanvasBorder {
   width: 100%;
   height: 200px;
   border: 5px solid #f0f0ff;
   border: 5px solid rgba(0, 0, 0, 0.05);
   margin-bottom: 5px;
}

.bfCalendarResponsiveContainer .picker__button--today,
.bfCalendarResponsiveContainer .picker__button--clear {
   color: black !important;
   outline: none !important;
   border: none !important;
   text-shadow: none !important;
   height: auto !important;
   -moz-border-radius: 0 !important;
   -webkit-border-radius: 0 !important;
   border-radius: 0 !important;
   -moz-box-shadow: none !important;
   -webkit-box-shadow: none !important;
   box-shadow: none !important;
   margin: 0 !important;
}

.bfCalendarResponsiveContainer .picker__select--year,
.bfCalendarResponsiveContainer .picker__select--month {
   float: none !important;
   margin-left: 0.25em !important;
   margin-right: 0.25em !important;
   font-size: 0.8em !important;
   display: relative !important;
   width: auto !important;
   max-width: none !important;
   min-width: 1px !important;
}

@media (min-height: 33.875em) {
   .bfCalendarResponsiveContainer .picker__box {
      display: inline-block !important;
   }
}

@media (min-width: 24.5em) {
   .bfCalendarResponsiveContainer .picker__select--month,
   .bfCalendarResponsiveContainer .picker__select--year {
      font-size: 0.8em !important;
      margin-top: -0.5em !important;
   }
}

.bfQuickMode .icon-asterisk {
   font-size: 9px;
   vertical-align: text-top;
   color: red;
}

.bfQuickMode textarea {
   height: 100px;
}

.bfQuickMode input[type='text'],
.bfQuickMode textarea,
.bfQuickMode select,
.bfQuickMode .uneditable-input {
   max-width: 50%;
   width: 100%;
}

/** Labels **/
@media all and (max-width: 767px) {
   .bfQuickMode .bfSignature {
      width: 90%;
      max-width: 90%;
      min-width: 90%;
   }

   .bfQuickMode .controls .control-label {
      max-width: 90% !important;
      min-width: 90% !important;
      width: 90% !important;
      display: block !important;
   }
   .bfQuickMode input[type='text'],
   .bfQuickMode textarea,
   .bfQuickMode select,
   .bfQuickMode .uneditable-input {
      width: 94%;
      max-width: 94% !important;
      min-width: 94%;
   }
}

/** Safari Hack **/
@media screen and (-webkit-min-device-pixel-ratio: 0) {
   .bfQuickMode fieldset legend {
      margin-bottom: 0px;
   }

   .bfQuickMode fieldset .row-fluid {
      padding-top: 18px;
   }
}

.bfQuickMode .controls .control-label {
   width: 35%;
   min-width: 110px;
   vertical-align: text-top;
}

.bfLabelBlock {
   display: block !important;
}

/** Fieldset **/
.bfQuickMode fieldset {
   margin-bottom: 3px;
}

/** Buttons **/
.bfQuickMode .bfCancelButton {
   margin-left: 5px;
}

/** Captcha **/
@media all and (max-width: 767px) {
   .bfQuickMode #recaptcha_image,
   .bfQuickMode #recaptcha_image img {
      /** we must force relative dimensions for responsivness **/
      width: 95% !important;
      height: 60px !important;
   }
   .bfQuickMode .input-recaptcha {
      margin-bottom: 8px;
   }
   .bfCaptchaField {
      width: 84%;
      max-width: 84%;
      min-width: 84%;
   }
}

.ff_capimg {
   margin-top: 9px;
}

/* ##### Uploader ##### */

#bfFileQueue {
   margin-bottom: 10px;
   position: absolute;
}

#bfSubmitMessage {
   border: 2px solid #e5e5e5;
   background-color: #f5f5f5;
   margin-top: 5px;
   padding: 10px;
   width: 350px;
   -moz-border-radius-bottomright: 50px 25px;
   border-bottom-right-radius: 50px 25px;
}

#bfFileQueue {
   border: 2px solid #e5e5e5;
   background-color: #f5f5f5;
   margin-top: 5px;
   padding: 10px;
   width: 350px;
   -moz-border-radius-bottomright: 50px 25px;
   border-bottom-right-radius: 50px 25px;
   z-index: 1100;
}

.bfFileQueueItem {
   border: 2px solid #e5e5e5;
   background-color: #f5f5f5;
   margin: 5px;
   padding: 10px;
}

.bfQuickMode .pull-left {
   float: left;
}

.bfQuickMode .pull-right {
   float: right;
}

.bfQuickMode input[type='text'],
.bfQuickMode textarea,
.bfQuickMode select,
.bfQuickMode .uneditable-input {
   min-height: 15px !important;
   margin-top: -1px;
}

.bfQuickMode .bfPage p {
   margin: 16px 0 14px 0 !important;
}

.bfQuickMode .bfElemWrap {
   margin-bottom: 0 !important;
}

div#bfElemWrap10,
div#bfElemWrap15,
div#bfElemWrap20 {
   margin-top: -2px;
}

div#bfElemWrap10 input,
div#bfElemWrap15 input,
div#bfElemWrap20 input {
   margin-top: -2px;
}

div#bfElemWrap20 span {
   margin-top: -4px;
}

.bfQuickMode .bfbs5-btn,
.bfQuickMode .btn {
   font-size: 13px !important;
   display: block;
   float: right;
   letter-spacing: 0.14px;
}
