/* playfair-display-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display LOC';
  font-style: normal;
  font-weight: 400;
  src: url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-regular.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}
/* playfair-display-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display LOC';
  font-style: normal;
  font-weight: 500;
  src: url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Playfair-Display-LOC/playfair-display-v40-latin-500.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}
/* playfair-display-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display Italic LOC';
  font-style: italic;
  font-weight: 400;
  src: url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}
/* playfair-display-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display Italic LOC';
  font-style: italic;
  font-weight: 500;
  src: url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Playfair-Display-Italic-LOC/playfair-display-v40-latin-500italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}
/* inter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter LOC';
  font-style: normal;
  font-weight: 400;
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Inter-LOC/inter-v20-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-regular.svg#Inter') format('svg'); /* Legacy iOS */
}
/* inter-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter LOC';
  font-style: normal;
  font-weight: 500;
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-500.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Inter-LOC/inter-v20-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-500.svg#Inter') format('svg'); /* Legacy iOS */
}
/* inter-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter LOC';
  font-style: normal;
  font-weight: 700;
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-700.eot'); /* IE9 Compat Modes */
  src: url('../library/fonts/Inter-LOC/inter-v20-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../library/fonts/Inter-LOC/inter-v20-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../library/fonts/Inter-LOC/inter-v20-latin-700.svg#Inter') format('svg'); /* Legacy iOS */
}

body, .header {
    max-width: 2560px !important;
    margin: 0 auto !important;
    left: auto !important; 
}

body {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15) !important;
}

.hstyle {
font-family: 'Playfair Display', serif !important;
  font-style: italic;
}

strong {
font-weight: 700;
}

.bg-position {
background-position: 20% 50% !important;
}

body p {
word-break: break-word;
  hyphens: auto;
}

.bg-position-3 {
background-position: 80% 0% !important;
}

.bg-position-2 {
background-position: 50% 80% !important;
}

@media (max-width: 768px) {
.bg-position-2 {
background-position: 80% 80% !important;
}
}

ol li {
font-size: 16px;
}

ol li::marker {
color: var(--accent);
  font-weight: bold;
}

.link {
font-weight: 700;
  text-decoration: underline;
  text-decoration-color: var(--subtitle);
}

.link:hover {
  text-decoration-color: var(--text);
}


/*------ Menü ------*/
.main-menu .ba-icon-caret-right {
display: none !important;
}

/*.main-menu .nav-item:has(.mod-menu__sub) {
margin-bottom: 10px;
}*/


/*------ Bildbearbeitung ------*/
.image-filter-bg,
.intro-post-image  {
  background-color: #4a484e !important;
  background-blend-mode: luminosity;
}

.image-filter .ba-image-wrapper {
background-color: #4a484e !important;
}

.image-filter img {
mix-blend-mode: luminosity;
}

.blog .ba-blog-post-image a {
background-color: #4a484e;
  background-blend-mode: luminosity;
}


/*------ Hintergrund-Kästen ------*/
.kasten-hg {
box-shadow: 25px 25px 0 var(--bg-dark-accent) !important;
}

.kasten-hg-border {
  box-shadow: 22px 22px white, 22px 22px 0 3px var(--accent) !important;
}

@media (max-width: 768px) {
  .kasten-hg {
  box-shadow: 18px 18px 0 var(--bg-dark-accent) !important;
}
  
  .kasten-hg-border {
  box-shadow: 18px 18px white, 18px 18px 0 3px var(--accent) !important;
}
}


/*------ Leistungen Kacheln ------*/

.ba-feature-box {
  background-image: linear-gradient(to bottom, transparent 0px, transparent 60px, var(--primary) 60px, var(--primary)  500px);
}

/*.kacheln-leistungen-grid .ba-grid-column {
display: flex !important;
}

.kacheln-leistungen-grid .ba-item-button {
margin-top: auto !important;
}*/

.kacheln-leistungen .ba-feature-caption {
display: flex !important;
  flex-direction: column;
  height: 100%;
}

.kacheln-leistungen .ba-feature-button {
margin-top: auto !important;
}

.kacheln-leistungen .ba-feature-box:nth-child(5) h3,
.kacheln-leistungen .ba-feature-box:nth-child(6) h3,
.kacheln-leistungen .ba-feature-box:nth-child(7) h3,
.kacheln-leistungen .ba-feature-box:nth-child(8) h3 {
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  overflow-wrap: break-word;
}

.kacheln-leistungen .ba-feature-box:nth-child(n) {
margin-top: 10px !important;
}


/*------ Referenzen/Zitate ------*/
.img-quote {
position: absolute;
  top: -25px;
  right: -11px
}

@media (min-width: 1280px) and (max-width: 1440px) {
.img-quote {
  right: -9px;
  top: -20px;
}
}

/*@media (max-width: 768px) {
.img-quote {
  top: -20px;
  right: -9px
}
}*/

@media (max-width: 768px) {
.img-quote {
  top: -12px;
  right: -5px
}
}


/*------ Lebenslauf ------*/
.line-horizontal {
background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 3px;
}

.line-vertical {
  background-image: linear-gradient(
    to bottom,
    transparent 60px,           /* bis 60px nichts */
    var(--bg-dark) 60px,               /* ab hier Farbe */
    var(--bg-dark) calc(100% - 60px),  /* bis kurz vor unten */
    transparent calc(100% - 60px) /* unten wieder transparent */
  ) !important;
background-repeat: no-repeat;
  background-position: center;
  background-size: 3px 100%;
}

@media (max-width: 1024px) {
  .line-vertical {
  background-image: linear-gradient(
    to bottom,
    transparent 25px,
    var(--bg-dark) 25px,
    var(--bg-dark) calc(100% - 60px),
    transparent calc(100% - 60px)
  ) !important;
  }
}

@media (max-width: 768px) {
  .jahr {
  min-height: 35px !important;
  }
  
}


/*------ Kontaktformular ------*/
.kontakt-formular .ba-form-field-item {
  margin-top: 0;
  margin-bottom: 20px;
}

.kontakt-formular .ba-input-label-wrapper {
font-weight: 500 !important;
}

.kontakt-formular .required-star {
margin: 0 !important;
}

.kontakt-formular .ba-field-container,
.kontakt-formular .ba-form-submit-field {
margin: 0 !important;
}

.ba-form-submit-btn:hover {
  color: var(--subtitle) !important;
}

.ba-form-acceptance-field label.ba-form-checkbox > span {
background: white !important;
  border: 3px solid var(--accent) !important;
  border-radius: 0 !important;
  height: 30px;
  width: 30px;
}

.kontakt-formular .ba-form-acceptance-field label.ba-form-checkbox > span:hover {
border: 3px solid var(--accent) !important;
  background: var(--accent) !important;
}

.kontakt-formular .ba-form-acceptance-field label.ba-form-checkbox input[type="checkbox"]:checked + span {
background: var(--accent) !important;
  border: 3px solid var(--accent) !important;
}

.ba-field-container textarea::placeholder {
opacity: 0.8;
}

.kontakt-formular input:focus-visible,
.kontakt-formular textarea:focus-visible {
outline: none !important;
}

.kontakt-formular textarea:focus {
border: 3px solid var(--accent) !important;
}

.kontakt-formular .ba-form-acceptance-html a {
font-weight: bold;
  color: var(--subtitle) !important;
}

.kontakt-formular .ba-form-acceptance-field .ba-field-container {
padding-left: 40px !important;
}

.kontakt-formular .ba-form-acceptance-html {
  margin-top: -5px;
}

.kontakt-formular .ba-form-acceptance-html p {
  font-size: 14px !important;
  line-height: 19px !important;
}

@media (max-width: 1280px) {
  .kontakt-formular .ba-form-submit-btn {
  font-size: 18px !important;
    line-height: 23px !important;
  }
}

@media (max-width: 1024px) {
  .kontakt-formular .ba-form-submit-btn {
  font-size: 17px !important;
    line-height: 20px !important;
  }
}

.kontakt-formular .ba-form-page {
padding: 0 !important;
}

@media (max-width: 420px) {
  .kontakt-formular .ba-input-label-wrapper {
  font-size: 16px !important;
  }
}


/*------ Footer ------*/
.footer a {
text-decoration: underline;
}

@media (max-width: 1280px) and (min-width: 769px) {
.footer .ba-col-1 {
width: calc(100% * 1 / 12);
}

.footer .ba-col-4 {
width: calc(100% / 3);
}
}

.ba-scroll-to-top {
transition: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  .ba-item-scroll-to-top {
  bottom: 15px !important;
    right: 15px !important;
  }
}


/*------ Infobutton ------*/
.infobutton {
  left: auto !important;
  top: auto !important;
  right: 25px !important;
  bottom: 130px !important;
}

.infobutton .ba-item-icon-list li {
height: 20px;
}

.infobutton .ba-item-icon-list li i {
margin-top: 8px;
}

.infobutton .ba-hotspot-popover[data-position="left"] {
top: -63px;
}

.infobutton .ba-hotspot-popover[data-position="left"]::after {
bottom: 10%;
}

.infobutton .ba-icon-list-wrapper ul li a:hover span {
color: rgba(255, 255, 255, 0.5) !important;
}

.infobutton a {
text-decoration: none;
}

@media (max-width: 1280px) {
  .ba-item-hotspot .ba-hotspot-popover {
  left: auto !important;
    right: -85px !important;
    top: -63px !important;
  }
}

@media (max-width: 786px) {
  .ba-item-hotspot .ba-hotspot-popover {
  left: auto !important;
    right: -150px !important;
    top: -125px !important;
  }
  
  .infobutton {
  bottom: 75px !important;
    right: 15px !important;
  }
}


/*------ Icon-Aufzählungsliste ------*/
.aufzaehlung .check-check {
margin-top: 0 !important;
  transform: none !important;
}

.aufzaehlung .list-item-without-link {
align-items: center !important;
}

.ba-item-icon-list .vertical-layout li {
  margin-top: 25px;
}


/*------ Blog ------*/
.blog .ba-blog-post {
padding-bottom: 50px !important;
}

.blog .ba-blog-post:nth-child(odd) .ba-blog-post-image {
box-shadow: 22px 22px white, 22px 22px 0 3px var(--accent) !important;
}

.blog .ba-blog-post:nth-child(even) .ba-blog-post-image {
box-shadow: -22px 22px white, -22px 22px 0 3px var(--accent) !important;
}


@media (min-width: 1025px) {
.blog .ba-blog-post:nth-child(even) .ba-blog-post-image {
order: 2;
}

.blog .ba-blog-post:nth-child(even) .ba-blog-post-content {
  padding-right: 50px !important;
  padding-left: 0 !important;
}

.blog .ba-blog-post:nth-child(odd) .ba-blog-post-content {
  padding-left: 50px !important;
padding-right: 0 !important;
}
}


@media (max-width: 1024px) {
.blog .ba-blog-post-image {
margin-bottom: 50px !important;
}

.blog .ba-blog-post:nth-child(even) .ba-blog-post-image,
.blog .ba-blog-post:nth-child(odd) .ba-blog-post-image {
box-shadow: 22px 22px white, 22px 22px 0 3px var(--accent) !important;
}
}


@media (max-width: 768px) {
.blog .ba-blog-post:nth-child(odd) .ba-blog-post-image,
.blog .ba-blog-post:nth-child(even) .ba-blog-post-image {
  box-shadow: 18px 18px white, 18px 18px 0 3px var(--accent) !important;
}

.blog .ba-blog-post-content {
padding: 0 !important;
}
}